#include<stdio.h>
int main(){
int n,m=0;
char a[500];
scanf("%s",&a);
for(int j=0;a[j]!='\0';j++){
m++;
}
scanf("%d",&n);
while(n--){
char op[500];
scanf("%s",&op);
int b,i,len;
b=op[0]-'0';
i=op[1]-'0';
len=op[2]-'0';
if(b==0){
char c[500];
int k=0;
for(int j=i;j<=i+len-1;j++){
c[k]=a[j];
k++;
}
for(int j=k-1;j>=0;j--){
a[i]=c[j];
i++;
}
for(int j=0;j<m;j++){
printf("%c",a[j]);
}
printf("\n");
}
if(b==1){
char c[500];
int k=i+len-1,x=0,y=3,z;
for(int j=k+1;a[j]!='\0';j++){
c[x]=a[j];
x++;
}
for(z=i;op[y]!='\0';z++){
a[z]=op[y];
y++;
}
for(int j=0;j<x;j++){
a[z]=c[j];
z++;
}
m=0;
for(int j=0;a[j]!='\0';j++){
m++;
}
for(int j=0;j<m;j++){
printf("%c",a[j]);
}
printf("\n");
}
}
return 0;
}
int main(){
int n,m=0;
char a[500];
scanf("%s",&a);
for(int j=0;a[j]!='\0';j++){
m++;
}
scanf("%d",&n);
while(n--){
char op[500];
scanf("%s",&op);
int b,i,len;
b=op[0]-'0';
i=op[1]-'0';
len=op[2]-'0';
if(b==0){
char c[500];
int k=0;
for(int j=i;j<=i+len-1;j++){
c[k]=a[j];
k++;
}
for(int j=k-1;j>=0;j--){
a[i]=c[j];
i++;
}
for(int j=0;j<m;j++){
printf("%c",a[j]);
}
printf("\n");
}
if(b==1){
char c[500];
int k=i+len-1,x=0,y=3,z;
for(int j=k+1;a[j]!='\0';j++){
c[x]=a[j];
x++;
}
for(z=i;op[y]!='\0';z++){
a[z]=op[y];
y++;
}
for(int j=0;j<x;j++){
a[z]=c[j];
z++;
}
m=0;
for(int j=0;a[j]!='\0';j++){
m++;
}
for(int j=0;j<m;j++){
printf("%c",a[j]);
}
printf("\n");
}
}
return 0;
}