Пожалуйста, подпишитесь на официальный канал Codeforces в Telegram по ссылке https://t.me/codeforces_official. ×

A. Книга
ограничение по времени на тест
1.5 секунд
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

У вас есть книга, в которой $$$n$$$ глав.

В начале каждой главы перечислен список других глав, которые нужно понимать для понимания написанного в этой главе. Чтобы понять главу, нужно прочитать эту главу после того, как вы поняли все главы из данного списка.

Сейчас ни одна глава книги не понятна вам. Вы планируете читать книгу с начала до конца по кругу до тех пор, пока не поймете все главы. Обратите внимание, что если вы читаете некоторую главу, но еще не понимаете какие-то из необходимых для ее понимания глав, то вы не можете понять эту главу.

Определите, сколько раз вам нужно будет прочитать всю книгу, чтобы понять все главы, или определите, что есть главы, которые вы никогда не поймете, сколько бы раз вы не прочитали книгу.

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

Во входных данных находятся несколько наборов входных данных. В первой строке находится одно целое число $$$t$$$ ($$$1 \le t \le 2\cdot10^4$$$) — количество наборов входных данных. Далее следуют наборы входных данных.

Первая строка набора входных данных содержит $$$n$$$ ($$$1 \le n \le 2\cdot10^5$$$) — количество глав.

Далее следуют $$$n$$$ строк. $$$i$$$-я из этих строк начинается с целого числа $$$k_i$$$ ($$$0 \le k_i \le n-1$$$) — количества глав, которые требуется понимать для понимания $$$i$$$-й главы. Далее следуют $$$k_i$$$ целых чисел $$$a_{i,1}, a_{i,2}, \dots, a_{i, k_i}$$$ ($$$1 \le a_{i, j} \le n, a_{i, j} \ne i, a_{i, j} \ne a_{i, l}$$$ для $$$j \ne l$$$) — главы, которые нужно понимать для понимания $$$i$$$-й главы.

Гарантируется, что сумма значений $$$n$$$ и сумма значений $$$k_i$$$ по всем наборам входных данных не превосходят $$$2\cdot10^5$$$.

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

Для каждого набора входных данных, если вы можете понять все главы, выведите, сколько раз вам нужно прочитать книгу целиком, иначе выведите $$$-1$$$.

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

В первом примере с первого прочтения вы поймете главы $$$\{2, 4\}$$$, а со второго — главы $$$\{1, 3\}$$$.

Во втором примере для понимания любой главы нужно сначала понимать какую-то другую, поэтому невозможно понять всю книгу.

В третьем примере для понимания любой главы нужно понимать только более ранние, поэтому можно понять всю книгу за одно прочтение.

В четвертом примере вы поймете главы $$$\{2, 3, 4\}$$$ с первого прочтения, и главу $$$1$$$ со второго.

В пятом примере вы будем понимать главы по одной за прочтение, с $$$5$$$-й по $$$1$$$-ю.