#include <bits/stdc++.h>
using namespace std;
long long L,R,N,Q,k,br;
int maks;
long long a[500022];
int mat[25][500011];
int main(){
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cin >> N >> Q;

    for(int i=1;i<=N;i++){
        cin >> a[i];

        k=1<<21;
        br=21;
        while(true){
            if(a[i]&k){
                mat[br][i]++;
                break;
            }
            br--;
            k>>=1;
        }
    }
    for(int i=0;i<=21;i++){
        for(int j=1;j<=N;j++){
            mat[i][j]+=mat[i][j-1];
        }
    }
    while(Q--){
        cin >> L >> R;
        maks=0;
        for(int i=0;i<=21;i++){
            maks=max(maks, mat[i][R]-mat[i][L-1]);
        }
        cout << maks<< "\n";

    }




}