#include using namespace std; typedef long long int ll; typedef unsigned long long ull; typedef long double ld; int dx[8] = { 1, 0, -1, 0, 1, 1, -1, -1 }, dy[8] = { 0, 1, 0, -1, 1, -1, 1, -1 }; const long long mod = 998244353; const ll inf = 1LL << 60; const int INF = 5e8; int main() { ll s; cin >> s; vector v; while (s) { ll n = sqrt(s); s -= n * n; v.push_back(n); } cout << v.size() << endl; for (auto i : v) { cout << 1LL * i * i << " "; } }