@Override
    public void mark(int boardPosition, Cell[] cellBoard, int rows, int columns) throws IllegalMark {
        //Find the row.
        int boardPositionRow = boardPosition / columns ;
        
        //Find the column.
        int boardPositionColumn = boardPosition % columns;
        
        if (boardPositionColumn < (columns -1) && boardPositionRow < (rows -1)){
            //It's not the first column.
            
            int oneUpLeftCellPosition = boardPosition + columns +1;
            mark(boardPosition,oneUpLeftCellPosition,cellBoard);
        }
    }