#include <stdio.h>




int resenje(int arr[], int a, int b)
{
    int res = arr[a];
    for (int i = a + 1; i <= b; i++)
        res &= arr[i];

    return res;
}


int n, q;
int temp1, temp2;

int main()
{
    int a[200000];

    scanf("%d%d", &n, &q);

    for (int i = 0; i < n; i++)
        scanf("%d", &a[i]);

    for (int i = 0; i < q; i++)
    {
        scanf("%d%d", &temp1, &temp2);
        int r = resenje(a, temp1 - 1, temp2 - 1);
        printf("%d\n", r);
    }

    return 0;
}