#include <iostream>
#include <string>
//#include <bits/stdc++.h>
using namespace std;
string revString(string n) {
string res = "";
while (n.length()) {
res += n.back();
n.pop_back();
}
return res;
}
bool all9s(const string &s) {
for (int i=0; i<s.length(); i++)
if (s[i] != '9') return 0;
return 1;
}
int main() {
int t;
cin >> t;
while (t--) {
string k;
cin >> k;
if (all9s(k)) {
cout << 1;
for (int i=1; i<k.length(); i++)
cout << 0;
cout << 1 << endl;
continue;
}
int size = k.length();
int center = k.length() / 2;
if (size%2) {
string sub = k.substr(0, center);
string back_half = k.substr(center+1, center);
string rev = revString(sub);
if (rev > back_half) sub += k[center] + rev;
else {
sub = to_string( stoi( sub+k[center]) + 1);
rev = revString(sub);
sub.pop_back();
sub += rev;
}
k = sub;
}
else {
string sub = k.substr(0, center);
string back_half = k.substr(center, center);
string rev = revString(sub);
if (rev > back_half) sub += rev;
else {
int tmp = stoi(sub) + 1;
sub = to_string(tmp);
rev = revString(sub);
sub += rev;
}
k = sub;
}
cout << k << endl;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgovLyNpbmNsdWRlIDxiaXRzL3N0ZGMrKy5oPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnN0cmluZyByZXZTdHJpbmcoc3RyaW5nIG4pIHsKICAgIHN0cmluZyByZXMgPSAiIjsKICAgIAogICAgd2hpbGUgKG4ubGVuZ3RoKCkpIHsKICAgICAgICByZXMgKz0gbi5iYWNrKCk7CiAgICAgICAgbi5wb3BfYmFjaygpOwogICAgfQogICAgCiAgICByZXR1cm4gcmVzOwp9Cgpib29sIGFsbDlzKGNvbnN0IHN0cmluZyAmcykgewogICAgZm9yIChpbnQgaT0wOyBpPHMubGVuZ3RoKCk7IGkrKykKICAgICAgICBpZiAoc1tpXSAhPSAnOScpIHJldHVybiAwOwogICAgcmV0dXJuIDE7Cn0KCmludCBtYWluKCkgewogICAgaW50IHQ7CiAgICBjaW4gPj4gdDsKICAgIAogICAgd2hpbGUgKHQtLSkgewogICAgICAgIHN0cmluZyBrOwogICAgICAgIGNpbiA+PiBrOwogICAgICAgIAogICAgICAgIGlmIChhbGw5cyhrKSkgewogICAgICAgICAgICBjb3V0IDw8IDE7CiAgICAgICAgICAgIGZvciAoaW50IGk9MTsgaTxrLmxlbmd0aCgpOyBpKyspCiAgICAgICAgICAgICAgICBjb3V0IDw8IDA7CiAgICAgICAgICAgIGNvdXQgPDwgMSA8PCBlbmRsOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgaW50IHNpemUgPSBrLmxlbmd0aCgpOwogICAgICAgIGludCBjZW50ZXIgPSBrLmxlbmd0aCgpIC8gMjsKICAgICAgICAKICAgICAgICBpZiAoc2l6ZSUyKSB7CiAgICAgICAgICAgIHN0cmluZyBzdWIgPSBrLnN1YnN0cigwLCBjZW50ZXIpOwogICAgICAgICAgICBzdHJpbmcgYmFja19oYWxmID0gay5zdWJzdHIoY2VudGVyKzEsIGNlbnRlcik7CiAgICAgICAgICAgIHN0cmluZyByZXYgPSByZXZTdHJpbmcoc3ViKTsKICAgICAgICAgICAgCiAgICAgICAgICAgIGlmIChyZXYgPiBiYWNrX2hhbGYpIHN1YiArPSBrW2NlbnRlcl0gKyByZXY7CiAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgc3ViID0gdG9fc3RyaW5nKCBzdG9pKCBzdWIra1tjZW50ZXJdKSArIDEpOwogICAgICAgICAgICAgICAgcmV2ID0gcmV2U3RyaW5nKHN1Yik7CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIHN1Yi5wb3BfYmFjaygpOwogICAgICAgICAgICAgICAgc3ViICs9IHJldjsKICAgICAgICAgICAgICAgIAogICAgICAgICAgICB9CiAgICAgICAgICAgIGsgPSBzdWI7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgICBzdHJpbmcgc3ViID0gay5zdWJzdHIoMCwgY2VudGVyKTsKICAgICAgICAgICAgc3RyaW5nIGJhY2tfaGFsZiA9IGsuc3Vic3RyKGNlbnRlciwgY2VudGVyKTsKICAgICAgICAgICAgc3RyaW5nIHJldiA9IHJldlN0cmluZyhzdWIpOwogICAgICAgICAgICAKICAgICAgICAgICAgaWYgKHJldiA+IGJhY2tfaGFsZikgc3ViICs9IHJldjsKICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICBpbnQgdG1wID0gc3RvaShzdWIpICsgMTsKICAgICAgICAgICAgICAgIHN1YiA9IHRvX3N0cmluZyh0bXApOwogICAgICAgICAgICAgICAgcmV2ID0gcmV2U3RyaW5nKHN1Yik7CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIHN1YiArPSByZXY7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgayA9IHN1YjsKICAgICAgICB9CiAgICAgICAgY291dCA8PCBrIDw8IGVuZGw7CiAgICB9CiAgICByZXR1cm4gMDsKfQo=