Implemented task3, finally!))
Added task3,4 implementations