The first line contains two integers, representing the number of vertices and edges in the graph.
Then m lines follow. Each line contains two integers, representing an edge in the graph.
The input guarantees that there are no loops and duplicate edges in the graph.
Output a single line with a single integer, representing the number of valid SG functions.