#include <cstdio>
#include <cstdlib>
FILE *fin=fopen("datorii.in","r");
FILE *fout=fopen("datorii.out","w");
int a[0x8000]={};
void add(int nod, int st, int en, int pos, int val)
{
a[nod]+=val;
if (st!=en)
{
int mij = (st+en)>>1;
if (pos<=mij)
add((nod<<1)+1,st,mij,pos,val);
else
add((nod<<1)+2,mij+1,en,pos,val);
}
}
int sum;
void query(int nod, int st, int en, int aa, int bb)
{
if ((aa<=st)&&(en<=bb))
{
sum+=a[nod];
} else {
int mij = (st+en)>>1;
if (aa<=mij)
query((nod<<1)+1,st,mij,aa,bb);
if (bb>mij)
query((nod<<1)+2,mij+1,en,aa,bb);
}
}
int main (int argc, char * const argv[]) {
int n,m;
fscanf(fin, "%d%d",&n,&m);
for (int i=0; i<n; i++)
{
int x;
fscanf(fin, "%d",&x);
add(0, 0, n-1, i, x);
}
for (int i=0; i<m; i++)
{
int c,a,b;
fscanf(fin, "%d%d%d",&c,&a,&b);
if (c==0)
{
a--;
add(0, 0, n-1, a, -b);
} else {
a--; b--;
sum = 0;
query(0, 0, n-1, a, b);
fprintf(fout, "%d\n",sum);
}
}
fclose(fin);
fclose(fout);
return 0;
}