Final Implementation TASK_EVENT