Dla danych liczb całkowitych $n$ oraz $k$, oblicz, ile istnieje różnych spójnych grafów nieskierowanych o $n$ wierzchołach, które spełniają następujące warunki:
- Graf nie posiada pętli własnych, a między dowolnymi dwoma wierzchołkami istnieje co najwyżej jedna krawędź.
- Wagi wszystkich krawędzi są liczbami całkowitymi z przedziału $[1, k]$.
- Dla każdej krawędzi w grafie istnieje co najmniej jedno drzewo rozpinające minimalne (MST), które zawiera tę krawędź.
Dwa grafy są różne wtedy i tylko wtedy, gdy istnieje para wierzchołków $(u, v)$, dla której w jednym grafie istnieje krawędź między $u$ a $v$, a w drugim nie, lub gdy wagi krawędzi między $u$ a $v$ w obu grafach są różne.
Oblicz liczbę grafów spełniających powyższe warunki, wynik podaj modulo 998244353.
Wejście
Każdy plik testowy zawiera tylko jeden zestaw danych.
Pierwsza linia zawiera dwie liczby całkowite $n$ oraz $k$ ($1 \le n \le 5 \times 10^4$, $1 \le k \le 10$).
Wyjście
Wypisz jedną liczbę całkowitą oznaczającą wynik modulo 998244353.
Przykład
Wejście 1
3 1
Wyjście 1
4
Wejście 2
4 2
Wyjście 2
377
Wejście 3
235 7
Wyjście 3
928998036