#include<bits/stdc++.h>
using namespace std;
int main()
{
char s[101],str[101],op;
int n;
scanf("%d\n%s\n",&n,s);
for(int i=1;i<=n;i++)
{
scanf("%c ",&op);
switch(op)
{
case '1':
{
scanf("%s",str); getchar();
int l=strlen(s);
int ls=strlen(str);
for(int j=0;j<=ls;j++) s[l+j]=str[j];
printf("%s",s);
break;
}
case '2':
{
int a,b,t=0;
scanf("%d %d",&a,&b); getchar();
for(int j=0;j<b;j++) s[j]=s[a+j];
s[b]='\0';
for(int j=b+1;j<=100;j++) s[j]=' ';
printf("%s",s);
break;
}
case '3':
{
int a,b=0,l=strlen(s);
scanf("%d %s",&a,str); getchar();
int ls=strlen(str);
for(int j=l+ls;j>l+ls-a;j--)
s[j]=s[j-ls];
for(int j=a;j<a+ls;j++)
s[j]=str[b++];
printf("%s",s);
break;
}
case '4':
{
scanf("%s",str); getchar();
int l=strlen(s),ls=strlen(str);
for(int j=0;j<=l-ls;j++)
{
for(int k=0;k<ls;k++)
{
if(s[j+k]!=str[k]) break;
if(k==ls-1)
{
printf("%d",j);
goto END;
}
}
}
printf("-1");
END:break;
}
}
if(i!=n) printf("\n");
}
return 0;
}