#P10179. 水影若深蓝

水影若深蓝

题目背景

帆帆爱明日方舟,更爱水月和深蓝之树。但在龙年,他想构建一棵独属于他的深蓝之树。

题目描述

在梦里,在朦胧的水影中,帆帆看见了这棵只属于他的深蓝之树。

当一切梦沉寂,他却遗忘了所有,只记得树上有 nn 个结点。

真的吗?似乎并没有,有 mm 件事情他一直牢记着,第 ii 件事情是:节点 uiu_iviv_i 在这棵深蓝之树上唯一的不重复经过某个点的路径恰好有两条边。

那么,你能否帮助帆帆想起来这棵深蓝之树的样子呢,如果有多个可能的,你只需要输出任意一种。

当然,帆帆也是会磨损的,因此当你发现无论如何都找不到满足帆帆这 mm 件事情的深蓝之树时,你需要报告无解。

输入格式

本题有多组数据

第一行一个正整数 TT 表示数据组数。

对于每组数据:

第一行两个非负整数 n,mn,m 表示树上的点数和帆帆记忆中事件个数。

接下来 mm 行,每行两个正整数 ui,viu_i,v_i 表示一个事件。

输出格式

对于每组数据:

  • 若不存在符合条件的树,输出 No
  • 否则,第一行输出 Yes,接下来 n1n-1 行输出 n1n-1 对正整数 (u,v)(u,v),表示你给出的树上的 n1n-1 条边。

本题采用 special judge 评测,也就是说,如果有多种可能的答案,你可以输出任意一种。

2
4 2
1 2
3 4
3 3
1 2
2 3
3 1
Yes
1 3
2 4
2 3
No

提示

样例 11 解释

对于第一组数据,不难验证给出的树符合条件。

对于第二组数据,可以证明不存在符合条件的树。

测试点约束

对于 100%100\% 的数据,1T1051\le T\le 10^5n1n\ge 1m0m\ge 01n3×1051\le \sum n\le 3\times 10^50m3×1050\le \sum m\le 3\times 10^51ui,vin1\le u_i,v_i\le nuiviu_i\neq v_i

本题采用捆绑测试。

子任务编号 特殊限制 分值
Subtask #1 n,m9\sum n,\sum m\le 9 1010
Subtask #2 n,m50\sum n,\sum m\le 50
Subtask #3 n,m5000\sum n,\sum m\le 5000
Subtask #4 vi=ui+1v_i=u_i+1
Subtask #5 ui=1u_i=1
Subtask #6 ui1,vi1u_i\neq 1,v_i\neq 1
Subtask #7 T=1T=1
Subtask #8 3030