Task 2 and 3 by azhidko
Merge branch 'Azhidko'