F. Unique Occurrences
time limit per test
6 seconds
memory limit per test
1024 megabytes
input
standard input
output
standard output

You are given a tree, consisting of $n$ vertices. Each edge has an integer value written on it.

Let $f(v, u)$ be the number of values that appear exactly once on the edges of a simple path between vertices $v$ and $u$.

Calculate the sum of $f(v, u)$ over all pairs of vertices $v$ and $u$ such that $1 \le v < u \le n$.

Input

The first line contains a single integer $n$ ($2 \le n \le 5 \cdot 10^5$) — the number of vertices in the tree.

Each of the next $n-1$ lines contains three integers $v, u$ and $x$ ($1 \le v, u, x \le n$) — the description of an edge: the vertices it connects and the value written on it.

The given edges form a tree.

Output

Print a single integer — the sum of $f(v, u)$ over all pairs of vertices $v$ and $u$ such that $v < u$.

Examples
Input
3
1 2 1
1 3 2

Output
4

Input
3
1 2 2
1 3 2

Output
2

Input
5
1 4 4
1 2 3
3 4 4
4 5 5

Output
14

Input
2
2 1 1

Output
1

Input
10
10 2 3
3 8 8
4 8 9
5 8 5
3 10 7
7 8 2
5 6 6
9 3 4
1 6 3

Output
120