```
#include <stdio.h>
#include <string.h>
#include <algorithm>
using namespace std;
const int maxn=5e5+7;
int c[maxn];
int n,m;
inline int lowbit(int x){return x&(-x);}
void add(int x,int d){
while(x<maxn)c[x]+=d,x+=lowbit(x);
}
int get_sum(int x){
int sum=0;
while(x>0)sum+=c[x],x-=lowbit(x);
return sum;
}
int main()
{
int a,b,op;
scanf("%d%d",&n,&m);
for(int i=1;i<=n;i++)scanf("%d",&a),add(i,a);
while(m--){
scanf("%d%d%d",&op,&a,&b);
if(op==1)add(a,b);
else printf("%d\n",get_sum(b)-get_sum(a-1));
}
return 0;
}