move fun into Pipe as closure