in the middle of converting everything to use Streams