#include <iostream>
#include <string>
using namespace std;
int main()
{
ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
int q;
cin >> q;
string s;
cin.get();
getline(cin,s);
for (int i = 0; i < q; i++)
{
int n;
cin >> n;
string s2;
switch(n)
{
case 1:
{
cin >> s2;
s+=s2;
cout << s << endl;
break;
}
case 2:
{
int n1,n2;
cin >> n1 >> n2;
s2="";
for (int i = n1; i < n1+n2; i++)
{
s2+=s[i];
}
s = s2;
cout << s << endl;
break;
}
case 3:
{
int a;
cin >> a;
cin >> s2;
s.insert(a,s2);
cout << s << endl;
break;
}
case 4:
{
cin >> s2;
if (s.find(s2) != string::npos)
cout << s.find(s2) << endl;
else
cout << -1 << endl;
break;
}
}
}
return 0;
}