code: private void resize(int newSize)
    {
      K []newKeys = (K []) new Object[newSize];
      long []newValues = new long[newSize];
      byte []newFlags = new byte[newSize];
  
      _mask = newKeys.length - 1;
  
      for (int i = 0; i < _keys.length; i++) {
        if (_keys[i] == null || (_flags[i] & DELETED) != 0)
          continue;
  
        int hash = _keys[i].hashCode() & _mask;
  
        while (true) {
          if (newKeys[hash] == null) {
            newKeys[hash] = _keys[i];
            newValues[hash] = _values[i];
            newFlags[hash] = _flags[i];
            break;
          }
          hash = (hash + 1) & _mask;
        }
      }
  
      _keys = newKeys;
      _values = newValues;
      _flags = newFlags;
    }
docs: Expands the property table