Is there any reason for iterating the list over many times? Can we please fold this into one (or use `Stream.map/1`)?