#include int dp[201][101][10001]; int add_mod(int *a, int b, int mod) { *a += b; if(*a >= mod) *a -= mod; return *a; } int main() { int n, m; scanf("%d%d", &n, &m); dp[0][0][0] = 1; for(int i = 0; i < n*2; i++) { for(int j = i&1; j <= i && j <= n*2-i; j += 2) { for(int k = 0; k < 10001; k++) { if(dp[i][j][k] == 0) continue; if(j != n*2-i) add_mod(dp[i+1][j+1]+k+(i-j)/2, dp[i][j][k], m); if(j) add_mod(dp[i+1][j-1]+k, dp[i][j][k], m); } } } for(int i = 0; i <= n*n;) printf("%d\n", dp[n*2][0][i++]); return 0; }