#1737. 2741. 【FOTILE模拟赛】L

2741. 【FOTILE模拟赛】L

#2741. 【FOTILE模拟赛】L

题目描述

FOTILE得到了一个长为N的序列A,为了拯救地球,他希望知道某些区间内的最大的连续XOR和。

即对于一个询问,你需要求出max(Ai xor Ai+1 xor Ai+2 ... xor Aj),其中l<=i<=j<=r。

为了体现在线操作,对于一个询问(x,y):

l = min ( ((x+lastans) mod N)+1 , ((y+lastans) mod N)+1 ).
r = max ( ((x+lastans) mod N)+1 , ((y+lastans) mod N)+1 ).

其中lastans是上次询问的答案,一开始为0。

输入格式

第一行两个整数N和M。

第二行有N个正整数,其中第i个数为Ai,有多余空格。

后M行每行两个数x,y表示一对询问。

输出格式

共M行,第i行一个正整数表示第i个询问的结果。

样例

样例输入

3 3  

1 4 3  

0 1  

0 1  

4 3  

样例输出

5  

7  

7

数据范围与提示

HINT

N=12000,M=6000,x,y,Ai在signed longint范围内。