#include<bits/stdc++.h>
using namespace std;
#define log2 0.30102999566398119521373889472449L
long long int lastkdigit(long long int K , long long int MOD)
{
if(K==1) return 2;
else if(K%2==0)
{
long long int temp = lastkdigit(K/2 , MOD);
return (temp*temp)%MOD;
}
else
{
long long int temp = lastkdigit(K/2 , MOD);
return (2*temp*temp)%MOD;
}
}
int main()
{
long long int T,N,K;
long double N1,N2;
long long int MOD;
long long int firstdigit,enddigits;
cin>>T;
while(T--)
{
cin>>N>>K;
MOD = pow(10,K);
enddigits = lastkdigit(N,MOD);
N1 = N*log2 ;
N1 = N1 - (long long int)N1;
N2 = pow(10,N1);
N2 = N2*pow(10,K-1);
//cout<<(long long int)N2<<" "<<enddigits<<endl;
cout<<(int)N2 + enddigits-1<<endl;
}
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgojZGVmaW5lIGxvZzIgIDAuMzAxMDI5OTk1NjYzOTgxMTk1MjEzNzM4ODk0NzI0NDlMCgpsb25nIGxvbmcgaW50IGxhc3RrZGlnaXQobG9uZyBsb25nIGludCBLICwgbG9uZyBsb25nIGludCBNT0QpCnsKICAgIGlmKEs9PTEpIHJldHVybiAyOwogICAgZWxzZSBpZihLJTI9PTApCiAgICAgICAgewogICAgICAgICAgICBsb25nIGxvbmcgaW50IHRlbXAgPSBsYXN0a2RpZ2l0KEsvMiAsIE1PRCk7CiAgICAgICAgICAgIHJldHVybiAodGVtcCp0ZW1wKSVNT0Q7CiAgICAgICAgfQogICAgIGVsc2UKICAgICAgICB7CiAgICAgICAgICAgIGxvbmcgbG9uZyBpbnQgdGVtcCA9IGxhc3RrZGlnaXQoSy8yICwgTU9EKTsKICAgICAgICAgICAgcmV0dXJuICgyKnRlbXAqdGVtcCklTU9EOwogICAgICAgIH0KfQoKaW50IG1haW4oKQp7CiAgICBsb25nIGxvbmcgaW50IFQsTixLOwogICAgbG9uZyBkb3VibGUgTjEsTjI7CiAgICBsb25nIGxvbmcgaW50IE1PRDsKICAgIGxvbmcgbG9uZyBpbnQgZmlyc3RkaWdpdCxlbmRkaWdpdHM7CiAgICBjaW4+PlQ7CiAgICB3aGlsZShULS0pCiAgICB7CiAgICAgICAgY2luPj5OPj5LOwogICAgICAgIE1PRCA9IHBvdygxMCxLKTsKICAgICAgICBlbmRkaWdpdHMgPSBsYXN0a2RpZ2l0KE4sTU9EKTsKICAgICAgICBOMSA9IE4qbG9nMiA7CiAgICAgICAgTjEgPSBOMSAtIChsb25nIGxvbmcgaW50KU4xOwogICAgICAgIE4yID0gcG93KDEwLE4xKTsKICAgICAgICBOMiA9IE4yKnBvdygxMCxLLTEpOwogICAgICAgIC8vY291dDw8KGxvbmcgbG9uZyBpbnQpTjI8PCIgICI8PGVuZGRpZ2l0czw8ZW5kbDsKICAgICAgICBjb3V0PDwoaW50KU4yICsgZW5kZGlnaXRzLTE8PGVuZGw7CiAgICB9CiAgICByZXR1cm4gMDsKfQ==