PALIN - The Next Palindrome

A positive integer is called a palindrome if its representation in the decimal system is the same when read from left to right and from right to left. For a given positive integer K of not more than 1000000 digits, write the value of the smallest palindrome larger than K to output. Numbers are always displayed without leading zeros.

Input

The first line contains integer t, the number of test cases. Integers K are given in the next t lines.

Output

For each K, output the smallest palindrome larger than K.

Example

Input:
2
808
2133

Output:
818
2222

Warning: large Input/Output data, be careful with certain languages


Added by:adrian
Date:2004-05-01
Time limit:2s-9s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: NODEJS PERL6

hide comments
2016-06-18 19:02:35
what is the reason for getting runtime error(NZEC) IN JAVA?
2016-06-18 01:55:59
TLE. :(
2016-06-16 08:08:57
i'm getting the answer on the ide but on spoj ide i'm getting wrong answer.... can anybody tell me the critical test cases so that rectification can be done



Last edit: 2016-06-19 05:10:07
2016-06-14 11:01:05
Finally!! cleared from to do list...feeling relieved.
2016-06-13 13:52:35
My time limit is exceeding everytime
2016-06-10 16:31:10
what is the answer to 0000000 is it 1 or 0001000? plzzz someone explain it to me!!!!!!!!!!!!
2016-06-10 08:04:39
Very good prblm!!
Hint: jst make a middle palindrome substring greater palindrome and copy remaining letters from left to right side!!
2016-06-03 11:14:56
nice one....break from mid and continue end ways :-) A.C. :-)!!
2016-05-29 09:37:53
Do we have to check the size of the input? in case it's more than 100000 digits?
2016-05-29 08:24:18
what is the answer to 0000000 is it 1 or 0001000?
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.