¡Busy Beaver está creando un nuevo lenguaje para su clase de lingüística! Ya ha decidido que su lenguaje tendrá un alfabeto cuyas letras son los enteros $1, \dots, NM$ en ese orden; ahora quiere crear algunas palabras para el lenguaje.
Debido a que Busy Beaver está interesado en la estadística, quiere controlar las frecuencias de las letras que aparecen en las palabras, por lo que ha elegido un multiconjunto $a$ de tamaño $NM$ de letras de su alfabeto. Ahora formará $N$ palabras, cada una con $M$ letras, de tal manera que cada letra de $a$ se utilice exactamente una vez (es decir, si una letra dada $x$ aparece exactamente $k$ veces en $a$, entonces se utiliza exactamente $k$ veces en todas las $N$ palabras).
Después de formar las palabras, Busy Beaver planea organizarlas en un diccionario, por lo que ordenará lexicográficamente sus $N$ palabras para producir la secuencia de palabras $s_1, \dots, s_N$. A Busy Beaver le gusta que las cadenas sean lexicográficamente pequeñas, por lo que para cada $k$ desde $1$ hasta $N$ quiere conocer el valor mínimo posible lexicográficamente de $s_k$ sobre todas las elecciones de palabras.
Nota: la respuesta para cada $s_k$ es independiente; por ejemplo, la elección de palabras para que $s_1$ sea minimizada puede ser diferente de la elección de palabras para que $s_2$ sea minimizada.
Entrada
La primera línea contiene dos enteros positivos $N, M$ ($1 \le NM \le 10^6$).
La segunda línea contiene $NM$ enteros $a_1, \dots, a_{NM}$ que componen el multiconjunto $a$ ($1 \le a_j \le NM$).
Salida
Para cada $k$ desde $1$ hasta $N$, imprima el valor mínimo posible de $s_k$ en su propia línea como una secuencia de enteros separados por espacios.
Ejemplos
Entrada 1
4 3 1 1 2 2 3 3 4 4 5 5 6 6
Salida 1
1 1 2 1 2 3 2 2 3 2 3 4
Entrada 2
3 4 12 4 4 4 1 1 4 4 6 4 1 4
Salida 2
1 1 1 4 1 4 4 4 1 4 4 12
Entrada 3
4 5 12 7 17 3 6 11 9 2 17 7 1 6 9 12 6 3 9 12 2 15
Salida 3
1 2 2 3 3 2 2 3 3 6 2 3 6 7 7 3 3 6 6 6
Entrada 4
1 1 1
Salida 4
1
Nota
En el primer ejemplo, las siguientes elecciones de palabras minimizan cada $s_k$:
Al elegir las palabras 112, 233, 445, 566, obtenemos que $s = 112, 233, 445, 566$, por lo que $s_1 = 112$ como se desea.
Al elegir las palabras 123, 456, 123, 456, obtenemos que $s = 123, 123, 456, 456$, por lo que $s_2 = 123$ como se desea.
Al elegir las palabras 166, 155, 344, 223, obtenemos que $s = 155, 166, 223, 344$, por lo que $s_3 = 223$ como se desea.
Al elegir las palabras 234, 234, 156, 156, obtenemos que $s = 156, 156, 234, 234$, por lo que $s_4 = 234$ como se desea.
Se puede demostrar que en todos estos casos no hay forma de elegir las palabras de manera que el respectivo $s_k$ sea aún menor lexicográficamente.