docs: private boolean internalRemove()
      {
          boolean result = false;
          boolean standardDelete = true;
          GBSNode p = _last1.node();
          int lastx = _last1.index();
          synchronized(_index)
          {
              if (_last1._xno != _index.xno())
                  standardDelete = true;
              else // _xno has not changed
              {
                  p = _last1.node();
                  if ( !p.isLeafNode() )
                      standardDelete = true;
                  else // Current node is a leaf
                  {
                      if ( (p.population() < 2) || (p.isFull()) )
                          standardDelete = true;
                      else // population > 1
                      {
                          if (_last1._vno == _index.vno())
                              standardDelete = false;
                          else // positioned on leaf with more than one key, can delete
                          {
                              SearchComparator comp = searchComparator(SearchComparator.EQ);
                              lastx = p.searchAll(comp, _last1.key());
                              if (lastx < 0)
                                  standardDelete = true;
                              else // positioned on leaf with more than one key, can delete
                                  standardDelete = false;
                          }
                      } // population > 1
                  } // Current node is a leaf
              } // xno has not changed
              if ( !standardDelete )
                  _index.iteratorSpecialDelete(this, p, lastx);
          }
  
          _deleteCount++;
  
          if (standardDelete)
              result = _index.delete(_last1.key());
          else
          {
              _specialCount++;
              result = true;
          }
  
          return result;
      }