@Override
    public Cell<V> cell(int row, int column) {
        if (exists(row, column)) {
            SortedSet<Cell<V>> tail = cells.tailSet(finder(row, column));
            if (tail.size() > 0) {
                Cell<V> cell = tail.first();
                if (cell.getRow() == row && cell.getColumn() == column) {
                    return cell;
                }
            }
        }
        return null;
    }