#include <bits/stdc++.h>
using namespace std;
#define int long long
const int N=2e3+10;
int a[N],f1[N],f2[N],f3[N],b[N];
bool t;
void dfs(int c[],int m,int cnt,int last){
if(cnt>last) return;
if(t) return;
if(m==1){
t=1;
cout<<"Huoyu"<<endl<<cnt<<endl;
for(int i=0;i<cnt;i++){
cout<<f1[i]<<" "<<f2[i]<<" "<<f3[i]<<endl;
}
return;
}
for(int i=1;i<=m-2;i++){
for(int j=i+1;j<=m-1;j++){
for(int k=j+1;k<=m;k++){
int u=c[i]^c[j]^c[k];
if(u==0){
memset(b,0,sizeof(b));
int s=c[i];
for(int l=i+1;l<=k;l++){
s=(s^c[l]);
}
for(int l=1;l<i;l++){
b[l]=c[l];
}
b[i]=s;
for(int l=i+1;l<=m-k+i;l++){
b[l]=c[l-i+k];
}
f1[cnt]=i,f2[cnt]=j,f3[cnt]=k;
dfs(b,m-k+i,cnt+1,last);
}
}
}
}
}
signed main(){
int T;cin>>T;
while(T--){
int n;cin>>n;
if(n>70){
for(int i=1;i<=n;i++){
int p;cin>>p;
}
cout<<"Shuiniao"<<endl;
continue;
}
for(int i=1;i<=n;i++){
cin>>a[i];
}
t=0;
dfs(a,n,0,n);
if(!t) cout<<"Shuiniao"<<endl;
}
return 0;
}