reimplemented cellular automata