Se te da un arreglo de enteros $a_1, \dots, a_n$. Un subsegmento de longitud par $a_i, \dots, a_{i+2m-1}$ se llama bueno si $|\max(a_i, \dots, a_{i+m-1}) - \max(a_{i+m}, \dots, a_{i+2m-1})| \le k$.
Definamos una secuencia de enteros $f$ de la siguiente manera:
- $f_1 = 3240$
- $f_2 = 3081$
- $f_3 = 2841$
- $f_4 = 343$
- $f_i = f_{i-1} \cdot 223 + f_{i-2} \cdot 229 + f_{i-3} \cdot f_{i-4} \cdot 239 + 17$ para $i > 4$
Calcula la suma $(a_{i+m-1} + 10) \cdot f_m$ entre todos los subsegmentos buenos. Dado que este número puede ser grande, imprímelo módulo $998\,244\,353$.
Entrada
La primera línea contiene un solo entero $t$ ($1 \le t \le 10^4$) — el número de casos de prueba. A continuación sigue la descripción de los casos de prueba.
La primera línea de cada caso de prueba contiene dos enteros $n, k$ ($1 \le n \le 5 \cdot 10^5$, $0 \le k \le \min(n, 10)$).
La siguiente línea contiene $n$ enteros $a_1, a_2, \dots, a_n$ ($1 \le a_i \le n$).
Se garantiza que la suma de $n$ para todos los casos de prueba no excede $5 \cdot 10^5$.
Salida
Para cada caso de prueba, imprime un solo entero — la respuesta al problema.
Ejemplos
Entrada 1
3 6 0 3 1 3 1 3 1 8 4 5 8 4 6 5 7 8 5 7 3 2 1 3 2 2 1 3
Salida 1
144768 745933 448953