lots of itertools