#64. 玩链子

玩链子

Description

有一条链子,上面有nn 颗钻石,钻石编号为11nn 。可以对该链子执行两种操作:①CCUUTT aa bb cc 区间切割操作,切下从第aa 颗钻石到第bb 颗钻石的链子,把它插在剩余链子的第cc 颗钻石后面;比如nn 等于88,链子是11, 22, 33, 44, 55, 66, 77, 88,对该链子执行CCUUTT 33 55 44,会切下33, 44, 55链子,剩下11, 22, 66, 77, 88链子,把33, 44, 55链子插入第44颗钻石之后,现在的链子是11, 22, 66, 77, 33,44, 55, 88;②FFLLIIPP aa bb 区间反转操作,切下从第aa 颗钻石到第bb 颗钻石的链子,把链子倒过来放回原来的位置,比如在链子11, 22, 66, 77,33, 44, 55, 88上执行FFLLIIPP 22 66,则得到的链子是11, 44, 33, 77, 66, 22, 55,88。那么执行mm 种操作后,链子的外观是怎样的呢?

Input

输入包括多个测试用例,在测试用例的第11行都输入两个数字nnmm 11nnmm 33×10510^5 ,分别表示链子的钻石总数和操作次数。接下来的mm 行,每行都输入CCUUTT aa bb cc 或者FFLLIIPP aa bbCCUUTT aa bb cc表示切割操作,11aa bb nn00cc nn -((bb -aa +11))FFLLIIPP aa bb 表示反转操作,11aa <<bb nn 。输入结束的标志是两个-11,不做处理。

Output

对每个测试用例,都输出一行nn 个数字,第ii 个数字是链子上第ii 颗钻石的编号。

Samples

8 2
CUT 3 5 4
FLIP 2 6
-1 -1
1 4 3 7 6 2 5 8