/*#include <bits/stdc++.h>
using namespace std;
int segmenta[2000001], segmentb[2000001], n, k, arr[500001], brr[500001];
long long int suma[500001]={}, sumb[500001]={};
void make(int node, int start, int End)
{
if(start==End)
{
segmenta[node]=arr[start];
segmentb[node]=brr[start];
return ;
}
int mid=(start+End)/2;
make(node*2, start, mid);
make(node*2+1, mid+1, End);
segmenta[node]=segmenta[node*2]+segmenta[node*2+1];
segmentb[node]=segmentb[node*2]+segmentb[node*2+1];
}
long long int asum(int node, int start, int End, int l, int r)
{
if(start>=l&&End<=r)return segmenta[node];
if(start>r||End<l)return 0;
int mid=(start+End)/2;
return asum(node*2, start, mid, l, r)+asum(node*2+1, mid+1, End, l, r);
}
long long int bsum(int node, int start, int End, int l, int r)
{
if(start>=l&&End<=r)return segmentb[node];
if(start>r||End<l)return 0;
int mid=(start+End)/2;
return bsum(node*2, start, mid, l, r)+bsum(node*2+1, mid+1, End, l, r);
}
int binary(long long int ha)
{
int start=1, End=n-k+1, mid, ret=1;
while(start<End)
{
mid=(start+End)/2;
if(sumb[mid]<ha)
{
start=mid;
ret=start;
}
if(sumb[mid]>ha)
{
End=mid-1;
}
else
{
return mid;
}
}
return ret;
}
long long int Abs(long long int x)
{
if(x<0)return -x;
return x;
}
int main()
{
long long int ans=2100000000000000;
scanf("%d %d", &n, &k);
for(int i=1;i<=n;i++)scanf("%d", &arr[i]);
for(int i=1;i<=n;i++)scanf("%d", &brr[i]);
make(1, 1, n);
for(int i=1;i<=n-k+1;i++)
{
suma[i]=asum(1, 1, n, i, i+k-1)-2*arr[i];
sumb[i]=(bsum(1, 1, n, i, i+k-1)-2*brr[i])*(-1);
}
int index;
for(int i=1;i<=n-k+1;i++)
{
index=binary(-suma[i]);
if(index+1<=n-k+1)
ans=min(ans, Abs((suma[i]+sumb[index+1])));
ans=min(ans, Abs((suma[i]+sumb[index])));
}
printf("%lld", ans);
//|s1-s2+b-a|
}*/
/*
#include <bits/stdc++.h>
using namespace std;
int main()
{
int m, f, n;
scanf("%d %d %d", &m, &f, &n);
}*/
#include <bits/stdc++.h>
using namespace std;
int main()
{
int ans[10]= {0, 1, 2, 5, 6, 8, 9};
int ha61[10]= {0, 99999, 199998, 499995, 599991, 799992, 899994};
int ha62[10]= {0, 9990, 19980, 49950, 59910, 79920, 89940};
int ha63[10]= {0, 900, 1800, 4500, 5100,7200, 8400};
int ha64[10]= {0, -900, -1800, -4500, -5100, -7200, -8400};
int ha65[10]= {0, -9990, -19980, -49950, -59910, -79920, -89940};
int ha66[10]= {0, -99999, -199998, -499995, -599991, -799992, -899994};
int ha51[10]= {0, 9999, 19998, 49995, 59991, 79992, 89994};
int ha52[10]= {0, 990, 1980, 4950, 5910, 7920, 8940};
int ha53[10]= {0, 0, 0, 0, -300, 0, 300};
int ha54[10]= {0, -990, -1980, -4950, -5910, -7920, -8940};
int ha55[10]= {0, -9999, -19998, -49995, -59991, -79992, -89994};
int ha41[10]= {0, 999, 1998, 4995, 5991, 7992, 8994};
int ha42[10]= {0, 90, 180, 450, 510, 720, 840};
int ha43[10]= {0, -90, -180, -450, -510, -720, -840};
int ha44[10]= {0, -999, -1998, -4995, -5991, -7992, -8994};
int ha31[10]= {0, 99, 198, 495, 591, 792, 894};
int ha32[10]= {0, 0, 0, 0, -30, 0, -30};
int ha33[10]= {0, -99, -198, -495, -591, -792, -894};
int ha21[10]= {0, 9, 18, 45, 51, 72, 84};
int ha22[10]= {0, -9, -18, -45, -51, -72, -84};
int ha11[10]= {0, 0, 0, 0, -3, 0, 3};
int t;
scanf("%d", &t);
while(t--)
{
int x;
scanf("%d", &x);
for(int i=1; i<=6; i++)
{
if(ha11[i]==x)
{
printf("%d\n", ans[i]);
continue;
}
}
for(int i1=1; i1<=6; i1++)
{
for(int i2=0; i2<=6; i2++)
{
if(ha21[i1]+ha22[i2]==x)
{
printf("%d\n", ans[i1]*10+ans[i2]);
continue;
}
}
}
for(int i1=1; i1<=6; i1++)
{
for(int i2=0; i2<=6; i2++)
{
for(int i3=0; i3<=6; i3++)
{
if(ha31[i1]+ha32[i2]+ha33[i3]==x)
{
printf("%d", ans[i1]*100+ans[i2]*10+ans[i3]);
continue;
}
}
}
}
for(int i1=1; i1<=6; i1++)
{
for(int i2=0; i2<=6; i2++)
{
for(int i3=0; i3<=6; i3++)
{
for(int i4=0; i4<=6; i4++)
{
if(ha41[i1]+ha42[i2]+ha43[i3]+ha44[i4]==x)
{
printf("%d\n", ans[i1]*1000+ans[i2]*100+ans[i3]*10+ans[i4]);
continue;
}
}
}
}
}
for(int i1=1; i1<=6; i1++)
{
for(int i2=0; i2<=6; i2++)
{
for(int i3=0; i3<=6; i3++)
{
for(int i4=0; i4<=6; i4++)
{
for(int i5=0;i5<=6;i5++)
{
if(ha51[i1]+ha52[i2]+ha53[i3]+ha54[i4]+ha55[i5]==x)
{
printf("%d\n", ans[i1]*10000+ans[i2]*1000+ans[i3]*100+ans[i4]*10+ans[i5]);
continue;
}
}
}
}
}
}
}
}



