Трамвайная сеть в Загребе состоит из множества перекрестков и рельсов, соединяющих их. На каждом перекрестке имеется переключатель, указывающий на один из рельсов, выходящих из него. Когда трамвай въезжает на перекресток, он может покинуть его только в том направлении, на которое указывает переключатель. Если водитель хочет идти другим путем, он должен вручную изменить переключатель.
Когда водитель едет от перекрестка a к перекрестку b, он старается выбрать путь, на котором количество изменений состояний переключателей минимально.
Напишите программу, которая вычислит наименьшее число изменений переключателей, необходимых для проезда от пересечения a до пересечения b.
Первая строка содержит целые числа n,a и b (2≤n≤105,1≤a,b≤n), где n — количество перекрестков в сети, перекрестки пронумерованы числами от 1 до n.
Каждая из следующих n строк содержит последовательность чисел, разделенных пробелом. Первое число в i-ой строке ki (0≤ki≤n−1), указывающее на количество трамвайных путей, исходящих из i-го перекрестка. Следующие ki чисел указывают номера перекрестков, непосредственно связанными с i-ым. Переключатель на i-ом перекрестке изначально указывает на перекресток, который первым указан в списке смежности.
Выведите наименьшее искомое количество переключений. Если проехать от a до b невозможно, то выведите −1.