task 1.5
task 1.1 - one more case implemented