One day Thor gave Nabil Bin Masterchief a rooted tree consisting of n vertices. Unfortunately, During the fight with Hela, his tree was shattered and he doesn’t remember all it’s edges. He only managed to restore m edges of the initial tree.
Now as a good friend of Nabil, you have to count the number of distinct trees of size n with vertex 1 as root which contain all of the m edges.
The first line of the input contains two integers n and m (1 ≤ n ≤ 13, 0 ≤ m < n) — the number of vertices and the number of edges remembered by Nabil respectively.
Each of the next m lines contains two integers Ui and Vi (1 ≤ Ui,Vi ≤ n, Ui ≠ Vi) — the numbers of vertices connected by the i-th edge. It’s guaranteed that this set of edges is a subset of edges of some tree. Same edge will not be given more than once in input.
Print a single integer — the number of trees of size n that contain all of the m edges.
5 2 4 1 4 2
3 1 2 1
Two rooted trees are considered to be distinct if there exists an edge that occur in one of them and doesn’t occur in the other one.