#include <bits/stdc++.h>
using namespace std;
#define int long long
string str ;
string tmp = "";
int dp[20][10][2][2][2];
int f(int pos, int last, bool flag, bool valid,bool dup)
{
if(pos == str.size())
{
return dup;
}
int &d = dp[pos][last][flag][valid][dup];
if(d != -1) return d;
int lim = 9;
if(flag==false) lim = str[pos]-'0';
int res = 0;
for(int i = 0; i <= lim; i++)
{
if(valid)
{
if((last == i))
{
res += f(pos+1,i,((i < lim) | flag),true,true);
}else
{
res += f(pos+1,i,((i < lim) | flag),true,dup);
}
}else
{
if(i)
{
res += f(pos+1,i,((i < lim) | flag), true,dup);
}else
{
res += f(pos+1,i,((i < lim) | flag),false,dup);
}
}
}
return d = res;
}
void solve()
{
int n;
cin >> n;
int l = 1; int r = 1e18;
int ans = 0;
while(l <= r)
{
int mid = l + (r-l)/2;
memset(dp,-1,sizeof dp);
str = to_string(mid);
int good = f(0,0,false,false,false);
if(mid-good < n)
{
l = mid+1;
}else
{
ans = mid;
r = mid-1;
}
}
cout << ans << endl;
}
int32_t main()
{
int t = 1;
cin >> t;
while(t--) solve();
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgaW50IGxvbmcgbG9uZwoKc3RyaW5nIHN0ciA7CnN0cmluZyB0bXAgPSAiIjsKCmludCBkcFsyMF1bMTBdWzJdWzJdWzJdOwppbnQgZihpbnQgcG9zLCBpbnQgbGFzdCwgYm9vbCBmbGFnLCBib29sIHZhbGlkLGJvb2wgZHVwKQp7CiAgICBpZihwb3MgPT0gc3RyLnNpemUoKSkKICAgIHsKICAgICAgICByZXR1cm4gZHVwOwogICAgfQoKICAgIGludCAmZCA9IGRwW3Bvc11bbGFzdF1bZmxhZ11bdmFsaWRdW2R1cF07CiAgICBpZihkICE9IC0xKSByZXR1cm4gZDsKCiAgICBpbnQgbGltID0gOTsKICAgIGlmKGZsYWc9PWZhbHNlKSBsaW0gPSBzdHJbcG9zXS0nMCc7CiAgICBpbnQgcmVzID0gMDsKCiAgICBmb3IoaW50IGkgPSAwOyBpIDw9IGxpbTsgaSsrKQogICAgewogICAgICAgIGlmKHZhbGlkKQogICAgICAgIHsKICAgICAgICAgICAgaWYoKGxhc3QgPT0gaSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHJlcyArPSBmKHBvcysxLGksKChpIDwgbGltKSB8IGZsYWcpLHRydWUsdHJ1ZSk7CiAgICAgICAgICAgIH1lbHNlIAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICByZXMgKz0gZihwb3MrMSxpLCgoaSA8IGxpbSkgfCBmbGFnKSx0cnVlLGR1cCk7CiAgICAgICAgICAgIH0KICAgICAgICB9ZWxzZSAKICAgICAgICB7CiAgICAgICAgICAgIGlmKGkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHJlcyArPSBmKHBvcysxLGksKChpIDwgbGltKSB8IGZsYWcpLCB0cnVlLGR1cCk7CiAgICAgICAgICAgIH1lbHNlIAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICByZXMgKz0gZihwb3MrMSxpLCgoaSA8IGxpbSkgfCBmbGFnKSxmYWxzZSxkdXApOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQogICAgcmV0dXJuIGQgPSByZXM7Cn0KCnZvaWQgc29sdmUoKQp7CiAgICBpbnQgbjsKICAgIGNpbiA+PiBuOwoKICAgIGludCBsID0gMTsgaW50IHIgPSAxZTE4OwogICAgaW50IGFucyA9IDA7CiAgICB3aGlsZShsIDw9IHIpCiAgICB7CiAgICAgICAgaW50IG1pZCA9IGwgKyAoci1sKS8yOwogICAgICAgIG1lbXNldChkcCwtMSxzaXplb2YgZHApOwogICAgICAgIHN0ciA9IHRvX3N0cmluZyhtaWQpOwogICAgICAgIGludCBnb29kID0gZigwLDAsZmFsc2UsZmFsc2UsZmFsc2UpOwogICAgICAgIGlmKG1pZC1nb29kIDwgbikKICAgICAgICB7CiAgICAgICAgICAgIGwgPSBtaWQrMTsKICAgICAgICB9ZWxzZSAKICAgICAgICB7CiAgICAgICAgICAgIGFucyA9IG1pZDsKICAgICAgICAgICAgciA9IG1pZC0xOwogICAgICAgIH0KICAgIH0KICAgIGNvdXQgPDwgYW5zIDw8IGVuZGw7CiAgCn0KCmludDMyX3QgbWFpbigpCnsKICAgIGludCB0ID0gMTsKICAgIGNpbiA+PiB0OwogICAgd2hpbGUodC0tKSBzb2x2ZSgpOwp9