#include <bits/stdc++.h>
using namespace std;
int read() {
  int X = 0, w = 1;
  char c = getchar();
  while (c < '0' || c > '9') {
    if (c == '-') w = -1;
    c = getchar();
  }
  while (c >= '0' && c <= '9') X = X * 10 + c - '0', c = getchar();
  return X * w;
}
const int N = 100 + 10;
const int mod = 1e9 + 7;
int qpow(int a, int b) {
  int c = 1;
  for (; b; b >>= 1, a = 1ll * a * a % mod)
    if (b & 1) c = 1ll * c * a % mod;
  return c;
}
int n;
vector<int> E[N];
int f[N], g[N], C[N][N];
int dp[N][N][2], t[N][2], sz[N];
void dfs(int u, int fa) {
  dp[u][1][0] = dp[u][1][1] = 1, sz[u] = 1;
  for (int v : E[u]) {
    if (v == fa) continue;
    dfs(v, u);
    for (int i = 0; i <= sz[u] + sz[v]; ++i) t[i][0] = t[i][1] = 0;
    for (int i = 0; i <= sz[u]; ++i)
      for (int j = 0; j <= sz[v]; ++j) {
        t[i + j][0] = (t[i + j][0] + 1ll * dp[u][i][0] * dp[v][j][1]) % mod;
        t[i + j][1] = (t[i + j][1] + 1ll * dp[u][i][1] * dp[v][j][1]) % mod;
        if (i + j) {
          t[i + j - 1][0] =
              (t[i + j - 1][0] + 1ll * dp[u][i][0] * dp[v][j][0]) % mod;
          t[i + j - 1][1] = (t[i + j - 1][1] + 1ll * dp[u][i][1] * dp[v][j][0] +
                             1ll * dp[u][i][0] * dp[v][j][1]) %
                            mod;
        }
      }
    for (int i = 0; i <= sz[u] + sz[v]; ++i)
      dp[u][i][0] = t[i][0], dp[u][i][1] = t[i][1];
    sz[u] += sz[v];
  }
}
int main() {
  n = read();
  for (int i = 1; i < n; ++i) {
    int u = read(), v = read();
    E[u].emplace_back(v), E[v].emplace_back(u);
  }
  dfs(1, 0);
  for (int i = 0; i < n - 1; ++i)
    g[i] = 1ll * dp[1][n - i][1] * qpow(n, n - i - 2) % mod;
  g[n - 1] = 1;
  for (int i = C[0][0] = 1; i <= n; ++i)
    for (int j = C[i][0] = 1; j <= n; ++j)
      C[i][j] = (C[i - 1][j - 1] + C[i - 1][j]) % mod;
  for (int i = 0; i < n; ++i)
    for (int j = i; j < n; ++j) {
      if ((j - i) & 1)
        f[i] = (f[i] - 1ll * g[j] * C[j][i] % mod + mod) % mod;
      else
        f[i] = (f[i] + 1ll * g[j] * C[j][i]) % mod;
    }
  for (int i = 0; i < n; ++i) printf("%d ", f[i]);
  puts("");
  return 0;
}
