move controller logic to a step [not tested].