Types: N: int, M: int, a: List[int], b: List[int]
Ranges: 2 ≤ N ≤ 10^5, N-1 ≤ M ≤ N, 1 ≤ a_i, b_i ≤ N
Addtl Info: The graph is undirected, connected, has no self-loops, and no multiple edges.