Types: N: int, M: int, a: List[int], b: List[int]

Ranges: 2 ≤ N ≤ 20, N-1 ≤ M ≤ N(N-1)/2, 1 ≤ a_i, b_i ≤ N

Addtl Info: G does not have self-loops or multiple edges; the subgraph consisting of Vertex 1,2,...,N and Edge 1,2,...,N-1 is a spanning tree of G.