Xiao Ai zadała Xiao Lan zadanie: w kwadracie $n\times n$, w którym w każdej komórce umieszczono liczbę całkowitą z zakresu $1\sim c$, ile jest sposobów wypełnienia kwadratu tak, aby w każdym wierszu wystąpiły co najmniej dwie różne liczby oraz w każdej kolumnie wystąpiły co najmniej dwie różne liczby?
Xiao Lan, która dopiero co nauczyła się podstaw kombinatoryki, szybko rozwiązała ten problem.
Wtedy Xiao Ai zwiększyła poziom trudności: ile jest takich sposobów, jeśli wszystkie liczby na przekątnej $i=j$ muszą być równe $1$?
Pomóż Xiao Lan obliczyć wynik modulo $998244353$.
Wejście
W jednej linii podano dwie dodatnie liczby całkowite $n, c$, zgodnie z treścią zadania.
Wyjście
Wypisz jedną liczbę oznaczającą liczbę sposobów modulo $998244353$.
Przykład
Przykład 1
Wejście
2 3
Wyjście
4
Przykład 2
Wejście
3 3
Wyjście
416
Przykład 3
Wejście
5 2
Wyjście
592260
Podzadania
Dla $100\%$ danych wejściowych zachodzi $2\le n\le 10^6$ oraz $2\le c\le 10^8$.
| Punkt danych | $1,2$ | $3$ | $4$ | $5$ | $6$ | $7$ | $8$ | $9$ | $10$ |
|---|---|---|---|---|---|---|---|---|---|
| $n=$ | $2$ | $5$ | $50$ | $200$ | $500$ | $2000$ | $5000$ | $10^5$ | $10^6$ |