@Override
  public Collection<V> removeAll(@NullableDecl Object key) {
    Collection<V> collection = map.remove(key);

    if (collection == null) {
      return createUnmodifiableEmptyCollection();
    }

    Collection<V> output = createCollection();
    output.addAll(collection);
    totalSize -= collection.size();
    collection.clear();

    return unmodifiableCollectionSubclass(output);
  }
@Override
  public Collection<V> removeAll(@NullableDecl Object key) {
    Collection<V> collection = map.remove(key);

    if (collection == null) {
      return createUnmodifiableEmptyCollection();
    }

    Collection<V> output = createCollection();
    output.addAll(collection);
    totalSize -= collection.size();
    collection.clear();

    return unmodifiableCollectionSubclass(output);
  }
@ Override public Collection < V > removeAll ( @ NullableDecl Object key ) { Collection < V > collection = map . remove ( key ) ; if ( collection == null ) { return createUnmodifiableEmptyCollection ( ) ; } Collection < V > output = createCollection ( ) ; output . addAll ( collection ) ; totalSize -= collection . size ( ) ; collection . clear ( ) ; return unmodifiableCollectionSubclass ( output ) ; }
{@inheritDoc}

<p>The returned collection is immutable.
{ @inheritDoc }