Трамвайная сеть в Загребе состоит из перекрестков и рельсов, соединяющих некоторые из них. На каждом перекрестке имеется переключатель, указывающий на направление, в котором можно выехать из него. Когда трамвай заезжает на перекресток, он может выехать из него только в направлении, на который указывает переключатель. Если водитель хочет поехать другим путем, он должен вручную изменить состояние переключателя.
Когда водителю надо проехать с перекрестка A до перекрестка B, он хочет выбрать такой путь, проезжая по которому необходимо менять вручную состояние переключателей наименьшее количество раз.
Напишите программу, которая вычислит наименьшее количество изменений переключателей, необходимое для проезда с перекрестка A до перекрестка B.
Первая строка содержит целые числа N, A и B (2 ≤ N ≤ 100, 1 ≤ A, B ≤ N), разделенные пробелом. N - количество перекрестков в сети, пронумерованных от 1 до N.
Каждая из следующих N строк содержит последовательность целых чисел, разделенных пробелом. Первым числом в i-ой строке находится K_i (0 ≤ K_i ≤ N-1) - количество рельсовых дорог, выходящих из i-го перекрестка. Следующие K_i чисел задают номера перекрестков, непосредственно связанных с i-ым. Переключатель на i-ом перекрестке изначально указывает в направлении, стоящим первым в перечислении.
В единственной строке вывести искомое наименьшее число. Если пути между A и B не существует, то вывести число -1.