#include <bits/stdc++.h>
using namespace std;
int n, m;
struct info {
int f; // 方向, 0 = 内, 1 = 外
char s[15]; // 名字
} a[1000100];
struct did {
int rl; // 左右 , 0 = 左, 1 = 右
int id; // 个数
} s[1000100];
int main() {
cin >> n >> m;
for (int i = 1; i <= n; i++)
cin >> a[n - i + 1].f >> a[n - i + 1].s + 1;
for (int i = 1; i <= m; i++)
cin >> s[i].rl >> s[i].id;
int p = 1; // 目前位置
for (int i = 1; i <= m; i++) {
if (s[i].rl == 0 && a[i].f == 0) {
p += s[i].id;
if (p > n)
p %= n;
}
else if (s[i].rl == 1 && a[i].f == 0) {
p -= s[i].id;
if (p < 0)
p += n;
}
else if (s[i].rl == 1 && a[i].f == 1) {
p += s[i].id;
if (p > n)
p %= n;
}
else if (s[i].rl == 0 && a[i].f == 1) {
p -= s[i].id;
if (p < 0)
p += n;
}
if (p == 0)
p = n;
}
int l = strlen (a[p].s + 1);
for (int i = 1; i <= l; i++)
cout << a[p].s[i];
cout << endl;
return 0;
}
-