#include <stdio.h>
struct toy{
int interior_exterior;)
char name;
}xr[100500];
struct instructions{
int left_right;
int count;
}a[100500];
int main(){
int m,n,x=1;
scanf("%d%d",&m,&n);
int i;
for(i=1;i<=n;i++){
scanf("%d%s",&xr[i].interior_exterior,&xr[i].name);
}
for(i=1;i<=m;i++){
scanf("%d%d",&a[i].left_right,&a[i].count);
}
for(i=1;i<=m;i++){//移动
if(xr[x].interior_exterior==a[i].left_right){
x=x-a[i].count;
if(x<=0){
x=n+x;
}
}else{
x=x+a[i].count;
if(x>n){
x=x-n;
}
}
}
printf("%s",xr[x].name);
return 0;
}