UOJ Logo

NOI.AC

1S 512MB
统计

Problem Statement

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

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

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

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

Input

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

接下来 n1 行,每行两个空格隔开的整数 u,v,表示这棵树上有一条边连接 uv

Output

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

Sample Input

3 3 1 2
1 2
2 3

Sample Output

21

Sample Explanation

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

Constraints

对于所有数据,1n1051m1091LR<n

  • Subtask 120%):n,m5
  • Subtask 215%):L=R=n1
  • Subtask 315%):L=R=1
  • Subtask 415%):n5000
  • Subtask 515%):L=R
  • Subtask 620%):无特殊限制。

时间限制:1s

空间限制:512MB