在实数轴上有 $2n$ 个不同的点,编号从 $1$ 到 $2n$。如果一种将这些点分为 $n$ 对 $(a_1, b_1), \dots, (a_n, b_n)$ 的方案,满足每一对点都可以用一条曲线连接,且这 $n$ 条曲线互不相交,也不与实数轴相交,则称该方案为“好的”。请问有多少种“好的”划分方案?由于这个数字可能很大,请输出其对给定的质数 $p$ 取模的结果。
如果两种划分方案可以通过重排对的顺序以及重排每一对中点的顺序使得第一种方案变为第二种,则认为这两种划分方案是相同的。
输入格式
输入仅包含一行,包含两个整数 $N$ 和 $p$:点的最大数量和质数模数 ($1 \le N \le 200; 10^8 < p < 10^9$)。
输出格式
输出 $N$ 行:分别表示 $n = 1, 2, \dots, N$ 时问题的答案。所有答案均需对 $p$ 取模。
样例
输入 1
5 998244353
输出 1
1 3 14 84 592