К Саше на день рождения пришло $$$5$$$ друзей и принесли с собой следующие подарки:
При этом друзья заранее договорились о подарках, а поэтому гарантируется, что $$$a + 2b + 3c + 4d = n \cdot m$$$. Саша до этого хвастался друзьям, что умеет вкладывать в любой прямоугольник максимальное количество уголков, а поэтому друзья решили проверить навыки Саши, но уже задав ему новую задачку:
Саше требуется полностью покрыть прямоугольник $$$n \times m$$$ фигурами, которые подарили друзья, при этом он должен использовать все $$$a$$$ фигурок Филиппа, все $$$b$$$ фигурок Ани, какие-то $$$c$$$ фигурок Юры и все фигурки большого горилла.
Помогите Саше и напишите программу, которая решает поставленную задачу или определяет, что решения не существует.
В первой строке указано число $$$t$$$ ($$$1 \le t \le 10^4$$$) — количество наборов входных данных.
Каждый набор данных описывается единственной строкой, в которой указаны неотрицательные целые числа $$$n$$$, $$$m$$$, $$$a$$$, $$$b$$$, $$$c$$$ и $$$d$$$ ($$$1 \le n \le 1000$$$, $$$1 \le m \le 1000$$$, $$$a+2b+3c+4d=n m$$$).
Гарантируется, что сумма $$$n m$$$ по всем наборам входных данных не превосходит $$$10^6$$$.
Для каждого набора входных данных выведите «No», если решить задачу невозможно.
В ином случае выведите «Yes» в своей строке, а в следующих $$$n$$$ строках выведите по $$$m$$$ чисел $$$z_{i j}$$$. Одну использованную фигуру следует обозначать одним и тем же номером, а разные фигуры — разными. Номера фигур могут быть любыми числами от $$$1$$$ до $$$n \cdot m$$$.
45 5 0 2 3 31 4 0 0 0 13 3 1 0 0 22 2 2 1 0 0
Yes 1 1 4 2 2 1 1 4 2 2 6 6 3 3 5 7 6 3 3 5 7 7 8 8 5 No No Yes 1 2 3 3