nbr table[] = {no:, nw:, we:, sw:, so:, se:, ea:, ne:, no:}; default cell = cell; default transition = transition; default time = time; int NZ; int t; int None_Zero_Neighbor() { int count; nbr n; count = 0; over each other n: if (n:cell) count++; return count; } int Z0() { int count; int i; count = 0; for(i = 1; i < table.length; i++) { if(table[i]:cell == 1 && table[i-1]:cell == 0) count++; } return count; } time = (time + 1) % 2; NZ = None_Zero_Neighbor(); t = Z0(); if(NZ >= 2 && NZ <= 6 && t == 1) { if(time == 0 && (no:cell == 0 && we:cell == 0 || so:cell == 0 || ea:cell==0)) { cell = 0; } else if(time == 1 && (no:cell == 0 || we:cell==0 || ea:cell == 0 && so:cell == 0)) { cell = 0; } }