Part 1 uses the excellent itertools.combinations(). Part 2 introduces Bron-Kerbosch algorithm to the util library!