#include <iostream>
#include <vector>
using namespace std;
class Person
{
public:
int _face;
string _name;
Person(int face = 0, string name = "") : _face(face), _name(name) {}
friend istream &operator>>(istream &in, Person &p)
{
return in >> p._face >> p._name;
}
};
class Command
{
public:
int _direction;
long long _num;
Command(int d = 0, long long n = 0) : _direction(d), _num(n) {}
friend istream &operator>>(istream &in, Command &c)
{
return in >> c._direction >> c._num;
}
};
class Circle
{
public:
vector<Person> _members;
long long _num;
Circle(vector<Person> m, long long n = 0) : _members(m), _num(n) {}
Person &operator[](int i)
{
long long index = (i % _num + _num) % _num;
return _members[index];
}
};
int main()
{
long long n, m;
cin >> n >> m;
vector<Person> circle(n);
for (long long i = 0; i < n; i++)
{
cin >> circle[i];
}
Circle cir(circle, n);
vector<Command> com(m);
for (long long i = 0; i < m; i++)
{
cin >> com[i];
}
long double now = 0;
for (Command &c : com)
{
if (c._direction != cir[now]._face)
{
now += c._num;
}
else
{
now -= c._num;
}
}
cout << cir[now]._name;
}