#include <bits/stdc++.h>

using namespace std;

int main()
{
    int n, q, x, l, r;
    cin >> n >> q;
    vector<int> a(n);
    vector<vector<int>> st(32, vector<int>(n+1, 0));
    for (int i=1; i<=n; i++)
    {
        cin >> a[i];
        x=a[i];
        int s=0;
        while(x>0)
        {
            x>>=1; s++;
        }
        s--;
        for (int j =0; j<32;j++)
        {
            if(j==s) st[s][i]=st[s][i-1]+1;
            else st[j][i]=st[j][i-1];
        }
    }
    for (int t=0; t<q;t++)
    {
        cin >>l>>r;
        int mx=0;
        for (int i =0; i<32;i++)
        {
            mx=max(mx, st[i][r]-st[i][l-1]);
        }
        cout <<mx << endl;
    }
}