code: public static <K, V> SetMultimap<K, V> forMap(Map<K, V> map) {
      return new MapMultimap<K, V>(map);
    }
docs: Returns a multimap view of the specified map. The multimap is backed by the
  map, so changes to the map are reflected in the multimap, and vice versa.
  If the map is modified while an iteration over one of the multimap's
  collection views is in progress (except through the iterator's own {@code
  remove} operation, or through the {@code setValue} operation on a map entry
  returned by the iterator), the results of the iteration are undefined.
  
  <p>The multimap supports mapping removal, which removes the corresponding
  mapping from the map. It does not support any operations which might add
  mappings, such as {@code put}, {@code putAll} or {@code replaceValues}.
  
  <p>The returned multimap will be serializable if the specified map is
  serializable.
  
  @param map the backing map for the returned multimap view