modified base_controller.ops to work with the new controller component