UOJ Logo

NOI.AC

1S 512MB
统计

Problem Statement

给定一棵 $n$ 个节点的树,你将这 $n$ 个节点依次染上 $m$ 种颜色之一。

我们称一棵树是好的,当且仅当所有同色点对距离的最小值介于 $[L,R]$ 之间。

你想知道一共有多少棵不同好的的树。这个数字可能很大,因而你只要求出这个值对 $10^9+7=1,000,000,007$ 取模的结果即可。

两棵树是不同的,当且仅当存在至少一个节点的颜色不同。

Input

第一行四个空格隔开的整数 $n,m,L,R$,分别表示树的点数,颜色数,以及最小值范围。

接下来 $n-1$ 行,每行两个空格隔开的整数 $u,v$,表示这棵树上有一条边连接 $u$ 与 $v$。

Output

一行一个整数,表示不同的树的个数对 $1,000,000,007$ 取模的结果。

Sample Input

3 3 1 2
1 2
2 3

Sample Output

21

Sample Explanation

除了三个点颜色互不相同的 $3!=6$ 种树之外,剩余的 $3^3-6=21$ 棵树都是可能出现的。

Constraints

对于所有数据,$1\le n\le 10^5$,$1\le m\le 10^9$,$1\le L\le R\lt n$。

  • Subtask $1$($20\%$):$n,m\le 5$;
  • Subtask $2$($15\%$):$L=R=n-1$;
  • Subtask $3$($15\%$):$L=R=1$;
  • Subtask $4$($15\%$):$n\le 5000$;
  • Subtask $5$($15\%$):$L=R$;
  • Subtask $6$($20\%$):无特殊限制。

时间限制:$1\texttt{s}$

空间限制:$512\texttt{MB}$