#pragma GCC optimize("Ofast")
#include <bits/stdc++.h> 
using namespace std;
 
typedef long long ll;
typedef long double ld;
#define fast_cin() ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL)
#define all(x) (x).begin(), (x).end()
#define sz(x) ((ll)(x).size())

//LCA using Sparse Matrix

const int MAX = 1000, K = 20, MOD = 1e9 + 7;
int lg[MAX], depth[MAX], parent[MAX][K];
ll dp[205][205];
vector<int> g[MAX];

ll power(ll a, ll b) {
    ll ans = 1;
    while(b) {
        if(b & 1) ans = (ans * a * 1ll) % MOD;
        b >>= 1;
        a = (a * a * 1ll) % MOD;
    }
    return ans;
}

void dfs(int u, int par) {
    depth[u] = depth[par] + 1;
    parent[u][0] = par;
    for(int i = 1; i <= lg[depth[u]]; i++) {
        parent[u][i] = parent[parent[u][i-1]][i-1];
    }
    for(auto i : g[u]) {
        if (i == par) continue;
        dfs(i, u);
    }
}

int lca(int u, int v) {
    if(depth[u] < depth[v]) swap(u, v);
    while(depth[u]>depth[v]){u = parent[u][lg[depth[u]-depth[v]] - 1];}
    if(u == v) return u;
    for(int k = lg[depth[u]] - 1; k >= 0; k--) {
        if(parent[u][k] != parent[v][k]) {
            u = parent[u][k];
            v = parent[v][k];
        }
    }
    return parent[u][0];
}

void precompute() {
    for(int i = 1; i < MAX; i++) lg[i] = lg[i>>1] + 1;
}

ll get(int i, int n) {
    memset(depth, 0, sizeof(depth));
    memset(parent, 0, sizeof(parent));
    dfs(i, 0);
    ll ans = 0;
    for(int i = 1; i <= n; i++) 
        for(int j = i + 1; j <= n; j++) {
            int k = lca(i, j);
            ans = (ans + dp[depth[j] - depth[k]][depth[i] - depth[k]]) % MOD;
        }
    return ans;
}

void solve(){
    int n, x, y;
    cin >> n;
    for(int i = 0; i < n-1; i++) {
        cin >> x >> y;
        g[x].push_back(y);
        g[y].push_back(x);
    }
    precompute();
    ll inv = MOD/2 + 1;
    for(int i = 1; i <= 200; i++) dp[0][i] = 1;
    for(int i = 1; i <= 200; i++)
        for(int j = 1; j <= 200; j++)
            dp[i][j] = (dp[i][j-1] + dp[i-1][j])*inv%MOD;

    ll ans = 0;
    for(int i = 1; i <= n; i++) {
        ans = (ans + get(i, n)) % MOD;
    }
    ans = (1ll *ans * power(n, MOD - 2)) % MOD;
    cout << ans;

}

int main()
{
    fast_cin();
    #ifndef ONLINE_JUDGE
    freopen("input.txt", "r", stdin);
    freopen("output.txt", "w", stdout);
    #endif
    ll t = 1;
    //cin >> t;
    for(int it=1;it<=t;it++) {
        solve();
    }
    return 0;
}