- Time limit: 1.00 s
- Memory limit: 512 MB
A directed acyclic graph consists of n nodes and m edges. The nodes are numbered 1,2,\dots,n.
Calculate for each node the number of nodes you can reach from that node (including the node itself).
Input
The first input line has two integers n and m: the number of nodes and edges.
Then there are m lines describing the edges. Each line has two distinct integers a and b: there is an edge from node a to node b.
Output
Print n integers: for each node the number of reachable nodes.
Constraints
- 1 \le n \le 5 \cdot 10^4
- 1 \le m \le 10^5
Example
Input:
5 6 1 2 1 3 1 4 2 3 3 5 4 5
Output:
5 3 2 2 1