#include <bits/stdc++.h>
#define pb push_back
#define lb lower_bound
#define ub upper_bound
#define pii pair<int,int>
#define fi first
#define int long long
#define se second
#define ios ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL);
#define TXT "test"
#define freo if(fopen(TXT".inp","r")){freopen(TXT".inp","r",stdin); freopen(TXT".out","w",stdout);}
using namespace std;
const int INF = 0x3f3f3f3f3f3f3f3fLL;
const int MXN = 2*1e5+5;
int n,m,a[MXN],pa[MXN][19];
void build()
{
for(int i=1;i<=n;i++)
pa[i][0]=a[i];
for(int j=1;j<=log2(n);j++)
{
for(int i=1;i<=(n-(1<<j)+1);i++)
{
pa[i][j] = min(pa[i][j - 1], pa[i + (1 << (j - 1))][j - 1]);
}
}
}
int get(int l,int r)
{
int k=log2(r-l+1);
return min(pa[l][k],pa[r-(1<<k)+1][k]);
}
int bs(int l,int r,int cost)
{
int m,ans=-1;
while(l<=r)
{
m=(l+r)>>1;
if(get(l,m)>cost)
{
l=m+1;
}
else
{
r=m-1;
ans=m;
}
}
return ans;
}
void solve()
{
cin>>n>>m;
for(int i=1;i<=n;i++)
{
cin>>a[i];
}
build();
int cost,l,r;
while(m--)
{
cin>>cost>>l>>r;
while(cost>0)
{
int d=bs(l,r,cost);
if(d==-1)
break;
cost%=a[d];
}
cout<<cost<<"\n";
}
}
int32_t main()
{
ios;
freo;
solve();
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgcGIgcHVzaF9iYWNrCiNkZWZpbmUgbGIgbG93ZXJfYm91bmQKI2RlZmluZSB1YiB1cHBlcl9ib3VuZAojZGVmaW5lIHBpaSBwYWlyPGludCxpbnQ+CiNkZWZpbmUgZmkgZmlyc3QKI2RlZmluZSBpbnQgbG9uZyBsb25nCiNkZWZpbmUgc2Ugc2Vjb25kCiNkZWZpbmUgaW9zIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOyBjaW4udGllKE5VTEwpOyBjb3V0LnRpZShOVUxMKTsKI2RlZmluZSBUWFQgInRlc3QiCiNkZWZpbmUgZnJlbyBpZihmb3BlbihUWFQiLmlucCIsInIiKSl7ZnJlb3BlbihUWFQiLmlucCIsInIiLHN0ZGluKTsgZnJlb3BlbihUWFQiLm91dCIsInciLHN0ZG91dCk7fQoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmNvbnN0IGludCBJTkYgPSAweDNmM2YzZjNmM2YzZjNmM2ZMTDsKY29uc3QgaW50IE1YTiA9IDIqMWU1KzU7CmludCBuLG0sYVtNWE5dLHBhW01YTl1bMTldOwp2b2lkIGJ1aWxkKCkKewogICAgZm9yKGludCBpPTE7aTw9bjtpKyspCiAgICAgICAgcGFbaV1bMF09YVtpXTsKICAgIGZvcihpbnQgaj0xO2o8PWxvZzIobik7aisrKQogICAgewogICAgICAgIGZvcihpbnQgaT0xO2k8PShuLSgxPDxqKSsxKTtpKyspCiAgICAgICAgewogICAgICAgICAgICBwYVtpXVtqXSA9IG1pbihwYVtpXVtqIC0gMV0sIHBhW2kgKyAoMSA8PCAoaiAtIDEpKV1baiAtIDFdKTsKICAgICAgICB9CiAgICB9Cn0KaW50IGdldChpbnQgbCxpbnQgcikKewogICAgaW50IGs9bG9nMihyLWwrMSk7CiAgICByZXR1cm4gbWluKHBhW2xdW2tdLHBhW3ItKDE8PGspKzFdW2tdKTsKfQoKaW50IGJzKGludCBsLGludCByLGludCBjb3N0KQp7CiAgICBpbnQgbSxhbnM9LTE7CiAgICB3aGlsZShsPD1yKQogICAgewogICAgICAgIG09KGwrcik+PjE7CiAgICAgICAgaWYoZ2V0KGwsbSk+Y29zdCkKICAgICAgICB7CiAgICAgICAgICAgIGw9bSsxOwogICAgICAgIH0KICAgICAgICBlbHNlCiAgICAgICAgewogICAgICAgICAgICByPW0tMTsKICAgICAgICAgICAgYW5zPW07CiAgICAgICAgfQogICAgfQogICAgcmV0dXJuIGFuczsKfQoKdm9pZCBzb2x2ZSgpCnsKICAgIGNpbj4+bj4+bTsKICAgIGZvcihpbnQgaT0xO2k8PW47aSsrKQogICAgewogICAgICAgIGNpbj4+YVtpXTsKICAgIH0KICAgIGJ1aWxkKCk7CiAgICBpbnQgY29zdCxsLHI7CiAgICB3aGlsZShtLS0pCiAgICB7CiAgICAgICAgY2luPj5jb3N0Pj5sPj5yOwogICAgICAgIHdoaWxlKGNvc3Q+MCkKICAgICAgICB7CiAgICAgICAgICAgIGludCBkPWJzKGwscixjb3N0KTsKICAgICAgICAgICAgaWYoZD09LTEpCiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY29zdCU9YVtkXTsKICAgICAgICB9CiAgICAgICAgY291dDw8Y29zdDw8IlxuIjsKICAgIH0KfQoKaW50MzJfdCBtYWluKCkKewogICAgaW9zOwogICAgZnJlbzsKICAgIHNvbHZlKCk7Cn0=