                 returnValue              = objectValueTable[lookup];                 objectValueTable[lookup] = null;                  hashIndex.unlinkNode(index, lastLookup, lookup);                  if (accessTable != null) {                     accessTable[lookup] = 0;                 }                  return returnValue;             }              if (isObjectValue) {                 returnValue              = objectValueTable[lookup];                 objectValueTable[lookup] = objectValue;             }              if (accessTable != null) {                 accessTable[lookup] = accessCount++;             }              return returnValue;         }          // not found         if (remove) {             return returnValue;         }          if (hashIndex.elementCount >= threshold) {             if (reset()) {                 return addOrRemove(