#include<cstdio>
#include<iostream>
#include<algorithm>
using namespace std;
int n,m,a[50005],t,x,y,c[50005];
int lowbit(int x)
{
return x & -x;
}
void update(int x,int k)
{
for(int i=x;i<=n;i+=lowbit(i))
{
c[i]+=k;
}
}
int getsum(int x)
{
int ans=0;
for(int i=x;i>0;i-=lowbit(i))
{
ans+=c[i];
}
return ans;
}
int main()
{
cin>>n>>m;
for(int i=1;i<=n;i++)
{
cin>>a[i];
update(i,a[i]);
}
for(int i=1;i<=m;i++)
{
cin>>t>>x>>y;
if(t==1)
{
update(x,y);
}
if(t==2)
{
cout<<getsum(y)-getsum(x-1)<<endl;
}
}
return 0;
}