#include<bits/stdc++.h>
using namespace std;
const long long MaxN = 1e5 + 5;
long long n,sz[MaxN];
vector<long long> a[MaxN];
void input()
{
cin >> n;
for(long long i=1;i<=n-1;i++)
{
long long u,v;
cin >> u >> v;
a[u].push_back(v);
a[v].push_back(u);
}
}
void dfs(long long i,long long par,vector<long long> a[],long long sz[])
{
for(long long x:a[i])
{
if(x!=par)
{
dfs(x,i,a,sz);
sz[i]+=sz[x];
}
}
}
void solve()
{
for(long long i=1;i<=n;i++)
{
sz[i]=1;
}
dfs(1,1,a,sz);
long long res=0;
for(long long i=2;i<=n;i++)
{
res+=sz[i]*(n-sz[i]);
}
cout << res;
}
int main()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
input();
solve();
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmNvbnN0IGxvbmcgbG9uZyBNYXhOID0gMWU1ICsgNTsKCmxvbmcgbG9uZyBuLHN6W01heE5dOwp2ZWN0b3I8bG9uZyBsb25nPiBhW01heE5dOwoKdm9pZCBpbnB1dCgpCnsKICAgIGNpbiA+PiBuOwoKICAgIGZvcihsb25nIGxvbmcgaT0xO2k8PW4tMTtpKyspCiAgICB7CiAgICAgICAgbG9uZyBsb25nIHUsdjsKICAgICAgICBjaW4gPj4gdSA+PiB2OwogICAgICAgIGFbdV0ucHVzaF9iYWNrKHYpOwogICAgICAgIGFbdl0ucHVzaF9iYWNrKHUpOwogICAgfQp9Cgp2b2lkIGRmcyhsb25nIGxvbmcgaSxsb25nIGxvbmcgcGFyLHZlY3Rvcjxsb25nIGxvbmc+IGFbXSxsb25nIGxvbmcgc3pbXSkKewogICAgZm9yKGxvbmcgbG9uZyB4OmFbaV0pCiAgICB7CiAgICAgICAgaWYoeCE9cGFyKQogICAgICAgIHsKICAgICAgICAgICAgZGZzKHgsaSxhLHN6KTsKICAgICAgICAgICAgc3pbaV0rPXN6W3hdOwogICAgICAgIH0KICAgIH0KfQoKdm9pZCBzb2x2ZSgpCnsKICAgIGZvcihsb25nIGxvbmcgaT0xO2k8PW47aSsrKQogICAgewogICAgICAgIHN6W2ldPTE7CiAgICB9CgogICAgZGZzKDEsMSxhLHN6KTsKCiAgICBsb25nIGxvbmcgcmVzPTA7CgogICAgZm9yKGxvbmcgbG9uZyBpPTI7aTw9bjtpKyspCiAgICB7CiAgICAgICAgcmVzKz1zeltpXSoobi1zeltpXSk7CiAgICB9CgogICAgY291dCA8PCByZXM7Cn0KCmludCBtYWluKCkKewogICAgaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbygwKTsKICAgIGNpbi50aWUoMCk7CgogICAgaW5wdXQoKTsKICAgIHNvbHZlKCk7Cn0=