import sys, time, random from collections import deque, Counter, defaultdict input = lambda: sys.stdin.readline().rstrip() ii = lambda: int(input()) mi = lambda: map(int, input().split()) li = lambda: list(mi()) inf = 2 ** 63 - 1 mod = 998244353 p = ii() ans = 'No' for i in range(1, p + 1): jj = p - i * i if jj <= 0: break ok = 0 ng = jj + 1 while abs(ok - ng) > 1: mid = (ok + ng) // 2 if mid * mid <= jj: ok = mid else: ng = mid if i * i + ok * ok == p: ans = 'Yes' print(ans)