import sys stdin = sys.stdin inf = 1 << 60 mod = 1000000007 sys.setrecursionlimit(10**7) ni = lambda: int(ns()) nin = lambda y: [ni() for _ in range(y)] na = lambda: list(map(int, stdin.readline().split())) nan = lambda y: [na() for _ in range(y)] nf = lambda: float(ns()) nfn = lambda y: [nf() for _ in range(y)] nfa = lambda: list(map(float, stdin.readline().split())) nfan = lambda y: [nfa() for _ in range(y)] ns = lambda: stdin.readline().rstrip() nsn = lambda y: [ns() for _ in range(y)] ncl = lambda y: [list(ns()) for _ in range(y)] nas = lambda: stdin.readline().split() n, q = na() a = na() lr = nan(q) c = [0] * (n + 1) for i in range(n): c[i + 1] = c[i] ^ a[i] for i in range(q): l, r = lr[i] print(c[l - 1] ^ c[r])