#include using namespace std; #define rep(i, n) for (int i = 0; i < (n); ++i) using ll = long long; using ull = unsigned long long; #include int main() { cin.tie(nullptr)->sync_with_stdio(false); int n, q; cin >> n >> q; vector a(n); rep(i, n) cin >> a[i]; atcoder::fenwick_tree fw(n); rep(i, n) fw.add(i, a[i]); rep(_, q) { ll t, x, y; cin >> t >> x >> y; if (t == 1) { fw.add(x, y - a[x]); a[x] = y; } else { cout << fw.sum(x, y) << '\n'; } } return 0; }