# - Object which defines a `__next__` method and will produce the next value when we call `next()` on it. If there are no further items, it raises the `StopIteration` exception. # - Object that is ...