import java.util.Scanner; publicclassMain{ staticintN=100010; staticint n, m; staticint[] a = newint[N]; staticint[] tr = newint[N]; publicstaticvoidmain(String[] args){ Scannerscan=newScanner(System.in); n = scan.nextInt(); m = scan.nextInt(); for (inti=1; i <= n; i++) a[i] = scan.nextInt(); for (inti=1; i <= n; i++) add(i, a[i]); int k, x, y; for (inti=0; i < m; i++){ k = scan.nextInt(); x = scan.nextInt(); y = scan.nextInt(); if (k == 0) System.out.println(query(y) - query(x - 1)); else add(x, y); } } publicstaticintlowbit(int x){ return x & -x; } publicstaticvoidadd(int x, int c){ for (inti= x; i <= n; i += lowbit(i)) tr[i] += c; } publicstaticintquery(int x){ intres=0; for (inti= x; i >= 1; i -= lowbit(i)){ res += tr[i]; } return res; } }