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

Вы обожаете числа, не так ли?) У Насти их много, и она решила поделиться ими с вами! Ну не прелесть?)

Пусть $$$a_i$$$ — это количество чисел, равных $$$i$$$ ($$$1 \le i \le k$$$), которые у вас есть.

Матрица $$$n \times n$$$ называется красивой, если она содержит все числа, которые у вас есть, а также для каждой подматрицы $$$2 \times 2$$$ исходной матрицы, выполняется:

  1. Количество занятых ячеек не превышает $$$3$$$;
  2. Диагонали не содержат одинаковых чисел.

Составьте красивую матрицу минимального размера.

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

Первая строка содержит одно целое число $$$t$$$ ($$$1 \le t \le 10\,000$$$) — количество наборов входных данных.

В первой строке каждого набора заданы $$$2$$$ числa $$$m$$$ и $$$k$$$ ($$$1 \le m, k \le 10^5$$$) — количество чисел полученных от Насти и длина массива $$$a$$$ соответственно.

Во второй строке каждого набора заданы $$$k$$$ целых чисел $$$a_1, a_2, \ldots, a_{k}$$$ ($$$0 \le a_i \le m$$$, $$$a_1 + a_2 + \ldots + a_{k} = m$$$), где $$$a_i$$$ — это количество чисел $$$i$$$, которое у вас есть.

Гарантируется, что суммы $$$m$$$ и $$$k$$$ по всем наборам входных данных не превосходят $$$2 \cdot 10^5$$$.

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

Для каждого из $$$t$$$ наборов входных данных в первой строке выведите одно целое число $$$n$$$ — размер составленной вами красивой матрицы.

В последующий $$$n$$$ строках выведите по $$$n$$$ целых чисел $$$b_{i, j}$$$ ($$$0 \le b_{i, j} \le k$$$, если позиция пуста, выведите $$$b_{i, j} = 0$$$) — составленная вами красивая матрица $$$b$$$.

Пример
Входные данные
2
3 4
2 0 0 1
15 4
2 4 8 1
Выходные данные
2
4 1
0 1
5
3 0 0 2 2
3 2 3 3 0
0 1 0 4 0
3 0 0 0 0
2 1 3 3 3
Примечание

Обратите внимание, что $$$0$$$ в этой задаче считается пустой позицией, а не числом.

Возможные ответы для первого набора входных данных:

$$$\begin{array}{cc} 1 & 1 \\ 4 & 0 \\ \end{array} \hspace{0,5cm} \begin{array}{cc} 1 & 4 \\ 1 & 0 \\ \end{array} \hspace{0,5cm} \begin{array}{cc} 4 & 0 \\ 1 & 1 \\ \end{array}$$$

Примеры некрасивых матриц для первого набора входных данных:

$$$\begin{array}{cc} 1 & 0 \\ 4 & 1 \\ \end{array} \hspace{0,5cm} \begin{array}{cc} 4 & 1 \\ 7 & 1 \\ \end{array} \hspace{0,5cm} \begin{array}{cc} 1 & 0 \\ 4 & 0 \\ \end{array}$$$

Пример некрасивой матрицы для второго набора входных данных:

$$$\begin{array}{cc} 3 & 4 & 0 & 2 & 2 \\ 3 & 2 & 3 & 3 & 0 \\ 0 & 1 & 0 & 0 & 0 \\ 3 & 0 & 0 & 0 & 0 \\ 2 & 1 & 3 & 3 & 3 \\ \end{array}$$$

В данном случае левая верхняя матрица содержит $$$4$$$ числа.