modified taskscontroller