yield (x, y, 0) # kill the cell if it doesn't have 2 or 3 friendlies

elif val == 0 and count == 3:

- for x, y, v in list(_updates()):

+ changes = list(_updates())

+ for x, y, v in changes:

+ yield tick(self._state)

+ return self.initial_state

return ((x_, y_) for x_ in xrange(x) for y_ in xrange(y))

+ def initial_state(self):

+ it = np.nditer(self._state, flags=['multi_index'])

+ (x, y) = it.multi_index

- for x, y in game.coords():

top_left = (grid_w * x, grid_h * y)

top_right = (grid_w * (x + 1), grid_h * y)

bottom_left = (grid_w * x, grid_h * (y + 1))