\begin{problem}{Javalhalla}{java.in}{java.out}{2 секунды}{}

%Автор задачи: Артем Васильев
%Автор условия: Артем Васильев 

Немногие знают, что уже викинги имели дело с языками программирования.
К сожалению, у них не было компьютеров, чтобы их запускать. Однако,
некоторые их программы дошли до наших дней, и у нас наконец есть
возможность их запустить. Вам необходимо исполнить одну из таких
программ.

В этой задаче мы опишем один из таких языков, дошедший до наших дней
под именем <<Javalhalla>>. В этом языке присутствуют два типа данных:
целые числа и списки целых чисел. Все операции в этом языке 
производятся только со списками. Числа в списках нумеруются целыми 
числами, начиная с единицы. В этом языке присутствуют следующие операции:

\begin{itemize}
\item{ \texttt{List a = new List(x,y, ...,z)}. Создать новый список
из чисел, перечисленных в скобках и присвоить ему имя $a$.}
\item{ \texttt{List b = a.subList(from,to)}. Взять все числа 
из списка $a$, находяшиеся на позициях от $from$ до $to$ ($from \le to$)
и составить из них список $b$. Все изменения списка $a$
отражаются в соответствующих позициях списка $b$, и наоборот.
Обратите внимание на тестовые примеры и комментарии к ним. }
\item{ \texttt{a.set(i,x)} Присвоить $i$ элементу списка $a$
значение $x$ }
\item{ \texttt{a.add(x)} Добавить число $x$ в конец списка $a$.
Эта операция применима только в том случае, если список $a$
был создан так, как описано в первой операции (то есть список $a$
не был создан, как подсписок какого-либо другого списка).}
\item{ \texttt{a.get(i)} Вывести $i$ элемент списка $a$
в отдельной строке} 
\end{itemize} 

\InputFile
В первой строке находится целое число $n$ ($1 \le n \le 100{\,}000$)~---
количество строк в программе.
Каждая из следующих $n$ строк описывает очередную команду в формате,
описанном выше. Гарантируется, что
никакой список не будет объявлен дважды, все обращения к спискам
по индексу не выходят за границы списка. Все названия списков являются
строками из строчных латинских букв длиной не более 10.
Слова <<\texttt{new}>>, <<\texttt{list}>>, <<\texttt{set}>>, <<\texttt{add}>> и <<\texttt{get}>> являются
зарезервироваными и не могут быть названием списка.
Внутри скобок между аргументами и запятыми пробелов нет.
Все числа во входном файле целые, положительные и не 
превосходят $10^9$. Суммарная длина списков, созданных с помощью 
первой операции, не превосходит $100{\,}000$.

\OutputFile
Для каждый операции $a.get(i)$ выведите $i$ элемент списка $a$.

\Examples
\begin{example}%
\exmp{
3
List a = new List(2,3,5)
List b = a.subList(2,3)
b.get(1)
}{
3
}%
\exmp{
5
List p = new List(2,4,8,16)
p.get(4)
List q = new List(3,9,27)
q.add(5)
q.get(4)
}{
16
5
}%
\exmp{
13
List x = new List(1,2,5,14,42)
List y = x.subList(1,4)
List z = y.subList(2,4)
y.set(1,7)
x.get(1)
z.get(1)
z.set(2,100)
x.get(3)
y.get(3)
x.add(132)
x.set(5,43)
x.get(5)
y.get(4)
}{
7
2
100
100
43
14
}%
\end{example}

\Note
Обратите внимание, что в третьем тестовом примере четвертая операция
изменила как список $y$, так и cписок $x$, а седьмая~--- списки
$x$, $y$ и $z$. 

\end{problem}
