1096 - 小明爱数列
Description

小明非常喜欢数列,于是他提出了一个关于数列的问题。他拿到一个长度为n的数列,之后对这个数列进行了两种操作:

第一种:D x

表示删除数列第x位置的一个数字,后面的数字向前移动(若x>此时数列长度则操作无效);

第二种:Z x y

表示在数列的第x位置插入一个数字y,后面的数字向后移动(若x>此时数列长度则在数列末尾插入y);

经过k次这两种操作以后,小明想要知道现在的数列是什么,聪明的你可以帮助小明解决这个问题吗?


Input

输入包括k+2行数据; 第一行包括两个数n,k,分别表示数列中数的个数以及操作的次数,其中1\leq k \leq n \leq 5000; 第二行n个数表示该数列的n个数,以空格隔开,其中任意数ai为int范围内的整数; 第三行到第k+2行,每行一个操作,格式见题面描述。

Output

输出包括两行; 第一行一个数m,表示全部操作之后数组的长度; 第二行m个数,表示当前的数组。


Examples

Input

4 3
4 5 2 1
Z 3 3
Z 0 1
D 2

Output

5
1 4 2 3 1
Hint

对于10%的数据,1\leq n \leq 4; 对于50%的数据,1 \leq n \leq 1024; 对于100%的数据,1\leq k \leq n \leq 5000,且ai,x,y是int范围内的整数。

样例解释

初始数组为(4 5 2 1)
执行完Z 3 3得到(4 5 2 3 1)
执行完Z 0 1得到(1 4 5 2 3 1)
执行完D 2得到(1 4 2 3 1)



题目参数
Time Limit 1 second
Memory Limit 128 MB
提交次数 48
通过次数 29