#include <iostream>
#include <algorithm>
#include <cmath>
#include <vector>
#include <map>
#include <unordered_map>
#include <set>
#include <cstring>
#include <chrono>
#include <cassert>
#include <bitset>

#pragma GCC optimize("Ofast")
#pragma GCC optimize("Ofast,unroll-loops")
#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native")
#define x first
#define y second
#define ld long double
#define ll long long
#define ull unsigned long long
#define us unsigned short
#define lsb(x) ((x) & (-(x)))
#define pii pair <int, int>

using namespace std;

const int MOD = (int)1e9 + 7;

int T;
int n, x, y, ans;

vector <int> g[205];
int t[205], h[205];
int p[205][205], lca[205][205];

int lgput(int n, int p) {
  int ans = 1, x = n;
  while(p) {
    if(p & 1)
      ans = 1LL * ans * x % MOD;
    x = 1LL * x * x % MOD;
    p >>= 1;
  }
  return ans;
}

void dfs(int nod) {
  h[nod] = h[t[nod]] + 1;
  for(auto &fiu : g[nod]) {
    if(fiu != t[nod]) {
      t[fiu] = nod;
      dfs(fiu);
    }
  }
}

int calc(int a, int b) {
  if(lca[a][b])
    return lca[a][b];
  return (h[a] > h[b] ? calc(t[a], b) : calc(a, t[b]));
}

void solve() {
  cin >> n;
  for(int i = 1; i < n; i++) {
    cin >> x >> y;
    g[x].push_back(y);
    g[y].push_back(x);
  }
  for(int i = 1; i <= n; i++)
    p[i][0] = 1;
  for(int i = 1; i <= n; i++) {
    for(int j = 1; j <= n; j++) {
      p[i][j] = 1LL * ((p[i - 1][j] + p[i][j - 1]) % MOD) * lgput(2, MOD - 2) % MOD;
    }
  }
  h[0] = -1;
  for(int nod = 1; nod <= n; nod++) {
    t[nod] = 0;
    dfs(nod);
    for(int i = 1; i <= n; i++) {
      for(int j = 1; j <= n; j++)
        lca[i][j] = 0;
    }
    for(int i = 1; i <= n; i++)
      lca[i][i] = i;
    for(int i = 1; i <= n; i++) {
      for(int j = 1; j <= n; j++) {
        lca[i][j] = calc(i, j);
      }
    }

    for(int i = 1; i <= n; i++) {
      for(int j = i + 1; j <= n; j++) {
        int k = lca[i][j];
        //cout << "rooted at " << nod << ", " << i << " " << j << " have lca " << k << "\n";
        ans = (ans + p[h[i] - h[k]][h[j] - h[k]]) % MOD;
      }
    }
  }
  ans = 1LL * ans * lgput(n, MOD - 2) % MOD;
  cout << ans << "\n";
}

int main() {
  ios_base :: sync_with_stdio(false);
  cin.tie(0); cout.tie(0);
  T = 1;
  for(; T; T--) {
    solve();
  }
  return 0;
}
