this should be done in the manipulator