#include <bits/stdc++.h>
using namespace std;
string str,str2,original;
int temp,n,carry,mid;
void calculate(){
//cout << "inside calculate\n";
while(str <= original && mid >= 0){
//cout << "While loop, str is: " << str << "\n";
if(carry){
temp = (str[mid] - '0') + carry;
}
else{
temp = (str[mid] - '0') + 1;
}
if(temp > 9){
carry = 1;
str[mid] = '0';
str[n-mid-1] = '0';
}
else{
carry =0;
str[mid] = temp + '0';
str[n-mid-1] = temp + '0';
}
--mid;
}
}
bool all_nine(string str){
for(int i=0; i<str.length(); ++i){
if(str[i] != '9'){
return false;
}
}
return true;
}
int main()
{
int t;
cin >> t;
while(t--){
cin >> str;
if(str.length() == 1){
int temp = stoi(str);
if(temp <= 8){
cout << ++temp << "\n";
continue;
}
}
while(str[0] == '0' && str.length()>=2){
str.erase(0,1);
}
str2 = str;
original = str;
n = str.length();
mid = str.length()/2;
while(mid < n){
str2[mid] = str2[n-mid-1];
++mid;
}
mid = str.length()/2;
str = str2;
if(str > original){
cout << str << "\n";
}
else{
if( all_nine(str)){
string ch = "1";
string ans;
for(int i=0; i<str.length()-1; ++i){
ans += '0';
}
ans += '1';
ans.insert(0,ch);
cout << ans << "\n";;
}
else{
carry=0;
calculate();
cout << str << "\n";
}
}
}
return 0;
}
/*
5
0
00000000000000000000
2
000000000098
19995
*/
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnN0cmluZyBzdHIsc3RyMixvcmlnaW5hbDsKaW50IHRlbXAsbixjYXJyeSxtaWQ7Cgp2b2lkIGNhbGN1bGF0ZSgpewoJLy9jb3V0IDw8ICJpbnNpZGUgY2FsY3VsYXRlXG4iOwoJd2hpbGUoc3RyIDw9IG9yaWdpbmFsICYmIG1pZCA+PSAwKXsKCQkvL2NvdXQgPDwgIldoaWxlIGxvb3AsIHN0ciBpczogIiA8PCBzdHIgPDwgIlxuIjsKCQlpZihjYXJyeSl7CgkJdGVtcCA9IChzdHJbbWlkXSAtICcwJykgKyBjYXJyeTsKCX0KCWVsc2V7CgkJdGVtcCA9IChzdHJbbWlkXSAtICcwJykgKyAxOwoJfQoJCglpZih0ZW1wID4gOSl7CgkJY2FycnkgPSAxOwoJCXN0clttaWRdID0gJzAnOwoJCXN0cltuLW1pZC0xXSA9ICAnMCc7Cgl9CgllbHNlewoJCWNhcnJ5ID0wOwoJCXN0clttaWRdID0gdGVtcCArICcwJzsKCQlzdHJbbi1taWQtMV0gPSB0ZW1wICsgJzAnOwoJfQoJLS1taWQ7Cgl9Cn0KYm9vbCBhbGxfbmluZShzdHJpbmcgc3RyKXsKCWZvcihpbnQgaT0wOyBpPHN0ci5sZW5ndGgoKTsgKytpKXsKCQlpZihzdHJbaV0gIT0gJzknKXsKCQkJcmV0dXJuIGZhbHNlOwoJCX0KCX0KCXJldHVybiB0cnVlOwp9CmludCBtYWluKCkgCnsKCWludCB0OwoJY2luID4+IHQ7Cgl3aGlsZSh0LS0pewoJCWNpbiA+PiBzdHI7CgkJaWYoc3RyLmxlbmd0aCgpID09IDEpewoJCQlpbnQgdGVtcCA9IHN0b2koc3RyKTsKCQkJaWYodGVtcCA8PSA4KXsKCQkJCWNvdXQgPDwgKyt0ZW1wIDw8ICJcbiI7CgkJCQljb250aW51ZTsKCQkJfQoJCQkKCQl9CgkJd2hpbGUoc3RyWzBdID09ICcwJyAmJiBzdHIubGVuZ3RoKCk+PTIpewoJCQlzdHIuZXJhc2UoMCwxKTsKCQl9CgkJCgkJc3RyMiA9IHN0cjsKCQlvcmlnaW5hbCA9IHN0cjsKCQluID0gc3RyLmxlbmd0aCgpOwoJCW1pZCA9IHN0ci5sZW5ndGgoKS8yOwoJCXdoaWxlKG1pZCA8IG4pewoJCQlzdHIyW21pZF0gPSBzdHIyW24tbWlkLTFdOwoJCQkrK21pZDsKCQl9CgkJbWlkID0gc3RyLmxlbmd0aCgpLzI7CgkJc3RyID0gc3RyMjsKCQlpZihzdHIgPiBvcmlnaW5hbCl7CgkJCWNvdXQgPDwgc3RyIDw8ICJcbiI7CgkJfQoJCQllbHNlewoJCQkJaWYoIGFsbF9uaW5lKHN0cikpewoJCQkJc3RyaW5nIGNoID0gIjEiOwoJCQkJc3RyaW5nIGFuczsKCQkJCWZvcihpbnQgaT0wOyBpPHN0ci5sZW5ndGgoKS0xOyArK2kpewoJCQkJCWFucyArPSAnMCc7CgkJCQl9CgkJCQlhbnMgKz0gJzEnOwoJCQkJYW5zLmluc2VydCgwLGNoKTsKCQkJCWNvdXQgPDwgYW5zIDw8ICJcbiI7OwoJCQl9CgkJCWVsc2V7CgkJCQljYXJyeT0wOwoJCQkJY2FsY3VsYXRlKCk7CgkJCQljb3V0IDw8IHN0ciA8PCAiXG4iOwoJCQl9CQoJCX0KCQkKCX0KCXJldHVybiAwOwp9Ci8qCjUKMAowMDAwMDAwMDAwMDAwMDAwMDAwMAoyCjAwMDAwMDAwMDA5OAoxOTk5NQoqLw==