#include <algorithm>
#include <iostream>
#include <cmath>// TIP To <b>Run</b> code, press <shortcut actionId="Run"/> or
#include <vector>
using namespace std ;
int main() {
int n,t;
cin>>n>>t;
string s;
cin>>s;
int x,y,pos;
while(t--) {
string op;
cin>>op;
if (op=="pop_back") {
s.pop_back();
}
else if (op=="front" )
cout<< s.front();
else if (op=="back" )
cout<< s.back()<<"\n";
else if (op=="sort") {
cin>>x>>y;
if (x>y) swap(x,y);
sort(s.begin()+x-1,s.begin()+y);
}
else if (op=="reverse") {
cin>>x>>y;
if (x>y)
swap(x,y);
reverse(s.begin()+x-1,s.begin()+y);
}
else if (op=="print") {
cin>>pos;
cout<<s[pos-1] <<"\n";}
else if (op=="substr")
{cin>>x>>y;
if (x>y) swap(x,y);
string s1=s.substr(x-1,(y-x)+1);
cout<<s1<<"\n";
}
else if (op=="push_back") {
char c;
cin>>c;
s.push_back(c);
}
cout<< '\n' ;
}
return 0;
}
// TIP See CLion help at <a
// href="https://w...content-available-to-author-only...s.com/help/clion/">jetbrains.com/help/clion/</a>.
// Also, you can try interactive lessons for CLion by selecting
// 'Help | Learn IDE Features' from the main menu.
I2luY2x1ZGUgPGFsZ29yaXRobT4KI2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y21hdGg+Ly8gVElQIFRvIDxiPlJ1bjwvYj4gY29kZSwgcHJlc3MgPHNob3J0Y3V0IGFjdGlvbklkPSJSdW4iLz4gb3IKI2luY2x1ZGUgPHZlY3Rvcj4KdXNpbmcgIG5hbWVzcGFjZSBzdGQgOwppbnQgbWFpbigpIHsKCmludCBuLHQ7CiAgICBjaW4+Pm4+PnQ7CiAgICBzdHJpbmcgczsKICAgIGNpbj4+czsKICAgIGludCB4LHkscG9zOwogICAgd2hpbGUodC0tKSB7CiAgICAgICAgc3RyaW5nIG9wOwogICAgICAgIGNpbj4+b3A7CiAgICAgICAgaWYgKG9wPT0icG9wX2JhY2siKSB7CiAgICAgICAgICAgIHMucG9wX2JhY2soKTsKICAgICAgICB9CmVsc2UgaWYgKG9wPT0iZnJvbnQiICAgICAgKQoKY291dDw8IHMuZnJvbnQoKTsKICAgICAgICBlbHNlIGlmIChvcD09ImJhY2siICAgICAgKQogICAgICAgICAgICBjb3V0PDwgcy5iYWNrKCk8PCJcbiI7CmVsc2UgaWYgKG9wPT0ic29ydCIpIHsKICAgIGNpbj4+eD4+eTsKICAgIGlmICh4PnkpIHN3YXAoeCx5KTsKICAgIHNvcnQocy5iZWdpbigpK3gtMSxzLmJlZ2luKCkreSk7Cn0KICAgICAgICBlbHNlIGlmIChvcD09InJldmVyc2UiKSB7CiAgICAgICAgICAgIGNpbj4+eD4+eTsKICAgICAgICAgICAgaWYgKHg+eSkKICAgICAgICAgICAgICAgIHN3YXAoeCx5KTsKICAgICAgICAgICAgcmV2ZXJzZShzLmJlZ2luKCkreC0xLHMuYmVnaW4oKSt5KTsKICAgICAgICB9CgogICAgICAgIGVsc2UgaWYgKG9wPT0icHJpbnQiKSB7CiAgICAgICAgICAgIGNpbj4+cG9zOwogICAgICAgICAgICBjb3V0PDxzW3Bvcy0xXSA8PCJcbiI7fQogICAgICAgIGVsc2UgaWYgKG9wPT0ic3Vic3RyIikKICAgICAgICAgICAge2Npbj4+eD4+eTsKICAgICAgICAgICAgaWYgKHg+eSkgc3dhcCh4LHkpOwpzdHJpbmcgczE9cy5zdWJzdHIoeC0xLCh5LXgpKzEpOwogICAgICAgICAgICBjb3V0PDxzMTw8IlxuIjsKICAgICAgICB9CiAgICBlbHNlIGlmIChvcD09InB1c2hfYmFjayIpIHsKICAgICAgICBjaGFyIGM7CiAgICAgICAgY2luPj5jOwogICAgICAgIHMucHVzaF9iYWNrKGMpOwogICAgfQoKCgoKCgoKY291dDw8ICdcbicgOwoKICAgIH0KCgoKCgoKCgoKCiAgICByZXR1cm4gMDsKfQoKLy8gVElQIFNlZSBDTGlvbiBoZWxwIGF0IDxhCi8vIGhyZWY9Imh0dHBzOi8vdy4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4ucy5jb20vaGVscC9jbGlvbi8iPmpldGJyYWlucy5jb20vaGVscC9jbGlvbi88L2E+LgovLyAgQWxzbywgeW91IGNhbiB0cnkgaW50ZXJhY3RpdmUgbGVzc29ucyBmb3IgQ0xpb24gYnkgc2VsZWN0aW5nCi8vICAnSGVscCB8IExlYXJuIElERSBGZWF0dXJlcycgZnJvbSB0aGUgbWFpbiBtZW51Lg==
MTggOAphc3NpdXRpbnVwcGVyZWd5cHQKc3Vic3RyIDEgNgpzb3J0IDUgOApwb3BfYmFjawpiYWNrCnJldmVyc2UgMSA2CmZyb250CnB1c2hfYmFjayBpCnByaW50IDQKT3V0cHV0Q29weQphc3NpdXQKcApuCnM=
18 8
assiutinupperegypt
substr 1 6
sort 5 8
pop_back
back
reverse 1 6
front
push_back i
print 4
OutputCopy
assiut
p
n
s