code: public static <K, V> ImmutableSetMultimap<K, V> copyOf(
        Multimap<? extends K, ? extends V> multimap) {
      return copyOf(multimap, null);
    }
docs: Returns an immutable set multimap containing the same mappings as {@code multimap}. The
  generated multimap's key and value orderings correspond to the iteration ordering of the {@code
  multimap.asMap()} view. Repeated occurrences of an entry in the multimap after the first are
  ignored.
  
  <p>Despite the method name, this method attempts to avoid actually copying the data when it is
  safe to do so. The exact circumstances under which a copy will or will not be performed are
  undocumented and subject to change.
  
  @throws NullPointerException if any key or value in {@code multimap} is null