- Time limit: 1.00 s
- Memory limit: 512 MB
You are given an undirected graph that has nodes and edges.
We consider subgraphs that have all nodes of the original graph and some of its edges. A subgraph is called Eulerian if each node has even degree.
Your task is to count the number of Eulerian subgraphs modulo .
Input
The first input line has two integers and : the number of nodes and edges. The nodes are numbered .
After this, there are lines that describe the edges. Each line has two integers and : there is an edge between nodes and . There is at most one edge between two nodes, and each edge connects two distinct nodes.
Output
Print the number of Eulerian subgraphs modulo .
Constraints
Example
Input:
4 3 1 2 1 3 2 3
Output:
2
Explanation: You can either keep or remove all edges, so there are two possible Eulerian subgraphs.