N = int(input()) if N==1: print(2) elif N==2: print(3) else: K = 1 while K*K<=N: K += 1 ans = N-1 for p in range(2,K): a = N%p if a==0:continue x = (N-a)//p flag = True while x: if x%p!=a: flag = False break x = (x-a)//p if flag: ans = p break if ansN:break if N%i==0: M.add(i) M.add(N//i) M = sorted(list(M)) for a in M: p = N//a-1 if p>=K: ans = min(ans,p) print(ans)