#include <iostream>
#include <string.h>
#include <vector>
using namespace std;
vector<int> as1;
vector<int> bs1;
int main() {
// your code goes here
int n,m;
cin>>n>>m;
for(int i=0;i<n;i++){
int num;
cin>>num;
as1.push_back(num);
}
for(int i=0;i<n;i++){
int num;
cin>>num;
bs1.push_back(num);
}
for(int i=0;i<m;i++){
int c1;
cin>>c1;
if(c1==0){
int x,y,z;
cin>>x>>y>>z;
x--;
y--;
for(int i=0;i<z;i++){
as1[i+x]=bs1[i+y];
}
}else{
int l,r;
cin>>l>>r;
l--;
int ans=0;
for(int i=l;i<r;i++){
ans+=as1[i];
}
cout<<ans<<endl;
}
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nLmg+CiNpbmNsdWRlIDx2ZWN0b3I+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnZlY3RvcjxpbnQ+IGFzMTsKdmVjdG9yPGludD4gYnMxOwppbnQgbWFpbigpIHsKCS8vIHlvdXIgY29kZSBnb2VzIGhlcmUKCWludCBuLG07CgljaW4+Pm4+Pm07CgkKCWZvcihpbnQgaT0wO2k8bjtpKyspewoJCWludCBudW07CgkJY2luPj5udW07CgkJYXMxLnB1c2hfYmFjayhudW0pOwoJfQoJZm9yKGludCBpPTA7aTxuO2krKyl7CgkJaW50IG51bTsKCQljaW4+Pm51bTsKCQliczEucHVzaF9iYWNrKG51bSk7Cgl9Cglmb3IoaW50IGk9MDtpPG07aSsrKXsKCQlpbnQgYzE7CgkJY2luPj5jMTsKCQlpZihjMT09MCl7CgkJCWludCB4LHksejsKCQkJY2luPj54Pj55Pj56OwoJCQl4LS07CgkJCXktLTsKCQkJZm9yKGludCBpPTA7aTx6O2krKyl7CgkJCQlhczFbaSt4XT1iczFbaSt5XTsKCQkJfQoJCX1lbHNlewoJCQlpbnQgbCxyOwoJCQljaW4+Pmw+PnI7CgkJCWwtLTsKCQkJaW50IGFucz0wOwoJCQlmb3IoaW50IGk9bDtpPHI7aSsrKXsKCQkJCWFucys9YXMxW2ldOwoJCQl9CgkJCWNvdXQ8PGFuczw8ZW5kbDsKCQl9Cgl9CgkKCXJldHVybiAwOwp9
MTIgMTkKMSAyIDMgNCA1IDYgNyA4IDkgMTAgMTEgMTIKNCAyIDEwIDMgMTEgOSA3IDEyIDEgOCA2IDUKMSAxIDEyCjEgMSAxMQowIDEgMyA0CjEgMiA0CjAgMiA4IDMKMCAxIDYgNAoxIDEgMwoxIDEgNQoxIDIgNgoxIDMgOAowIDUgNSAyCjEgMiA2CjAgMSA5IDMKMSAxIDMKMSAxIDQKMCAxIDEgMTIKMSAyIDUKMCA4IDIgMwoxIDYgMTI=
12 19
1 2 3 4 5 6 7 8 9 10 11 12
4 2 10 3 11 9 7 12 1 8 6 5
1 1 12
1 1 11
0 1 3 4
1 2 4
0 2 8 3
0 1 6 4
1 1 3
1 1 5
1 2 6
1 3 8
0 5 5 2
1 2 6
0 1 9 3
1 1 3
1 1 4
0 1 1 12
1 2 5
0 8 2 3
1 6 12