N,M=map(int,input().split()) mod=M dp= [[0]*(N**2+1) for j in range(N)] for j in range(N): dp[j][0]=1 for i in range(N): dp2=[[0]*(N**2+1) for j in range(N)] for j in range(N): dp2[j][0]=1 #0~iok,j以下、和がkになる者 for k in range(1,N**2+1): if j!=0: dp2[j][k]+=dp2[j-1][k]#全てj-1以下の時 dp2[j][k]%=mod if i!=0 and k>=j and j<=i: dp2[j][k]+=dp[j][k-j]#jが含まれる。 dp2[j][k]%=mod dp=dp2 for i in range(N**2+1): print(dp[N-1][i])