这天,bxbx和妹子在一个有根树上玩游戏。
这个有根树有nn个节点,编号从11到nn,其中11号节点是根节点。除了11号节点每个节点都有一个父亲节点。第ii个节点有权值a_iai。
定义s(u,
v)s(u,v)为uu到vv的简单路径上所有点的权值之和(包括uu和vv)。
bxbx会随机选一个节点uu,妹子随机选一个节点vv,假设uu和vv的LCALCA为pp,bxbx能获得\max(s(u,
p), s(v, p))max(s(u,p),s(v,p))的愉悦值。
现在你需要回答,考虑所有情况之下(n^2n2种情况),bxbx所获得的愉悦值之和。
一个节点uu的祖先定义为从uu一直往父亲节点走若干次能到达的节点,其中uu是自身的祖先。两个节点的LCALCA(最近公共祖先)定义为既是uu的祖先,也是vv的祖先,并且和uu的距离最近的一个节点。
输入第一行包括一个整数TT,表示数据组数。
对于每组数据,第一行一个整数nn。
第二行n-1n−1个整数,第ii个整数表示节点i+1i+1的父亲p_{i+1}pi+1。
第三行nn个整数,第ii个整数表示节点i的权值a_iai。
1
\le T \le 201≤T≤20
2
\le n \le 1000002≤n≤100000
1
\le p_{i + 1} \le i, 1 \leq i \leq n - 11≤pi+1≤i,1≤i≤n−1
1
\leq a_i \leq 100001≤ai≤10000