#include <bits/stdc++.h>
using namespace std;
vector<int> g[1000000+10];
long long mod = 1e9 + 7,dp[100000+10];
long long tem;
long long dpsum(int n){
tem=0;
for(int i=1;i<=n;i++){//make i=1 and add equality
tem = (tem + dp[i])%mod;
}
return tem;
}
void dfs(int n,int p=-1){
dp[n]=1;
for(int i=0;i<g[n].size();i++){
if(g[n][i] != p){
dfs(g[n][i],n);
//increment dp[g[n][i]] by 1
tem = dp[g[n][i]]+1;
if(tem >= mod) tem -= mod;
//use incremented dp[g[n][i]] and use % to calculate mod
dp[n] = (dp[n] * tem)%mod;
}
}
}
int main(){
int t;
scanf("%d",&t);
int v,x,y;
while(t--){
scanf("%d",&v);
for(int i=0;i<v-1;i++){
scanf("%d %d", &x , &y);
g[x].push_back(y);
g[y].push_back(x);
}
dfs(v);
printf("%lld\n", dpsum(v));
//clear the graph for next test case
for(int i=0;i<v+1;i++) g[i].clear();
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKdmVjdG9yPGludD4gZ1sxMDAwMDAwKzEwXTsKbG9uZyBsb25nIG1vZCA9IDFlOSArIDcsZHBbMTAwMDAwKzEwXTsKbG9uZyBsb25nIHRlbTsKCmxvbmcgbG9uZyBkcHN1bShpbnQgbil7CiAgICB0ZW09MDsKCiAgICBmb3IoaW50IGk9MTtpPD1uO2krKyl7Ly9tYWtlIGk9MSBhbmQgYWRkIGVxdWFsaXR5CiAgICAgICAgdGVtID0gKHRlbSArIGRwW2ldKSVtb2Q7CiAgICB9CiAgICByZXR1cm4gdGVtOwp9Cgp2b2lkIGRmcyhpbnQgbixpbnQgcD0tMSl7CiAgICBkcFtuXT0xOwoKICAgIGZvcihpbnQgaT0wO2k8Z1tuXS5zaXplKCk7aSsrKXsKICAgICAgICBpZihnW25dW2ldICE9IHApewogICAgICAgICAgICBkZnMoZ1tuXVtpXSxuKTsKCiAgICAgICAgICAgIC8vaW5jcmVtZW50IGRwW2dbbl1baV1dIGJ5IDEKICAgICAgICAgICAgdGVtID0gZHBbZ1tuXVtpXV0rMTsKICAgICAgICAgICAgaWYodGVtID49IG1vZCkgdGVtIC09IG1vZDsKCQkJCiAgICAgICAgICAgIC8vdXNlIGluY3JlbWVudGVkIGRwW2dbbl1baV1dIGFuZCB1c2UgJSB0byBjYWxjdWxhdGUgbW9kCiAgICAgICAgICAgIGRwW25dID0gKGRwW25dICogdGVtKSVtb2Q7CiAgICAgICAgfQogICAgfQp9CgppbnQgbWFpbigpewogICAgaW50IHQ7CiAgICBzY2FuZigiJWQiLCZ0KTsKCiAgICBpbnQgdix4LHk7CiAgICB3aGlsZSh0LS0pewogICAgICAgIHNjYW5mKCIlZCIsJnYpOwogICAgICAgIGZvcihpbnQgaT0wO2k8di0xO2krKyl7CiAgICAgICAgICAgIHNjYW5mKCIlZCAlZCIsICZ4ICwgJnkpOwogICAgICAgICAgICBnW3hdLnB1c2hfYmFjayh5KTsKICAgICAgICAgICAgZ1t5XS5wdXNoX2JhY2soeCk7CiAgICAgICAgfQoKICAgICAgICBkZnModik7CiAgICAgICAgcHJpbnRmKCIlbGxkXG4iLCBkcHN1bSh2KSk7CiAgICAgICAgCiAgICAgICAgLy9jbGVhciB0aGUgZ3JhcGggZm9yIG5leHQgdGVzdCBjYXNlCiAgICAgICAgZm9yKGludCBpPTA7aTx2KzE7aSsrKSBnW2ldLmNsZWFyKCk7CiAgICB9CiAgICByZXR1cm4gMDsKfQo=