qwqkawaii регистрируется на $$$n$$$ ($$$n\le 50$$$) курсов. В системе регистрации он может выставить приоритет для каждого курса.
Приоритеты делятся на $$$k+1$$$ ($$$k\le 20$$$) уровней, где уровень $$$1$$$ — самый высокий приоритет, а уровень $$$k+1$$$ — самый низкий.
Для первых $$$k$$$ уровней приоритета есть ограничения на вместимость: для каждого $$$1 \le i \le k$$$ можно назначить уровень приоритета $$$i$$$ не более чем $$$a_i$$$ курсам. Заметьте, что для уровня приоритета $$$k+1$$$ ограничений на вместимость нет.
Изначально $$$i$$$-й курс имеет уровень приоритета $$$b_i$$$, и гарантируется, что это начальное распределение удовлетворяет всем ограничениям на вместимость. Теперь qwqkawaii хочет перевести все свои курсы на уровень приоритета $$$k + 1$$$. Для этого он может выполнить следующую операцию не более $$$1000$$$ раз:
Заметьте, что:
Ваша задача — построить корректную последовательность изменений длиной не более $$$1000$$$ операций или сообщить, что это невозможно.
Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число $$$t$$$ ($$$1 \le t \le 50$$$) — количество наборов входных данных. Далее следует описание наборов входных данных.
В первой строке каждого набора входных данных даны два целых числа $$$n$$$ и $$$k$$$ ($$$1 \le n \le 50$$$, $$$1 \le k \le 20$$$) — количество курсов и количество уровней приоритета (за исключением самого низкого уровня приоритета).
Во второй строке даны $$$k$$$ целых чисел $$$a_1, a_2, \ldots, a_k$$$ ($$$1 \le a_i \le n$$$) — ограничения на вместимость для первых $$$k$$$ уровней приоритета.
В третьей строке даны $$$n$$$ целых чисел $$$b_1, b_2, \ldots, b_n$$$ ($$$1 \le b_i \le k+1$$$) — начальные уровни приоритетов курсов.
Гарантируется, что начальное распределение удовлетворяет всем ограничениям на вместимость.
Для каждого набора входных данных, если достичь целевого состояния невозможно, выведите одно целое число $$$-1$$$.
Иначе в первой строке вывода выведите число операций $$$m$$$ ($$$0 \le m \le 1000$$$).
Затем выведите одну строку из $$$m$$$ целых чисел $$$u_1, u_2, \ldots, u_m$$$ ($$$1 \le u_i \le n$$$), обозначающих, что в $$$i$$$-й операции вы увеличиваете уровень приоритета $$$b_{u_i}$$$ курса $$$u_i$$$ на $$$1$$$.
43 22 21 2 24 22 23 3 3 31 1115 31 2 31 2 4 2 3
4 2 1 3 1 0 1 1 8 2 4 1 2 1 1 5 4
В первом наборе входных данных изначально уровни приоритетов равны $$$[1, 2, 2]$$$. Ограничения на вместимость: $$$a_1=2$$$ и $$$a_2=2$$$. Операции выполняются следующим образом:
Во втором наборе входных данных начальное состояние уже совпадает с целевым, поэтому операции не нужны.