updated task controller