Exercise Route

신장 트리와 추가 간선들이 주어질 때, 트리 간선이 아닌 간선을 정확히 두 개 사용하는 단순 사이클의 수를 센다.

어려움8그래프트리DFS누적 합아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

Bessie the cow realizes she needs to exercise more in order to stay in good shape. She needs your help selecting potential routes around the farm that she can use for her morning jogging routine.

The farm is made up of NN fields (1N21051 \leq N \leq 2 \cdot 10^5), conveniently numbered 1N1 \ldots N, and conveniently connected by a set of MM bi-directional trails (1M21051 \leq M \leq 2 \cdot 10^5). Being creatures of habit, the cows tend to use one particular subset of N1N-1 trails for all of their daily movement between fields -- they call these the "standard" trails. It is possible to travel from any field to any other field using only standard trails.

To keep her morning jog interesting, Bessie decides that she should pick a route that involves some non-standard trails. However, she is so comfortable with using standard trails, she doesn't want to use too many non-standard trails on her route. After some thought, she decides a good route is one that forms a simple cycle (returning to its starting point, and not using any field more than once) that contains exactly two non-standard trails.

Please help Bessie count the number of good routes she can use. Two routes are considered the same if they involve the same set of trails.

입력

The first line contains NN and MM. Each of the next MM lines contains two integers a_ia\_i and b_ib\_i describing the endpoints of a trail. The first N1N-1 of these are the standard trails.

출력

Output the total number routes Bessie might want to use.