@SafeVarargs
  @Contract(mutates = "param1")
  public static <T> boolean removeAll(@NotNull Collection<T> collection, T @NotNull ... elements) {
    boolean modified = false;
    for (T element : elements) {
      modified |= collection.remove(element);
    }
    return modified;
  }
@SafeVarargs
  @Contract(mutates = "param1")
  public static <T> boolean removeAll(@NotNull Collection<T> collection, T @NotNull ... elements)