#include <bits/stdc++.h>
using namespace std;

string binarno(int n) {
    string b = "";
    for (int i=0; i<32; i++) b += '0';
    
    for (int i=0; i<32; i++) {
        if (n%2 == 1) b[31 - i] = '1';
        n = n / 2;
    }
    return b;
}

int main()
{
	int n,q;
	cin >> n >> q;
	vector<int> v;
	vector<int> v2;
	for(int i=0; i<n; i++) {
		int a;
		cin >> a;
		v.push_back(a);
		
		string s=binarno(a);
		int j=0;
		while(s[j]=='0'){
		    j++;
		}
	
		v2.push_back(32-j);
	}
	for(int k=0; k<q; k++) {
		int l,r;
		cin >> l >> r;
		int najvise=0;
		for(int i=1; i<32;i++){
		    int npomoc=0;
		    for(int p=l-1; p< r; p++){
		        if(v2[p]==i )npomoc++;
		    }
		    if(npomoc>najvise)najvise=npomoc;
		}
		
        cout <<najvise<< ' ';
	}
	

	return 0;
}