#P9930. 成长,生命,幸福

成长,生命,幸福

成长,生命,幸福

Problem Description

Alice作为德鲁伊,有一棵神奇的树,这棵树会不断的成长。 对于一个节点ii的成长,先将这个节点变为did_i边型(did_i为这个点的度数),然后将原本与这个点相连的边随机匹配多边形上的点,再随机删除由这个点变化成的多边形上的一条边。 特别的,对于一个度数为0011的点,进行成长将不会发生变化。 对于一棵树的成长,定义为树上所有的节点进行一次成长。 Alice认为一棵树的直径越长,长得越好,所以Alice想要知道,在这棵树进行mm次成长后,直径的长度最大可能是多少。 这里定义树的直径的长度为直径上的点数。 答案对109+710^9+7取模。

Input

第一行包含一个整数TT1T51 \leq T \leq 5),表示数据组数 每组数据的第一行包含两个整数n,mn,m1n105,1m1091 \leq n \leq 10^5,1\leq m \leq 10^9),表示一棵nn个节点的树,进行mm次成长 接下来n1n-1行,每行包含两个整数u,vu,v1u,vn1 \leq u,v \leq n),表示树上的一条边

Output

一共TT行,每行一个整数,表示第ii棵树成长后的最大直径。

Sample Input

2
5 1
1 2
1 3
3 4
3 5
7 3
1 2
1 3
2 4
2 5
2 6
3 7

Sample Output

7
40

Source

2024“钉耙编程”中国大学生算法设计超级联赛(2)