#include <bits/stdc++.h>
using namespace std;
const int Nmax=1e5+5;
int aib[Nmax];
int v[Nmax];
//g(t)=t&(t-1)
//pt upd: i -> (i|(i-1))+1
int n,a,b;
int sum(int i){
int s=0;
while(i>0){
s+=aib[i];
i=i&(i-1);
}
return s;
}
void upd(int i,int val){
while(i<=n){
aib[i]+=val;
i=(i|(i-1))+1;
}
}
int main()
{
ifstream cin("aib.in");
ofstream cout("aib.out");
int m,x;
cin>>n>>m;
for(int i=1;i<=n;i++){
cin>>v[i];
upd(i,v[i]);
}
for(int i=0;i<m;i++){
cin>>x>>a>>b;
if(x==0){
cout<<sum(b)-sum(a-1)<<"\n";
}
else{
upd(a,b);
}
}
return 0;
}