Dla macierzy całkowitoliczbowej $A$ o wymiarach $n \times m$, lokalne maksimum macierzy $A$ to pozycja $(i, j)$ ($1 \le i \le n$ oraz $1 \le j \le m$), taka że $A_{i,j}$ nie jest mniejsze od żadnej innej liczby całkowitej w $i$-tym wierszu lub $j$-tej kolumnie.
Na przykład, w macierzy $3 \times 3$ $$ \begin{bmatrix} 2 & 5 & 4 \\ 2 & 1 & 6 \\ 2 & 2 & 2 \end{bmatrix}, $$ istnieją trzy lokalne maksima: pozycje $(1, 2)$, $(2, 3)$ oraz $(3, 1)$ o wartościach odpowiednio $5$, $6$ oraz $2$.
Macierz całkowitoliczbowa $A$ o wymiarach $n \times m$ jest dobra wtedy i tylko wtedy, gdy spełnia następujące dwa warunki: W macierzy $A$ znajduje się dokładnie jedno lokalne maksimum. Każda liczba całkowita od $1$ do $n \times m$ występuje w macierzy $A$ dokładnie raz.
Mając dane $n$, $m$ oraz liczbę pierwszą $P$, Twoim zadaniem jest obliczenie liczby dobrych macierzy o wymiarach $n \times m$ modulo $P$.
Wejście
Pierwsza linia zawiera trzy liczby całkowite $n$, $m$ oraz $P$, gdzie $1 \le n, m \le 3000$ oraz $10^8 \le P \le 10^9 + 7$. Gwarantuje się, że $P$ jest liczbą pierwszą.
Wyjście
Wypisz w jednej linii pojedynczą liczbę całkowitą: liczbę dobrych macierzy modulo $P$.
Przykład
Wejście 1
2 2 1000000007
Wyjście 1
16
Wejście 2
4 3 1000000007
Wyjście 2
95800320
Wejście 3
100 100 998244353
Wyjście 3
848530760