change iterator to stream when it's useless