Du weißt vielleicht, dass Little Cyan Fish jedes Jahr viele Wettbewerbe erstellt. Du weißt schon, Universal-Cup-Wettbewerbe, ICPC-Wettbewerbe, Informatik-Olympiaden und so weiter und so fort... Ich habe gehört, dass Little Cyan Fish in letzter Zeit sehr müde ist, also möchte ich ihm gerne helfen.
Konkret habe ich $n$ Aufgabenerstellungsgruppen gebildet, die von $1$ bis $n$ nummeriert sind. Die $i$-te Gruppe hat anfangs $k_i$ Mitglieder, deren Stärken die ganzen Zahlen $a_{i,1}, a_{i,2}, \ldots, a_{i,k_i}$ sind. Der Einfluss einer Gruppe ist die Summe der Stärken ihrer Mitglieder. Eine leere Gruppe hat einen Einfluss von $0$.
Aber Little Cyan Fish vertraut den Mitgliedern, die ich für ihn ausgewählt habe, nicht (was traurig ist). Als Direktor möchte er so viele von ihnen wie möglich hinauswerfen. Allerdings möchte er fair sein: Wann immer er ein Mitglied hinauswirft, muss dieses Mitglied die kleinste Stärke in seiner Gruppe haben. Formal wählt Little Cyan Fish in einer Operation eine nicht-leere Gruppe aus und entlässt eines ihrer Mitglieder mit der kleinsten Stärke. Falls mehrere Mitglieder gleichauf liegen, darf er ein beliebiges davon auswählen.
Weißt du, die Mitglieder werden sehr traurig sein zu hören, dass jemand gefeuert wurde, oder... vielleicht greifen sie sogar zu den Waffen! Little Cyan Fish möchte wirklich nicht, dass irgendeine Aufgabenerstellungsgruppe während dieses Prozesses dominant wird. Daher darf nach jeder Operation der Einfluss jeder Gruppe nicht größer als die Summe der Einflüsse aller anderen Gruppen sein. Das heißt, für jede Gruppe $i$ gilt
$$s_i \le \sum_{j \ne i} s_j,$$
wobei $s_i$ den aktuellen Einfluss der Gruppe $i$ bezeichnet. Die anfänglichen Gruppen erfüllen diese Bedingung nicht notwendigerweise.
Bestimme die maximale Anzahl an Mitgliedern, die entlassen werden können, und konstruiere eine optimale Folge von Operationen.
Eingabe
Es gibt mehrere Testfälle. Die erste Zeile enthält eine einzelne ganze Zahl $T$ ($1 \le T$), die die Anzahl der Testfälle angibt.
Für jeden Testfall enthält die erste Zeile eine einzelne ganze Zahl $n$ ($1 \le n \le 5 \times 10^5$), die Anzahl der Gruppen. Jede der nächsten $n$ Zeilen beschreibt eine Gruppe: Die $i$-te dieser Zeilen beginnt mit einer ganzen Zahl $k_i$ ($1 \le k_i \le 5 \times 10^5$), gefolgt von $k_i$ ganzen Zahlen $a_{i,1}, a_{i,2}, \ldots, a_{i,k_i}$ ($1 \le a_{i,j} \le 10^9$), den Stärken der Mitglieder der $i$-ten Gruppe.
Es wird garantiert, dass die Summe von $n$ über alle Testfälle $5 \times 10^5$ nicht überschreitet und die Summe von $k_i$ über alle Testfälle $5 \times 10^5$ nicht überschreitet.
Ausgabe
Gib für jeden Testfall zwei Zeilen aus. Die erste Zeile enthält eine einzelne ganze Zahl $m$, die maximale Anzahl an Mitgliedern, die entlassen werden können. Die zweite Zeile enthält $m$ ganze Zahlen $b_1, b_2, \ldots, b_m$ ($1 \le b_i \le n$), wobei $b_i$ die Nummer der in der $i$-ten Operation gewählten Gruppe ist. Falls $m = 0$ ist, sollte die zweite Zeile leer sein.
Falls es mehrere optimale Folgen von Operationen gibt, kannst du eine beliebige davon ausgeben.
Beispiele
Eingabe 1
3 4 1 1 2 2 4 2 3 4 1 8 1 1 7 2 2 1 1 2 1 1
Ausgabe 1
4 3 2 4 1 1 1 0