C. Сапер
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
512 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Вы должны построить поле для игры в «Сапер», состоящее из $$$2$$$ строк и некоторого количества столбцов. Каждая ячейка должна либо быть свободной, либо содержать мину. Назовем две ячейки соседними, если у них общая сторона и/или угол.

Поле, которое вы строите, должно удовлетворять следующим ограничениям:

  • каждая свободная клетка должна быть соседней максимум с одной миной;
  • количество свободных клеток, у которых есть соседняя клетка с миной, равно $$$k$$$;
  • среди всех подходящих полей количество столбцов должно быть минимальным.

Постройте такое поле или сообщите, что это невозможно.

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

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

Каждый набор входных данных состоит из одной строки, содержащей одно целое число $$$k$$$ ($$$1 \le k \le 100$$$) — требуемое количество свободных клеток, соседних с минами.

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

На каждый набор входных данных выведите ответ следующим образом:

  • если поле, удовлетворяющее всем ограничениям, построить невозможно, выведите NO;
  • иначе в первой строке выведите YES, а во второй — целое число $$$n$$$, где $$$n$$$ — минимальное количество столбцов в поле. В третьей и в четвертой строке выведите само описание поля. Описание каждой строки поля должно состоять из $$$n$$$ символов, каждый из которых — либо точка «.» (пустая клетка), либо звездочка «*» (мина). Если подходящих полей несколько, выведите любое из них.
Пример
Входные данные
5
1
4
8
10
9
Выходные данные
YES
1
*
.
NO
YES
5
*....
...*.
YES
6
.*..*.
......
NO