#include<bits/stdc++.h>
using namespace std;
#define getchar() (p1==p2&&(p2=(p1=buf)+fread(buf,1,1<<21,stdin),p1==p2)?EOF:*p1++)
char buf[1<<21],*p1=buf,*p2=buf;
inline void readint(int &x)
{
int f=1;x=0;
char ch=getchar();
while(!isdigit(ch))
{
if(ch=='-')f=-1;
ch=getchar();
}
while(isdigit(ch))
{
x=(x<<3)+(x<<1)+ch-48;
ch=getchar();
}
x*=f;
}
const int N=5e5+5;
int n,a[N],bl[N],sum[N],num,q,x1,x2,x3;
inline int question(int x,int y)
{
int res=0;
for(int i=x;i<=min(bl[x]*num,y);i++)res+=a[i];
if(bl[x]!=bl[y])for(int i=(bl[y]-1)/num+1;i<=y;i++)res+=a[i];
for(int i=bl[x]+1;i<bl[y];i++)res+=sum[i];
return res;
}
int main()
{
readint(n);num=sqrt(n);readint(q);
for(int i=1;i<=n;i++)
{
readint(a[i]);
bl[i]=(i-1)/num+1;
sum[bl[i]]+=a[i];
}
while(q--)
{
readint(x1),readint(x2),readint(x3);
if(x1==1)a[x2]+=x3,sum[bl[x2]]+=x3;
else printf("%d\n",question(x2,x3));
}
return 0;
}