streams implementation phase 1