CSES Problem Set

# Counting Paths

CSES - Counting PathsCSES - Counting Paths

 Time limit: 1.00 s Memory limit: 512 MB

You are given a tree that consists of $n$ nodes, and $m$ paths in the tree.

Your task is to calculate for each node the number of paths that contain the node.

Input

The first input line contains integers $n$ and $m$: the number of nodes and paths. The nodes are numbered $1,2,\ldots,n$.

Then there are $n-1$ lines that describe the edges. Each line contains two integers $a$ and $b$: there is an edge between nodes $a$ and $b$.

Finally, there are $m$ lines that describe the paths. Each line contains two integers $a$ and $b$: there is a path between nodes $a$ and $b$.

Output

Print $n$ integers: for each node $1,2,\ldots,n$, the number of paths that contain the node.

Constraints
• $1 \le n, m \le 2 \cdot 10^5$
• $1 \le a,b \le n$
Example

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

Output:
3 1 3 1 1