def fac(n): s = 1 if n == 0: return 1 for i in range(1, n+1): s *= i return s def sum_f(n, f, s, i): if s == n: return True if s > n: return False for i in range(i, len(f)): a = fac(i) if a + s > n: break if sum_f(n,f,a+s,i+1): return True return False def solve(n): f = [] for i in range(n): a = fac(i) if a > n: break f.append(a) if sum_f(n, f, 0, 0): return True return False while True: try: n = int(input()) if solve(n): print("YES") else: print('NO') except: break