import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
LinkedList<String> res = new LinkedList<>();
String input = br.readLine();
for (int i = 0; i < input.length(); i++) res.add(String.valueOf(input.charAt(i)));
// 해당 부분을 그냥 int로 해서 index를 표시하려고 하였으나 시간초과
// 검색해본 결과 iterator를 사용하는 것을 추천
ListIterator<String> iter = res.listIterator();
// 커서를 iterator의 마지막부분으로 옮기도록
while(iter.hasNext()) {
iter.next();
}
int testCase = Integer.parseInt(br.readLine());
for (int i = 0; i < testCase; i++) {
StringTokenizer st = new StringTokenizer(br.readLine(), " ");
String command = st.nextToken();
if (command.equals("P")) {
iter.add(st.nextToken());
}
else if (command.equals("L")) {
if(iter.hasPrevious()) iter.previous();
}
else if (command.equals("D")) {
if (iter.hasNext()) iter.next();
}
else if (command.equals("B")) {
if(iter.hasPrevious()) {
iter.previous();
iter.remove();
}
}
}
for (String data : res) {
bw.write(data);
}
bw.flush();
bw.close();
br.close();
}
}