CSES - Range Xor Queries
  • Time limit: 1.00 s
  • Memory limit: 512 MB

Given an array of nn integers, your task is to process qq queries of the form: what is the xor sum of values in range [a,b][a,b]?

Input

The first input line has two integers nn and qq: the number of values and queries.

The second line has nn integers x1,x2,,xnx_1,x_2,\dots,x_n: the array values.

Finally, there are qq lines describing the queries. Each line has two integers aa and bb: what is the xor sum of values in range [a,b][a,b]?

Output

Print the result of each query.

Constraints

  • 1n,q21051 \le n,q \le 2 \cdot 10^5
  • 1xi1091 \le x_i \le 10^9
  • 1abn1 \le a \le b \le n

Example

Input:

8 4
3 2 4 5 1 1 5 3
2 4
5 6
1 8
3 3

Output:

3
0
6
4