#include<stdio.h> using namespace std; #define db double #define ll long long const int MAXN=1000020; int n; int g[MAXN]; struct E{ int u,v,nex; }e[MAXN*2]; int f[MAXN]; int sum[MAXN]; ll ans=0; int dfs(int u){ for(int i=g[u];i>0;i=e[i].nex){ int v=e[i].v; if(v<u){ sum[u]+=f[v]==0?dfs(v):f[v]; ans+=f[v]*(ll)(sum[u]-f[v]); } } return f[u]=sum[u]+1; } int main(){ //io_opt; scanf("%d",&n); int x,y; for(int i=1;i<n;i++){ scanf("%d%d",&x,&y); e[i]=(E){x,y,g[x]};g[x]=i; e[i+n-1]=(E){y,x,g[y]};g[y]=i+n-1; } for(int i=n;i>=1;i--){ if(!f[i]) dfs(i); } printf("%lld\n",ans*2); return 0; }