#CF2006F. Dora 的颜料

Dora 的颜料

F. Dora 的颜料

时间限制:3 秒
内存限制:512 MB

可惜,Dora 在画班级壁画时把颜料打翻了。Dora 将壁画视为一个 n×nn \times n 的矩阵 bb。初始时,对所有 1i,jn1 \le i, j \le nbi,j=0b_{i,j} = 0

Dora 只有两支不同颜色的刷子。一次操作中,她可以使用其中一支刷子:

  • 第一支刷子颜色为 11,可以涂满矩阵的一整列。即 Dora 选择 1jn1 \le j \le n,并对所有 1in1 \le i \le n 设置 bi,j:=1b_{i,j} := 1
  • 第二支刷子颜色为 22,可以涂满矩阵的一整行。即 Dora 选择 1in1 \le i \le n,并对所有 1jn1 \le j \le n 设置 bi,j:=2b_{i,j} := 2

Dora 会涂色使得最终矩阵 bb 只包含 1122

对于矩阵 bb,记 f(b)f(b) 为将初始全 00 矩阵变为 bb 所需的最少操作次数。矩阵 bb美丽值定义为:恰好使用 f(b)f(b) 次操作将初始矩阵涂成 bb 的不同方式数。如果无法将初始矩阵变为 bb,则美丽值为 00

然而,Dora 犯了一个均匀随机的错误:你得到的矩阵 aa 与真实矩阵 bb 恰好有一个元素不同。即存在恰好一个 (i,j)(i, j),使得 ai,j=3bi,ja_{i,j} = 3 - b_{i,j}

请帮助 Dora 计算真实矩阵 bb期望美丽值,对 998244353998244353 取模(所有 n2n^2 种可能的错误位置等概率)。

由于矩阵太大,Dora 只会告诉你其中 mm 个颜色为 11 的元素的位置,其余 n2mn^2 - m 个元素颜色为 22


输入格式

每个测试点包含多个测试用例。第一行包含一个整数 tt1t1041 \le t \le 10^4)—— 测试用例的数量。

每个测试用例的第一行包含两个整数 nnmm2n21052 \le n \le 2 \cdot 10^50mmin(106,n2)0 \le m \le \min(10^6, n^2))—— 矩阵的大小以及颜色为 11 的元素个数。

接下来的 mm 行,每行包含两个正整数 xix_iyiy_i1xi,yin1 \le x_i, y_i \le n),表示 axi,yi=1a_{x_i, y_i} = 1

保证若 iji \ne j,则 (xi,yi)(xj,yj)(x_i, y_i) \ne (x_j, y_j)

数据保证:所有测试用例的 nn 之和不超过 41054 \cdot 10^5,所有测试用例的 mm 之和不超过 10610^6


输出格式

对于每个测试用例,输出一个整数 —— 真实矩阵 bb 的期望美丽值,对 998244353998244353 取模。


示例

输入

7
2 2
1 1
1 2
2 1
1 1
3 2
1 1
3 3
6 0
5 10
1 1
1 2
1 3
2 1
2 3
5 1
5 2
5 3
5 4
5 5
3 5
1 1
1 3
2 2
3 1
3 3
4 3
1 1
2 3
2 4

输出

1
499122178
665496236
120
79859554
776412275
1

样例解释

第一个测试用例:矩阵 a=[1212]a = \begin{bmatrix}1&2\\1&2\end{bmatrix}。考虑改变元素 (1,1)(1,1) 来计算答案。

可以证明将初始矩阵涂成 [2212]\begin{bmatrix}2&2\\1&2\end{bmatrix} 的最少步数为 33。一种涂法:先涂第一行为 22,再涂第二列为 11,最后涂第二行为 22。可以证明这是唯一一种 33 步涂法,因此该矩阵的美丽值为 11。类似地,改变其他任意元素得到的矩阵美丽值都是 11,所以期望美丽值为 11

第二个测试用例:矩阵 a=[1222]a = \begin{bmatrix}1&2\\2&2\end{bmatrix}。考虑改变元素 (2,2)(2,2) 来计算答案。

可以证明无法将初始矩阵涂成 [1221]\begin{bmatrix}1&2\\2&1\end{bmatrix},因此其美丽值为 00。改变其他任意元素得到的矩阵美丽值都是 22,所以期望美丽值为 $\frac{0+2+2+2}{4} = \frac{6}{4} \equiv 499122178 \pmod{998244353}$。