from math import sqrt s = int(input()) ANS = [] for i in range(15): l, r = 0, 10**10 while r - l > 1: mid = (l + r) // 2 if mid**2 > s: r = mid else: l = mid ANS.append(l**2) s -= l**2 if s == 0: break print(len(ANS)) print(*ANS)