L. Правильный билд
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

В массовой онлайновой многопользовательской ролевой видеоигре «Путь изгнанника» развитие игрового персонажа осуществляется путём приобретения талантов за специальные очки талантов, получаемые в процессе игры. Некоторые таланты зависят от других. Талант можно приобрести, только если у персонажа есть хотя бы один из талантов, от которых он зависит. Также на приобретение таланта тратится одно очко таланта. Один талант имеется у персонажа с самого начала игры.

Школьник Василий решил записать видеоинструкцию по правильному развитию персонажа, следуя которой, можно легко побеждать других игроков и неигровых персонажей. Он уже занумеровал все талантов целыми числами от 0 до n включительно, так чтобы имеющийся с самого начала игры талант имел номер 0. Василий считает, что для правильного развития персонажа необходимо во что бы то ни стало приобрести два различных таланта, имеющие в его нумерации номера a и b, потому что эти таланты недостаточно хорошо сбалансированы и намного сильнее всех остальных. Приобрести эти таланты нужно как можно раньше, поэтому Василий задумался, какое минимальное количество очков таланта необходимо потратить с начала игры, чтобы это сделать.

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

Первая строка содержит четыре целых числа через пробел: n, m, a и b (2 ≤ n, m ≤ 2·105, 1 ≤ a, b ≤ n, a ≠ b) — общее количество талантов, если не считать нулевой, количество зависимостей между талантами, а также номера двух талантов, которые необходимо приобрести.

Следующие m строк содержат по два целых числа через пробел: xj и yj (0 ≤ xj ≤ n, 1 ≤ yj ≤ n, xj ≠ yj) — указание на то, что талант yj зависит от таланта xj. Гарантируется, что, располагая неограниченным количеством очков талантов, можно приобрести все талантов.

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

Выведите единственное целое число — минимальное количество очков талантов, достаточное для приобретения талантов a и b.

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