#include<stdio.h>
#include<stdlib.h>
void add(int *number,int n);
void print(int *number,int n);
int main(){
int n;
int m;
scanf("%d %d",&n,&m);
int *number=(int *)malloc(sizeof(int )*n);
for(int i=0;i<n;i++){
scanf("%d",&number[i]);
}
for(int i=0;i<m;i++){
int single;
scanf("%d",&single);
if(single==1) add(number,n);
if(single==2) print(number,n);
}
free(number);
return 0;
}
void add(int *number,int n)
{
int min,max;
int cont;
scanf("%d %d",&min,&max);
scanf("%d",&cont);
for(int i=min-1;i<max;i++){
number[i]+=cont;
}
}
void print(int *number,int n){
int i;
scanf("%d",&i);
printf("%d\n",number[i-1]);
}