E. Доска
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Вася учится в первом классе математической школы и делает большие успехи в освоении математики. Сегодня учитель задал детям следующую задачу. Сначала он расчертил доску так, чтобы она представляла собой матрицу N × N, как показано на рисунке (в данном примере N = 3).

Далее, учитель продемонстрировал различные варианты, как можно заполнить матрицу числами от 1 до N2 строго по возрастанию:

(1)
123
654
789
    (2)
167
258
349
    (3)
123
894
765
    (4)
187
296
345

Учитель всегда начинал с верхнего левого угла. В матрице (1) пример представлял собой вертикальную «змейку», в матрице (2) — горизонтальную. Матрицы (3) и (4) представляют собой спираль — в примере (3) заполнение происходит по часовой стрелке, а в примере (4) — против часовой.

Вам необходимо помочь Васе написать программу, которая по заданному N и алгоритму заполнения — (1), (2), (3) или (4) будет печатать результирующую матрицу.

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

В единственной строке содержатся два натуральных числа N (1 ≤ N ≤ 100) и a (1 ≤ a ≤ 4), где a определяет алгоритм заполнения матрицы.

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

Выведите N строк, состоящих из N чисел, разделенных пробелами, представляющих собой матрицу, заполненную по заданному алгоритму.

Примеры
Входные данные
3 1
Выходные данные
1 2 3 
6 5 4
7 8 9
Входные данные
3 2
Выходные данные
1 6 7 
2 5 8
3 4 9
Входные данные
3 3
Выходные данные
1 2 3 
8 9 4
7 6 5
Входные данные
3 4
Выходные данные
1 8 7 
2 9 6
3 4 5
Примечание

В примерах даны входные и выходные данные матриц, предложенных учителем.