О Простой игре "Жизнь"

При решении этого модуля решается вопрос жизни и смерти!

Модуль отображает сетку из квадратов черного или белого цвета. Для обезвреживания модуля, правила игры "Жизнь" от Конвея (написаны снизу) должны быть применены к сетке один раз. ВНИМАНИЕ! Правила необходимо применять ко всем квадратам одновременно для каждого поколения.

Состояние каждого квадрата переключаются при нажатии на него.

При вводе правильной конечной конфигурации, нажатие на кнопку "Submit" решит модуль, при неверной — зарегистрирует ошибку.
В любое время, нажимая на кнопку "Reset", можно вернуть модуль к начальному состоянию.

Квадрат считается соседним, если он смежный к другому квадрату, включая диагонально.

Если квадрат черный:
Белых соседних квадратов < 3 или > 3 Оставить черным
Белых соседних квадратов = 3 Переключить на белый
Если квадрат белый:
Белых соседних квадратов < 2 или > 3 Переключить на черный
Белых соседних квадратов = 2 or = 3 Оставить белым