[IMP] use iterator comprehension instead of filter