code: public <X extends Exception> boolean removeIf(E value, Try.Predicate<? super K, X> predicate) throws X {
          Set<K> removingKeys = null;
  
          for (K key : this.valueMap.keySet()) {
              if (predicate.test(key)) {
                  if (removingKeys == null) {
                      removingKeys = new HashSet<>();
                  }
  
                  removingKeys.add(key);
              }
          }
  
          if (N.isNullOrEmpty(removingKeys)) {
              return false;
          }
  
          boolean modified = false;
  
          for (K k : removingKeys) {
              if (remove(k, value)) {
                  modified = true;
              }
          }
  
          return modified;
      }
docs: Remove the specified value (one occurrence) from the value set associated with keys which satisfy the specified <code>predicate</code>.
  
  @param value
  @param predicate
  @return <code>true</code> if this Multimap is modified by this operation, otherwise <code>false</code>.