#include<bits/stdc++.h>
using namespace std;
int d[500000*4],n,m=1;
inline void build(int n){
while(m<=n)m<<=1;
for(int i=m+1;i<=m+n;i++) cin>>d[i];
for(int i=m-1;i;--i) d[i]=d[i<<1]+d[i<<1|1];
}
void chg(int x,int v){
d[x=m+x]+=v;
while(x) d[x>>=1]=d[x<<1]+d[x<<1|1];
}
int add(int x,int v){
for(int i=x+m;i;i>>=1)d[i]+=v;
}
int ask(int l,int r){
int ans=0;
for(l=m+l-1,r=m+r+1 ; l^r^1 ; l>>=1,r>>=1){
if(~l&1)ans+=d[l^1];
if(r&1)ans+=d[r^1];
}
return ans;
}
void debug(){
for(int i=m+1;i<=m+n;i++)cout<<d[i]<<" ";
cout<<m<<endl;
}
int main(){
int q;
cin>>n>>q;
build(n);
while(q--){
int op,a,b;
cin>>op>>a>>b;
if(op==1)add(a,b);
else cout<<ask(a,b)<<endl;
}
}