1: public T remove(T entry) 2: { 3: ReturnObject oldEntry = new ReturnObject(null); 4: BinaryNode<T> newRoot = removeEntry(getRootNode(), entry, oldEntry); 5: setRootNode(newRoot); 6: 7: return oldEntry.get(); 8: } // end remove 9: // Version 4.0