N, Q = map(int, input().split()) M = 26 Bs = [[0] * (N + 1) for _ in range(M)] A = list(map(int, input().split())) for i in range(N): for j in range(M): Bs[j][i + 1] = Bs[j][i] for j in range(M): Bs[j][i + 1] += (A[i] >> j) & 1 for i in range(Q): L, R = map(int, input().split()) ans = 0 for j in range(M): # print(R - L + 1) # print(Bs[j][R] - Bs[j][L - 1], 1 << j) ans += (1 << j) * (Bs[j][R] - Bs[j][L - 1]) * (R - L + 1 - (Bs[j][R] - Bs[j][L - 1])) print(ans)