#include <iostream>
#include<stdio.h>
using namespace std;
#define MAX 1000000001
#define gc getchar_unlocked
inline int inp(){
int n=0;
char c;
c=gc();
while(c<'0' && c>'9'){
c=gc();
}
while(c>='0' && c<='9'){
n=(n<<3)+(n<<1)+c-'0';
c=gc();
}
return n;
}
int ar[45]={0};
int f=0;
void precompute()
{
int i;
ar[0]=0;
ar[1]=1;
ar[2]=2;
for(i=3;i<=44 ; i++)
{
ar[i]=ar[i-1]+ar[i-2];
//cout<<ar[i]<<" ";
}
}
int bin_search(int x) // 1 2 3 5 8 13 21 34
{
int low=0, high=44, mid;
while(low<=high)
{
mid=(low+high)/2;
if(ar[mid]==x)
{
f=1;
return (mid-1);
}
else if(ar[mid]<x)
{
if(ar[mid]<x && ar[mid+1]>x)
{
f=2;
return mid;
}
else
low=mid+1;
}
else if(ar[mid]>x)
{
if(ar[mid]>x && ar[mid-1]<x)
{
f=2;
return mid-1;
}
else
high = mid-1;
}
}
}
int main() {
// your code goes here
precompute();
int test;
test=inp();
while(test--)
{
int i,n,c,pos,t,k;
n=inp();
int sum=0;
pos=bin_search(n);
//cout<< "pos is "<<pos<<endl;
if(f==1)
{
printf("1");
for(i=1;i<pos;i++)
printf("0");
}
else if(f==2)
{
printf("10");
sum=ar[pos];
c=sum;
k=pos-2;
int inc=0;
while(k>0)
{
sum +=ar[k];
if(sum>n)
{
sum =c;
printf("0");
}
else if(sum<n)
{
inc=1;
c=sum;
printf("1");
}
else if(sum==n)
{
printf("1");
t=k;
break;
}
k= k-1-inc;
if(inc == 1)
printf("0");
inc=0;
//cout<<"k is and sum is "<<k<<" "<<sum<<endl;
}
}
//cout<<"t is "<<t<<endl;
if(t!=1)
{
for(i=t-1;i>=1;i--)
printf("0");
}
printf("\n");
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZTxzdGRpby5oPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKI2RlZmluZSBNQVggMTAwMDAwMDAwMQojZGVmaW5lIGdjIGdldGNoYXJfdW5sb2NrZWQKCmlubGluZSBpbnQgaW5wKCl7CglpbnQgbj0wOwoJY2hhciBjOwoJYz1nYygpOwoJd2hpbGUoYzwnMCcgJiYgYz4nOScpewoJCWM9Z2MoKTsKCX0KCXdoaWxlKGM+PScwJyAmJiBjPD0nOScpewoJCW49KG48PDMpKyhuPDwxKStjLScwJzsKCQljPWdjKCk7Cgl9CglyZXR1cm4gbjsKfQoKaW50IGFyWzQ1XT17MH07CmludCBmPTA7Cgp2b2lkIHByZWNvbXB1dGUoKQp7CmludCBpOwphclswXT0wOwphclsxXT0xOwphclsyXT0yOwogZm9yKGk9MztpPD00NCA7IGkrKykKICAgIHsKICAgIGFyW2ldPWFyW2ktMV0rYXJbaS0yXTsKICAgIAogICAgLy9jb3V0PDxhcltpXTw8IiAiOwogICAgfQp9CgppbnQgYmluX3NlYXJjaChpbnQgeCkgICAvLyAxIDIgMyA1IDggMTMgMjEgMzQKewppbnQgbG93PTAsIGhpZ2g9NDQsIG1pZDsKIHdoaWxlKGxvdzw9aGlnaCkKIHsKIG1pZD0obG93K2hpZ2gpLzI7CiBpZihhclttaWRdPT14KQogIHsKICBmPTE7CiAgcmV0dXJuIChtaWQtMSk7CiAgfQogZWxzZSBpZihhclttaWRdPHgpCiB7CiBpZihhclttaWRdPHggJiYgYXJbbWlkKzFdPngpCiB7CiAgZj0yOwogIHJldHVybiBtaWQ7CiB9CiBlbHNlCiAgbG93PW1pZCsxOwogfQogZWxzZSBpZihhclttaWRdPngpCiB7CiAgaWYoYXJbbWlkXT54ICYmIGFyW21pZC0xXTx4KQogIHsKICBmPTI7CiAgIHJldHVybiBtaWQtMTsKICB9CiAgZWxzZQogICBoaWdoID0gbWlkLTE7CiB9CiB9Cn0KCgppbnQgbWFpbigpIHsKCS8vIHlvdXIgY29kZSBnb2VzIGhlcmUKCXByZWNvbXB1dGUoKTsKCWludCB0ZXN0OwoJCgl0ZXN0PWlucCgpOwoJd2hpbGUodGVzdC0tKQoJewoJaW50IGksbixjLHBvcyx0LGs7CgkKICAgIG49aW5wKCk7CiAgICBpbnQgc3VtPTA7CiAgICBwb3M9YmluX3NlYXJjaChuKTsKICAgIC8vY291dDw8ICJwb3MgaXMgIjw8cG9zPDxlbmRsOwogICAgaWYoZj09MSkKICAgIHsKICAgIHByaW50ZigiMSIpOwogICAgZm9yKGk9MTtpPHBvcztpKyspCiAgICAgcHJpbnRmKCIwIik7CiAgICB9CiAgICBlbHNlIGlmKGY9PTIpCiAgICB7CiAgICBwcmludGYoIjEwIik7CiAgICBzdW09YXJbcG9zXTsKICAgIGM9c3VtOwogICAgaz1wb3MtMjsKICAgIGludCBpbmM9MDsKICAgIHdoaWxlKGs+MCkKICAgIHsKICAgICAgc3VtICs9YXJba107CiAgICAgIGlmKHN1bT5uKQogICAgICAgewogICAgICAgc3VtID1jOwogICAgICAgcHJpbnRmKCIwIik7CiAgICAgICB9CiAgICAgICBlbHNlIGlmKHN1bTxuKQogICAgICAgewogICAgICAgaW5jPTE7CiAgICAgICBjPXN1bTsKICAgICAgIHByaW50ZigiMSIpOwogICAgICAgfQogICAgICAgZWxzZSBpZihzdW09PW4pCiAgICAgICB7CiAgICAgICBwcmludGYoIjEiKTsKICAgICAgIHQ9azsKICAgICAgIGJyZWFrOwogICAgICAgfQogICAgICAgaz0gay0xLWluYzsKICAgICAgIGlmKGluYyA9PSAxKQogICAgICAgIHByaW50ZigiMCIpOwogICAgICAgaW5jPTA7CiAgICAgIC8vY291dDw8ImsgaXMgYW5kIHN1bSBpcyAiPDxrPDwiICI8PHN1bTw8ZW5kbDsKICAgICB9CiAgICB9CiAgICAvL2NvdXQ8PCJ0IGlzICI8PHQ8PGVuZGw7CiAgICAgaWYodCE9MSkKICAgICB7CiAgICAgIGZvcihpPXQtMTtpPj0xO2ktLSkKICAgICAgIHByaW50ZigiMCIpOwogICAgIH0KICAgIAogICAgcHJpbnRmKCJcbiIpOwogICAgfQoJcmV0dXJuIDA7Cn0=
MTAwCjMwMAozMDEKMzAyCjMwMwozMDQKOTk5OTk5OQo4ODg4Cjc3Nwo5OTkKMTAwMDAwMDAKOTk5OTk5CjMwCjEwMDAwMDAwMDAKMTAwMDAwMDAKMTAwMDAwMDAKMTAwMDAwMDAKOTk5OTk5OQo4ODg4Cjc3Nwo5OTkKMTAwMDAwMDAKOTk5OTk5CjMwCjEwMDAwMDAwMDAKMTAwMDAwMDAKMTAwMDAwMDAKMTAwMDAwMDAKOTk5OTk5OQo4ODg4Cjc3Nwo5OTkKMTAwMDAwMDAKOTk5OTk5CjMwCjEwMDAwMDAwMDAKMTAwMDAwMDAKMTAwMDAwMDAKMTAwMDAwMDAKOTk5OTk5OQo4ODg4Cjc3Nwo5OTkKMTAwMDAwMDAKOTk5OTk5CjMwCjEwMDAwMDAwMDAKMTAwMDAwMDAKMTAwMDAwMDAKMTAwMDAwMDAKOTk5OTk5OQo4ODg4Cjc3Nwo5OTkKMTAwMDAwMDAKOTk5OTk5CjMwCjEwMDAwMDAwMDAKMTAwMDAwMDAKMTAwMDAwMDAKMTAwMDAwMDAKOTk5OTk5OQo4ODg4Cjc3Nwo5OTkKMTAwMDAwMDAKOTk5OTk5CjMwCjEwMDAwMDAwMDAKMTAwMDAwMDAKMTAwMDAwMDAKMTAwMDAwMDAKOTk5OTk5OQo4ODg4Cjc3Nwo5OTkKMTAwMDAwMDAKOTk5OTk5CjMwCjEwMDAwMDAwMDAKMTAwMDAwMDAKMTAwMDAwMDAKMTAwMDAwMDAKOTk5OTk5OQo4ODg4Cjc3Nwo5OTkKMTAwMDAwMDAKOTk5OTk5CjMwCjEwMDAwMDAwMDAKMTAwMDAwMDAKMTAwMDAwMDAKMTAwMDAwMDAKOTk5OTk5OQo4ODg4Cjc3Nwo5OTkKMTAwMDAwMDAKOTk5OTk5CjMwCjEwMDAwMDAwMDAKMTAwMDAwMDAKMTAwMDAwMDAKMTAwMDAwMDAKOTk5OTk5OQo4ODg4Cjc3Nwo5OTkKMTAwMDAwMDAKOTk5OTk5
100
300
301
302
303
304
9999999
8888
777
999
10000000
999999
30
1000000000
10000000
10000000
10000000
9999999
8888
777
999
10000000
999999
30
1000000000
10000000
10000000
10000000
9999999
8888
777
999
10000000
999999
30
1000000000
10000000
10000000
10000000
9999999
8888
777
999
10000000
999999
30
1000000000
10000000
10000000
10000000
9999999
8888
777
999
10000000
999999
30
1000000000
10000000
10000000
10000000
9999999
8888
777
999
10000000
999999
30
1000000000
10000000
10000000
10000000
9999999
8888
777
999
10000000
999999
30
1000000000
10000000
10000000
10000000
9999999
8888
777
999
10000000
999999
30
1000000000
10000000
10000000
10000000
9999999
8888
777
999
10000000
999999
30
1000000000
10000000
10000000
10000000
9999999
8888
777
999
10000000
999999