#include using namespace std; const int N=105; int n,a[N],t,ans[]={0,1,2,2,4,2,4,4,8,2,4,6,8,2,8,6,16,2,4,6,8,4,12,6,16,4,4,4,16,2,12,10,32,4,4,8,8,2,12,6,16,2,8,6,24,6,12,8,32,6,8,6,8,2,8,10,32,4,4,6,24,2,20,6,64,6,8,8,8,4,16,6,16,2,4,8,24,14,12,6,32}; void dfs(int v,int p) { if(v==n) { t++; return; } int p1=(p+v)%n,p2=(p-v+n)%n; if(!a[p1]) { a[p1]=1; dfs(v+1,p1); a[p1]=0; } if(!a[p2]) { a[p2]=1; dfs(v+1,p2); a[p2]=0; } } int sol(int x) { n=x,t=0,a[0]=1; dfs(1,0); return t; } int main() { int t; scanf("%d",&t); while(t--) { int x; scanf("%d",&x); printf("%d\n",ans[x]); } return 0; }