task 6 implemented