在保加利亚的舒门市(Shumen),有一棵由 $n$ 个节点连接而成的巨大魔力树。每个节点都隐藏着两个魔力值:红色魔力值 $c_i$ 和蓝色魔力值 $p_i$。每个值代表该节点根据所选颜色提供的能量。你的目标是探索树中的和谐路径。
考虑树中从起点节点 $A$ 到终点节点 $B$ 的最短路径。我们按顺序依次遍历路径上的节点,并为当前节点选择蓝色或红色。在选择当前节点的颜色后,路径的状态必须保持和谐,即任何一种颜色都不能“压制”(mogg)另一种颜色。我们称一种颜色“压制”了另一种颜色,是指该颜色被选择的次数比另一种颜色至少多出三次。为了使路径被认为是和谐的,这一规则必须在路径遍历的每一个时刻都成立。
我们定义一条路径 of 价值为该路径上所有节点的价值之和,其中每个节点的价值为其所涂颜色的魔力值。
你的任务是,对于给定的 $q$ 条由起点和终点确定的路径,求出在路径必须和谐的前提下,路径的最大价值。
根据上述定义,可以证明在树中任意两个节点之间,总是存在至少一条和谐路径。
输入格式
第一行包含正整数 $n$ 和 $q$($1 \le n, q \le 10^5$),分别表示魔力树中的节点数和询问次数。
第二行包含 $n$ 个整数 $c_i$($-10^9 \le c_i \le 10^9$),表示每个节点的红色魔力值。
第三行包含 $n$ 个整数 $p_i$($-10^9 \le p_i \le 10^9$),表示每个节点的蓝色魔力值。
接下来的 $n - 1$ 行,每行包含两个正整数 $u$ 和 $v$($1 \le u, v \le n, u \neq v$),表示节点 $u$ 和 $v$ 之间有一条边。树中任意两个节点之间都存在一条路径。
接下来的 $q$ 行,每行包含两个正整数 $u$ 和 $v$($1 \le u, v \le n$),表示路径的起点和终点节点。
输出格式
对于每个询问,在单独的一行中输出一个整数,表示该询问起点和终点之间和谐路径的最大价值。
子任务
| 子任务 | 分值 | 数据范围 |
|---|---|---|
| 1 | 27 | $n, q \le 15$ |
| 2 | 41 | $n, q \le 1000$ |
| 3 | 19 | $q \le 10000$ |
| 4 | 23 | 无附加限制。 |
样例
输入样例 1
4 1 10 10 10 10 -10 0 -10 0 1 2 2 3 3 4 1 4
输出样例 1
30
输入样例 2
5 3 -5 -4 0 -3 3 3 1 -5 0 0 3 2 1 4 3 5 1 2 2 5 1 4 5 3
输出样例 2
4 3 3
说明
样例 1 解释
如果我们把节点 1 染成红色,节点 2 染成蓝色,节点 3 和 4 染成红色,我们得到一条价值为 30 的和谐路径。没有价值更高的和谐路径,因为我们必须将这 4 个节点中的至少一个染成蓝色,而在此样例中,蓝色魔力值并不会增加总和。