Carol 和 David 正在玩一个游戏。有一棵有根二叉树(每个节点有 0 个或 2 个子节点)和一个整数 $k$。节点的深度定义为其到根节点的距离。每个叶子节点中都有一个有序整数对。这些整数对中的元素在 $0$ 到 $k - 1$ 之间(含 $0$ 和 $k - 1$)。
设 $E$ 表示深度为偶数的非叶子(内部)节点集合,$O$ 表示深度为奇数的非叶子节点集合。对于 $E$ 中的每个节点,Carol 会标记其子节点中的一个。被标记的节点集合即为 Carol 的策略。Carol 共有 $2^{|E|}$ 种可能的策略。David 对 $O$ 中的节点进行相同的操作。因此他有 $2^{|O|}$ 种可能的策略。在本题中,我们仅考虑纯策略。
一个棋子被放置在根节点上,并不断从当前节点移动到其被标记的子节点,直到到达一个叶子节点。设该叶子节点中的整数对为 $(c, d)$。Carol 获得 $c$ 的收益,David 获得 $d$ 的收益。
如果两个玩家中没有任何一人可以通过在对方策略保持不变的情况下单方面改变自己的策略来获得更高的收益,则这一对策略构成一个纳什均衡(Nash equilibrium)。
给你这棵树,但没有给出叶子节点中的整数对。在叶子节点中选择有序数对共有 $k^{2L}$ 种方式,其中 $L$ 是叶子节点的数量。对于所有可能的叶子节点数对分配方案,求出构成纳什均衡的策略对数量的总和。
输出正确答案模 998244353 的结果。形式上,如果真实答案为 $y$,你的答案为 $x$,只要满足 $-2^{63} \le x < 2^{63}$ 且 $x - y$ 能被 998244353 整除,即视为正确。
输入格式
第一行包含两个整数 $n$ 和 $k$($3 \le n < 5000$,$1 \le k \le 20$),分别表示树中节点的数量以及叶子节点中数对元素的最大限制。
第二行包含 $n-1$ 个整数 $p_i$($0 \le p_i < i$)。其中第 $i$ 个数(从 1 开始计数)描述了节点 $p_i$ 与节点 $i$ 之间的一条边。在所有的 $p_i$ 中,每个整数要么出现 0 次,要么出现 2 次。
输出格式
输出一个整数,表示答案模 998244353 的结果。
样例
输入样例 1
3 3 0 0
输出样例 1
108
输入样例 2
5 1 0 0 1 1
输出样例 2
4
输入样例 3
17 20 0 1 2 0 1 2 4 7 4 7 3 8 5 3 5 8
输出样例 3
465216081
说明
注意,共有 $3^4$ 种将数对分配给叶子节点的方式,Carol 有 2 种可能的策略,David 有 1 种可能的策略(他无法进行任何选择,因此该策略在某种程度上是退化的)。如果 Carol 在两个叶子节点中的收益相同,那么她的两种策略与 David 的唯一策略都会构成纳什均衡;否则,只有标记了收益较高的叶子节点的策略才会与 David 的策略构成纳什均衡。Carol 收益相同的分配方案有 $3 \cdot 3^2$ 种,收益不同的分配方案有 $6 \cdot 3^2$ 种。因此答案为 $27 \cdot 2 + 54 = 108$。