問題
N人の人がいます。各人には背番号が割り当てられており、i番目の人の背番号はAiです。
初め、各人はそれぞれ異なるグループに所属しており、一人だけのグループとなっています。Q個のクエリが与えられるので、それに従って以下の操作を順に行ってください。
- Ti=1の時、人xがいるグループと人yがいるグループを1つにする。すでに同じグループになっている場合はなにもしない。
- Ti=2の時、x番目の人が所属するグループの全ての人の背番号のxorした結果を求める。
制約
- 1≦N≦105
- 1≦Q≦105
- 1≦Ai≦109
- Tiは1もしくは2
- 1≦x,y≦N
- 入力はすべて整数。
入力
N
A_1 A_2 ... A_N
Q
Query_1
...
Query_Q
クエリは以下の形式で与えられる
Ti=1の時、
Ti=2の時、
入力例1
4
1 2 3 4
3
2 1
1 2 3
2 2
出力例1
はじめに各チームにいるのは(A1),(A2),(A3),(A4)となっています。
1つめのクエリでA1がいるチームはA1しかいないのでxorは1となります。
2つめのクエリで各チームは(A1),(A2, A3),(A4)となります。
3つめのクエリでA2がいるチームのxorは2\xor3=1となります。
入力例2
10
84 30 2 52 33 74 234 45 99 145
5
1 3 2
2 3
1 3 1
2 9
2 3
出力例2