MianKing tiene un grafo con $n$ nodos y $m$ aristas, donde la $i$-ésima arista $(x_i, y_i)$ tiene un peso de $w_i$. El Árbol de Expansión Mínima (MST, por sus siglas en inglés) del grafo es un árbol de expansión con la suma mínima de pesos de sus aristas. MianKing olvidó los pesos $w_{1 \dots m}$, pero aún recuerda que $w_{1 \dots m}$ son una permutación de $\{1 \dots m\}$ y que el conjunto de aristas del Árbol de Expansión Mínima de este grafo consiste en las primeras $n - 1$ aristas. Ahora debes ayudar a MianKing a calcular cuántas permutaciones $w_{1 \dots m}$ satisfacen las condiciones anteriores. La respuesta puede ser muy grande, por lo que solo necesitas imprimir la respuesta módulo $998\,244\,353$.
Entrada
La primera línea contiene dos enteros $n$ y $m$ ($2 \le n \le 20$, $n - 1 \le m \le 100$). Luego hay $m$ líneas, donde la $i$-ésima línea contiene dos enteros $x_i$ e $y_i$ ($1 \le x_i, y_i \le n$). Se garantiza que las aristas $(x_1, y_1), \dots, (x_{n-1}, y_{n-1})$ forman un árbol con $n$ nodos. Ten en cuenta que el grafo puede tener múltiples aristas y bucles.
Salida
Imprime la respuesta módulo $998\,244\,353$.
Ejemplos
Entrada 1
3 3 1 2 2 3 3 1
Salida 1
2
Entrada 2
4 5 1 2 2 3 2 4 1 4 1 2
Salida 2
25
Entrada 3
3 6 1 2 2 3 1 1 1 1 1 1 1 1
Salida 3
720