#include<bits/stdc++.h>
using namespace std;
int a[1000005];
int main(){
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int cs;
cin>>cs;
int n,m;
cin>>n>>m;
for(int i=1;i<=n;i++){
cin>>a[i];
}
while(m--){
int x;
cin>>x;
if(x==1){
int l,r,d;
cin>>l>>r>>d;
for(int i=l;i<=r;i++){
a[i]+=d;
}
}
if(x==2){
int l1,l2,r1,r2;
cin>>l1>>r1>>l2>>r2;
int y=l2-l1;
for(int i=l1;i<=l2;i++){
a[i]=a[i+y];
}
}
if(x==3){
int l,r;
cin>>l>>r;
int s=0;
for(int i=l;i<=r;i++){
s+=a[i];
}
cout<<s<<endl;
}
}
exit(0);
}
连第一个测试点都过不了