#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
#define LL long long
const LL mod = 998244353;
LL phi(LL x)
{
LL ans=x;
if(x==1) return 1;
for(LL i=2;i*i<=x;i++){
if(x%i==0) ans=ans/i*(i-1);
while(x%i==0) x=x/i;
}
if(x>1) ans=ans/x*(x-1);
return ans;
}
LL qkm(LL base,LL mi,LL mod)
{
LL ans=1%mod;
while(mi){
if(mi&1) ans=ans*base%mod;
base=base*base%mod;
mi>>=1;
}
return ans;
}
LL solve(LL n)
{
LL pi=phi(n);
if(pi==1) return 0;
return qkm(2,solve(pi)+pi,n);
}
int main()
{
LL T;
scanf("%lld",&T);
while(T--){
LL p;scanf("%lld",&p);
printf("%lld\n",solve(p));
}
return 0;
}