updating with new task 03, 04 , 05