#include <bits/stdc++.h>
using namespace std;
string str,str2,original;
int temp,n,carry,mid;
void calculate(){
while(str <= original && mid > 0){
if(carry){
temp = (str[mid] - '0') + carry;
}
else{
temp = (str[mid] - '0') + 1 + carry;
}
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;
while(str[0] == '0'){
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( 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;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnN0cmluZyBzdHIsc3RyMixvcmlnaW5hbDsKaW50IHRlbXAsbixjYXJyeSxtaWQ7Cgp2b2lkIGNhbGN1bGF0ZSgpewoJd2hpbGUoc3RyIDw9IG9yaWdpbmFsICYmIG1pZCA+IDApewoJCWlmKGNhcnJ5KXsKCQl0ZW1wID0gKHN0clttaWRdIC0gJzAnKSArIGNhcnJ5OwoJfQoJZWxzZXsKCQl0ZW1wID0gKHN0clttaWRdIC0gJzAnKSArIDEgKyBjYXJyeTsKCX0KCQoJaWYodGVtcCA+IDkpewoJCWNhcnJ5ID0gMTsKCQlzdHJbbWlkXSA9ICcwJzsKCQlzdHJbbi1taWQtMV0gPSAgJzAnOwoJfQoJZWxzZXsKCQljYXJyeSA9MDsKCQlzdHJbbWlkXSA9IHRlbXAgKyAnMCc7CgkJc3RyW24tbWlkLTFdID0gdGVtcCArICcwJzsKCX0KCS0tbWlkOwoJfQp9CmJvb2wgYWxsX25pbmUoc3RyaW5nIHN0cil7Cglmb3IoaW50IGk9MDsgaTxzdHIubGVuZ3RoKCk7ICsraSl7CgkJaWYoc3RyW2ldICE9ICc5Jyl7CgkJCXJldHVybiBmYWxzZTsKCQl9Cgl9CglyZXR1cm4gdHJ1ZTsKfQppbnQgbWFpbigpIAp7CglpbnQgdDsKCWNpbiA+PiB0OwoJd2hpbGUodC0tKXsKCQljaW4gPj4gc3RyOwoJCXdoaWxlKHN0clswXSA9PSAnMCcpewoJCQlzdHIuZXJhc2UoMCwxKTsKCQl9CgkJc3RyMiA9IHN0cjsKCQlvcmlnaW5hbCA9IHN0cjsKCQluID0gc3RyLmxlbmd0aCgpOwoJCW1pZCA9IHN0ci5sZW5ndGgoKS8yOwoJCXdoaWxlKG1pZCA8IG4pewoJCQlzdHIyW21pZF0gPSBzdHIyW24tbWlkLTFdOwoJCQkrK21pZDsKCQl9CgkJbWlkID0gc3RyLmxlbmd0aCgpLzI7CgkJc3RyID0gc3RyMjsKCQlpZiggYWxsX25pbmUoc3RyKSl7CgkJCXN0cmluZyBjaCA9ICIxIjsKCQkJc3RyaW5nIGFuczsKCQkJZm9yKGludCBpPTA7IGk8c3RyLmxlbmd0aCgpLTE7ICsraSl7CgkJCQlhbnMgKz0gJzAnOwoJCQl9CgkJCWFucyArPSAnMSc7CgkJCWFucy5pbnNlcnQoMCxjaCk7CgkJCWNvdXQgPDwgYW5zIDw8ICJcbiI7OwoJCX0KCQllbHNlewoJCQljYXJyeT0wOwoJCQljYWxjdWxhdGUoKTsKCQkJY291dCA8PCBzdHIgPDwgIlxuIjsKCQl9CQoJfQoJCglyZXR1cm4gMDsKfQ==