Добавил немного коментариев по работе кода