A. Мы делили апельсин
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
stdin
вывод
stdout

Однажды тетя Света купила в магазине апельсин. Апельсин состоял из n·k долек, пронумерованых целыми числами от 1 до n·k.

Дома тетю Свету ждут k ребятишек. Недавно ребята узнали, что она несет домой апельсин и решили заранее его поделить. Для этого каждый ребенок записал у себя на листочке номер дольки, которую он хотел бы получить: i-ый (1 ≤ i ≤ k) ребенок записал номер ai (1 ≤ ai ≤ n·k). Совершенно случайно, все числа ai оказались различными.

Теперь ребятам интересно узнать, как разделить апельсин так, чтобы выполнялись условия:

  • каждому ребенку достались ровно n долек апельсина;
  • i-ому ребенку обязательно досталась долька с номером ai;
  • никакая долька не досталась двум ребятам одновременно.

Помогите ребятам, разделите апельсин, выполнив описанные выше требования.

Входные данные

В первой строке записаны два целых числа n, k (1 ≤ n, k ≤ 30). Во второй строке записаны k целых чисел через пробел a1, a2, ..., ak (1 ≤ ai ≤ n·k), где ai — номер дольки апельсина, которая понравилась i-ому ребенку.

Гарантируется, что все числа ai различные.

Выходные данные

Выведите ровно n·k различных целых чисел. Первые n чисел обозначают номера долек, которые достанутся первому ребенку, вторые n чисел обозначают номера долек, которые достанутся второму ребенку, и так далее. Выведенные числа разделяйте пробельными символами.

Номера долек для ребенка можно выводить в любом порядке. Гарантируется, что ответ всегда существует. Если существует несколько правильных ответов, выведите любой.

Примеры
Входные данные
2 2
4 1
Выходные данные
2 4 
1 3
Входные данные
3 1
2
Выходные данные
3 2 1