#include int main () { int n = 0; int res = 0; long long dp[2000][4001] = {}; long long mod_num = 998244353LL; res = scanf("%d", &n); dp[0][0] = 0LL; dp[0][1] = 1LL; dp[0][2] = 0LL; for (int i = 1; i < n; i++) { dp[i][0] = 0LL; dp[i][2*(i+1)] = 0LL; for (int j = 1; j < 2*(i+1); j++) { dp[i][j] = dp[i-1][j-1]*((long long)((j-1)*(2*(i+1)-j-1)+1)); dp[i][j] %= mod_num; if (j < 2*i) { long long cnt = (long long) (((2*i-j)*(2*i-j+1))/2); dp[i][j] += dp[i-1][j]*cnt; dp[i][j] %= mod_num; } if (j > 2) { long long cnt = (long long) (((j-2)*(j-1))/2); dp[i][j] += dp[i-1][j-2]*cnt; dp[i][j] %= mod_num; } } } for (int i = 0; i < 2*n+1; i++) { printf("%lld\n", dp[n-1][i]); } return 0; }