use map instead of comprehension