#P10030. 花环

花环

花环

Problem Description

小 z 手里有一个大小为 nn 置换 PP 和一个长度为 nn 值域为 [1,n][1,n] 正整数的的颜色序列 aa,位置 ii 的颜色为 aia_i ,求 PP 中所有置换环的颜色数。 为了方便你输出,小 z 会给你一个序列 bb。 记颜色数为 xx 的置换环有 cxc_x 个,那么你只需要求出 i=1nbcx\sum\limits_{i=1}^n b_{c_x}。 但是小 z 原神玩多了,所以置换 PP 中有 kk 个位置的值被他忘记了,你需要对所有可能的最终置换形态求上述问题答案之和,答案对 998244353998244353 取模。

Input

本题有多组数据。第一行一个正整数 TT1T51\le T\le 5),表示测试数据组数。 第 1122 个非负整数 nn1n5×1041\le n\le 5\times 10^4),kk0k150\le k\le 15)。 第 22nn 个非负整数表示 P1nP_{1\cdots n}0Pin0 \le P_i \le n,且 ij,Pi0,Pj0\forall i \neq j,P_i \neq 0,P_j \neq 0,保证 PiPjP_i \neq P_j),如果 Pi=0P_i=0,表示小 z 忘记了这个位置的值。 第 33nn 个正整数表示 a1na_{1\cdots n}1ain1\le a_i\le n)。 第 44nn 个正整数表示 b1nb_{1\cdots n}0bi9982443520\le b_i\le 998244352)。

Output

对于每组数据,输出 1111 个整数,表示答案。

Sample Input

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

Sample Output

5
11
1302

Source

2024“钉耙编程”中国大学生算法设计超级联赛(10)