C. ОКЕЯ
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод
People worry that computers will get too smart and take over the world, but the real problem is that they're too stupid and they've already taken over the world.
— Pedro Domingos

Вы работаете в известном универмаге, который использует передовые технологии и машинный труд — а, иначе говоря, роботов!

Отдел, в котором вы работаете, продает $$$n \cdot k$$$ товаров. Первый товар стоит $$$1$$$ доллар, второй — $$$2$$$ доллара, и так далее: $$$i$$$-й товар стоит $$$i$$$ долларов. Товары расположены на полках и образуют прямоугольную сетку: на каждой из $$$n$$$ полок расположено по $$$k$$$ товаров. Мы будем обозначать цену $$$j$$$-го товара (считая слева направо) на $$$i$$$-й полке за $$$a_{i,j}$$$, $$$1 \le i \le n, 1 \le j \le k$$$.

Время от времени роботы задумываются над следующим вопросом: какое среднее арифметическое цен товаров $$$a_{i,l}, a_{i,l+1}, \ldots, a_{i,r}$$$ для некоторой полки $$$i$$$ и индексов $$$l \le r$$$? К сожалению, старые роботы умеют работать только с целыми числами, и если средняя цена оказывается нецелым числом, они ломаются.

Вы заботитесь о благосостоянии роботов и потому хотите упорядочить товары так, чтобы роботы не могли сломаться. Формально, вы хотите найти такой двумерный массив $$$a$$$, что:

  • Каждое число от $$$1$$$ до $$$n \cdot k$$$ (включительно) встречается в массиве ровно один раз.
  • Для всех $$$i, l, r$$$ средняя цена товаров с $$$l$$$-го по $$$r$$$-й на $$$i$$$-й полке — целое число.

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

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

В первой строке дано одно число $$$t$$$ ($$$1 \le t \le 500$$$) — количество наборов входных данных.

Первая и единственная строка каждого набора содержит два числа $$$n$$$ и $$$k$$$ ($$$1 \le n, k \le 500$$$) — количество полок и длина каждой из них соответственно.

Гарантируется, что сумма $$$n$$$ по всем наборам входных данных не превосходит $$$500$$$, и сумма $$$k$$$ по всем наборам не превосходит $$$500$$$.

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

Выведите ответ для каждого набора входных данных:

Если подходящая расстановка существуют, выведите «YES» в отдельной строке. Далее в $$$n$$$ строках выведите по $$$k$$$ чисел — цены товаров на каждой из полок. Каждое число от $$$1$$$ до $$$n \cdot k$$$ должно встречаться ровно один раз.

Если ответа не существует, то выведите единственное слово «NO» в отдельной строке.

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