start implementing stream dsl