import numpy as n N,K=map(int,input().split()) c=[[] for _ in range(N)] for i in range(N-1): a,b=map(int,input().split()) c[a].append(b) def f(x): p,v=1,n.array([1],dtype="O") for i in c[x]: q,y=f(i) p+=q v=n.convolve(v,y)%(1e9+7) return p,n.append(v,1) print(int(f(0)[1][K]))