// By Riiven
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define scanInt(i) scanf("%d",&i)
#define scanStr(i) scanf("%s",&i)
#define scanLong(i) scanf("%lld",&i)
#define printInt(i) printf("%d\n",i)
#define printLong(i) printf("%lld\n",i)
#define printStr(i) printf("%s\n",i)
#define vci vector<int>
#define vcll vector<long long>
#define pb push_back
#define MOD 100000007
void swap(ll *a,ll *b){ll temp = *a; *a = *b; *b = temp;}
int main() {
//freopen("input.txt","r",stdin);
int t;
scanInt(t);
while(t--){
char s[1000001];
cin>>s;
int len = strlen(s);
// calculating mid
int mid,n1,n2;
if(len %2 == 0){
n2 = len / 2;
n1 = n2-1;
}else{
mid = len / 2;
n1 = mid - 1;
n2 = mid + 1;
}
// 1. case if all digits are 9 or given number are palindrome
int l = 0;
int r = len-1;
bool flag_palin = true;
bool flag_all9 = true;
while(l<=r){
if(s[l] != s[r]){
flag_palin = false;
flag_all9 = false;
}
if(s[l] == s[r] && s[l] != '9'){
flag_all9 = false;
}
l++;
r--;
}
if(flag_palin){ // if given number are palindrome
if(flag_all9){ // if all digits are 9
s[0] = '1';
int i;
for(i=1;i<len;i++)
s[i] = '0';
s[i] = '1';
s[i+1] = '\0';
cout<<s<<endl;
}else{
if(len % 2 == 0){
if(s[n1] == '9'){
while(s[n1] == '9'){
s[n1] = '0';
s[n2] = '0';
n1--;
n2++;
}
}
s[n1] = (char)(s[n1]+1);
s[n2] = s[n1];
cout<<s<<endl;
}else{
if(len == 1){
s[0] = (char)(s[0]+1);
if(s[0] == '0'){
s[0] = '1';
s[1] = '1';
}
}else{
if(s[mid] == '9'){
s[mid] = '0';
while(s[n1] == '9'){
s[n1] = '0';
s[n2] = '0';
n1--;
n2++;
}
s[n1] = (char)(s[n1]+1);
s[n2] = (char)(s[n2]+1);
}else{
s[mid] = (char)(s[mid]+1);
}
}
cout<<s<<endl;
}
}
}else{
// if given number are not palindrome
while(s[n1] == s[n2]){
n1--;
n2++;
}
if(len % 2 == 0){
if(s[n1]<s[n2]){
s[n1] = (char)(s[n1]+1);
}
while(n1 >= 0 && n2 < len){
s[n2] = s[n1];
n1--;
n2++;
}
cout<<s<<endl;
}else{
if(s[n1]<s[n2]){
if(s[mid] == '9'){
int temp = mid;
while(s[temp] == '9'){
s[temp] = '0';
temp--;
}
s[temp] = (char)(s[temp]+1);
}else{
s[mid] = (char)(s[mid]+1);
}
}
n1 = mid - 1;
n2 = mid + 1;
while(n1 >= 0 && n2 < len){
s[n2] = s[n1];
n1--;
n2++;
}
cout<<s<<endl;
}
}
}
return 0;
}
Ly8gQnkgUmlpdmVuCgojaW5jbHVkZSA8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCiNkZWZpbmUgbGwgbG9uZyBsb25nCiNkZWZpbmUgc2NhbkludChpKSBzY2FuZigiJWQiLCZpKQojZGVmaW5lIHNjYW5TdHIoaSkgc2NhbmYoIiVzIiwmaSkKI2RlZmluZSBzY2FuTG9uZyhpKSBzY2FuZigiJWxsZCIsJmkpCiNkZWZpbmUgcHJpbnRJbnQoaSkgcHJpbnRmKCIlZFxuIixpKQojZGVmaW5lIHByaW50TG9uZyhpKSBwcmludGYoIiVsbGRcbiIsaSkKI2RlZmluZSBwcmludFN0cihpKSBwcmludGYoIiVzXG4iLGkpCiNkZWZpbmUgdmNpIHZlY3RvcjxpbnQ+CiNkZWZpbmUgdmNsbCB2ZWN0b3I8bG9uZyBsb25nPgojZGVmaW5lIHBiIHB1c2hfYmFjawojZGVmaW5lIE1PRCAxMDAwMDAwMDcKCnZvaWQgc3dhcChsbCAqYSxsbCAqYil7bGwgdGVtcCA9ICphOyAqYSA9ICpiOyAqYiA9IHRlbXA7fQoKaW50IG1haW4oKSB7Ci8vZnJlb3BlbigiaW5wdXQudHh0IiwiciIsc3RkaW4pOwogICAgaW50IHQ7CiAgICBzY2FuSW50KHQpOwogICAgd2hpbGUodC0tKXsKICAgICAgICBjaGFyIHNbMTAwMDAwMV07CiAgICAgICAgY2luPj5zOwoKICAgICAgICBpbnQgbGVuID0gc3RybGVuKHMpOwogICAgICAgIC8vIGNhbGN1bGF0aW5nIG1pZAogICAgICAgIGludCBtaWQsbjEsbjI7CiAgICAgICAgaWYobGVuICUyID09IDApewogICAgICAgICAgICBuMiA9IGxlbiAvIDI7CiAgICAgICAgICAgIG4xID0gbjItMTsKICAgICAgICB9ZWxzZXsKICAgICAgICAgICAgbWlkID0gbGVuIC8gMjsKICAgICAgICAgICAgbjEgPSBtaWQgLSAxOwogICAgICAgICAgICBuMiA9IG1pZCArIDE7CiAgICAgICAgfQogICAgICAgIC8vIDEuIGNhc2UgaWYgYWxsIGRpZ2l0cyBhcmUgOSBvciBnaXZlbiBudW1iZXIgYXJlIHBhbGluZHJvbWUKICAgICAgICBpbnQgbCA9IDA7CiAgICAgICAgaW50IHIgPSBsZW4tMTsKICAgICAgICBib29sIGZsYWdfcGFsaW4gPSB0cnVlOwogICAgICAgIGJvb2wgZmxhZ19hbGw5ID0gdHJ1ZTsKICAgICAgICB3aGlsZShsPD1yKXsKICAgICAgICAgICAgaWYoc1tsXSAhPSBzW3JdKXsKICAgICAgICAgICAgICAgIGZsYWdfcGFsaW4gPSBmYWxzZTsKICAgICAgICAgICAgICAgIGZsYWdfYWxsOSA9IGZhbHNlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmKHNbbF0gPT0gc1tyXSAmJiBzW2xdICE9ICc5Jyl7CiAgICAgICAgICAgICAgICBmbGFnX2FsbDkgPSBmYWxzZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBsKys7CiAgICAgICAgICAgIHItLTsKICAgICAgICB9CgogICAgICAgIGlmKGZsYWdfcGFsaW4peyAvLyBpZiBnaXZlbiBudW1iZXIgYXJlIHBhbGluZHJvbWUKICAgICAgICAgICAgaWYoZmxhZ19hbGw5KXsgLy8gaWYgYWxsIGRpZ2l0cyBhcmUgOQogICAgICAgICAgICAgICAgc1swXSA9ICcxJzsKICAgICAgICAgICAgICAgIGludCBpOwogICAgICAgICAgICAgICAgZm9yKGk9MTtpPGxlbjtpKyspCiAgICAgICAgICAgICAgICAgICAgc1tpXSA9ICcwJzsKICAgICAgICAgICAgICAgIHNbaV0gPSAnMSc7CiAgICAgICAgICAgICAgICBzW2krMV0gPSAnXDAnOwogICAgICAgICAgICAgICAgY291dDw8czw8ZW5kbDsKICAgICAgICAgICAgfWVsc2V7CiAgICAgICAgICAgICAgICBpZihsZW4gJSAyID09IDApewogICAgICAgICAgICAgICAgICAgIGlmKHNbbjFdID09ICc5Jyl7CiAgICAgICAgICAgICAgICAgICAgICAgIHdoaWxlKHNbbjFdID09ICc5Jyl7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzW24xXSA9ICcwJzsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNbbjJdID0gJzAnOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgbjEtLTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG4yKys7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIHNbbjFdID0gKGNoYXIpKHNbbjFdKzEpOwogICAgICAgICAgICAgICAgICAgICAgICBzW24yXSA9IHNbbjFdOwogICAgICAgICAgICAgICAgICAgIGNvdXQ8PHM8PGVuZGw7CiAgICAgICAgICAgICAgICB9ZWxzZXsKICAgICAgICAgICAgICAgICAgICBpZihsZW4gID09IDEpewogICAgICAgICAgICAgICAgICAgICAgICBzWzBdID0gKGNoYXIpKHNbMF0rMSk7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmKHNbMF0gPT0gJzAnKXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNbMF0gPSAnMSc7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzWzFdID0gICcxJzsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH1lbHNlewogICAgICAgICAgICAgICAgICAgICAgICBpZihzW21pZF0gPT0gJzknKXsKICAgICAgICAgICAgICAgICAgICAgICAgc1ttaWRdID0gJzAnOwogICAgICAgICAgICAgICAgICAgICAgICB3aGlsZShzW24xXSA9PSAnOScpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgc1tuMV0gPSAnMCc7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzW24yXSA9ICcwJzsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG4xLS07CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuMisrOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIHNbbjFdID0gKGNoYXIpKHNbbjFdKzEpOwogICAgICAgICAgICAgICAgICAgICAgICBzW24yXSA9IChjaGFyKShzW24yXSsxKTsKICAgICAgICAgICAgICAgICAgICAgICAgfWVsc2V7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzW21pZF0gPSAoY2hhcikoc1ttaWRdKzEpOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGNvdXQ8PHM8PGVuZGw7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9ZWxzZXsKICAgICAgICAgICAgIC8vIGlmIGdpdmVuIG51bWJlciBhcmUgbm90IHBhbGluZHJvbWUKICAgICAgICAgICAgd2hpbGUoc1tuMV0gPT0gc1tuMl0pewogICAgICAgICAgICAgICAgbjEtLTsKICAgICAgICAgICAgICAgIG4yKys7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYobGVuICUgMiA9PSAwKXsKICAgICAgICAgICAgICAgIGlmKHNbbjFdPHNbbjJdKXsKICAgICAgICAgICAgICAgICAgICBzW24xXSA9IChjaGFyKShzW24xXSsxKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHdoaWxlKG4xID49IDAgJiYgbjIgPCBsZW4pewogICAgICAgICAgICAgICAgICAgICAgICBzW24yXSA9IHNbbjFdOwogICAgICAgICAgICAgICAgICAgICAgICBuMS0tOwogICAgICAgICAgICAgICAgICAgICAgICBuMisrOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY291dDw8czw8ZW5kbDsKICAgICAgICAgICAgfWVsc2V7CiAgICAgICAgICAgICAgICBpZihzW24xXTxzW24yXSl7CiAgICAgICAgICAgICAgICAgICAgaWYoc1ttaWRdID09ICc5Jyl7CiAgICAgICAgICAgICAgICAgICAgICAgIGludCB0ZW1wID0gbWlkOwogICAgICAgICAgICAgICAgICAgICAgICB3aGlsZShzW3RlbXBdID09ICc5Jyl7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzW3RlbXBdID0gJzAnOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVtcC0tOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIHNbdGVtcF0gPSAoY2hhcikoc1t0ZW1wXSsxKTsKICAgICAgICAgICAgICAgICAgICB9ZWxzZXsKICAgICAgICAgICAgICAgICAgICAgICAgc1ttaWRdID0gKGNoYXIpKHNbbWlkXSsxKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBuMSA9IG1pZCAtIDE7CiAgICAgICAgICAgICAgICBuMiA9IG1pZCArIDE7CiAgICAgICAgICAgICAgICB3aGlsZShuMSA+PSAwICYmIG4yIDwgbGVuKXsKICAgICAgICAgICAgICAgICAgICAgICAgc1tuMl0gPSBzW24xXTsKICAgICAgICAgICAgICAgICAgICAgICAgbjEtLTsKICAgICAgICAgICAgICAgICAgICAgICAgbjIrKzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGNvdXQ8PHM8PGVuZGw7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgogICAgcmV0dXJuIDA7Cn0KCg==