#誤解法(n=2max(N,1)+6に限定する愚直冪乗)チェック I=input for t in[0]*int(I()): B,N,M=map(int,I().split()) D=B**N E=B**(2*max(N,1)+6) P=pow(M,E,E*D)-1 a=P//E print(-1if(P-a*E)%(E*D)else a%D)