#include <bits/stdc++.h>
using namespace std;
long long power(long x,long y,long l){
if(y==0){
return 1;
}
else{
long long temp = power(x,y/2,l);
if(y%2==1){
return (x*temp*temp)%l;
}
else{
return (temp*temp)%l;
}
}
}
double power1(double x,long y,long l){
if(y==0){
return 1.0;
}
else{
double temp = power1(x,y/2,l);
if(y%2==1){
return (x*temp*temp);
}
else{
return (temp*temp);
}
}
}
int main() {
int t;
cin>>t;
while(t--){
long n,k;
cin>>n>>k;
long l=1;
long f = 1;
for(int i =0;i<k;i++){
l *= 10;
}
for(int i =0;i<(log10(n)-1);i++){
f *= 10;
}
long long end = n%(l);
double m = power1(n,n,l);
while(m>10){
m=m/10;
}
m = floor(m * l/10);
cout<< m<<" "<<power(end,n,l)<<endl;
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cgpsb25nIGxvbmcgcG93ZXIobG9uZyB4LGxvbmcgeSxsb25nIGwpewoJCglpZih5PT0wKXsKCQlyZXR1cm4gMTsKCX0KCWVsc2V7CgkJbG9uZyBsb25nIHRlbXAgPSBwb3dlcih4LHkvMixsKTsKCQlpZih5JTI9PTEpewoJCQlyZXR1cm4gKHgqdGVtcCp0ZW1wKSVsOwoJCX0KCQllbHNlewoJCQlyZXR1cm4gKHRlbXAqdGVtcCklbDsKCQl9Cgl9Cn0KCmRvdWJsZSBwb3dlcjEoZG91YmxlIHgsbG9uZyB5LGxvbmcgbCl7CgkKCWlmKHk9PTApewoJCXJldHVybiAxLjA7Cgl9CgllbHNlewoJCWRvdWJsZSB0ZW1wID0gcG93ZXIxKHgseS8yLGwpOwoJCWlmKHklMj09MSl7CgkJCXJldHVybiAoeCp0ZW1wKnRlbXApOwoJCX0KCQllbHNlewoJCQlyZXR1cm4gKHRlbXAqdGVtcCk7CgkJfQoJfQp9CgoKaW50IG1haW4oKSB7CglpbnQgdDsKCWNpbj4+dDsKCXdoaWxlKHQtLSl7CgkJbG9uZyBuLGs7CgkJY2luPj5uPj5rOwoJCWxvbmcgbD0xOwoJCWxvbmcgZiA9IDE7CgkJZm9yKGludCBpID0wO2k8aztpKyspewoJCQlsICo9IDEwOyAKCQl9CgkJZm9yKGludCBpID0wO2k8KGxvZzEwKG4pLTEpO2krKyl7CgkJCWYgKj0gMTA7IAoJCX0KCQkKCQlsb25nIGxvbmcgZW5kID0gbiUobCk7CgkJZG91YmxlIG0gPSBwb3dlcjEobixuLGwpOwoJCXdoaWxlKG0+MTApewoJCQltPW0vMTA7CgkJfQoJCW0gPSBmbG9vcihtICogbC8xMCk7CgkJCgkJCgkJY291dDw8IG08PCIgIjw8cG93ZXIoZW5kLG4sbCk8PGVuZGw7Cgl9CglyZXR1cm4gMDsKfQ==