Shifting to generics, modified stream and operators