Возможно, вы знаете, что Little Cyan Fish каждый год проводит множество соревнований. Ну знаете, соревнования Universal Cup, соревнования ICPC, олимпиады по информатике и так далее, и так далее... Я слышал, что в последнее время Little Cyan Fish очень устал, поэтому я хотел бы ему помочь.
А именно, я создал $n$ групп авторов задач, пронумерованных от $1$ до $n$. В $i$-й группе изначально состоит $k_i$ участников, силы которых равны целым числам $a_{i,1}, a_{i,2}, \ldots, a_{i,k_i}$. Влиянием группы называется сумма сил её участников. Влияние пустой группы равно $0$.
Но Little Cyan Fish не доверяет участникам, которых я для него отобрал (что печально). Как директор, он хочет выгнать как можно больше из них. Однако он хочет быть справедливым: всякий раз, когда он выгоняет участника, этот участник должен иметь наименьшую силу в своей группе. Формально, за одну операцию Little Cyan Fish выбирает непустую группу и увольняет одного из её участников с наименьшей силой. Если таких участников несколько, он может выбрать любого из них.
Знаете ли, участники очень расстроятся, услышав, что кого-то уволили, или... может быть, даже поднимут восстание! Little Cyan Fish очень не хочет, чтобы какая-либо группа авторов задач стала доминирующей в этом процессе. Поэтому после каждой операции влияние каждой группы должно быть не больше суммы влияний всех остальных групп. То есть для каждой группы $i$:
$$s_i \le \sum_{j \ne i} s_j,$$
где $s_i$ обозначает текущее влияние группы $i$. Изначально группы не обязательно удовлетворяют этому условию.
Найдите максимальное количество участников, которых можно уволить, и постройте оптимальную последовательность операций.
Входные данные
Каждый тест состоит из нескольких наборов входных данных. Первая строка содержит одно целое число $T$ ($1 \le T$), обозначающее количество наборов входных данных.
Для каждого набора входных данных первая строка содержит одно целое число $n$ ($1 \le n \le 5 \times 10^5$) — количество групп. Каждая из следующих $n$ строк описывает одну группу: $i$-я из этих строк начинается с целого числа $k_i$ ($1 \le k_i \le 5 \times 10^5$), за которым следуют $k_i$ целых чисел $a_{i,1}, a_{i,2}, \ldots, a_{i,k_i}$ ($1 \le a_{i,j} \le 10^9$) — силы участников $i$-й группы.
Гарантируется, что сумма $n$ по всем наборам входных данных не превосходит $5 \times 10^5$, а сумма $k_i$ по всем наборам входных данных не превосходит $5 \times 10^5$.
Выходные данные
Для каждого набора входных данных выведите две строки. Первая строка должна содержать одно целое число $m$ — максимальное количество участников, которых можно уволить. Вторая строка должна содержать $m$ целых чисел $b_1, b_2, \ldots, b_m$ ($1 \le b_i \le n$), где $b_i$ — номер группы, выбранной на $i$-й операции. Если $m = 0$, вторая строка должна быть пустой.
Если существует несколько оптимальных последовательностей операций, вы можете вывести любую из них.
Примеры
Входные данные 1
3 4 1 1 2 2 4 2 3 4 1 8 1 1 7 2 2 1 1 2 1 1
Выходные данные 1
4 3 2 4 1 1 1 0