一条没有分支的笔直隧道里挤满了来来往往的忙碌蚂蚁。一些蚂蚁从左向右走,另一些从右向左走。所有蚂蚁都以 $1\text{ cm/s}$ 的恒定速度行走。当两只蚂蚁相遇时,它们会尝试互相穿过。然而,隧道中的某些路段很窄,两只蚂蚁无法互相穿过。当两只蚂蚁在狭窄路段相遇时,它们会掉头并开始向相反方向行走。当一只蚂蚁到达隧道的任一端时,它就会离开隧道。
隧道的长度为整数(单位:厘米)。隧道中的每个狭窄路段距离两端均为整数厘米。除了这些路段外,隧道足够宽,蚂蚁可以互相穿过。所有蚂蚁都从不同的狭窄路段开始行走。没有新的蚂蚁会进入隧道。因此,隧道中的所有蚂蚁最终都会离开。你的任务是编写一个程序,计算哪只蚂蚁是最后离开隧道的,以及它将在何时离开。
图 B.1 展示了在一条 $6$ 厘米长的隧道中,蚂蚁在最初两秒内的运动情况。最初,三只编号为 $1, 2, 3$ 的蚂蚁分别从距离左端 $1, 2, 5$ 厘米的狭窄路段开始行走。$0.5$ 秒后,蚂蚁 $1$ 和 $2$ 在一个宽阔路段相遇,它们互相穿过。开始 $2$ 秒后,蚂蚁 $1$ 和 $3$ 在一个狭窄路段相遇,它们掉头转向。
图 B.1 对应于样例输入的第一组数据。
图 B.1. 蚂蚁的运动
输入格式
输入包含一个或多个数据集。每个数据集的格式如下:
$n \quad l$ $d_1 \quad p_1$ $d_2 \quad p_2$ $\vdots$ $d_n \quad p_n$
数据集的第一行包含两个由空格分隔的整数。$n$ ($1 \le n \le 20$) 表示蚂蚁的数量,$l$ ($n + 1 \le l \le 100$) 表示隧道的长度(单位:厘米)。接下来的 $n$ 行描述了蚂蚁的初始状态。每行包含两个由空格分隔的项目,$d_i$ 和 $p_i$。蚂蚁的编号为 $1$ 到 $n$。编号为 $i$ 的蚂蚁具有初始方向 $d_i$ 和初始位置 $p_i$。初始方向 $d_i$ ($1 \le i \le n$) 为 L(向左)或 R(向右)。初始位置 $p_i$ ($1 \le i \le n$) 是一个整数,表示距离隧道左端的距离(单位:厘米)。蚂蚁按从左到右的顺序排列,即 $1 \le p_1 < p_2 < \dots < p_n \le l - 1$。
最后一个数据集之后是一行包含两个由空格分隔的零。
输出格式
对于每个数据集,输出所有蚂蚁离开隧道需要多少秒,以及哪只蚂蚁是最后离开的。最后离开的蚂蚁由其编号标识。如果两只蚂蚁在同一时间离开,则输出通过隧道左端离开的那只蚂蚁的编号。
样例
输入 1
3 6 R 1 L 2 L 5 1 10 R 1 2 10 R 5 L 7 2 10 R 3 L 8 2 99 R 1 L 98 4 10 L 1 R 2 L 8 R 9 6 10 R 2 R 3 L 4 R 6 L 7 L 8 0 0
输出 1
5 1 9 1 7 1 8 2 98 2 8 2 8 3