#P2065. 【挑战题】Trees

【挑战题】Trees

题目描述

ZHY 拥有 mm 棵树,每棵树形态相同,且均有 nn 个点。定义 (i,j)(i,j) 是第 ii 棵树上的第 jj 个点,你需要为每个点 (i,j)(i,j) 赋一个值 a(i,j)a_{(i,j)},且满足以下条件:

  • 对于 i[1,m],j[1,n]\forall i \in [1,m],\forall j \in [1,n],有 a(i,j){0,1}a_{(i,j)}\in\{0,1\}

  • 对于 i[1,n]\forall i \in [1,n],有 j=1ma(j,i)1\sum_{j=1}^m a_{(j,i)}\le 1

  • 对于任意的一条边 (u,v)(u,v)i[1,m]i \in [1,m],有 a(i,u)+a(i,v)1a_{(i,u)}+a_{(i,v)}\le 1

请你计算有多少种赋值方式,对 109+710^9+7 取模。注意这 mm 棵树是有序的。

输入格式

第一行两个正整数 n,mn,m

接下来 n1n-1 行,每行两个正整数 u,vu,v,表示这 mm 棵树中每棵树都有一条从 uuvv 的无向边。保证数据可以构成一棵树。

输出格式

输出一行表示答案。

样例 #1

样例输入 #1

3 1
1 2
2 3

样例输出 #1

5

样例 #2

样例输入 #2

5 2
1 2
1 3
2 4
2 5

样例输出 #2

103

提示

对于所有的数据,1n1061 \le n \le 10^61m1091 \le m \le 10^9