#include <bits/stdc++.h>
using namespace std;
ifstream fin("datorii.in");
ofstream fout("datorii.out");
int n, op, x, y, m;
vector<long long> t;
void add(int k, int val){
while(k <= n){
t[k] += val;
k += (k & -k);
}
}
long long sum(int k){
long long s = 0;
while(k){
s += t[k];
k -= (k & -k);
}
return s;
}
int main()
{
int i, left, right, mid, pos;
long long val;
fin >> n >> m;
t.resize(n + 1);
for(i = 1; i <= n; ++i){
fin >> val;
add(i, val);
}
for(i = 1; i <= m; ++i){
fin >> op;
if(op == 0){
fin >> x >> y;
add(x, -y);
}else{
fin >> x >> y;
fout << sum(y) - sum(x - 1) << endl;
}
}
return 0;
}