It seems like the year of 2013 came only yesterday. Do you know a curious fact? The year of 2013 is the first year after the old 1987 with only distinct digits.

Now you are suggested to solve the following problem: given a year number, find the minimum year number which is strictly larger than the given one and has only distinct digits.

Input

The single line contains integer y (1000 ≤ y ≤ 9000) — the year number.

Output

Print a single integer — the minimum year number that is strictly larger than y and all it's digits are distinct. It is guaranteed that the answer exists.

Examples

Input

1987


Output

2013


Input

2013


Output

2014
import sys
def rr(): return sys.stdin.readline().rstrip()
#def pp(*args, end="\n"): sys.stdout.write(" ".join(map(str, args))+end)
rp = print
def print(*args, **kwargs): rp("DBG:# ", *args, **kwargs, file=sys.stderr)
def rri(): return int(rr())
def rrl(): return list(map(int, rr().split()))
def rrt(): return tuple(map(int, rr().split()))
def rrle(): return (line.rstrip() for line in sys.stdin.readlines())
def rrtl(): return [tuple(map(int, l.split())) for l in rrle()]
from collections import defaultdict
def mus(d=lambda: 0): return defaultdict(lambda: defaultdict(d))
def dd0(d=lambda: 0): return defaultdict(d)
def ms(x, y, d=0): return [[0]*y for i in range(x)]
def ar(x, d=0): return [d]*x
def ppm(m, n=0, x=0, y=0): print("\n".join(("\t".join((str(m[j][i]) for j in range(y or n))) for i in range(x or n))))
def ppa(a, n): print("\t".join(map(str, a[0:n])))
def ppl(a=0, x=[1]): x[0]=a or (x[0]+1); print("-"+"- -"*14+"-# "+str(x[0]-2)+" #-"+"- -"*14+"-")
def fltn(a): (i for sub in a for i in sub)
def yn(x): return "YES" if x else "NO"
def cpc(arr): return zip(arr, arr[1:])
from itertools import accumulate
from itertools import groupby
from itertools import permutations
def grp(x, key=None): return ((i, sum(1 for _ in g)) for i, g in groupby(x, key=key))
import math
def rnar(): return (*rrl(), rrl())
def rn(): return (*rrl(),)
def dpp(a, b=""): print("#| {} |#:^ {} ^:".format(a, b))
def str_join(i, sep=" "): return sep.join(map(str, i))
MOD17 = 10**9 + 7

def read():
    return (rri(),)

def solve(x):
    x += 1
    while True:
        if all((
            *(str(x)[0] != i for num, i in enumerate(str(x)) if num != 0),
            *(str(x)[1] != i for num, i in enumerate(str(x)) if num != 1),
            *(str(x)[2] != i for num, i in enumerate(str(x)) if num != 2),
            *(str(x)[3] != i for num, i in enumerate(str(x)) if num != 3),
            )):
            break
        x += 1

    return x

if __name__ == "__main__":
    #test_count = rri()
    test_count = 1
    for _ in range(test_count):
        input_data = read()
        result = solve(*input_data)
        rp(result)
