add new type param to Iterable (that hurt)