Busy Beaver gọi một mảng gồm $N$ số nguyên không âm $A_1, A_2, \dots, A_N$ là không thể tránh khỏi (unavoidable) nếu điều kiện sau đây thỏa mãn:
- Với mọi cặp mảng $(B_1, B_2, \dots, B_N)$ và $(C_1, C_2, \dots, C_N)$, trong đó $B_i, C_i$ là các số nguyên không âm sao cho $B_i + C_i = A_i$ với mọi $i$ từ $1$ đến $N$, điều kiện sau luôn đúng:
- Tồn tại một mảng $(X_1, X_2, \dots, X_N)$ sao cho với mọi $i$, $X_i = B_i$ hoặc $X_i = C_i$, và $X_1 \oplus X_2 \oplus \dots \oplus X_N = 0$.
Ở đây $\oplus$ biểu thị phép toán XOR bit.
Bạn được cho các số $N, K$. Hãy tìm số lượng các mảng không thể tránh khỏi có độ dài $N$, trong đó $0 \le A_i \le 2^K - 1$ với mọi $i$. Vì số lượng này có thể rất lớn, hãy in ra kết quả theo modulo một số nguyên tố $P$.
Dữ liệu vào
Dòng duy nhất của mỗi bộ dữ liệu chứa ba số nguyên $N, K, P$ ($1 \le N, K \le 100$, $10^8 < P < 10^9$, $P$ là số nguyên tố).
Dữ liệu ra
In ra một số nguyên duy nhất: số lượng các mảng không thể tránh khỏi có độ dài $N$, trong đó $0 \le A_i \le 2^K - 1$ với mọi $i$.
Ví dụ
Ví dụ 1
10 1 111111113
Ví dụ 1
1024
Ví dụ 2
14 2 263652251
Ví dụ 2
237
Ví dụ 3
100 100 998244353
Ví dụ 3
914574519
Ghi chú
Đối với ví dụ đầu tiên, tất cả các mảng với các phần tử thuộc $\{0, 1\}$ đều là không thể tránh khỏi (bạn hãy thử tự tìm hiểu lý do), vì vậy có $2^{10}$ mảng như vậy với độ dài $10$.