I was looking at the source code of the zip() function in Itertools.
I understand that overload (in the context of type checking), can modify the behaviour of a funct