下属必须无条件服从上级的命令。如果有任何异议,他们可以稍后再提。“如果你把锅甩给下属,他们只能忍气吞声地接受”……这些在职场小说中常见的词句真的反映了现状吗?让我们转向一个更具体的简化模型。
现在,我们有一个职场关系模型,即上下级关系。假设只有一个大老板。既然被称为大老板,他们自然没有上级。大老板有一些直接管理的下属,而这些下属又有自己的下属……如此重复多次,我们可以清楚地看到这个模型是一棵有根树。模型中有 $n$ 个人,编号从 $1$ 到 $n$。人 $i$ 的上级是节点 $i$ 的父节点,大老板是树的根。我们给每个人 $i$ 一个整数 $a_i$ 来衡量他们的能力。
一个群体由一个人(称为该群体的领导者)以及他们所有的直接和间接下属组成。显然,一个群体对应于某棵子树,而群体领导者就是该子树的根。我们知道,领导者对下属的管理不应仅仅基于领导者和下属的能力,这太狭隘且不利于管理。由于领导者的特殊地位,他们显然还有所谓的威望来帮助他们管理。因此,我们给每个人 $i$ 一个整数 $w_i$ 来衡量他们的威望。
凭借威望和一定的能力,领导力可以服众。不幸的是,总有一些下属的能力值 ($a_j$) 大于领导者的能力与威望之和,这非常糟糕。无论领导者多么开明,心中总会有一些不快。
为了简化问题,考虑一个以 $i$ 为领导者的群体。设以 $i$ 为根的子树有 $s_i$ 个节点。设 $k_i$ 为该子树中满足 $a_j > a_i + w_i$ 的节点 $j$ 的数量。那么人 $i$ 作为领导者变得不快乐的概率为 $k_i/s_i$(领导者很简单,他们要么快乐,要么不快乐)。不同人的快乐概率是相互独立的。
现在,为了衡量公司职场关系结构的合理性,让我们看看一些群体。具体来说,我们需要回答 $m$ 个问题。对于问题 $i$,考虑由人 $x_i$ 领导的群体。我们需要计算该群体中预期会有多少人作为领导者是快乐的。
输入格式
第一行包含两个整数 $n$ 和 $m$ ($2 \le n \le 3 \cdot 10^5, 1 \le m \le 3 \cdot 10^5$)。
下一行包含 $n$ 个整数 $p_1, p_2, \dots, p_n$,其中 $p_i$ 表示人 $i$ 的上级。如果 $p_i = 0$,则第 $i$ 个人没有上级,是大老板。保证只有一个大老板,但不保证老板的编号是 $1$。同时也保证上下级关系构成一棵有根树。
接下来一行包含 $n$ 个整数 $a_1, a_2, \dots, a_n$,表示每个人的能力 ($1 \le a_i \le 10^9$)。
随后一行包含 $n$ 个整数 $w_1, w_2, \dots, w_n$,表示每个人的威望 ($1 \le w_i \le 10^9$)。
接下来的 $m$ 行,每行包含一个整数 $x_i$,询问由 $x_i$ 领导的群体中预期有多少人是快乐的。
输出格式
输出 $m$ 行,每行一个整数:对应查询的答案。
由于查询的结果可能不是整数,你需要输出模 $10^9 + 7$ 后的值。形式上,可以证明答案可以表示为分数 $p/q$,其中 $p$ 和 $q$ 为互质的非负整数。你需要输出 $p \cdot q^{-1} \pmod{10^9 + 7}$。
样例
输入 1
2 2 0 1 1 10 1 1 1 2
输出 1
500000005 1
说明
人 $1$ 快乐的概率为 $1/2$。人 $2$ 将永远快乐。