Задан неориентированный граф. Вес его ребер может принимать только значения 0, 1 или 2. Найдите кратчайшее расстояние между вершинами s и d.
Первая строка содержит четыре целых числа: количество вершин n, количество ребер m (n, m ≤ 10^5
) и номера вершин s и d (1 ≤ s, d ≤ n). Каждая из следующих m строк содержит три целых числа a, b и w задающих неориентированное ребро (a, b) весом w (0 ≤ w ≤ 2).
Выведите кратчайший путь между вершинами s и d.