class VOID_DL_CELL : public VOID_CELL_CORE{
friend class VOID_DLLIST;
friend class VOID_CLLIST;
friend class VOIDCLLISTFIter;
friend class VOIDCLLISTBIter;
friend class VOIDDLLISTFIter;
friend class VOIDDLLISTBIter;
public:
VOID_DL_CELL(ACCESS_VOID *element_access_in);
~VOID_DL_CELL();
Arbent load_all(VOID_DL_CELL *previous_in,Arbent x,VOID_DL_CELL *next_in)
{element = x; next = next_in,previous = previous_in;};
Arbent load_previous_pointer(VOID_DL_CELL *previous_in)
{previous = previous_in;};
VOID_DL_CELL* get_previous(){return(previous);};
VOID_DL_CELL* get_next(){ return(next);};
VOID_DL_CELL* split(VOID_DL_CELL *A);
VOID_DL_CELL* merge(VOID_DL_CELL *A1,VOID_DL_CELL *A2);
VOID_DL_CELL* mergesort(VOID_DL_CELL *A);
istream& grab(istream& in);
ostream& print(ostream& out) const;
protected:
VOID_DL_CELL *next;
VOID_DL_CELL *previous;
};