蜗蜗的数列

题目背景

原题:CF1634F

进行了几个没有任何意义的加强。

题目描述

蜗蜗有两个长度都为 nn​ 的数列 A,BA,B​​​,同时他会进行 qq​ 次操作。

对于每一次操作,他会先选择其中一个数列 (A/B)(A/B) ,再选择一个区间 [l,r](1lrn)[l,r](1\le l\le r\le n),将选定的序列 [l,r][l,r] 中的数对位加上Fibonacci数列

换句话说,就是将选定数列的第 ll 项加上 11,第 l+1l+1 项加上 11,第 l+2l+2 项加上 22,第 l+3l+3 项加上 33\dotsrr 项加上 Fib(rl+1)Fib(r-l+1)​​,即 Fibonacci 数列的第 rl+1r-l+1 项。

在每次操作结束的时候,蜗蜗都会变得非常好奇。他想知道此时 AA​ 和 BB​ 两个序列是否相同,由于他一看到比较长的数就会头晕,所以你只需要判断 AA​ 和 BB​ 在模 MM​ 的意义下是否相同即可。

输入格式

第一行三个数 n,q,Mn,q,M,分别表示数列的长度,操作的总次数和模数。

第二行和第三行各输入 nn​ 个整数,表示 AABB 的初始值。

接下来 qq 行每行包含一个字符 cc 和两个整数 l,rl,r​,描述一次操作。具体细节见样例。

输出格式

输出 qq​ 行,每行一个字符串 YesNo ,表示此时两个数列是否在模 MM 的意义下相同。

样例1输入

3 5 3
2 2 1
0 0 0
A 1 3
A 1 3
B 1 1
B 2 2
A 3 3

样例1输出

Yes
No
No
No
Yes

样例1输入

5 3 10
2 5 0 3 5
3 5 8 2 5
B 2 3
B 3 4
A 1 2

样例1输出

No
No
Yes

数据规模

对于 100%100\%​ 的数据,1n106,1q106,1M109+71\le n\le 10^6,1\le q\le 10^6,1\le M\le 10^9+7​。且对于 1in,0Ai,Bi1091\le i\le n,0\le|A_i|,|B_i|\le 10^9​​。