時間制限 : sec, メモリ制限 : KB
English / Japanese  

Vector

整数を保持する可変長配列$A = \{a_0, a_1, ...\}$に対して、以下の操作を行ってください。

  • pushBack($x$): $A$の末尾に整数$x$を挿入する
  • randomAccess($p$):$A$の要素$a_p$の値を出力する
  • popBack(): $A$の末尾の要素を削除する

$A$は0-オリジンでインデックスが付けられ、初期状態では空とします。

Input

入力は以下の形式で与えられます。

$q$
$query_1$
$query_2$
:
$query_q$

各クエリ$query_i$は

0 $x$

または

1 $p$

または

2

の形式で与えられます。最初の数字0, 1, 2 は操作の種類を示し、それぞれpushBack、randomAccess、popBackを表します。

空の配列に対して、randomAccess や popBack操作が行われることはありません。

Output

各randomAccess操作ごとに、$a_p$の値を1行に出力してください。

Constraints

  • $1 \leq q \leq 200,000$
  • $0 \leq p < $ 可変長配列$A$の要素数
  • $-1,000,000,000 \leq x \leq 1,000,000,000$

Sample Input 1

8
0 1
0 2
0 3
2
0 4
1 0
1 1
1 2

Sample Output 1

1
2
4