refactored
added task 3