#include<bits/stdc++.h>
using namespace std;
const int N=1e5+5;
int a[N];
int mn[N][20];
int ans[N];
void ST(int x) {
for(int i=1; i<=x; i++)
mn[i][0]=a[i];
for(int j=1; (1<<j)<=x; j++)
for(int i=1; i<=x; i++)
if(i+(1<<j)-1<=x)
mn[i][j]=min(mn[i][j-1],mn[i+(1<<j)-1][j-1]);
}
int main() {
int m,n,l,r,len,k;
cin>>m>>n;
for(int i=1; i<=m; i++) cin>>a[i];
ST(m);
for(int i=1; i<=n; i++) {
cin>>l>>r;
len=r-l+1;
k=log2(len);
ans[i]=min(mn[l][k],mn[r-(1<<k)+1][k]);
}
for(int i=1; i<=n; i++) cout<<ans[i]<<" ";
return 0;
}