task1, task3 and task4