#include<bits/stdc++.h>
using namespace std;
int q;string s,str;
string er(int m,int n)
{
string v;
for(int i=m;i<m+n;i++)
{
v[i-m]=s[i];
}
return v;
}
string san(int m,string jj)
{
string v;
for(int i=0;i<m;i++)
{
v[i]=s[i];
}
for(int i=0;i<jj.size();i++)
{
v[i+m]=jj[i];
}
for(int i=m;i<s.size();i++)
{
v[i+jj.size()]=s[i];
}
return v;
}
int si(string m,int k)
{
int cnt=-1;
for(int i=0;i<s.size()-k+1;i++)
{
int j=0;
int flag=0;
while(s[i]==m[j]&&j<k)
{
flag=1;
i++;
j++;
}
if(j==k)
{
cnt=i-j;
break;
}
if(flag==1)
{
i--;
}
}
return cnt;
}
int main()
{
cin>>q>>s;
for(int i=1;i<=q;i++)
{
int x;
cin>>x;
if(x==1)
{
cin>>str;
s=s+str;
cout<<s<<endl;
}
if(x==2)
{
int a,b;
cin>>a>>b;
s=er(a,b);
cout<<s<<endl;
}
if(x==3)
{
int j;
cin>>j>>str;
s=san(j,str);
cout<<s<<endl;
}
else{
cin>>str;
int len=str.size();
int mt=si(str,len);
cout<<mt<<endl;
}
}
return 0;
}