Package for this problem was not updated by the problem writer or Codeforces administration after we’ve upgraded the judging servers. To adjust the time limit constraint, solution execution time will be multiplied by 2. For example, if your solution works for 400 ms on judging servers, then value 800 ms will be displayed and used to determine the verdict.

Virtual contest is a way to take part in past contest, as close as possible to participation on time. It is supported only ACM-ICPC mode for virtual contests.
If you've seen these problems, a virtual contest is not for you - solve these problems in the archive.
If you just want to solve some problem from a contest, a virtual contest is not for you - solve this problem in the archive.
Never use someone else's code, read the tutorials or communicate with other person during a virtual contest.

No tag edit access

D. Polo the Penguin and Trees

time limit per test

2 secondsmemory limit per test

256 megabytesinput

standard inputoutput

standard outputLittle penguin Polo has got a tree — a non-directed connected acyclic graph, containing *n* nodes and *n* - 1 edges. We will consider the tree nodes numbered by integers from 1 to *n*.

Today Polo wonders, how to find the number of pairs of paths that don't have common nodes. More formally, he should find the number of groups of four integers *a*, *b*, *c* and *d* such that:

- 1 ≤
*a*<*b*≤*n*; - 1 ≤
*c*<*d*≤*n*; - there's no such node that lies on both the shortest path from node
*a*to node*b*and from node*c*to node*d*.

The shortest path betweem two nodes is the path that is shortest in the number of edges.

Help Polo solve this problem.

Input

The first line contains integer *n* (1 ≤ *n* ≤ 80000) — the number of tree nodes. Each of the following *n* - 1 lines contains a pair of integers *u*_{i} and *v*_{i} (1 ≤ *u*_{i}, *v*_{i} ≤ *n*; *u*_{i} ≠ *v*_{i}) — the *i*-th edge of the tree.

It is guaranteed that the given graph is a tree.

Output

In a single line print a single integer — the answer to the problem.

Please do not use the %lld specificator to read or write 64-bit numbers in С++. It is recommended to use the cin, cout streams or the %I64d specificator.

Examples

Input

4

1 2

2 3

3 4

Output

2

Codeforces (c) Copyright 2010-2017 Mike Mirzayanov

The only programming contests Web 2.0 platform

Server time: Jan/19/2018 10:25:39 (d1).

Desktop version, switch to mobile version.

User lists

Name |
---|