第一行一个正整数 $test~(1 \leq test \leq 100)$ 表示数据组数。
对于每组数据,第一行两个正整数 $n,m~(1 \leq n \leq 100000, 1 \leq m \leq n)$ 分别表示点数和石榴在哪里。
接下来 $n-1$ 行描述 $2n-2$ 条有向边,每行两个整数 $x,y$ 代表从 $x$ 到 $y$ 和从 $y$ 到 $x$ 各有一条有向边。
数据保证读入是一棵合法的石榴树,数据保证树是这样随机生成的:
```
for (int i = 1; i <= n; i++)
a[i] = i;
random_shuffle(a + 1, a + n + 1);
for (int i = 2; i <= n; i++)
连接编号为 a[i] 和 a[j] 的点,其中 j 为 {1, ..., i-1} 中一个随机的整数。每次随机相互独立。
```
(实际上每次随机使用了C++自带的随机函数。)