#include <iostream>
using namespace std;
void unesi(int* a, int n)
{
    for(int i=0; i<n; i++)
        cin>>a[i];
}
int main()
{
    int n;
    cin>>n;
    int q;
    cin>>q;
    int a[n];
    int r[q];
    int l[q];
    unesi(a, n);
    for(int i=0; i<q; i++)
        cin>>r[i]>>l[i];
    for(int i=0; i<q; i++)
    {
       int  b=~0;
        for(int j=r[i]-1; j<l[i]; j++)
            {
                b=(b&a[j]);
            }
        cout<<b<<endl;
    }

    return 0;
}