时光终逝,盛宴永存
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
Special Judge, 64bit IO Format: %lld

题目描述

Numquam\ Finitur.


Ave Mujica 的演出由一个包含 n 个节点的森林表示,节点编号为 1n。图中任意节点的度数不超过 3。每个节点 i 对应一个节目,其演出时长为整数 a_i


演出按如下规则进行:


  1. 选择一个连通分量 G


  2. G 中选择一个节点 s,并将 G 视为以 s 为根的二叉树


  3. 先演出一次热场节目 s,该次演出不计入总时长。


  4. 随后按下列随机过程进行:每当刚完成表演某个节点 u 的一次演出后,独立进行一次概率为 \tfrac{1}{3} 的随机选择:


    • u 的左子节点 v_L 存在,则将以 v_L 为根的整棵子树中所有节目的时长翻倍,并立即表演节点 v_L;若 v_L 不存在,则演出结束。


    • u 的右子节点 v_R 存在,则将以 v_R 为根的整棵子树中所有节目的时长翻倍,并立即表演节点 v_R;若 v_R 不存在,则演出结束。


    • 再次演出节目 u 两次,然后过程回到节点 u 并重复上述随机选择。


演出总时长定义为:除热场节目 s 的首次表演外,所有实际表演的节目时长之和,包括任何节目的再演。作为一名新手工作人员,你的任务是选择一个连通分量 G 及该连通分量中的根节点 s,使演出总时长的期望值最大。

输入描述:

第一行包含两个整数 n,m \ (0 \le m < n \le 2\times 10^5),表示图的节点数和边数。


第二行输入 n 个整数 a_i \ (1\leq a_i\leq 10^9),表示演出每个节目需要的时长。


接下来 m 行,每行输入两个整数 u,v \ (1\leq{u,v}\leq{n}),表示节点 u,v 存在一条边。

输出描述:

一行输出一个整数表示演出总时长的最大期望值,可以证明答案是一个整数。

示例1

输入

复制
7 5
1 4 2 2 3 4 3
1 2
1 3
1 4
5 6
6 7

输出

复制
17