n = int(input()) adj = [[] for _ in range(n + 1)] for _ in range(n - 1): a, b = map(int, input().split()) adj[a].append(b) adj[b].append(a) size = [0] * (n + 1) sum_edges = 0 stack = [(1, None, False)] while stack: u, parent, visited = stack.pop() if not visited: stack.append((u, parent, True)) for v in adj[u]: if v != parent: stack.append((v, u, False)) else: size[u] = 1 for v in adj[u]: if v != parent: size[u] += size[v] if parent is not None: sum_edges += size[u] * (n - size[u]) total = 2 * sum_edges + n * n print(total)