#include<bits/stdc++.h>
using namespace std;
const int N=500100;
int c[N];
int n,m;
int lowbit(int x){
return x&(-x);
}
void add(int x,int d){
while(x<=n){
c[x]+=d;
x+=lowbit(x);
}
}
long long sum(int x){
long long ans=0;
while(x>0){
ans+=c[x];
x-=lowbit(x);
}
return ans;
}
int in[N];
int main(){
cin>>n>>m;
for(int i=1;i<=n;i++){
cin>>in[i];
int x=in[i]-in[i-1];
add(i,x);
}
for(int i=1;i<=m;i++){
int a,b,c,d;
cin>>a>>b>>c;
if(a==1){
cin>>c>>d;
add(b,d);
add(c+1,-d);
}
else{
cout<<sum(b)<<'\n';
}
}
}