#include <bits/stdc++.h>
#include <cmath>
#include <bitset>
#include<ext/pb_ds/assoc_container.hpp>
#include<ext/pb_ds/tree_policy.hpp>
using namespace std;
using namespace __gnu_pbds;
typedef tree<int,null_type,less_equal<int>,rb_tree_tag,tree_order_statistics_node_update>pbds;
#define ll long long int
#define yes cout << "Yes" << endl
#define no cout << "No" << endl
#define gcd(a,b) __gcd(a,b)
#define lcm(a,b) ((a*b)/gcd(a,b))
#define pi acos(-1.00)
const ll mod=1000000007;
void evan(int t) {
ll n;cin>>n;
ll a[n];
ll od=0,ev=0;
for(int i=0;i<n;i++){cin>>a[i];
if(a[i]%2==0)ev++;
else od++;
}
ll odd=od;
ll even=ev;
ll r_i=0,h_i=1;
ll rr=0;
ll rrr=0;
if(odd>0&&even>0){while(1){
if(r_i==0){
if(even<1){rrr=0;break;}
even--;
r_i=1;
}
else{
if(odd<1){rrr=0;break;}
odd--;
r_i=0;
}
if(h_i==0){
if(even<1){rrr=1;break;}
even--;
h_i=1;
}
else{
if(odd<1){rrr=1;break;}
odd--;
h_i=0;
}
}}
else if(even>0) rrr=1;
odd=od;
even=ev;
r_i=0,h_i=0;
if(even>1){
while(1){
if(r_i==0){
if(even<1){rr=0;break;}
even--;
r_i=1;
}
else{
if(odd<1){rr=0;break;}
odd--;
r_i=0;
}
if(h_i==0){
if(even<1){rr=1;break;}
even--;
h_i=1;
}
else{
if(odd<1){rr=1;break;}
odd--;
h_i=0;
}
}
}
else if(even>0){
rr=1;
}
if(rr==1&&rrr==1){
cout<<"Roy\n";return;
}
rr=0,rrr=0;
odd=od;
even=ev;
r_i=1,h_i=0;
if(odd>0&&even>0){while(1){
if(r_i==0){
if(even<1){rrr=0;break;}
even--;
r_i=1;
}
else{
if(odd<1){rrr=0;break;}
odd--;
r_i=0;
}
if(h_i==0){
if(even<1){rrr=1;break;}
even--;
h_i=1;
}
else{
if(odd<1){rrr=1;break;}
odd--;
h_i=0;
}
}}
else if(odd>0)rr=1;
odd=od;
even=ev;
r_i=1,h_i=1;
if(odd>1){
while(1){
if(r_i==0){
if(even<1){rrr=0;break;}
even--;
r_i=1;
}
else{
if(odd<1){rrr=0;break;}
odd--;
r_i=0;
}
if(h_i==0){
if(even<1){rrr=1;break;}
even--;
h_i=1;
}
else{
if(odd<1){rrr=1;break;}
odd--;
h_i=0;
}
}
}
else if(odd>0) rrr=1;
if(rr==1&&rrr==1){
cout<<"Roy\n";return;
}
cout<<"Hridoy\n";
}
signed main()
{
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(nullptr);
ll t=1; cin>>t;
for(int i=1;i<=t;i++){
evan(i);
}
}