Город Байтсбург состоит из исторической части и новой части. Историческая часть Байтсбурга представляет собой дерево из n площадей, соединённых n−1 проспектами. Площади занумерованы последовательными целыми числами от 1 до n. Главная площадь города --- вершина 1 --- является корнем дерева.
Изначально город состоял только из исторической части. Каждый год город развивается следующим образом. Пусть в начале года в городе m площадей.

Вам дана конфигурация исторической части города и данные о его развитии в течение y лет. Ваша задача --- отвечать на запросы вида <<найти кратчайшее расстояние между двумя площадями>>.
Первая строка входных данных содержит три целых числа n, y и q --- число площадей в исторической части, число лет, в течение которых застраивалась новая часть, и число запросов соответственно (1≤n,y,q≤105).
Каждая из последующих n−1 строк содержит по два целых числа a и b --- номера двух площадей в исторической части, соединённых очередным проспектом (1≤a,b≤n; a=b). Гарантируется, что конфигурация проспектов и площадей является деревом. Главная площадь, которая является корнем дерева, имеет номер 1.
Каждая из последующих y строк содержит по два целых числа f и t --- номер исходной площади в исторической части и номер площади, к которой присоединяется копия (1≤f≤n; t≥1, t не превосходит числа площадей на начало соответствующего года).
Каждая из последующих q строк содержит по два целых числа i и j --- номера площадей, расстояние между которыми требуется найти. Пусть M --- общее число площадей по прошествии y лет застройки новой части, тогда 1≤i,j≤M.
Для каждого запроса выведите одно целое число --- кратчайшее расстояние между соответствующими площадями.