private bool IsValidMove(int row, int column, Puzzle puzzle, char value) { return(!(puzzle.RowLocation(row).Any(cell => cell.Value == value) || puzzle.ColumnLocation(column).Any(cell => cell.Value == value) || puzzle.BlockLocation(row, column).Any(cell => cell.Value == value))); }