「WHOI-1」数列计数

题目背景

> 不再拥有,数列陪伴我。

题目描述

这种数列满足下面这一条神奇的性质: - $a_0=0$。 - $\forall i\in[1,n]$ 均有 $a_i=a_{i-1}+x$ 或者 $a_i=a_{i-1}+y$。 - $\forall i\in[1,n],p \nmid a_i$。 求这样的 $\{a\}_0^{n}$ 的数量。答案对 $10^9+7$ 取模。 两个数列不同,当且仅当他们有一个下标存储的元素不同。

输入输出格式

输入格式


**一个输入文件包含多组数据。** 第一行一个正整数 $T$ 表示测试点数目。 接下来 $T$ 行表示测试点。对于每组测试点,一行四个正整数,表示 $n,p,x,y$。

输出格式


$T$ 行,每行一个自然数表示该测试点的答案。

输入输出样例

输入样例 #1

3
3 3 1 2
11 45 14 19
9876 10 114514 191981

输出样例 #1

2
1688
426554662

说明

样例 #1: 这样的 $a$ 有 $[0,1,2,4],[0,2,4,5]$。 样例 #2、#3: 本来可爱的 Otm 已经写好了上万页的样例解释了,但是更可爱的 miku 把它删掉了所以 Otm 不想再写一遍了。 --- **本题采用 $\texttt{Subtask}$ 计分方式,只有通过该 $\texttt{Subtask}$ 的所有测试点才能得到该点的分数。** | $\texttt{Subtask}$ 编号 | 特殊限制 | 分值 | | :----------: | :----------: | :----------: | | 1 | $\sum n\leq20$ | 10 | | 2 | $p\leq10^3$ | 30 | | 3 | $xy,p$ 互质 | 10 | | 4 | 无 | 50 | 对于所有测试数据,$1\leq T\leq10^3,1\leq\sum n\leq10^4, 1\leq x,y,p\leq10^9$,输入均为正整数。