#include <bits/stdc++.h>
using namespace std;
const int maxx = 600010;
const double pi = acos(-1.0);
const double eps = 1e-15;
vector<long long> g[maxx];
long long t, n, m, v;
long long ans = 0, total = 0, cnt = 0;
long long a[maxx], siz[maxx], sum[maxx];
struct node {
  long long u, v;
} s[maxx];
int main() {
  scanf("%lld", &n);
  ans = 1;
  for (int i = 1; i < n; i++) {
    scanf("%lld%lld", &s[i].u, &s[i].v);
    sum[s[i].u]++, sum[s[i].v]++;
    ans = ans * sum[s[i].u] % 998244353 * sum[s[i].v] % 998244353;
  }
  printf("%lld", n * ans % 998244353);
  return 0;
}
