# 入力を受け取る N = int(input()) # 階乗とその逆元を前計算 fact = [0] * (N + 1) inv = [0] * (N + 1) fact[0] = 1 for i in range(1, N + 1): fact[i] = (i * fact[i - 1]) % 998244353 inv[N] = pow(fact[N], -1, 998244353) for i in range(N, 0, -1): inv[i - 1] = (i * inv[i]) % 998244353 # 二項係数を計算する関数 def binom(r, c): if r < 0 or c < 0 or r < c: return 0 return (((fact[r] * inv[c]) % 998244353) * inv[r - c]) % 998244353 # 答えの係数を計算 ans = [0] * (N + 1) for i in range(-N, N + 1, 2): ans[abs(i)] += binom(N, (N + i) // 2) if ans[abs(i)] >= 998244353: ans[abs(i)] -= 998244353 # 答えを出力 print(*ans)