#include <cstdio>
#include <algorithm>
#include <ctime>
#include <cstdlib>
using namespace std;
struct N {
int v, sz, pr;
N* l;
N* r;
bool rv;
};
N* eN = new N {0, 0, -1, NULL, NULL, 0};
typedef pair<N*, N*> p;
void unrv(N* t) {
if (t != eN && t->rv) {
swap(t->l, t->r);
t->l->rv ^= 1;
t->r->rv ^= 1;
t->rv = 0;
}
}
void rcmp(N* t) {
t->sz = t->l->sz + 1 + t->r->sz;
}
p s(N* t, int k) {
unrv(t);
p ans;
if (t == eN) {
ans.first = eN;
ans.second = eN;
} else if (t->l->sz >= k) {
ans.second = t;
p aux = s(t->l, k);
ans.first = aux.first;
ans.second->l = aux.second;
rcmp(ans.second);
} else {
ans.first = t;
p aux = s(t->r, k - t->l->sz - 1);
ans.second = aux.second;
ans.first->r = aux.first;
rcmp(ans.first);
}
return ans;
}
N* j(N* t1, N* t2) {
unrv(t1);
unrv(t2);
if (t1 == eN) {
return t2;
}
if (t2 == eN) {
return t1;
}
if (t1->pr > t2->pr) {
t1->r = j(t1->r, t2);
rcmp(t1);
return t1;
} else {
t2->l = j(t1, t2->l);
rcmp(t2);
return t2;
}
}
int acc(N* t, int k) {
rcmp(t);
if (t->l->sz > k)
acc(t->l, k);
else if (t->l->sz + 1 == k)
return t->v;
else
return acc(t->r, k - t->l->sz - 1);
}
N* ins(N* t, int k, int v) {
N* n = new N{v, 1, rand(), eN, eN, 0};
p aux = s(t, k - 1);
return j(j(aux.first, n), aux.second);
}
N* del(N* t, int st, int dr) {
p p1 = s(t, st - 1);
p p2 = s(p1.second, dr - st + 1);
return j(p1.first, p2.second);
}
N *rev(N* t, int st, int dr) {
p p1 = s(t, st - 1);
p p2 = s(p1.second, dr - st + 1);
p2.first->rv ^= 1;
return j(j(p1.first, p2.first), p2.second);
}
int main() {
freopen("secv8.in", "r", stdin);
freopen("secv8.out", "w", stdout);
srand(time(NULL));
int n, r;
scanf("%d%d ", &n, &r);
N* t = eN;
for (int i = 1; i <= n; ++i) {
char c;
scanf("%c", &c);
switch(c) {
case 'I': {int k, e; scanf("%d%d ", &k, &e); t = ins(t, k, e); break;}
case 'A': {int k; scanf("%d ", &k); printf("%d\n", acc(t, k)); break;}
case 'R': {int st, dr; scanf("%d%d ", &st, &dr); t = rev(t, st, dr); break;}
case 'D': {int st, dr; scanf("%d%d ", &st, &dr); t = del(t, st, dr); break;}
}
}
for (int i = 1; i <= t->sz; ++i)
printf("%d ", acc(t, i));
printf("\n");
return 0;
}