#include<bits/stdc++.h>
using namespace std;
int T,n,a[505];
bool sy;
string q(int x)
{
string re="",s1="";
while(x>0)
{
re+=x%10+'0';
x/=10;
}
for(int i=re.size()-1;i>=0;i--)s1+=re[i];
return s1;
}
void iddfs(int x,int y,vector<int>v,string b)
{
if(!sy)return;
if(x>y)
{
if(v.size()==1)
{
sy=0;
cout<<b;
}
return;
}
for(int i=0;i<v.size()&&sy;i++)
{
for(int j=i+1;j<v.size()&&sy;j++)
{
for(int k=j+1;k<v.size()&&sy;k++)
{
if(int(v[i]^v[j]^v[k])==0)
{
int h=v[i];
for(int l=i+1;l<=k;l++)h^=v[l];
vector<int>vv;
for(int l=0;l<i;l++)vv.push_back(v[l]);
vv.push_back(h);
for(int l=k+1;l<v.size();l++)vv.push_back(v[l]);
iddfs(x+1,y,vv,b+q(i+1)+" "+q(j+1)+" "+q(k+1)+"\n");
}
}
}
}
}
int main ()
{
ios::sync_with_stdio(false);
cin.tie(0);cout.tie(0);
cin>>T;
while(T--)
{
cin>>n;for(int i=1;i<=n;i++)cin>>a[i];
if(n==1)cout<< "Huoyu\n0\n";
else
{
sy=1;vector<int>v;
for(int i=1;i<=n;i++)v.push_back(a[i]);
for(int i=0;i<=n&&sy;i++)
{
iddfs(1,i,v,"Huoyu\n"+q(i)+"\n");
}
if(sy)cout<<"Shuiniao\n";
}
}
}