#Lutece0696. 论程序的阿卡林化

论程序的阿卡林化

Migrated from Lutece 696 论程序的阿卡林化

All parts of this problem, including description, images, samples, data and checker, might be broken. If you find bugs in this problem, please contact the admins.

Description

又有讨厌的熊孩子往阿卡林的桌子上乱堆东西了(“什么?那桌子旁边有人?”)。

现在桌子上堆了整整nn本书呢,反正也没什么事做,我们就接着玩儿吧。

下面我告诉你两种操作:

一种是直接往书堆顶部再放一本书。

另一种是把最顶端的KK本书整个翻转过来(如果桌子上一共都不够K本书的话,就直接把整个书堆倒过来好了)。

第一种操作写作ADD(S)ADD(S)SS是放的书的名字。 第二种操作写作ROTATEROTATE

在玩儿的过程中,书的总数不会超过4000040000,所有书的名字都由非空的大写字母组成,长度不超过33,注意书名可能会有重复。

Input

输入文件包括多组数据,每组数据的第一行包括三个整数N,M,KN,M,K (0N400000 \leq N \leq 40000; 0M1000000 \leq M \leq 100000; 0K400000 \leq K \leq 40000). 接下来N行从上往下给出了NN本书的名字。接下来MM行,每行给出一种操作。

Output

所有操作完成后,从上到下依次输出每本书的书名。

相邻两组数据中间请输出一个空行。

Samples

2 3 2 
A 
B 
ADD(C) 
ROTATE 
ADD(D)
D 
A 
C 
B

Resources

2013 UESTC ACM Training for Data Structure