#include <stdio.h>
#include <vector>
using namespace std;
vector <unsigned> vekt;
int main()
{
    int n,q;
    scanf("%d%d",&n,&q);
    for(int i=0;i<n;i++)
    {
        unsigned a;
        scanf("%u",&a);
        vekt.push_back(a);
    }
    for(int i=0;i<q;i++)
    {
        int l,r;
        scanf("%d%d",&l,&r);
        r-=1;
        unsigned suma=~0;
        for(int i=l-1;i<=r;i++)
        {
            suma&=vekt[i];
        }
        printf("%u\n",suma);
    }
    return 0;
}
/**
5 4
1 5 4 3 2
1 3
4 5
2 5
2 3
*/