#include using namespace std; void dbg_out() { cerr << endl; } template void dbg_out(Head H, Tail... T) { cerr << ' ' << H; dbg_out(T...); } #define dbg(...) cerr << "(" << #__VA_ARGS__ << ")", dbg_out(__VA_ARGS__) #define int long long const int MOD = 1e9 + 7; const int INF = LLONG_MAX >> 1; void solve() { int n, q; cin >> n >> q; int a[n]; vector> pref0(n + 1, vector (32, 0)); vector> pref1(n + 1, vector (32, 0)); for(int i=0; i> a[i]; for(int j = 0; j<32; j++) { if(a[i] >> j & 1) { pref1[i + 1][j]++; } else { pref0[i + 1][j]++; } pref0[i + 1][j] += pref0[i][j]; pref1[i + 1][j] += pref1[i][j]; } } while(q--) { int l, r; cin >> l >> r; --l; int ans = 0; for(int i=0; i<32; i++) { int z = pref0[r][i] - pref0[l][i]; int o = pref1[r][i] - pref1[l][i]; ans += (z * o) * (1LL << i); } cout << ans << '\n'; } } int32_t main() { ios::sync_with_stdio(false); cin.tie(nullptr); int tc = 1; // cin >> tc; while (tc--) solve(); }