Вірусне дерево 2#10655

Вірусне дерево 2

1 секунда
128 мегабайтів
Дуже легка

Вам дано дерево з вершинами та n - 1 ребрами. Вершини пронумеровані від до , -е ребро з'єднує вершини a_i та b_i.

У Вас є кольорів. Для кожної вершини в дереві Ви обираєте один із кольорів для її забарвлення, щоб виконувалась наступна умова:

Скільки існує способів розфарбувати дерево? Знайдіть відповідь за модулем 10^9 + 7.

Вхідні дані

Перший рядок містить два числа та k~(1 \le n, k \le 10^5). Кожен з наступних n - 1 рядків містить два цілих числа a_i та b_i~(1 \le a_i, b_i \le n).

Вихідні дані

Виведіть кількість способів розфарбувати дерево за модулем 10^9 + 7.

Приклади

Приклад 1

Loading
Loading

Приклад 2

Loading
Loading