#include <iostream>
#include <cmath>
#include <vector>
using namespace std;
int main()
{
ios_base::sync_with_stdio(0);
int t, p;
long long n, nt, mm;
double tmm;
vector <int> v;
cin >> t;
while(t--)
{
cin >> n >> p;
tmm = pow(double(2), double(p - 1));
mm = (long long)(floor(tmm));
if(n < (-1)*mm)
{
cout << "niewykonalne" << endl;
continue;
}
if(n > mm - 1)
{
cout << "niewykonalne" << endl;
continue;
}
if(n == 0)
{
for(int i = 1; i <= p; i++)
cout << 0;
cout << endl;
}
else if(n > 0)
{
nt = n;
while(nt)
{
int c = nt % 2;
v.push_back(c);
nt /= 2;
}
v.push_back(0);
if(v.size() > p)
{
cout << "niewykonalne" << endl;
continue;
}
if(v.size() < p)
{
int d = p - v.size();
for(int i = 0; i < d; i++)
v.push_back(0);
}
for(int i = v.size() - 1; i >= 0; i--)
cout << v[i];
cout << endl;
v.clear();
}
else if(n < 0)
{
tmm = pow(double(2), double(p));
mm = (long long)(floor(tmm));
nt = mm + n;
while(nt)
{
int c = nt % 2;
v.push_back(c);
nt /= 2;
}
if(v.size() > p)
{
cout << "niewykonalne" << endl;
continue;
}
if(v.size() < p)
{
int d = p - v.size();
for(int i = 0; i < d; i++)
v.push_back(1);
}
for(int i = v.size() - 1; i >= 0; i--)
cout << v[i];
cout << endl;
v.clear();
}
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y21hdGg+CiNpbmNsdWRlIDx2ZWN0b3I+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oKQp7CiAgICBpb3NfYmFzZTo6c3luY193aXRoX3N0ZGlvKDApOwogICAgaW50IHQsIHA7CiAgICBsb25nIGxvbmcgbiwgbnQsIG1tOwogICAgZG91YmxlIHRtbTsKICAgIHZlY3RvciA8aW50PiB2OwoKICAgIGNpbiA+PiB0OwogICAgd2hpbGUodC0tKQogICAgewogICAgICAgIGNpbiA+PiBuID4+IHA7CgogICAgICAgIHRtbSA9IHBvdyhkb3VibGUoMiksIGRvdWJsZShwIC0gMSkpOwogICAgICAgIG1tID0gKGxvbmcgbG9uZykoZmxvb3IodG1tKSk7CgogICAgICAgIGlmKG4gPCAoLTEpKm1tKQogICAgICAgIHsKICAgICAgICAgICAgY291dCA8PCAibmlld3lrb25hbG5lIiA8PCBlbmRsOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CgogICAgICAgIGlmKG4gPiBtbSAtIDEpCiAgICAgICAgewogICAgICAgICAgICBjb3V0IDw8ICJuaWV3eWtvbmFsbmUiIDw8IGVuZGw7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KCiAgICAgICAgaWYobiA9PSAwKQogICAgICAgIHsKICAgICAgICAgICAgZm9yKGludCBpID0gMTsgaSA8PSBwOyBpKyspCiAgICAgICAgICAgICAgICBjb3V0IDw8IDA7CiAgICAgICAgICAgIGNvdXQgPDwgZW5kbDsKICAgICAgICB9CgogICAgICAgIGVsc2UgaWYobiA+IDApCiAgICAgICAgewogICAgICAgICAgICBudCA9IG47CgogICAgICAgICAgICB3aGlsZShudCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgaW50IGMgPSBudCAlIDI7CiAgICAgICAgICAgICAgICB2LnB1c2hfYmFjayhjKTsKICAgICAgICAgICAgICAgIG50IC89IDI7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIHYucHVzaF9iYWNrKDApOwoKICAgICAgICAgICAgaWYodi5zaXplKCkgPiBwKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBjb3V0IDw8ICJuaWV3eWtvbmFsbmUiIDw8IGVuZGw7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYodi5zaXplKCkgPCBwKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBpbnQgZCA9IHAgLSB2LnNpemUoKTsKICAgICAgICAgICAgICAgIGZvcihpbnQgaSA9IDA7IGkgPCBkOyBpKyspCiAgICAgICAgICAgICAgICAgICAgdi5wdXNoX2JhY2soMCk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZvcihpbnQgaSA9IHYuc2l6ZSgpIC0gMTsgaSA+PSAwOyBpLS0pCiAgICAgICAgICAgICAgICBjb3V0IDw8IHZbaV07CiAgICAgICAgICAgIGNvdXQgPDwgZW5kbDsKICAgICAgICAgICAgdi5jbGVhcigpOwogICAgICAgIH0KCiAgICAgICAgZWxzZSBpZihuIDwgMCkKICAgICAgICB7CiAgICAgICAgICAgIHRtbSA9IHBvdyhkb3VibGUoMiksIGRvdWJsZShwKSk7CiAgICAgICAgICAgIG1tID0gKGxvbmcgbG9uZykoZmxvb3IodG1tKSk7CgogICAgICAgICAgICBudCA9IG1tICsgbjsKCiAgICAgICAgICAgIHdoaWxlKG50KQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBpbnQgYyA9IG50ICUgMjsKICAgICAgICAgICAgICAgIHYucHVzaF9iYWNrKGMpOwogICAgICAgICAgICAgICAgbnQgLz0gMjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYodi5zaXplKCkgPiBwKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBjb3V0IDw8ICJuaWV3eWtvbmFsbmUiIDw8IGVuZGw7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYodi5zaXplKCkgPCBwKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBpbnQgZCA9IHAgLSB2LnNpemUoKTsKICAgICAgICAgICAgICAgIGZvcihpbnQgaSA9IDA7IGkgPCBkOyBpKyspCiAgICAgICAgICAgICAgICAgICAgdi5wdXNoX2JhY2soMSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZvcihpbnQgaSA9IHYuc2l6ZSgpIC0gMTsgaSA+PSAwOyBpLS0pCiAgICAgICAgICAgICAgICBjb3V0IDw8IHZbaV07CiAgICAgICAgICAgIGNvdXQgPDwgZW5kbDsKICAgICAgICAgICAgdi5jbGVhcigpOwogICAgICAgIH0KICAgIH0KICAgIHJldHVybiAwOwp9Cg==