added iterable utils