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

\begin{problem}{Общий предок}{lca.in}{lca.out}{2 секунды}{256 мегабайт}{P}

Дано подвешенное дерево с корнем в $1$-й вершине и $M$ запросов вида ``найти у двух вершин наименьшего общего предка''.

\InputFile

В первой строке файла записано одно число $N$ --- количество вершин. В следующих $N-1$ строках записаны числа.
Число $x$ на строке $2 \le i \le n$ означает, что $x$ --- отец вершин $i$. ($x < i$).
На следующей строке число $M$. Следующие $M$ строк содержат запросы вида $(x,y)$ --- найти наименьшего предка вершин $x$ и $y$
Ограничения:  $1 \le N \le 5 \cdot 10^4, 0 \le M \le 5 \cdot 10^4$.

\OutputFile

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

\Example

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

\end{problem}
