Заполняет ячейки, разбивает на кластеры, если ест ьпротекание кластер закрашивает в черный цвет. Код соверешнно не оптимизирован, нужно разбираться дальше