Обновил код, добавил комменты