move functionality into the pipeline.