from collections import deque n=int(input());ans=0;mod=10**9+7 v=[[] for i in range(n)] y=[[] for i in range(n)] x=[0]*n for i in range(n-1): a,b=map(int,input().split());a-=1;b-=1 v[a].append(b);x[a]+=1 y[b].append(a) f=deque();c=[(0,0)]*n for i in range(n): if not x[i]: f.append(i) while f: q=f.pop() a,b=0,0 for i in v[q]: a+=c[i][0]+c[i][1];b+=c[i][1] ans+=a;b+=1 c[q]=(a,b) for i in y[q]: x[i]-=1 if not x[i]: f.append(i) ans%=mod print(ans)