#include using namespace std; template int pow(int x, T n, int mod = std::numeric_limits::max()) { int res = 1; while (n > 0) { if (n & 1) res = static_cast(res) * static_cast(x) % mod; x = static_cast(x) * static_cast(x) % mod; n >>= 1; } return res; } template int64_t pow(int64_t x, T n, int64_t mod = std::numeric_limits::max()) { int64_t res = 1; while (n > 0) { if (n & 1) res = static_cast<__int128>(res) * static_cast<__int128>(x) % mod; x = static_cast<__int128>(x) * static_cast<__int128>(x) % mod; n >>= 1; } return res; } int main() { ios::sync_with_stdio(false); cin.tie(0); int N; cin >> N; vector res; for (int i = 0; i < N + 1; i++) { for (int j = 0; j < N + 1; j++) { res.emplace_back(pow(INT64_C(2), i) * pow(INT64_C(5), j)); } } sort(res.begin(), res.end()); for (auto r : res) { cout << r << '\n'; } return 0; }