大型强子对撞机的最新报告指出,发现了一种全新的基本粒子——“夸克”(skwarki),它们具有此前未知的、令人惊叹的物理特性。与其他基本粒子(通常成对产生)不同,在碰撞中会产生一组 $N$ 个具有不同量子态的夸克,物理学家决定将其编号为 $1, 2, \dots, N$。这组夸克总是具有固定的顺序,即排列成一个序列。不同组的排列顺序可能不同——换句话说,夸克构成了集合 $\{1, 2, \dots, N\}$ 的一个排列。序列中的每个元素都与另外两个元素相邻,除了第一个和最后一个元素,它们只有一个邻居。
像许多其他粒子一样,夸克通常寿命很短。在每一毫秒内,如果一个夸克的任何邻居具有更高的量子态(即编号更大),该夸克就会立即衰变。例如,在排列 $(3, 2, 5, 1, 4, 6)$ 中,第一毫秒内,夸克 $2, 1$ 和 $4$ 衰变,剩下序列 $(3, 5, 6)$。第二毫秒后,只剩下夸克 $6$。最后一个剩下的夸克总是具有最大编号 $N$,并且是稳定的。
探测器显示,在最近的一次碰撞中,产生的一组夸克恰好衰变了 $K$ 毫秒,直到只剩下一个夸克。有多少种可能的夸克组(排列)能产生这种效果?由于我们只需要验证一个研究假设,你只需输出结果除以某个质数 $P$ 后的余数。
输入格式
输入仅一行,包含整数 $N, K$ 和 $P$ ($1 \le K \le N \le 1000, N \ge 2, 10^8 \le P \le 10^9$,$P$ 为质数),各数之间用空格分隔。
输出格式
输出一行一个整数,表示可能的夸克组数量对 $P$ 取模的结果。
样例
输入 1
5 3 100000007
输出 1
4
说明
样例说明:我们寻找五个夸克组成的、在三毫秒内衰变的组。共有四种这样的组: $(4, 1, 3, 2, 5)$ $(4, 2, 3, 1, 5)$ $(5, 1, 3, 2, 4)$ $(5, 2, 3, 1, 4)$