added failure controller