#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
int a,g;
string b,c;
cin>>a;
getline(cin,b);
for(int i=0;i<a;i++)
{
cin>>g;
switch(g)
{
case 1:cin>>c;b+=c;cout<<b<<endl;break;
case 2:int p,m;cin>>p>>m;b=b.substr(p+1,p+1+m);cout<<b<<endl;break;
case 3:int d;cin>>d>>c;b=b.insert(d,c);cout<<b<<endl;break;
case 4:int pos;cin>>c;pos=b.find(c);if(pos!=string::npos){cout<<pos<<endl;}else{cout<<"-1"<<endl;}
}
}
return 0;
}