У Яблова есть дерево, состоящее из n вершин. Некоторые вершины (по крайней мере одна) покрашены в черный цвет, остальные вершины покрашены в белый цвет.
Рассмотрим множество, состоящее из k (0 ≤ k < n) ребер этого дерева. Если Яблов удалит эти ребра из дерева, то дерево распадется на (k + 1) частей. Каждая часть также будет представлять из себя дерево с покрашенными вершинами.
Теперь Яблову интересно, сколько существует множеств, в результате удаления ребер которых в каждой получившейся части будет ровно одна черная вершина? Выведите это количество по модулю 1000000007 (109 + 7).
Выходные данные
Выведите единственное целое число — количество требуемых множеств по модулю 1000000007 (109 + 7).
Примеры
| № | Входные данные | Выходные данные |
|
1
|
3 0 0 0 1 1
|
2
|
|
2
|
6 0 1 1 0 4 1 1 0 0 1 0
|
1
|
|
3
|
10 0 1 2 1 4 4 4 0 8 0 0 0 1 0 1 1 0 0 1
|
27
|