F. Экскурсии по городам
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

В Берляндии есть n городов. Некоторые пары городов соединены m односторонними дорогами. Из одного города в другой можно добраться только по этим дорогам. При этом нет дорог, соединяющих город с самим собой. Для любой пары городов (x, y) может быть не более одной дороги из x в y.

Путь из города s в город t представляет собой последовательность городов p1, p2, ... , pk, где p1 = s, pk = t, где из города pi идет дорога в город pi + 1 для все i от 1 до k - 1. Через любой из городов, кроме последнего города t пути, путь может проходить многократно. Через город t многократно путь проходить не может.

Путь p из s в t называется идеальным, если он является лексикографически минимальным таким путем. Иными словами, pидеальный путь из s в t, если для любого другого пути q из s в t pi < qi, где i — наименьший индекс такой, что pi ≠ qi.

В стране работает туристическое агенство, которое предоставляет q необычных экскурсий: j-я экскурсия начинается в городе sj и заканчивается в городе tj.

Помогите туристическому агентству для каждой пары sj, tj проанализировать идеальный путь из sj в tj. Заметим, что идеальный путь из sj в tj может не существовать. Такое возможно по двум причинам:

  • из города sj невозможно добраться по дорогам в город tj;
  • из города sj возможно добраться по дорогам в город tj, но для любого такого пути p найдется другой путь q из sj в tj, что pi > qi, где i — первый индекс, что pi ≠ qi.

Анализ идеального пути из sj в tj состоит в нахождении города, который является kj-м в этом пути (при следовании из sj в tj).

Напишите программу, которая для каждой тройки sj, tj, kj (1 ≤ j ≤ q) определит, существует ли идеальный путь из sj в tj и выведет kj-й город пути, если таковой есть.

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

Первая строка входных данных содержит три целых числа n, m и q (2 ≤ n ≤ 3000,0 ≤ m ≤ 3000, 1 ≤ q ≤ 4·105) — количество городов, количество дорог и количество экскурсий.

Следующие m строк содержат по два целых числа xi и yi (1 ≤ xi, yi ≤ n, xi ≠ yi), обозначающие, что i-я дорога ведет из города xi в город yi. Все дороги — односторонние. Между парой городов может быть не более одной дороги в каждом из двух направлений.

Каждая из следующих q строк содержит три целых числа sj, tj и kj (1 ≤ sj, tj ≤ n, sj ≠ tj, 1 ≤ kj ≤ 3000).

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

В j-ю строку выходных данных выведите город, который расположен kj-м в идеальном пути из sj в tj. Если идеального пути из sj в tj не существует или число kj больше длины этого пути, выведите в j-ю строку '-1' без кавычек.

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