docs: public boolean remove(Object objectToRemove, int hash) {
          checkNotNull(objectToRemove);
  
          int index = hash & mask;
  
          // using the hashes array for looping and comparison if possible, hence we're cache friendly
          while (hashes[index] != 0 || table[index] != null) {
              if (hash == hashes[index] && objectToRemove.equals(table[index])) {
                  removeFromIndex(index);
  
                  return true;
              }
              index = ++index & mask;
          }
  
          return false;
      }