#define ll long long #define ull unsigned long long #define bool int #define T 1 #define F 0 ll mod; int k; ll pom(ll a,ll n,int m){ll x=1;for(a%=m;n;n/=2)n%2?x=x*a%m:0,a=a*a%m;return x;} ll mumll(ll p,ll q){ull x=0;for(p%=mod;q;q>>=k)x=(x+p*(((1LL<=n)return T; ll t=d,a=pom(sus[i],t,n); if(a==1||a==n-1)continue; while((t*=2)!=n-1&&(a=a*a%n)!=n-1&&a!=1); if(t==n-1||a==1)return F; } return T; } for(int i=0;susll[i];i++){ mod=n;k=__builtin_clz(mod>>32); ll t=d,a=pomll(susll[i],t); if(a==1||a==n-1)continue; while((t*=2)!=n-1&&(a=mumll(a,a))!=n-1&&a!=1); if(t==n-1||a==1)return F; } return T; } ll n,x; main(){ scanf("%d",&n); while(n--){ scanf("%lld",&x); printf("%lld %d\n",x,isp(x)); } }