#include #include #include using namespace std; using mint = atcoder::modint998244353; void solve() { int n; cin >> n; vector> graph(n); for (int i = n - 1; i--;) { int u, v; cin >> u >> v; --u, --v; graph[u].push_back(v); graph[v].push_back(u); } vector sz(n, 1); { auto dfs = [&](auto&& f, int v, int p) -> int { auto& ret = sz[v]; for (auto u : graph[v]) { if (u != p) ret += f(f, u, v); } return ret; }; dfs(dfs, 0, -1); } mint ans = 0; mint coef = (mint(n) * (n - 1) * (n - 1)).inv(); for (int v = 1; v < n; ++v) { ans += (mint(sz[v]) * (sz[v] - 1) + mint(n - sz[v]) * (n - sz[v] - 1)) * coef; } cout << ans.val() << "\n"; } int main() { cin.tie(nullptr); ios::sync_with_stdio(false); solve(); return 0; }