#include <bits/stdc++.h>
int a[100000];
int main(void) {
  int i, n, m, y = 0;
  scanf("%d %d", &n, &m);
  for (i = 0; i < n; i++) scanf("%d", &a[i]);
  for (i = 0; i < m; i++) {
    int t;
    scanf("%d", &t);
    if (t == 1) {
      int v, x;
      scanf("%d %d", &v, &x);
      a[v - 1] = x - y;
    } else if (t == 2) {
      int yi;
      scanf("%d", &yi);
      y += yi;
    } else if (t == 3) {
      int q;
      scanf("%d", &q);
      printf("%d\n", a[q - 1] + y);
    }
  }
  return 0;
}
