import math N = int(input()) sieve_limit = int(math.sqrt(N)) prime_factor = [] prime = [] sieve = list(range(2,sieve_limit+1)) j = 0 remainder = N while sieve: factor = sieve[0] prime.append(factor) sieve = [i for i in sieve if i % factor != 0] while remainder % factor == 0: remainder //= factor prime_factor.append(factor) if remainder < factor: break prime_factor.append(remainder) #print(prime) #print(prime_factor) K_limit = math.lcm(*[k-1 for k in prime_factor]) #print(K_limit) remainder = K_limit