added robustness and new controler