N, P = map(int, input().split()) X = [[0] * (N ** 2) for _ in range(N + 2)] X[0][0] = 1 for i in range(2 * N): nX = [[0] * (N ** 2) for _ in range(N + 2)] for j in range(i // 2 + 1): for k in range(N ** 2): if X[j][k]: X[j][k] %= P nX[j][k+j] += X[j][k] if j * 2 < i: nX[j+1][k] += X[j][k] X = nX ANS = [0] * (N ** 2) print(*X[N], sep = "\n")