import sys stdin = sys.stdin inf = 1 << 60 mod = 1000000007 sys.setrecursionlimit(10**7) ni = lambda: int(ns()) nin = lambda y: [ni() for _ in range(y)] na = lambda: list(map(int, stdin.readline().split())) nan = lambda y: [na() for _ in range(y)] nf = lambda: float(ns()) nfn = lambda y: [nf() for _ in range(y)] nfa = lambda: list(map(float, stdin.readline().split())) nfan = lambda y: [nfa() for _ in range(y)] ns = lambda: stdin.readline().rstrip() nsn = lambda y: [ns() for _ in range(y)] ncl = lambda y: [list(ns()) for _ in range(y)] nas = lambda: stdin.readline().split() n = ni() b = bin(n) if bin(n).count("1") == 1: print("-1 -1 -1") else: l = len(b) bit = 0 for i in range(l): if (b[i] == '1'): bit = l - i - 1 break print(n, n & ~(1 << bit), 1 << bit)