#include <bits/stdc++.h>
using namespace std;
template <typename T>
inline void read(T& x) {
  x = 0;
  char s = (char)getchar();
  bool f = false;
  while (!(s >= '0' && s <= '9')) {
    if (s == '-') f = true;
    s = (char)getchar();
  }
  while (s >= '0' && s <= '9') {
    x = (x << 1) + (x << 3) + s - '0';
    s = (char)getchar();
  }
  if (f) x = (~x) + 1;
}
const long long N = 2e6 + 5, mod = 998244353, MAX = 2e6;
long long power[N], fac[N], inv[N];
inline long long quickpow(long long a, long long b, long long p = mod) {
  long long res = 1;
  while (b) {
    if (b & 1) res = res * a % p;
    a = a * a % p;
    b >>= 1;
  }
  return res;
}
inline long long C(long long n, long long m) {
  if (n < m) return 0;
  return fac[n] * inv[m] % mod * inv[n - m] % mod;
}
long long n;
long long ans[N];
void init() {
  long long limit = 2e5;
  long long x = 810;
  ans[1] = 10;
  ans[2] = 180;
  for (register long long i = 3; i <= limit; ++i) {
    ans[i] = ans[i - 1] * 10 + x;
    x *= 10;
    ans[i] %= mod, x %= mod;
  }
}
signed main() {
  init();
  long long n;
  cin >> n;
  for (register long long i = n; i >= 1; --i) cout << ans[i] << " ";
  cout << '\n';
  return 0;
}
