置换

时间限制:20s      空间限制:256MB

题目描述

对于由n个元素的置换P,我们定义f(P)为最小的正整数k,使得P^k为恒等置换.
举个例子,当n=3时,考虑置换P=(3 1 2),那么P^2=(2 3 1),P^3=(1 2 3),因此f(P)=3.
你需要求出对于所有的n元素置换P,f^2(P)的平均值是多少?
为了避免实数误差,假设答案可以表示成a/b的形式,你需要给出整数c,使得b·c≡a(modp)
其中p是读入给定的一个数.


输入格式

一行两个整数n,p.
n ≤ 200, 10000 < p < 10^9


输出格式

一行一个整数,表示模p意义下的答案.


样例输入

3 10007

样例输出

1673
// 答案为 31/6

提示

没有写明提示


题目来源

没有写明来源