考虑一个数字 $1, 2, \dots, n$ 的随机排列 $(p_1, p_2, \dots, p_n)$。我们对值 $S = (X_2 + \dots + X_{n-2})^k$ 感兴趣,其中
$$X_i = \begin{cases} 1 & \text{若 } p_{i-1} < p_i > p_{i+1} \text{ 或 } p_{i-1} > p_i < p_{i+1} \\ 0 & \text{其他情况} \end{cases}$$
你需要求出 $S$ 的期望值,将其表示为既约分数 $P/Q$。当然,$P$ 和 $Q$ 可能非常大,因此只需输出 $P \cdot Q^{-1} \pmod{998244353}$ 的值。
输入格式
输入的第一行包含两个整数 $k$ 和 $n$ ($1 \le k \le 30, 3 \le n \le 10^8$)。
输出格式
输出一个整数,即 $P \cdot Q^{-1} \pmod{998244353}$ 的值。
样例
输入 1
1 6
输出 1
665496238
输入 2
2 11
输出 2
232923720
说明
在第一个样例中,期望值为 $8/3$,且 $3^{-1} = 332748118 \pmod{998244353}$,因此 $8 \cdot 3^{-1} = 665496238 \pmod{998244353}$。