Busy Beaver создает новый язык для своего занятия по лингвистике! Он уже решил, что алфавит его языка будет состоять из целых чисел $1, \dots, NM$ в указанном порядке; теперь он хочет составить несколько слов для этого языка.
Поскольку Busy Beaver интересуется статистикой, он хочет контролировать частоту появления букв в словах, поэтому он выбрал мультимножество $a$ размера $NM$ из букв своего алфавита. Теперь он сформирует $N$ слов, каждое из которых состоит из $M$ букв, так, чтобы каждая буква из $a$ была использована ровно один раз (то есть, если данная буква $x$ встречается в $a$ ровно $k$ раз, то она используется ровно $k$ раз во всех $N$ словах вместе взятых).
Сформировав слова, Busy Beaver планирует организовать их в словарь, поэтому он лексикографически отсортирует свои $N$ слов, чтобы получить последовательность слов $s_1, \dots, s_N$. Busy Beaver любит лексикографически маленькие строки, поэтому для каждого $k$ от $1$ до $N$ он хочет узнать лексикографически минимально возможное значение $s_k$ среди всех вариантов формирования слов.
Заметьте, что ответ для каждого $s_k$ независим; например, выбор слов для минимизации $s_1$ может отличаться от выбора слов для минимизации $s_2$.
Входные данные
Первая строка содержит два целых положительных числа $N, M$ ($1 \le NM \le 10^6$).
Вторая строка содержит $NM$ целых чисел $a_1, \dots, a_{NM}$, составляющих мультимножество $a$ ($1 \le a_j \le NM$).
Выходные данные
Для каждого $k$ от $1$ до $N$ выведите минимально возможное значение $s_k$ на отдельной строке в виде последовательности чисел, разделенных пробелами.
Примеры
Пример 1
4 3 1 1 2 2 3 3 4 4 5 5 6 6
1 1 2 1 2 3 2 2 3 2 3 4
Пример 2
3 4 12 4 4 4 1 1 4 4 6 4 1 4
1 1 1 4 1 4 4 4 1 4 4 12
Пример 3
4 5 12 7 17 3 6 11 9 2 17 7 1 6 9 12 6 3 9 12 2 15
1 2 2 3 3 2 2 3 3 6 2 3 6 7 7 3 3 6 6 6
Пример 4
1 1 1
1
Примечание
В первом примере следующие варианты выбора слов минимизируют каждое $s_k$:
Выбирая слова 112, 233, 445, 566, мы получаем $s = 112, 233, 445, 566$, следовательно, $s_1 = 112$, как и требовалось.
Выбирая слова 123, 456, 123, 456, мы получаем $s = 123, 123, 456, 456$, следовательно, $s_2 = 123$, как и требовалось.
Выбирая слова 166, 155, 344, 223, мы получаем $s = 155, 166, 223, 344$, следовательно, $s_3 = 223$, как и требовалось.
Выбирая слова 234, 234, 156, 156, мы получаем $s = 156, 156, 234, 234$, следовательно, $s_4 = 234$, как и требовалось.
Можно показать, что во всех этих случаях не существует способа выбрать слова так, чтобы соответствующее $s_k$ было лексикографически еще меньше.