小豆现在有一个数 x ,初始值为 1 。小豆有 Q 次操作,操作有两种类型:
1 m:将 x 变为 x \times m ,并输出 x \bmod M
1 m
2 pos:将 x 变为 x 除以第 pos 次操作所乘的数(保证第 pos 次操作一定为类型 1,对于每一个类型 1 的操作至多会被除一次),并输出 x \bmod M 。
2 pos
一共有 t 组输入。
对于每一组输入,第一行是两个数字 Q,M 。
接下来 Q 行,每一行为操作类型 op ,操作编号或所乘的数字 m (保证所有的输入都是合法的)。
对于每一个操作,输出一行,包含操作执行后的 x \bmod M 的值。
1 10 1000000000 1 2 2 1 1 2 1 10 2 3 2 4 1 6 1 7 1 12 2 7
2 1 2 20 10 1 6 42 504 84
对于 20\% 的数据, 1 \le Q \le 500 。
对于 100\% 的数据, 1 \le Q \le 10^5 , t \le 5, M \le 10^9 , 0 < m \leq 10^9 。