#P0444. Network

Network

题目描述

YixghtYixght 是一家名为 SzqNetworkSzqNetwork (SNSN) 的公司的经理。现在她非常担心,因为她刚收到一个坏消息,表明 SNSN 的业务对手 DxtNetworkDxtNetwork (DNDN) 打算攻击 SNSN 的网络。更不幸的是,SNSN 的原始网络非常脆弱,我们可以将其视为一棵树。形式上,SNSN 的网络中有 NN 个节点,N1N-1 个双向通道连接这些节点,并且从任意一个节点到另一个节点都存在路径。为了保护网络免受攻击,YixghtYixght 在一些节点之间建立了 MM 个新的双向通道。

作为 DNDN 最优秀的黑客,你可以精确地破坏两个通道,一个在原始网络中,另一个在 MM 个新通道中。现在你的上级想知道你可以将 SNSN 的网络分成至少两个部分的方法有多少种。

输入格式

输入文件的第一行包含两个整数:N(1N100000)N (1 ≤ N ≤ 100 000)M(1M100000)M (1 ≤ M ≤ 100 000) — 节点数和新通道数。

接下来 N1N-1 行表示 SNSN 原始网络中的通道,每对 (ab)(a,b) 表示节点 aa 和节点 bb 之间存在一个通道。

最后的 MM 行代表网络中的新通道,每对 (ab)(a,b) 表示节点 aa 和节点 bb 之间的新通道被添加到 SNSN 的网络中。

输出格式

输出单个整数 — 将网络划分为至少两个部分的方法数。

样例

4 1
1 2
2 3
1 4
3 4
3