#1162. 异或

内存限制:512 MiB 时间限制:1000 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: nocriz🦆

题目描述

异或运算拥有许多美妙的性质。为了更好的理解异或运算,你需要做如下的一个实验:

有一个 个元素的数列 ,要进行 次查询,每次查询形式如下:

  1. 给出两个整数 , ,表示查询区间的左右端点.

  2. 取出区间 中的所有出现过且出现了偶数次的整数。比如 1, 2, 1, 2, 1 ,则会取出一个数 2.

  3. 将取出来的数全部异或起来,并将该异或值作为本次查询的答案。形式化来说,设取出的数为 ,则计算 , 其中 表示异或运算.

输入格式

第一行一个整数 ,表示数列的长度.

接下来一行 个非负整数,表示 数组中的每个元素.

接下来一行一个整数 ,表示查询的数量.

接下来 行,每行两个整数 , 表示这次查询区间的左右端点.

输出格式

对于每组查询,输出一行一个整数,表示这组查询的答案.

样例

样例输入

7
1 2 1 3 3 2 3
5
4 7
4 5
1 3
1 7
1 5

样例输出

0
3
1
3
2

数据范围与提示