An integer is said to be a palindrome if it is equal to its
reverse.  For example, 79197 and 324423 are palindromes. In this task
you will be given an integer N, 1 ≤ N ≤ 1000000.  You must find
the smallest integer M ≥ N such that M is a prime number and M is a
palindrome.  
For example, if N is 31 then the answer is 101.

Input
A single integer N, (1 ≤ N ≤ 1000000), on a single line.

Output
Your output must consist of a single integer, the smallest prime
palindrome greater than or equal to N.

Example

Input:
31
Output:
101
def isNumberPrime(n):
    if n == 2: return True
    if n % 2 == 0 or n == 1: return False
    for num in xrange(3, int(n**0.5) + 2, 2):
        if n % num == 0:
            return False
    return True

def isPalindrome(n):
    s = str(n)
    return s==s[::-1]

def prpalin():
    """1 <= N <= 1000000"""
    N = int(raw_input())
    while not (isPalindrome(N) and isNumberPrime(N)):
        N += 1
    print N   

if __name__ == "__main__":
    prpalin()