#include <bits/stdc++.h>
using namespace std;
int a[100005];
struct node{
int x,y;
}b[100005];
int main() {
int m,n;
cin>>m>>n;
for(int i=1;i<=m;i++)
cin>>a[i];
for(int i=1;i<=n;i++)
cin>>b[i].x>>b[i].y;
for(int i=1;i<=n;i++){
int minn=100001;
for(int j=b[i].x;j<=b[i].y;j++)
if(a[j]<minn) minn=a[j];
cout<<minn<<' ';
}
return 0;
}