Ori 今天遇到的地图石与众不同。图腾有两个面,每一面都有 $n$ 个凹槽和 $m$ 条刻痕。每条刻痕连接两个凹槽,且两面的凹槽和刻痕完全相同。每个凹槽都可以穿透石头,因此如果我们在一面放置东西,在另一面也能看到它。然而,刻痕虽然相同却无法穿透,所以我们可以在两面的每一条刻痕上放置不同的东西。
Ori 在凹槽 $u$ 中放入一个生命细胞,并在其余 $n-1$ 个凹槽中各放入一个能量细胞。现在,Ori 需要在每一面各选择 $n-1$ 条刻痕并注入光线,以形成一棵以 $u$ 为根的生成树。这两棵生成的树应具有以下性质:对于每个能量细胞,如果它沿着一面的光线刻痕将其能量流向生命细胞,然后再沿着另一面的光线刻痕流回,那么在此过程中不会有其他能量细胞被经过两次。
Ori 能找到满足要求的两棵树吗?
输入格式
第一行包含两个整数 $n$ 和 $m$ ($3 \le n \le 10^5$, $n-1 \le m \le \min(2 \cdot 10^5, \frac{n(n-1)}{2})$),分别表示图腾 $G$ 的凹槽数量和刻痕数量。
接下来的 $m$ 行,第 $i$ 行包含两个整数 $x_i$ 和 $y_i$ ($1 \le x_i, y_i \le n$),表示连接凹槽 $x_i$ 和 $y_i$ 的一条刻痕。
下一行包含一个整数 $T$ ($1 \le T \le 10^5$),表示 Ori 的尝试次数。
接下来的 $T$ 行,第 $i$ 行包含一个整数 $u_i$ ($1 \le u_i \le n$),表示 Ori 在第 $i$ 次尝试中放置生命细胞的凹槽。
保证 $G$ 是一个无自环、无重边的连通图,且 $n \cdot T \le 10^5$。
输出格式
对于 Ori 的每一次尝试,如果不存在解决方案,则在第一行输出 “No”(不含引号)。
否则,在第一行输出 “Yes”(不含引号)。然后,输出 $2(n-1)$ 行来描述这两棵生成树。
在前 $n-1$ 行中,第 $i$ 行必须包含两个由空格分隔的整数 $x_i$ 和 $y_i$ ($1 \le x_i, y_i \le n$),表示连接 $x_i$ 和 $y_i$ 的一条被选中的刻痕。这 $n-1$ 条刻痕必须构成 $G$ 的第一棵生成树。
接下来的 $n-1$ 行以相同的格式描述 $G$ 的第二棵生成树。
只有当输出的两棵树是 $G$ 的有效生成树,且满足题目描述中的要求时,你的答案才会被接受:对于任何 $v \in V$ 且 $v \neq u$,两棵树中从 $u$ 到 $v$ 的两条简单路径除了端点 $u$ 和 $v$ 外,没有公共节点。
样例
输入格式 1
4 6 1 2 1 3 1 4 2 3 2 4 3 4 1 1
输出格式 1
Yes 1 2 2 3 3 4 3 2 4 3 1 4
输入格式 2
4 4 1 3 2 3 2 4 3 4 4 1 2 3 4
输出格式 2
No No Yes 3 1 4 2 3 4 3 1 3 2 2 4 No
说明
对于第一个样例:
- 对于凹槽 2,两棵树中的路径分别为 $P_1 = \{2, 1\}$ 和 $P_2 = \{2, 3, 4, 1\}$。
- 对于凹槽 3,两棵树中的路径分别为 $P_1 = \{3, 2, 1\}$ 和 $P_2 = \{3, 4, 1\}$。
- 对于凹槽 4,两棵树中的路径分别为 $P_1 = \{4, 3, 2, 1\}$ 和 $P_2 = \{4, 1\}$。