编程题
### 问题描述
小齐心中想着一个介于 $1$ 和 $N$ 之间的数字。乐乐开始向他提问,问题的形式如下:
在考虑一个区间 $[l, r]$,其中 $1 \leq l \leq r \leq N$,数字是否在该区间 $[l, r]$ 中?
总共有 $\binom{N+1}{2} = \frac{(N+1)(N+2)}{2}$ 个不同的问题。这意味着乐乐有 $2^{\frac{(N+1)(N+2)}{2}}$ 种可能的问题集合。你需要计算其中有多少问题集合,使得乐乐始终能够唯一确定小齐选择的数字。
### 输入格式
第一行包含两个整数 $N$ 和 $P$。
### 输出格式
在第一行上打印答案对 $P$ 取模的结果。
### 样例输入
```
3 1000000007
```
### 样例输出
```
48
```
### 评测数据规模
$1 \leq N \leq 300$,$10^8 \leq P \leq 10^9 + 7$,$P$ 为质数。