You are given a string s consisting of lowercase Latin letters. Character c is called k-dominant iff each substring of s with length at least k contains this character c.

You have to find minimum k such that there exists at least one k-dominant character.

Input

The first line contains string s consisting of lowercase Latin letters (1 ≤ |s| ≤ 100000).

Output

Print one number — the minimum value of k such that there exists at least one k-dominant character.

Examples

Input

abacaba


Output

2


Input

zzzzz


Output

1


Input

abcde


Output

3
s=list(input())
se=set(s)
mi=1000000000
#sy=''
if len(se)==len(s):
    mi=len(s)//2
else:
    for i in se:
        mlo=0
        lo=0
        for j in range(len(s)):
            if s[j]!=i:
                lo+=1
                if j==len(s)-1:
                    if lo>mlo:
                        mlo=lo
                        lo=0
            else:
                if lo>mlo:
                    mlo=lo
                lo=0
        if mlo<mi:
            mi=mlo
            #sy=i
print(mi+1)
