#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;
}


}