% Problem author: Sergey Kopeliovich
% Text author: Mikhail Belous
% Tests author: Mikhail Belous

\begin{problem}{Самое дешевое ребро}{minonpath.in}{minonpath.out}
{2 секунды}{256 мегабайт}{*Q}

Дано подвешенное дерево с корнем в первой вершине. Все ребра имеют веса (стоимости).
Вам нужно ответить на $M$ запросов вида ``найти у двух вершин минимум среди стоимостей ребер пути между ними''.

\InputFile

В первой строке файла записано одно числ --- $n$
(количество вершин).

В следующих $n$ строках записаны два числа --- $x$ и $y$.
Число $x$ на строке $i$ означает, что $x$ --- предок вершины $i$,
$y$ означает стоимость ребра.

$x < i, |y| \le 10^6$.

Далее $m$ запросов вида $(x,y)$ --- найти минимум на пути из $x$ в $y$ ($x \not= y$).

Ограничения:  $2 \le n \le 5 \cdot 10^4, 0 \le m \le 5 \cdot 10^4$.

\OutputFile

$m$ ответов на запросы.

\Example

\begin{example}
\exmp{
5
1 2
1 3
2 5
3 2
2 
2 3
4 5
}{
2
2
}%
\end{example}

\end{problem}
