#include <cstdio>

long long int Q,N,a[200000],z[200000][2],s,v=0,t;

int main()
{
    scanf("%lld %lld",&N,&Q);
    for(long long int i=0;i<N;i++)
        {
            scanf("%lld",&a[i]);
            if(a[i]>1)
                v=1;
        }
    for(long long int i=0;i<Q;i++)
        scanf("%lld %lld",&z[i][0],&z[i][1]);
    if(v)
    {
        for(long long int i=0;i<Q;i++)
        {
        if(z[i][0]!=z[i][1])
        s=a[z[i][0]-1]&a[z[i][0]];
        else
            s=a[z[i][0]-1];
        for(long long int j=z[i][0]+1;j<z[i][1];j++)
            s=s&a[j];
        printf("%lld\n",s);
        }
    }
    else
    {
        for(long long int i=0;i<Q;i++)
        {
            t=0;
            for(long long int j=z[i][0]-1;j<z[i][1];j++)
            {
                if(!a[j])
                {
                    t=1;
                    break;
                }
            }
            if(t)
                printf("0\n");
            else
                printf("1\n");
        }
    }
    return 0;
}