给定一棵有 $n$ 个顶点的有根树,顶点编号为 $1$ 到 $n$。树的根节点为 $1$,对于每个顶点 $i$ ($i \ge 2$),其父节点为 $p_i$。
考虑一个排列 $q_i$ ($1 \le i \le n$)。如果对于任意顶点 $v$,其所有后代在排列 $q$ 中都位于 $v$ 的位置之后,我们称该排列为“合法的”(proper)。
你需要求出满足 $q_k = v$ 的合法排列 $q_i$ 的数量,结果对 $10^9 + 7$ 取模。
输入格式
第一行包含一个整数 $n$ ($1 \le n \le 5000$),表示树的顶点数。 第二行包含 $n - 1$ 个整数 $p_2, p_3, \dots, p_n$ ($1 \le p_i < i$),表示除根节点外所有顶点的父节点。特别地,当 $n = 1$ 时,第二行存在但为空。 最后一行包含两个整数 $v$ 和 $k$ ($1 \le v, k \le n$)。
输出格式
输出一个整数:满足 $q_k = v$ 的合法排列 $q_i$ 的数量,对 $10^9 + 7$ 取模的结果。
样例
输入 1
6 1 1 1 2 3 2 3
输出 1
9
说明
样例中合法的排列为: 132456, 132465, 132546, 132564, 132645, 132654, 142356, 142365, 142536。