Почти все готово... можно тестить