def seisuwa(N): M = 0 for n in range(1, N): M += n Nl = [] for i in range(1, N + 1): if N % i == 0: Nl.append(i) for j in range(1, len(Nl) + 1): if M % Nl[-j] == 0: ans = Nl[-j] break return ans def main(): N = int(input()) print(seisuwa(N)) if __name__ == '__main__': main()