#include <bits/stdc++.h>
using namespace std;
#define int long long
const int oo = 1e3 + 3;
int t, n, k;
int a[oo];
map<int, int> mp, visited;
void solve() {
cin >> n;
for (int i = 1; i <= n; i++) {
cin >> a[i];
}
}
int next(int n) {
int res = 0;
for (int x = n % 10; n != 0; n /= 10) {
res += x * x;
}
return res;
}
int check_cycle(int n) {
if (n == 1) {
return 1;
}
if (visited[n]) {
return -1;
}
cout << n <<" ";
visited[n] = 1;
int next_n = next(n);
mp[n] = check_cycle(next_n);
return mp[n];
}
void prerequisite() {
for (int i = 1; i <= 729; i++) {
mp[i] = check_cycle(i);
}
}
int32_t main() {
cin >> t;
check_cycle(t);
// prerequisite();
// while(t--) {
// solve();
// }
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgojZGVmaW5lIGludCBsb25nIGxvbmcKCmNvbnN0IGludCBvbyA9IDFlMyArIDM7CgppbnQgdCwgbiwgazsKaW50IGFbb29dOwptYXA8aW50LCBpbnQ+IG1wLCB2aXNpdGVkOwoKdm9pZCBzb2x2ZSgpIHsKICAgIGNpbiA+PiBuOwogICAgZm9yIChpbnQgaSA9IDE7IGkgPD0gbjsgaSsrKSB7CiAgICAJY2luID4+IGFbaV07CiAgICB9Cn0KCmludCBuZXh0KGludCBuKSB7CglpbnQgcmVzID0gMDsKCWZvciAoaW50IHggPSBuICUgMTA7IG4gIT0gMDsgbiAvPSAxMCkgewoJCXJlcyArPSB4ICogeDsKCX0KCXJldHVybiByZXM7Cn0KCmludCBjaGVja19jeWNsZShpbnQgbikgewoJaWYgKG4gPT0gMSkgewoJCXJldHVybiAxOwoJfQoJCglpZiAodmlzaXRlZFtuXSkgewoJCXJldHVybiAtMTsKCX0KCQoJY291dCA8PCBuIDw8IiAiOwoJCgl2aXNpdGVkW25dID0gMTsKCQoJaW50IG5leHRfbiA9IG5leHQobik7CgltcFtuXSA9IGNoZWNrX2N5Y2xlKG5leHRfbik7CgkKCXJldHVybiBtcFtuXTsKfQoKdm9pZCBwcmVyZXF1aXNpdGUoKSB7Cglmb3IgKGludCBpID0gMTsgaSA8PSA3Mjk7IGkrKykgewoJCW1wW2ldID0gY2hlY2tfY3ljbGUoaSk7Cgl9Cn0KCmludDMyX3QgbWFpbigpIHsKCiAgICBjaW4gPj4gdDsKICAgIGNoZWNrX2N5Y2xlKHQpOwogICAgCiAgICAvLyBwcmVyZXF1aXNpdGUoKTsKICAgIAogICAgLy8gd2hpbGUodC0tKSB7CiAgICAvLyAgICAgc29sdmUoKTsKICAgIC8vIH0KICAgIAogICAgcmV0dXJuIDA7Cn0=