#include<bits/stdc++.h>
using namespace std;
int n,a[1000009],pl[1000009],v[1000009];
void upd(int l,int r,int c)
{
for(int i=l;i<=min(pl[l]*(int)sqrt(n),r);i++)
{
a[i]+=c;
}
if(pl[l]!=pl[r])
{
for(int i=(pl[r]-1)*sqrt(n)+1;i<=r;i++)
{
a[i]+=c;
}
}
for(int i=pl[l]+1;i<=pl[r]-1;i++)
{
v[i]+=c;
}
}
signed main()
{
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>a[i];
}
for(int i=1;i<=n;i++)
{
pl[i]=(i-1)/sqrt(n)+1;
}
for(int i=1;i<=n;i++)
{
int op,l,r,c;
cin>>op>>l>>r>>c;
if(!op) upd(l,r,c);
else cout<<a[r]+v[pl[r]]<<endl;
}
return 0;
}