Комментарии и вывод в консоль, чтобы лучше видеть происходящее.
Не закончено, ибо пока нет времени. Все еще требует тестирования.