4.6

4.6, I think I have just used an awesome way.
Put the depth_first_search result into a stack, pop the stack, find the
node1_family and node2_family until they have the first common ancestor.