#include #define rep(i,N) for(int i=0;i>n; assert(1<=n&&n<=ten(5)); rep(i,n){ ll x; cin>>x; assert(-ten(10)<=x&&x<=ten(10)); val[i/B][i%B]=x; } rep(i,B)push(i); cin>>q; assert(1<=q&&q<=ten(5)); rep(i,q){ int k,l,r,c; cin>>k>>l>>r>>c; assert(k==1||k==2); assert(1<=l&&l<=r&&r<=n); assert(-ten(4)<=c&&c<=ten(4)); l--; if(k==1)add(l,r,c); else cout<