题目背景

一只羊在研究一座古老的旋转色轮法阵。

法阵由一个中心圆盘和外侧的一圈环形区域组成。环形区域被等角度地分成了 MM 个扇形小块,因此整个法阵一共包含 M+1M+1 个区域。

题目描述

现在,一只羊想用 NN 种颜色给这座法阵染色。

设中心区域编号为 00,外侧的 MM 个扇形区域按顺时针方向依次编号为 1,2,,M1,2,\dots,M。如果两个区域有长度非零的公共边界,则称它们相邻。于是:

  • 中心区域 00 与所有外侧区域都相邻;

  • 对于任意 1iM1\le i\le M,区域 ii 与区域 i1i-1 和区域 i+1i+1 相邻,其中下标对 MM 取模,即区域 11 与区域 MM 也相邻。

要求任意两个相邻区域的颜色均不相同。

如果两种染色方案能够通过将整个法阵绕圆心旋转若干个整扇形角度后完全重合,则认为这两种方案是同一种方案。

现在给定 TT 组询问,请你对每组给出的 N,MN,M,求出本质不同的合法染色方案数。

由于答案可能很大,你只需要输出答案对模数

P=2305843009213693951P=2305843009213693951

取模后的结果。

不难发现,它是素数。

输入格式

第一行一个整数 TT,表示询问组数。

接下来 TT 行,每行两个整数 N,MN,M,分别表示颜色种数和外侧扇形区域数。

输出格式

输出 TT 行,每行一个整数,表示对应询问的答案对模数 PP 取模后的结果。

5  
2 4  
3 4  
4 3  
4 4  
5 6
0  
3  
8  
24  
650

数据范围

测试点编号 分值 TT 上限 NN 上限 MM 上限
1 5 11 44 66
2 22 77
3 33 55 88
4 66
5 1010 10910^9 10410^4
6 5×1045\times 10^4
7 1515 101210^{12} 10510^5
8 2×1052\times 10^5
9 2020 101810^{18} 10610^6
10 10710^7
11 10810^8
12 10910^9
13 3030 101010^{10}
14 101110^{11}
15 101210^{12}
16 101310^{13}
17 4040 101410^{14}
18 101610^{16}
19 5050 101710^{17}
20 101810^{18}