#include using namespace std; struct A{ long X,Y,Z; A&operator*=(const A&B){ Z+=B.Z-2; long T=(X*10+Y)*(B.X*10+B.Y); while(T>=100) { Z+=1; T/=10; } X=T/10,Y=T%10; return*this; } }; A power(A a,int b) { if(b) { A x=a; x*=a; A y=power(x,b/2); if(b&1)y*=a; return y; } else return (A){1,0,0}; } main() { int N; cin>>N; for(;N--;) { int a,b;cin>>a>>b; A x{0,0,0}; while(a>=100) { x.Z+=1; a/=10; } if(a>=10) { x.X=a/10; x.Y=a%10; } else { x.X=a; x.Z+=1; } x=power(x,b); cout<