一种被称为“神秘奥斯卡”的恐怖疾病正在猪之国蔓延。猪之国共有 $n$ 个城市,由 $n-1$ 条双向道路连接。第 $i$ 条道路连接城市 $u_i$ 和城市 $v_i$,长度为 $w_i$。保证任意两个城市之间都可以通过这些道路互相到达。
现在,有 $k$ 个不同的城市 $c_1, c_2, \dots, c_k$ 感染了这种恐怖疾病。作为猪之国的领导者,Putata 和 Budada 准备拯救猪之国。首先,他们需要找到一个城市 $r$ 来建立医院,而不必考虑城市 $r$ 是否已经感染。然后,他们将利用剩余的资金建造唯一的交通工具——“猪猪车”(Pigpigcar)。由于资金紧张,他们只能建造一辆猪猪车,且一旦建造完成,猪猪车的参数 $d$ 就被设定好,无法更改。参数为 $d$ 的猪猪车只能在两个城市之间行驶,前提是这两个城市之间的距离必须是 $d$ 的倍数。形式化地说,如果你想从城市 $u$ 到达城市 $v$,它们之间的最短路径距离必须为 $p \times d$,其中 $p$ 是一个非负整数,这会花费 $p$ 个猪币(Pigcoins)。请注意,如果你想从城市 $u$ 到达城市 $v$,并不需要停靠在路径上的每一个城市,如果 $u$ 和 $v$ 之间的最短距离是 $d$ 的倍数,猪猪车可以直接从 $u$ 行驶到 $v$。
在接下来的 $k$ 天里,Putata 和 Budada 将采取以下行动来拯救猪之国。在第 $i$ 天,他们将乘坐猪猪车沿城市 $r$ 和城市 $c_i$ 之间的最短路径从城市 $r$ 前往城市 $c_i$,治愈该城市的所有小猪,然后从城市 $c_i$ 返回城市 $r$。
Putata 和 Budada 希望你选择合适的城市 $r$ 来建立医院,并确定猪猪车的参数 $d$,使得旅行过程中花费的猪币总数最小。请帮助他们找到花费的最少猪币数量。
输入格式
第一行包含两个整数 $n, k$ ($1 \le n \le 5 \times 10^5, 1 \le k \le n$),分别表示城市数量和患病城市数量。
第二行包含 $k$ 个不同的整数 $c_1, c_2, \dots, c_k$ ($1 \le c_i \le n$),表示患病的城市。
接下来的 $n-1$ 行,每行包含三个整数 $u, v, w$ ($1 \le u, v \le n, u \neq v, 1 \le w \le 10^7$),表示一条连接城市 $u$ 和 $v$ 的长度为 $w$ 的道路。
保证可以通过这些道路从任意城市到达其他任何城市。
输出格式
输出一行一个整数,表示花费的最少猪币数量。
样例
输入 1
5 3 3 4 5 1 2 2 2 3 4 2 5 4 3 4 6
输出 1
8
说明 1
在样例中,你应该选择城市 1 建立医院,并将猪猪车的参数 $d$ 设为 6。城市 1 到城市 3、4、5 的距离分别为 6、12、6,因此总共花费的猪币为 $1 \times 2 + 2 \times 2 + 1 \times 2 = 8$。