在数轴上放置最多 $n$ 个整数点,使得给定的 $n$ 个线段 $[l_i, r_i]$ 中的每一个都至少包含一个点,并且使得包含在任一线段内的点数的最大值尽可能小。
输入格式
第一行包含一个整数 $t$ ($1 \le t \le 10^5$),表示测试用例的数量。
每个测试用例包含一个整数 $n$ ($1 \le n \le 10^5$),随后是 $n$ 行,每行包含两个整数 $l_i$ 和 $r_i$ ($-10^9 \le l_i < r_i \le 10^9$),表示一个包含点 $l_i, l_i + 1, \dots, r_i$ 的线段。线段可能重合。
所有测试用例的 $n$ 之和不超过 $10^5$。
输出格式
对于每个测试用例,输出你所放置的点中,包含在任一线段内的点数的最大值,随后输出你放置的点数 $k$ ($1 \le k \le n$),最后输出 $k$ 个不同的整数 $x_i$ ($-10^9 \le x_i \le 10^9$),表示你放置点的坐标。
样例
样例输入 1
4 4 0 1 2 3 4 5 3 5 5 0 70 0 10 20 30 40 50 60 70 8 -1 7 -2 -1 -9 -7 -8 9 -9 -7 -2 4 -7 4 3 9 5 0 1 0 2 2 3 3 5 4 5
样例输出 1
1 3 1 2 5 4 4 10 30 50 70 2 3 -9 -1 9 2 3 1 3 5