public bool Execute(string algorithm, ref Board board) { if (algorithm == null || algorithms.Keys.Contains(algorithm) == false) { return(false); } board.Commit(); for (int y = 0; y < 50; y++) { for (int x = 0; x < 50; x++) { board[y, x] = algorithms[algorithm].Transition(board[y, x], new Neighbors(x, y, board)); } } return(true); }