#include<bits/stdc++.h>
using namespace std;
ifstream f("datorii.in");
ofstream g("datorii.out");
int N, M, X1, X2, datorii, optiune, i=1;
int A[15001], Sume[15001];
int main()
{
f >> N >> M;
f >> datorii;
A[i-1]= datorii;
Sume[i-1]=datorii;
while( N>i)
{
f >> datorii;
A[i] = datorii;
//creez un vector care sa retina suma numerelor pana la pozitia respectiva
Sume[i]= Sume[i-1] + datorii;
i++;
}
for ( int j = 0; j < M; j++ )
{
f >> optiune;
f >> X1 >>X2;
if ( optiune==1 )
g << Sume[X2-1]-Sume[X1-2] << endl;
else
{
A[X1-1]=A[X1-1]-X2;
for ( int k = (X1-1); k < M ; k++ )
{
Sume[k]=Sume[k]-X2;
}
}
}
return 0;
f.close();
g.close();
}