#include using namespace std; using Int = long long; template inline void chmin(T1 &a,T2 b){if(a>b) a=b;} template inline void chmax(T1 &a,T2 b){if(a=z; x%=m; while(1){ if(n&1) v*=x; if(v>=z) f=1,v%=m; n>>=1; if(!n) break; x=x*x; if(x>=z) f=1,x%=m; } return v; } Int mtetra(Int a,Int n,Int m,Int &f){ if(a==0) return ~n&1; if(m==1) return f=1; if(a==1||n==0) return 1; if(n==1){ f|=a>=m; return a%m+f*m; } Int z=mtetra(a,n-1,phi(m),f); Int r=mpow(a,z,m,f); return r+f*m; } //END CUT HERE //INSERT ABOVE HERE signed YUKI_181(){ Int a,n,m,f=0; cin>>a>>n>>m; cout<>T; while(T--){ Int a,n,f=0; cin>>a>>n; stringstream ss; ss<