refactored to use the beautiful 'for' list comprehensions!