// まったくわからん ll euler(ll a){ ll p=a; ll i=2; while(a>1){ if(a%i==0){ p-=p/i; } while(a%i==0){ a/=i; } ++i; if(i*i>a){ i=a; } } return p; } ll d[1000]; { ll @t; rep(t){ ll @n; ll e=euler(2n-1); ll m=Divisor(e,d); //wtF("n={n} e={e}\n"); modint x; x.setmod(2n-1); x=2; rep[d](j,m){ //wt(" j=",j,x**j); if(x**j==1){ wt(j); break_continue; } } rep(j,1,1d8){ if(x**j==1){ wt(j); break_continue; } } wt(0); } }