Facer的程序

题目描述

Facer是一个萌萌哒的码农 他写了N个程序 程序之间是有 有机的联系的 任意两个程序恰好由1条联系链连在一起 具体来说,对于程序a,b , 存在且仅存在一个序列a,x1,x2....xn,b 使得a,x1有联系,x1,x2有联系..... 符合这样的一组程序称为程序块 现在已知一个程序块的程序之间的联系 询问它有多少个子程序块 即取出一个程序子集S,使得S也满足上述条件

输入输出格式

输入格式


第一行N 接下来N-1行,每行两个数,代表有联系的两个程序

输出格式


输出有多少个子程序块 对1000000007取模

输入输出样例

输入样例 #1

3
1 2
2 3

输出样例 #1

6

说明

样例解释: 子集(1),(2),(3),(1,2),(2,3),(1,2,3)满足 对于 10%的数据 1 <= N <= 20 对于 40%的数据 1 <= N <= 500 对于 100%的数据 1 <= N <= 100000