Изначально имеется дерево, состоящее только из корня (вершина с номером 1). Требуется научиться отвечать на следующие запросы:
ADD a b — подвесить вершину b за вершину a (гарантируется, что вершина a уже существует).
GET a b — вернуть LCA вершин a и b.
Вершины имеют номера от 1 до n. В каждый момент времени у нас имеется одно дерево.
В первой строке содержится количество запросов k. Следующие k строк содержат сами запросы. Гарантируется, что число запросов каждого из типов не превосходит 1000.
Для каждого запроса типа GET выведите в отдельную строку одно целое число — ответ на соответствующий запрос.