#include<bits/stdc++.h>
using namespace std;
#define MAX 100005
  
// 262144 = 2^18
int tree[262144]; 
  
int dfs(int a,int b,int k,int l,int r){
  if(r<a || b<l)return 0;
  if(a<=l && r<=b)return tree[k];
  int m=(l+r)/2;
  return dfs(a,b,k*2+1,l,m)+dfs(a,b,k*2+2,m+1,r);
}
  
int getSum(int a,int b){
  // 131072 = 2^17
  return dfs(a,b,0,0,131071);
}
  
void update(int i,int x){
  // 131072 = 2^17
  i+=(131072-1);
  tree[i]+=x;
  while(i){
    i=(i-1)/2;
    tree[i]+=x;
  }
}

int n,q;
  
int main(){
  scanf("%d %d",&n,&q);
  while(q--){
    int type;
    scanf("%d",&type);
    if(type==0){
      int l,r,x;
      scanf("%d %d %d",&l,&r,&x);
      update(l,x);
      update(r+1,-x);
      
    }else{
      int target;
      scanf("%d",&target);
      int ans=getSum(0,target);
      printf("%d\n", ans);
    }
  }
  return 0;
}