public final class com.google.common.collect.Multimaps
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: com.google.common.collect.Multimaps
  super_class: java.lang.Object
{
  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.collect.Multimaps this
         0: .line 73
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.google.common.collect.Multimaps this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/collect/Multimaps;

  public static <T, K, V, M extends com.google.common.collect.Multimap<K, V>> java.util.stream.Collector<T, ?, M> toMultimap(java.util.function.Function<? super T, ? extends K>, java.util.function.Function<? super T, ? extends V>, java.util.function.Supplier<M>);
    descriptor: (Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Supplier;)Ljava/util/stream/Collector;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // java.util.function.Function keyFunction
        start local 1 // java.util.function.Function valueFunction
        start local 2 // java.util.function.Supplier multimapSupplier
         0: .line 112
            aload 0 /* keyFunction */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 113
            aload 1 /* valueFunction */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 114
            aload 2 /* multimapSupplier */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 116
            aload 2 /* multimapSupplier */
         4: .line 117
            aload 0 /* keyFunction */
            aload 1 /* valueFunction */
            invokedynamic accept(Ljava/util/function/Function;Ljava/util/function/Function;)Ljava/util/function/BiConsumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;Ljava/lang/Object;)V
                  com/google/common/collect/Multimaps.lambda$0(Ljava/util/function/Function;Ljava/util/function/Function;Lcom/google/common/collect/Multimap;Ljava/lang/Object;)V (6)
                  (Lcom/google/common/collect/Multimap;Ljava/lang/Object;)V
         5: .line 118
            invokedynamic apply()Ljava/util/function/BinaryOperator;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
                  com/google/common/collect/Multimaps.lambda$1(Lcom/google/common/collect/Multimap;Lcom/google/common/collect/Multimap;)Lcom/google/common/collect/Multimap; (6)
                  (Lcom/google/common/collect/Multimap;Lcom/google/common/collect/Multimap;)Lcom/google/common/collect/Multimap;
            iconst_0
            anewarray java.util.stream.Collector$Characteristics
         6: .line 115
            invokestatic java.util.stream.Collector.of:(Ljava/util/function/Supplier;Ljava/util/function/BiConsumer;Ljava/util/function/BinaryOperator;[Ljava/util/stream/Collector$Characteristics;)Ljava/util/stream/Collector;
            areturn
        end local 2 // java.util.function.Supplier multimapSupplier
        end local 1 // java.util.function.Function valueFunction
        end local 0 // java.util.function.Function keyFunction
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    7     0       keyFunction  Ljava/util/function/Function<-TT;+TK;>;
            0    7     1     valueFunction  Ljava/util/function/Function<-TT;+TV;>;
            0    7     2  multimapSupplier  Ljava/util/function/Supplier<TM;>;
    Signature: <T:Ljava/lang/Object;K:Ljava/lang/Object;V:Ljava/lang/Object;M::Lcom/google/common/collect/Multimap<TK;TV;>;>(Ljava/util/function/Function<-TT;+TK;>;Ljava/util/function/Function<-TT;+TV;>;Ljava/util/function/Supplier<TM;>;)Ljava/util/stream/Collector<TT;*TM;>;
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.Beta()
    MethodParameters:
                  Name  Flags
      keyFunction       
      valueFunction     
      multimapSupplier  

  public static <T, K, V, M extends com.google.common.collect.Multimap<K, V>> java.util.stream.Collector<T, ?, M> flatteningToMultimap(java.util.function.Function<? super T, ? extends K>, java.util.function.Function<? super T, ? extends java.util.stream.Stream<? extends V>>, java.util.function.Supplier<M>);
    descriptor: (Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Supplier;)Ljava/util/stream/Collector;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // java.util.function.Function keyFunction
        start local 1 // java.util.function.Function valueFunction
        start local 2 // java.util.function.Supplier multimapSupplier
         0: .line 162
            aload 0 /* keyFunction */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 163
            aload 1 /* valueFunction */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 164
            aload 2 /* multimapSupplier */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 166
            aload 2 /* multimapSupplier */
         4: .line 167
            aload 0 /* keyFunction */
            aload 1 /* valueFunction */
            invokedynamic accept(Ljava/util/function/Function;Ljava/util/function/Function;)Ljava/util/function/BiConsumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;Ljava/lang/Object;)V
                  com/google/common/collect/Multimaps.lambda$2(Ljava/util/function/Function;Ljava/util/function/Function;Lcom/google/common/collect/Multimap;Ljava/lang/Object;)V (6)
                  (Lcom/google/common/collect/Multimap;Ljava/lang/Object;)V
         5: .line 172
            invokedynamic apply()Ljava/util/function/BinaryOperator;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
                  com/google/common/collect/Multimaps.lambda$3(Lcom/google/common/collect/Multimap;Lcom/google/common/collect/Multimap;)Lcom/google/common/collect/Multimap; (6)
                  (Lcom/google/common/collect/Multimap;Lcom/google/common/collect/Multimap;)Lcom/google/common/collect/Multimap;
            iconst_0
            anewarray java.util.stream.Collector$Characteristics
         6: .line 165
            invokestatic java.util.stream.Collector.of:(Ljava/util/function/Supplier;Ljava/util/function/BiConsumer;Ljava/util/function/BinaryOperator;[Ljava/util/stream/Collector$Characteristics;)Ljava/util/stream/Collector;
            areturn
        end local 2 // java.util.function.Supplier multimapSupplier
        end local 1 // java.util.function.Function valueFunction
        end local 0 // java.util.function.Function keyFunction
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    7     0       keyFunction  Ljava/util/function/Function<-TT;+TK;>;
            0    7     1     valueFunction  Ljava/util/function/Function<-TT;+Ljava/util/stream/Stream<+TV;>;>;
            0    7     2  multimapSupplier  Ljava/util/function/Supplier<TM;>;
    Signature: <T:Ljava/lang/Object;K:Ljava/lang/Object;V:Ljava/lang/Object;M::Lcom/google/common/collect/Multimap<TK;TV;>;>(Ljava/util/function/Function<-TT;+TK;>;Ljava/util/function/Function<-TT;+Ljava/util/stream/Stream<+TV;>;>;Ljava/util/function/Supplier<TM;>;)Ljava/util/stream/Collector<TT;*TM;>;
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.Beta()
    MethodParameters:
                  Name  Flags
      keyFunction       
      valueFunction     
      multimapSupplier  

  public static <K, V> com.google.common.collect.Multimap<K, V> newMultimap(java.util.Map<K, java.util.Collection<V>>, com.google.common.base.Supplier<? extends java.util.Collection<V>>);
    descriptor: (Ljava/util/Map;Lcom/google/common/base/Supplier;)Lcom/google/common/collect/Multimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.Map map
        start local 1 // com.google.common.base.Supplier factory
         0: .line 216
            new com.google.common.collect.Multimaps$CustomMultimap
            dup
            aload 0 /* map */
            aload 1 /* factory */
            invokespecial com.google.common.collect.Multimaps$CustomMultimap.<init>:(Ljava/util/Map;Lcom/google/common/base/Supplier;)V
            areturn
        end local 1 // com.google.common.base.Supplier factory
        end local 0 // java.util.Map map
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0      map  Ljava/util/Map<TK;Ljava/util/Collection<TV;>;>;
            0    1     1  factory  Lcom/google/common/base/Supplier<+Ljava/util/Collection<TV;>;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/Map<TK;Ljava/util/Collection<TV;>;>;Lcom/google/common/base/Supplier<+Ljava/util/Collection<TV;>;>;)Lcom/google/common/collect/Multimap<TK;TV;>;
    MethodParameters:
         Name  Flags
      map      
      factory  final

  public static <K, V> com.google.common.collect.ListMultimap<K, V> newListMultimap(java.util.Map<K, java.util.Collection<V>>, com.google.common.base.Supplier<? extends java.util.List<V>>);
    descriptor: (Ljava/util/Map;Lcom/google/common/base/Supplier;)Lcom/google/common/collect/ListMultimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.Map map
        start local 1 // com.google.common.base.Supplier factory
         0: .line 328
            new com.google.common.collect.Multimaps$CustomListMultimap
            dup
            aload 0 /* map */
            aload 1 /* factory */
            invokespecial com.google.common.collect.Multimaps$CustomListMultimap.<init>:(Ljava/util/Map;Lcom/google/common/base/Supplier;)V
            areturn
        end local 1 // com.google.common.base.Supplier factory
        end local 0 // java.util.Map map
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0      map  Ljava/util/Map<TK;Ljava/util/Collection<TV;>;>;
            0    1     1  factory  Lcom/google/common/base/Supplier<+Ljava/util/List<TV;>;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/Map<TK;Ljava/util/Collection<TV;>;>;Lcom/google/common/base/Supplier<+Ljava/util/List<TV;>;>;)Lcom/google/common/collect/ListMultimap<TK;TV;>;
    MethodParameters:
         Name  Flags
      map      
      factory  final

  public static <K, V> com.google.common.collect.SetMultimap<K, V> newSetMultimap(java.util.Map<K, java.util.Collection<V>>, com.google.common.base.Supplier<? extends java.util.Set<V>>);
    descriptor: (Ljava/util/Map;Lcom/google/common/base/Supplier;)Lcom/google/common/collect/SetMultimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.Map map
        start local 1 // com.google.common.base.Supplier factory
         0: .line 406
            new com.google.common.collect.Multimaps$CustomSetMultimap
            dup
            aload 0 /* map */
            aload 1 /* factory */
            invokespecial com.google.common.collect.Multimaps$CustomSetMultimap.<init>:(Ljava/util/Map;Lcom/google/common/base/Supplier;)V
            areturn
        end local 1 // com.google.common.base.Supplier factory
        end local 0 // java.util.Map map
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0      map  Ljava/util/Map<TK;Ljava/util/Collection<TV;>;>;
            0    1     1  factory  Lcom/google/common/base/Supplier<+Ljava/util/Set<TV;>;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/Map<TK;Ljava/util/Collection<TV;>;>;Lcom/google/common/base/Supplier<+Ljava/util/Set<TV;>;>;)Lcom/google/common/collect/SetMultimap<TK;TV;>;
    MethodParameters:
         Name  Flags
      map      
      factory  final

  public static <K, V> com.google.common.collect.SortedSetMultimap<K, V> newSortedSetMultimap(java.util.Map<K, java.util.Collection<V>>, com.google.common.base.Supplier<? extends java.util.SortedSet<V>>);
    descriptor: (Ljava/util/Map;Lcom/google/common/base/Supplier;)Lcom/google/common/collect/SortedSetMultimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.Map map
        start local 1 // com.google.common.base.Supplier factory
         0: .line 506
            new com.google.common.collect.Multimaps$CustomSortedSetMultimap
            dup
            aload 0 /* map */
            aload 1 /* factory */
            invokespecial com.google.common.collect.Multimaps$CustomSortedSetMultimap.<init>:(Ljava/util/Map;Lcom/google/common/base/Supplier;)V
            areturn
        end local 1 // com.google.common.base.Supplier factory
        end local 0 // java.util.Map map
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0      map  Ljava/util/Map<TK;Ljava/util/Collection<TV;>;>;
            0    1     1  factory  Lcom/google/common/base/Supplier<+Ljava/util/SortedSet<TV;>;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/Map<TK;Ljava/util/Collection<TV;>;>;Lcom/google/common/base/Supplier<+Ljava/util/SortedSet<TV;>;>;)Lcom/google/common/collect/SortedSetMultimap<TK;TV;>;
    MethodParameters:
         Name  Flags
      map      
      factory  final

  public static <K, V, M extends com.google.common.collect.Multimap<K, V>> M invertFrom(com.google.common.collect.Multimap<? extends V, ? extends K>, );
    descriptor: (Lcom/google/common/collect/Multimap;Lcom/google/common/collect/Multimap;)Lcom/google/common/collect/Multimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // com.google.common.collect.Multimap source
        start local 1 // com.google.common.collect.Multimap dest
         0: .line 575
            aload 1 /* dest */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 576
            aload 0 /* source */
            invokeinterface com.google.common.collect.Multimap.entries:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3
            goto 4
      StackMap locals: com.google.common.collect.Multimap com.google.common.collect.Multimap top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 2 /* entry */
        start local 2 // java.util.Map$Entry entry
         3: .line 577
            aload 1 /* dest */
            aload 2 /* entry */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            aload 2 /* entry */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            invokeinterface com.google.common.collect.Multimap.put:(Ljava/lang/Object;Ljava/lang/Object;)Z
            pop
        end local 2 // java.util.Map$Entry entry
         4: .line 576
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 579
            aload 1 /* dest */
            areturn
        end local 1 // com.google.common.collect.Multimap dest
        end local 0 // com.google.common.collect.Multimap source
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0  source  Lcom/google/common/collect/Multimap<+TV;+TK;>;
            0    6     1    dest  TM;
            3    4     2   entry  Ljava/util/Map$Entry<+TV;+TK;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;M::Lcom/google/common/collect/Multimap<TK;TV;>;>(Lcom/google/common/collect/Multimap<+TV;+TK;>;TM;)TM;
    RuntimeInvisibleAnnotations: 
      com.google.errorprone.annotations.CanIgnoreReturnValue()
    MethodParameters:
        Name  Flags
      source  
      dest    

  public static <K, V> com.google.common.collect.Multimap<K, V> synchronizedMultimap(com.google.common.collect.Multimap<K, V>);
    descriptor: (Lcom/google/common/collect/Multimap;)Lcom/google/common/collect/Multimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.common.collect.Multimap multimap
         0: .line 615
            aload 0 /* multimap */
            aconst_null
            invokestatic com.google.common.collect.Synchronized.multimap:(Lcom/google/common/collect/Multimap;Ljava/lang/Object;)Lcom/google/common/collect/Multimap;
            areturn
        end local 0 // com.google.common.collect.Multimap multimap
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  multimap  Lcom/google/common/collect/Multimap<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/Multimap<TK;TV;>;)Lcom/google/common/collect/Multimap<TK;TV;>;
    MethodParameters:
          Name  Flags
      multimap  

  public static <K, V> com.google.common.collect.Multimap<K, V> unmodifiableMultimap(com.google.common.collect.Multimap<K, V>);
    descriptor: (Lcom/google/common/collect/Multimap;)Lcom/google/common/collect/Multimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.google.common.collect.Multimap delegate
         0: .line 633
            aload 0 /* delegate */
            instanceof com.google.common.collect.Multimaps$UnmodifiableMultimap
            ifne 1
            aload 0 /* delegate */
            instanceof com.google.common.collect.ImmutableMultimap
            ifeq 2
         1: .line 634
      StackMap locals:
      StackMap stack:
            aload 0 /* delegate */
            areturn
         2: .line 636
      StackMap locals:
      StackMap stack:
            new com.google.common.collect.Multimaps$UnmodifiableMultimap
            dup
            aload 0 /* delegate */
            invokespecial com.google.common.collect.Multimaps$UnmodifiableMultimap.<init>:(Lcom/google/common/collect/Multimap;)V
            areturn
        end local 0 // com.google.common.collect.Multimap delegate
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0  delegate  Lcom/google/common/collect/Multimap<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/Multimap<TK;TV;>;)Lcom/google/common/collect/Multimap<TK;TV;>;
    MethodParameters:
          Name  Flags
      delegate  

  public static <K, V> com.google.common.collect.Multimap<K, V> unmodifiableMultimap(com.google.common.collect.ImmutableMultimap<K, V>);
    descriptor: (Lcom/google/common/collect/ImmutableMultimap;)Lcom/google/common/collect/Multimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.collect.ImmutableMultimap delegate
         0: .line 647
            aload 0 /* delegate */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.google.common.collect.Multimap
            areturn
        end local 0 // com.google.common.collect.ImmutableMultimap delegate
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  delegate  Lcom/google/common/collect/ImmutableMultimap<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/ImmutableMultimap<TK;TV;>;)Lcom/google/common/collect/Multimap<TK;TV;>;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
          Name  Flags
      delegate  

  public static <K, V> com.google.common.collect.SetMultimap<K, V> synchronizedSetMultimap(com.google.common.collect.SetMultimap<K, V>);
    descriptor: (Lcom/google/common/collect/SetMultimap;)Lcom/google/common/collect/SetMultimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.common.collect.SetMultimap multimap
         0: .line 878
            aload 0 /* multimap */
            aconst_null
            invokestatic com.google.common.collect.Synchronized.setMultimap:(Lcom/google/common/collect/SetMultimap;Ljava/lang/Object;)Lcom/google/common/collect/SetMultimap;
            areturn
        end local 0 // com.google.common.collect.SetMultimap multimap
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  multimap  Lcom/google/common/collect/SetMultimap<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/SetMultimap<TK;TV;>;)Lcom/google/common/collect/SetMultimap<TK;TV;>;
    MethodParameters:
          Name  Flags
      multimap  

  public static <K, V> com.google.common.collect.SetMultimap<K, V> unmodifiableSetMultimap(com.google.common.collect.SetMultimap<K, V>);
    descriptor: (Lcom/google/common/collect/SetMultimap;)Lcom/google/common/collect/SetMultimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.google.common.collect.SetMultimap delegate
         0: .line 896
            aload 0 /* delegate */
            instanceof com.google.common.collect.Multimaps$UnmodifiableSetMultimap
            ifne 1
            aload 0 /* delegate */
            instanceof com.google.common.collect.ImmutableSetMultimap
            ifeq 2
         1: .line 897
      StackMap locals:
      StackMap stack:
            aload 0 /* delegate */
            areturn
         2: .line 899
      StackMap locals:
      StackMap stack:
            new com.google.common.collect.Multimaps$UnmodifiableSetMultimap
            dup
            aload 0 /* delegate */
            invokespecial com.google.common.collect.Multimaps$UnmodifiableSetMultimap.<init>:(Lcom/google/common/collect/SetMultimap;)V
            areturn
        end local 0 // com.google.common.collect.SetMultimap delegate
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0  delegate  Lcom/google/common/collect/SetMultimap<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/SetMultimap<TK;TV;>;)Lcom/google/common/collect/SetMultimap<TK;TV;>;
    MethodParameters:
          Name  Flags
      delegate  

  public static <K, V> com.google.common.collect.SetMultimap<K, V> unmodifiableSetMultimap(com.google.common.collect.ImmutableSetMultimap<K, V>);
    descriptor: (Lcom/google/common/collect/ImmutableSetMultimap;)Lcom/google/common/collect/SetMultimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.collect.ImmutableSetMultimap delegate
         0: .line 911
            aload 0 /* delegate */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.google.common.collect.SetMultimap
            areturn
        end local 0 // com.google.common.collect.ImmutableSetMultimap delegate
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  delegate  Lcom/google/common/collect/ImmutableSetMultimap<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/ImmutableSetMultimap<TK;TV;>;)Lcom/google/common/collect/SetMultimap<TK;TV;>;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
          Name  Flags
      delegate  

  public static <K, V> com.google.common.collect.SortedSetMultimap<K, V> synchronizedSortedSetMultimap(com.google.common.collect.SortedSetMultimap<K, V>);
    descriptor: (Lcom/google/common/collect/SortedSetMultimap;)Lcom/google/common/collect/SortedSetMultimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.common.collect.SortedSetMultimap multimap
         0: .line 927
            aload 0 /* multimap */
            aconst_null
            invokestatic com.google.common.collect.Synchronized.sortedSetMultimap:(Lcom/google/common/collect/SortedSetMultimap;Ljava/lang/Object;)Lcom/google/common/collect/SortedSetMultimap;
            areturn
        end local 0 // com.google.common.collect.SortedSetMultimap multimap
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  multimap  Lcom/google/common/collect/SortedSetMultimap<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/SortedSetMultimap<TK;TV;>;)Lcom/google/common/collect/SortedSetMultimap<TK;TV;>;
    MethodParameters:
          Name  Flags
      multimap  

  public static <K, V> com.google.common.collect.SortedSetMultimap<K, V> unmodifiableSortedSetMultimap(com.google.common.collect.SortedSetMultimap<K, V>);
    descriptor: (Lcom/google/common/collect/SortedSetMultimap;)Lcom/google/common/collect/SortedSetMultimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.google.common.collect.SortedSetMultimap delegate
         0: .line 946
            aload 0 /* delegate */
            instanceof com.google.common.collect.Multimaps$UnmodifiableSortedSetMultimap
            ifeq 2
         1: .line 947
            aload 0 /* delegate */
            areturn
         2: .line 949
      StackMap locals:
      StackMap stack:
            new com.google.common.collect.Multimaps$UnmodifiableSortedSetMultimap
            dup
            aload 0 /* delegate */
            invokespecial com.google.common.collect.Multimaps$UnmodifiableSortedSetMultimap.<init>:(Lcom/google/common/collect/SortedSetMultimap;)V
            areturn
        end local 0 // com.google.common.collect.SortedSetMultimap delegate
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0  delegate  Lcom/google/common/collect/SortedSetMultimap<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/SortedSetMultimap<TK;TV;>;)Lcom/google/common/collect/SortedSetMultimap<TK;TV;>;
    MethodParameters:
          Name  Flags
      delegate  

  public static <K, V> com.google.common.collect.ListMultimap<K, V> synchronizedListMultimap(com.google.common.collect.ListMultimap<K, V>);
    descriptor: (Lcom/google/common/collect/ListMultimap;)Lcom/google/common/collect/ListMultimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.common.collect.ListMultimap multimap
         0: .line 961
            aload 0 /* multimap */
            aconst_null
            invokestatic com.google.common.collect.Synchronized.listMultimap:(Lcom/google/common/collect/ListMultimap;Ljava/lang/Object;)Lcom/google/common/collect/ListMultimap;
            areturn
        end local 0 // com.google.common.collect.ListMultimap multimap
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  multimap  Lcom/google/common/collect/ListMultimap<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/ListMultimap<TK;TV;>;)Lcom/google/common/collect/ListMultimap<TK;TV;>;
    MethodParameters:
          Name  Flags
      multimap  

  public static <K, V> com.google.common.collect.ListMultimap<K, V> unmodifiableListMultimap(com.google.common.collect.ListMultimap<K, V>);
    descriptor: (Lcom/google/common/collect/ListMultimap;)Lcom/google/common/collect/ListMultimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.google.common.collect.ListMultimap delegate
         0: .line 979
            aload 0 /* delegate */
            instanceof com.google.common.collect.Multimaps$UnmodifiableListMultimap
            ifne 1
            aload 0 /* delegate */
            instanceof com.google.common.collect.ImmutableListMultimap
            ifeq 2
         1: .line 980
      StackMap locals:
      StackMap stack:
            aload 0 /* delegate */
            areturn
         2: .line 982
      StackMap locals:
      StackMap stack:
            new com.google.common.collect.Multimaps$UnmodifiableListMultimap
            dup
            aload 0 /* delegate */
            invokespecial com.google.common.collect.Multimaps$UnmodifiableListMultimap.<init>:(Lcom/google/common/collect/ListMultimap;)V
            areturn
        end local 0 // com.google.common.collect.ListMultimap delegate
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0  delegate  Lcom/google/common/collect/ListMultimap<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/ListMultimap<TK;TV;>;)Lcom/google/common/collect/ListMultimap<TK;TV;>;
    MethodParameters:
          Name  Flags
      delegate  

  public static <K, V> com.google.common.collect.ListMultimap<K, V> unmodifiableListMultimap(com.google.common.collect.ImmutableListMultimap<K, V>);
    descriptor: (Lcom/google/common/collect/ImmutableListMultimap;)Lcom/google/common/collect/ListMultimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.collect.ImmutableListMultimap delegate
         0: .line 994
            aload 0 /* delegate */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.google.common.collect.ListMultimap
            areturn
        end local 0 // com.google.common.collect.ImmutableListMultimap delegate
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  delegate  Lcom/google/common/collect/ImmutableListMultimap<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/ImmutableListMultimap<TK;TV;>;)Lcom/google/common/collect/ListMultimap<TK;TV;>;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
          Name  Flags
      delegate  

  private static <V> java.util.Collection<V> unmodifiableValueCollection(java.util.Collection<V>);
    descriptor: (Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.Collection collection
         0: .line 1006
            aload 0 /* collection */
            instanceof java.util.SortedSet
            ifeq 2
         1: .line 1007
            aload 0 /* collection */
            checkcast java.util.SortedSet
            invokestatic java.util.Collections.unmodifiableSortedSet:(Ljava/util/SortedSet;)Ljava/util/SortedSet;
            areturn
         2: .line 1008
      StackMap locals:
      StackMap stack:
            aload 0 /* collection */
            instanceof java.util.Set
            ifeq 4
         3: .line 1009
            aload 0 /* collection */
            checkcast java.util.Set
            invokestatic java.util.Collections.unmodifiableSet:(Ljava/util/Set;)Ljava/util/Set;
            areturn
         4: .line 1010
      StackMap locals:
      StackMap stack:
            aload 0 /* collection */
            instanceof java.util.List
            ifeq 6
         5: .line 1011
            aload 0 /* collection */
            checkcast java.util.List
            invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
            areturn
         6: .line 1013
      StackMap locals:
      StackMap stack:
            aload 0 /* collection */
            invokestatic java.util.Collections.unmodifiableCollection:(Ljava/util/Collection;)Ljava/util/Collection;
            areturn
        end local 0 // java.util.Collection collection
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0  collection  Ljava/util/Collection<TV;>;
    Signature: <V:Ljava/lang/Object;>(Ljava/util/Collection<TV;>;)Ljava/util/Collection<TV;>;
    MethodParameters:
            Name  Flags
      collection  

  private static <K, V> java.util.Collection<java.util.Map$Entry<K, V>> unmodifiableEntries(java.util.Collection<java.util.Map$Entry<K, V>>);
    descriptor: (Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.Collection entries
         0: .line 1026
            aload 0 /* entries */
            instanceof java.util.Set
            ifeq 2
         1: .line 1027
            aload 0 /* entries */
            checkcast java.util.Set
            invokestatic com.google.common.collect.Maps.unmodifiableEntrySet:(Ljava/util/Set;)Ljava/util/Set;
            areturn
         2: .line 1029
      StackMap locals:
      StackMap stack:
            new com.google.common.collect.Maps$UnmodifiableEntries
            dup
            aload 0 /* entries */
            invokestatic java.util.Collections.unmodifiableCollection:(Ljava/util/Collection;)Ljava/util/Collection;
            invokespecial com.google.common.collect.Maps$UnmodifiableEntries.<init>:(Ljava/util/Collection;)V
            areturn
        end local 0 // java.util.Collection entries
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  entries  Ljava/util/Collection<Ljava/util/Map$Entry<TK;TV;>;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/Collection<Ljava/util/Map$Entry<TK;TV;>;>;)Ljava/util/Collection<Ljava/util/Map$Entry<TK;TV;>;>;
    MethodParameters:
         Name  Flags
      entries  

  public static <K, V> java.util.Map<K, java.util.List<V>> asMap(com.google.common.collect.ListMultimap<K, V>);
    descriptor: (Lcom/google/common/collect/ListMultimap;)Ljava/util/Map;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.collect.ListMultimap multimap
         0: .line 1042
            aload 0 /* multimap */
            invokeinterface com.google.common.collect.ListMultimap.asMap:()Ljava/util/Map;
            areturn
        end local 0 // com.google.common.collect.ListMultimap multimap
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  multimap  Lcom/google/common/collect/ListMultimap<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/ListMultimap<TK;TV;>;)Ljava/util/Map<TK;Ljava/util/List<TV;>;>;
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.Beta()
    MethodParameters:
          Name  Flags
      multimap  

  public static <K, V> java.util.Map<K, java.util.Set<V>> asMap(com.google.common.collect.SetMultimap<K, V>);
    descriptor: (Lcom/google/common/collect/SetMultimap;)Ljava/util/Map;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.collect.SetMultimap multimap
         0: .line 1055
            aload 0 /* multimap */
            invokeinterface com.google.common.collect.SetMultimap.asMap:()Ljava/util/Map;
            areturn
        end local 0 // com.google.common.collect.SetMultimap multimap
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  multimap  Lcom/google/common/collect/SetMultimap<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/SetMultimap<TK;TV;>;)Ljava/util/Map<TK;Ljava/util/Set<TV;>;>;
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.Beta()
    MethodParameters:
          Name  Flags
      multimap  

  public static <K, V> java.util.Map<K, java.util.SortedSet<V>> asMap(com.google.common.collect.SortedSetMultimap<K, V>);
    descriptor: (Lcom/google/common/collect/SortedSetMultimap;)Ljava/util/Map;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.collect.SortedSetMultimap multimap
         0: .line 1068
            aload 0 /* multimap */
            invokeinterface com.google.common.collect.SortedSetMultimap.asMap:()Ljava/util/Map;
            areturn
        end local 0 // com.google.common.collect.SortedSetMultimap multimap
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  multimap  Lcom/google/common/collect/SortedSetMultimap<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/SortedSetMultimap<TK;TV;>;)Ljava/util/Map<TK;Ljava/util/SortedSet<TV;>;>;
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.Beta()
    MethodParameters:
          Name  Flags
      multimap  

  public static <K, V> java.util.Map<K, java.util.Collection<V>> asMap(com.google.common.collect.Multimap<K, V>);
    descriptor: (Lcom/google/common/collect/Multimap;)Ljava/util/Map;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.collect.Multimap multimap
         0: .line 1079
            aload 0 /* multimap */
            invokeinterface com.google.common.collect.Multimap.asMap:()Ljava/util/Map;
            areturn
        end local 0 // com.google.common.collect.Multimap multimap
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  multimap  Lcom/google/common/collect/Multimap<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/Multimap<TK;TV;>;)Ljava/util/Map<TK;Ljava/util/Collection<TV;>;>;
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.Beta()
    MethodParameters:
          Name  Flags
      multimap  

  public static <K, V> com.google.common.collect.SetMultimap<K, V> forMap(java.util.Map<K, V>);
    descriptor: (Ljava/util/Map;)Lcom/google/common/collect/SetMultimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.Map map
         0: .line 1098
            new com.google.common.collect.Multimaps$MapMultimap
            dup
            aload 0 /* map */
            invokespecial com.google.common.collect.Multimaps$MapMultimap.<init>:(Ljava/util/Map;)V
            areturn
        end local 0 // java.util.Map map
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   map  Ljava/util/Map<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/Map<TK;TV;>;)Lcom/google/common/collect/SetMultimap<TK;TV;>;
    MethodParameters:
      Name  Flags
      map   

  public static <K, V1, V2> com.google.common.collect.Multimap<K, V2> transformValues(com.google.common.collect.Multimap<K, V1>, com.google.common.base.Function<? super V1, V2>);
    descriptor: (Lcom/google/common/collect/Multimap;Lcom/google/common/base/Function;)Lcom/google/common/collect/Multimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.google.common.collect.Multimap fromMultimap
        start local 1 // com.google.common.base.Function function
         0: .line 1294
            aload 1 /* function */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 1295
            aload 1 /* function */
            invokestatic com.google.common.collect.Maps.asEntryTransformer:(Lcom/google/common/base/Function;)Lcom/google/common/collect/Maps$EntryTransformer;
            astore 2 /* transformer */
        start local 2 // com.google.common.collect.Maps$EntryTransformer transformer
         2: .line 1296
            aload 0 /* fromMultimap */
            aload 2 /* transformer */
            invokestatic com.google.common.collect.Multimaps.transformEntries:(Lcom/google/common/collect/Multimap;Lcom/google/common/collect/Maps$EntryTransformer;)Lcom/google/common/collect/Multimap;
            areturn
        end local 2 // com.google.common.collect.Maps$EntryTransformer transformer
        end local 1 // com.google.common.base.Function function
        end local 0 // com.google.common.collect.Multimap fromMultimap
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0  fromMultimap  Lcom/google/common/collect/Multimap<TK;TV1;>;
            0    3     1      function  Lcom/google/common/base/Function<-TV1;TV2;>;
            2    3     2   transformer  Lcom/google/common/collect/Maps$EntryTransformer<TK;TV1;TV2;>;
    Signature: <K:Ljava/lang/Object;V1:Ljava/lang/Object;V2:Ljava/lang/Object;>(Lcom/google/common/collect/Multimap<TK;TV1;>;Lcom/google/common/base/Function<-TV1;TV2;>;)Lcom/google/common/collect/Multimap<TK;TV2;>;
    MethodParameters:
              Name  Flags
      fromMultimap  
      function      final

  public static <K, V1, V2> com.google.common.collect.ListMultimap<K, V2> transformValues(com.google.common.collect.ListMultimap<K, V1>, com.google.common.base.Function<? super V1, V2>);
    descriptor: (Lcom/google/common/collect/ListMultimap;Lcom/google/common/base/Function;)Lcom/google/common/collect/ListMultimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.google.common.collect.ListMultimap fromMultimap
        start local 1 // com.google.common.base.Function function
         0: .line 1341
            aload 1 /* function */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 1342
            aload 1 /* function */
            invokestatic com.google.common.collect.Maps.asEntryTransformer:(Lcom/google/common/base/Function;)Lcom/google/common/collect/Maps$EntryTransformer;
            astore 2 /* transformer */
        start local 2 // com.google.common.collect.Maps$EntryTransformer transformer
         2: .line 1343
            aload 0 /* fromMultimap */
            aload 2 /* transformer */
            invokestatic com.google.common.collect.Multimaps.transformEntries:(Lcom/google/common/collect/ListMultimap;Lcom/google/common/collect/Maps$EntryTransformer;)Lcom/google/common/collect/ListMultimap;
            areturn
        end local 2 // com.google.common.collect.Maps$EntryTransformer transformer
        end local 1 // com.google.common.base.Function function
        end local 0 // com.google.common.collect.ListMultimap fromMultimap
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0  fromMultimap  Lcom/google/common/collect/ListMultimap<TK;TV1;>;
            0    3     1      function  Lcom/google/common/base/Function<-TV1;TV2;>;
            2    3     2   transformer  Lcom/google/common/collect/Maps$EntryTransformer<TK;TV1;TV2;>;
    Signature: <K:Ljava/lang/Object;V1:Ljava/lang/Object;V2:Ljava/lang/Object;>(Lcom/google/common/collect/ListMultimap<TK;TV1;>;Lcom/google/common/base/Function<-TV1;TV2;>;)Lcom/google/common/collect/ListMultimap<TK;TV2;>;
    MethodParameters:
              Name  Flags
      fromMultimap  
      function      final

  public static <K, V1, V2> com.google.common.collect.Multimap<K, V2> transformEntries(com.google.common.collect.Multimap<K, V1>, com.google.common.collect.Maps$EntryTransformer<? super K, ? super V1, V2>);
    descriptor: (Lcom/google/common/collect/Multimap;Lcom/google/common/collect/Maps$EntryTransformer;)Lcom/google/common/collect/Multimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.google.common.collect.Multimap fromMap
        start local 1 // com.google.common.collect.Maps$EntryTransformer transformer
         0: .line 1399
            new com.google.common.collect.Multimaps$TransformedEntriesMultimap
            dup
            aload 0 /* fromMap */
            aload 1 /* transformer */
            invokespecial com.google.common.collect.Multimaps$TransformedEntriesMultimap.<init>:(Lcom/google/common/collect/Multimap;Lcom/google/common/collect/Maps$EntryTransformer;)V
            areturn
        end local 1 // com.google.common.collect.Maps$EntryTransformer transformer
        end local 0 // com.google.common.collect.Multimap fromMap
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0      fromMap  Lcom/google/common/collect/Multimap<TK;TV1;>;
            0    1     1  transformer  Lcom/google/common/collect/Maps$EntryTransformer<-TK;-TV1;TV2;>;
    Signature: <K:Ljava/lang/Object;V1:Ljava/lang/Object;V2:Ljava/lang/Object;>(Lcom/google/common/collect/Multimap<TK;TV1;>;Lcom/google/common/collect/Maps$EntryTransformer<-TK;-TV1;TV2;>;)Lcom/google/common/collect/Multimap<TK;TV2;>;
    MethodParameters:
             Name  Flags
      fromMap      
      transformer  

  public static <K, V1, V2> com.google.common.collect.ListMultimap<K, V2> transformEntries(com.google.common.collect.ListMultimap<K, V1>, com.google.common.collect.Maps$EntryTransformer<? super K, ? super V1, V2>);
    descriptor: (Lcom/google/common/collect/ListMultimap;Lcom/google/common/collect/Maps$EntryTransformer;)Lcom/google/common/collect/ListMultimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.google.common.collect.ListMultimap fromMap
        start local 1 // com.google.common.collect.Maps$EntryTransformer transformer
         0: .line 1452
            new com.google.common.collect.Multimaps$TransformedEntriesListMultimap
            dup
            aload 0 /* fromMap */
            aload 1 /* transformer */
            invokespecial com.google.common.collect.Multimaps$TransformedEntriesListMultimap.<init>:(Lcom/google/common/collect/ListMultimap;Lcom/google/common/collect/Maps$EntryTransformer;)V
            areturn
        end local 1 // com.google.common.collect.Maps$EntryTransformer transformer
        end local 0 // com.google.common.collect.ListMultimap fromMap
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0      fromMap  Lcom/google/common/collect/ListMultimap<TK;TV1;>;
            0    1     1  transformer  Lcom/google/common/collect/Maps$EntryTransformer<-TK;-TV1;TV2;>;
    Signature: <K:Ljava/lang/Object;V1:Ljava/lang/Object;V2:Ljava/lang/Object;>(Lcom/google/common/collect/ListMultimap<TK;TV1;>;Lcom/google/common/collect/Maps$EntryTransformer<-TK;-TV1;TV2;>;)Lcom/google/common/collect/ListMultimap<TK;TV2;>;
    MethodParameters:
             Name  Flags
      fromMap      
      transformer  

  public static <K, V> com.google.common.collect.ImmutableListMultimap<K, V> index(java.lang.Iterable<V>, com.google.common.base.Function<? super V, K>);
    descriptor: (Ljava/lang/Iterable;Lcom/google/common/base/Function;)Lcom/google/common/collect/ImmutableListMultimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.Iterable values
        start local 1 // com.google.common.base.Function keyFunction
         0: .line 1639
            aload 0 /* values */
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            aload 1 /* keyFunction */
            invokestatic com.google.common.collect.Multimaps.index:(Ljava/util/Iterator;Lcom/google/common/base/Function;)Lcom/google/common/collect/ImmutableListMultimap;
            areturn
        end local 1 // com.google.common.base.Function keyFunction
        end local 0 // java.lang.Iterable values
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0       values  Ljava/lang/Iterable<TV;>;
            0    1     1  keyFunction  Lcom/google/common/base/Function<-TV;TK;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/lang/Iterable<TV;>;Lcom/google/common/base/Function<-TV;TK;>;)Lcom/google/common/collect/ImmutableListMultimap<TK;TV;>;
    MethodParameters:
             Name  Flags
      values       
      keyFunction  

  public static <K, V> com.google.common.collect.ImmutableListMultimap<K, V> index(java.util.Iterator<V>, com.google.common.base.Function<? super V, K>);
    descriptor: (Ljava/util/Iterator;Lcom/google/common/base/Function;)Lcom/google/common/collect/ImmutableListMultimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // java.util.Iterator values
        start local 1 // com.google.common.base.Function keyFunction
         0: .line 1680
            aload 1 /* keyFunction */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 1681
            invokestatic com.google.common.collect.ImmutableListMultimap.builder:()Lcom/google/common/collect/ImmutableListMultimap$Builder;
            astore 2 /* builder */
        start local 2 // com.google.common.collect.ImmutableListMultimap$Builder builder
         2: .line 1682
            goto 6
         3: .line 1683
      StackMap locals: com.google.common.collect.ImmutableListMultimap$Builder
      StackMap stack:
            aload 0 /* values */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 3 /* value */
        start local 3 // java.lang.Object value
         4: .line 1684
            aload 3 /* value */
            aload 0 /* values */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 1685
            aload 2 /* builder */
            aload 1 /* keyFunction */
            aload 3 /* value */
            invokeinterface com.google.common.base.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
            aload 3 /* value */
            invokevirtual com.google.common.collect.ImmutableListMultimap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/google/common/collect/ImmutableListMultimap$Builder;
            pop
        end local 3 // java.lang.Object value
         6: .line 1682
      StackMap locals:
      StackMap stack:
            aload 0 /* values */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         7: .line 1687
            aload 2 /* builder */
            invokevirtual com.google.common.collect.ImmutableListMultimap$Builder.build:()Lcom/google/common/collect/ImmutableListMultimap;
            areturn
        end local 2 // com.google.common.collect.ImmutableListMultimap$Builder builder
        end local 1 // com.google.common.base.Function keyFunction
        end local 0 // java.util.Iterator values
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0       values  Ljava/util/Iterator<TV;>;
            0    8     1  keyFunction  Lcom/google/common/base/Function<-TV;TK;>;
            2    8     2      builder  Lcom/google/common/collect/ImmutableListMultimap$Builder<TK;TV;>;
            4    6     3        value  TV;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/Iterator<TV;>;Lcom/google/common/base/Function<-TV;TK;>;)Lcom/google/common/collect/ImmutableListMultimap<TK;TV;>;
    MethodParameters:
             Name  Flags
      values       
      keyFunction  

  public static <K, V> com.google.common.collect.Multimap<K, V> filterKeys(com.google.common.collect.Multimap<K, V>, com.google.common.base.Predicate<? super K>);
    descriptor: (Lcom/google/common/collect/Multimap;Lcom/google/common/base/Predicate;)Lcom/google/common/collect/Multimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // com.google.common.collect.Multimap unfiltered
        start local 1 // com.google.common.base.Predicate keyPredicate
         0: .line 1943
            aload 0 /* unfiltered */
            instanceof com.google.common.collect.SetMultimap
            ifeq 2
         1: .line 1944
            aload 0 /* unfiltered */
            checkcast com.google.common.collect.SetMultimap
            aload 1 /* keyPredicate */
            invokestatic com.google.common.collect.Multimaps.filterKeys:(Lcom/google/common/collect/SetMultimap;Lcom/google/common/base/Predicate;)Lcom/google/common/collect/SetMultimap;
            areturn
         2: .line 1945
      StackMap locals:
      StackMap stack:
            aload 0 /* unfiltered */
            instanceof com.google.common.collect.ListMultimap
            ifeq 4
         3: .line 1946
            aload 0 /* unfiltered */
            checkcast com.google.common.collect.ListMultimap
            aload 1 /* keyPredicate */
            invokestatic com.google.common.collect.Multimaps.filterKeys:(Lcom/google/common/collect/ListMultimap;Lcom/google/common/base/Predicate;)Lcom/google/common/collect/ListMultimap;
            areturn
         4: .line 1947
      StackMap locals:
      StackMap stack:
            aload 0 /* unfiltered */
            instanceof com.google.common.collect.FilteredKeyMultimap
            ifeq 9
         5: .line 1948
            aload 0 /* unfiltered */
            checkcast com.google.common.collect.FilteredKeyMultimap
            astore 2 /* prev */
        start local 2 // com.google.common.collect.FilteredKeyMultimap prev
         6: .line 1949
            new com.google.common.collect.FilteredKeyMultimap
            dup
         7: .line 1950
            aload 2 /* prev */
            getfield com.google.common.collect.FilteredKeyMultimap.unfiltered:Lcom/google/common/collect/Multimap;
            aload 2 /* prev */
            getfield com.google.common.collect.FilteredKeyMultimap.keyPredicate:Lcom/google/common/base/Predicate;
            aload 1 /* keyPredicate */
            invokestatic com.google.common.base.Predicates.and:(Lcom/google/common/base/Predicate;Lcom/google/common/base/Predicate;)Lcom/google/common/base/Predicate;
         8: .line 1949
            invokespecial com.google.common.collect.FilteredKeyMultimap.<init>:(Lcom/google/common/collect/Multimap;Lcom/google/common/base/Predicate;)V
            areturn
        end local 2 // com.google.common.collect.FilteredKeyMultimap prev
         9: .line 1951
      StackMap locals:
      StackMap stack:
            aload 0 /* unfiltered */
            instanceof com.google.common.collect.FilteredMultimap
            ifeq 12
        10: .line 1952
            aload 0 /* unfiltered */
            checkcast com.google.common.collect.FilteredMultimap
            astore 2 /* prev */
        start local 2 // com.google.common.collect.FilteredMultimap prev
        11: .line 1953
            aload 2 /* prev */
            aload 1 /* keyPredicate */
            invokestatic com.google.common.collect.Maps.keyPredicateOnEntries:(Lcom/google/common/base/Predicate;)Lcom/google/common/base/Predicate;
            invokestatic com.google.common.collect.Multimaps.filterFiltered:(Lcom/google/common/collect/FilteredMultimap;Lcom/google/common/base/Predicate;)Lcom/google/common/collect/Multimap;
            areturn
        end local 2 // com.google.common.collect.FilteredMultimap prev
        12: .line 1955
      StackMap locals:
      StackMap stack:
            new com.google.common.collect.FilteredKeyMultimap
            dup
            aload 0 /* unfiltered */
            aload 1 /* keyPredicate */
            invokespecial com.google.common.collect.FilteredKeyMultimap.<init>:(Lcom/google/common/collect/Multimap;Lcom/google/common/base/Predicate;)V
            areturn
        end local 1 // com.google.common.base.Predicate keyPredicate
        end local 0 // com.google.common.collect.Multimap unfiltered
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   13     0    unfiltered  Lcom/google/common/collect/Multimap<TK;TV;>;
            0   13     1  keyPredicate  Lcom/google/common/base/Predicate<-TK;>;
            6    9     2          prev  Lcom/google/common/collect/FilteredKeyMultimap<TK;TV;>;
           11   12     2          prev  Lcom/google/common/collect/FilteredMultimap<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/Multimap<TK;TV;>;Lcom/google/common/base/Predicate<-TK;>;)Lcom/google/common/collect/Multimap<TK;TV;>;
    MethodParameters:
              Name  Flags
      unfiltered    
      keyPredicate  final

  public static <K, V> com.google.common.collect.SetMultimap<K, V> filterKeys(com.google.common.collect.SetMultimap<K, V>, com.google.common.base.Predicate<? super K>);
    descriptor: (Lcom/google/common/collect/SetMultimap;Lcom/google/common/base/Predicate;)Lcom/google/common/collect/SetMultimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // com.google.common.collect.SetMultimap unfiltered
        start local 1 // com.google.common.base.Predicate keyPredicate
         0: .line 1988
            aload 0 /* unfiltered */
            instanceof com.google.common.collect.FilteredKeySetMultimap
            ifeq 5
         1: .line 1989
            aload 0 /* unfiltered */
            checkcast com.google.common.collect.FilteredKeySetMultimap
            astore 2 /* prev */
        start local 2 // com.google.common.collect.FilteredKeySetMultimap prev
         2: .line 1990
            new com.google.common.collect.FilteredKeySetMultimap
            dup
         3: .line 1991
            aload 2 /* prev */
            invokevirtual com.google.common.collect.FilteredKeySetMultimap.unfiltered:()Lcom/google/common/collect/SetMultimap;
            aload 2 /* prev */
            getfield com.google.common.collect.FilteredKeySetMultimap.keyPredicate:Lcom/google/common/base/Predicate;
            aload 1 /* keyPredicate */
            invokestatic com.google.common.base.Predicates.and:(Lcom/google/common/base/Predicate;Lcom/google/common/base/Predicate;)Lcom/google/common/base/Predicate;
         4: .line 1990
            invokespecial com.google.common.collect.FilteredKeySetMultimap.<init>:(Lcom/google/common/collect/SetMultimap;Lcom/google/common/base/Predicate;)V
            areturn
        end local 2 // com.google.common.collect.FilteredKeySetMultimap prev
         5: .line 1992
      StackMap locals:
      StackMap stack:
            aload 0 /* unfiltered */
            instanceof com.google.common.collect.FilteredSetMultimap
            ifeq 8
         6: .line 1993
            aload 0 /* unfiltered */
            checkcast com.google.common.collect.FilteredSetMultimap
            astore 2 /* prev */
        start local 2 // com.google.common.collect.FilteredSetMultimap prev
         7: .line 1994
            aload 2 /* prev */
            aload 1 /* keyPredicate */
            invokestatic com.google.common.collect.Maps.keyPredicateOnEntries:(Lcom/google/common/base/Predicate;)Lcom/google/common/base/Predicate;
            invokestatic com.google.common.collect.Multimaps.filterFiltered:(Lcom/google/common/collect/FilteredSetMultimap;Lcom/google/common/base/Predicate;)Lcom/google/common/collect/SetMultimap;
            areturn
        end local 2 // com.google.common.collect.FilteredSetMultimap prev
         8: .line 1996
      StackMap locals:
      StackMap stack:
            new com.google.common.collect.FilteredKeySetMultimap
            dup
            aload 0 /* unfiltered */
            aload 1 /* keyPredicate */
            invokespecial com.google.common.collect.FilteredKeySetMultimap.<init>:(Lcom/google/common/collect/SetMultimap;Lcom/google/common/base/Predicate;)V
            areturn
        end local 1 // com.google.common.base.Predicate keyPredicate
        end local 0 // com.google.common.collect.SetMultimap unfiltered
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    9     0    unfiltered  Lcom/google/common/collect/SetMultimap<TK;TV;>;
            0    9     1  keyPredicate  Lcom/google/common/base/Predicate<-TK;>;
            2    5     2          prev  Lcom/google/common/collect/FilteredKeySetMultimap<TK;TV;>;
            7    8     2          prev  Lcom/google/common/collect/FilteredSetMultimap<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/SetMultimap<TK;TV;>;Lcom/google/common/base/Predicate<-TK;>;)Lcom/google/common/collect/SetMultimap<TK;TV;>;
    MethodParameters:
              Name  Flags
      unfiltered    
      keyPredicate  final

  public static <K, V> com.google.common.collect.ListMultimap<K, V> filterKeys(com.google.common.collect.ListMultimap<K, V>, com.google.common.base.Predicate<? super K>);
    descriptor: (Lcom/google/common/collect/ListMultimap;Lcom/google/common/base/Predicate;)Lcom/google/common/collect/ListMultimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // com.google.common.collect.ListMultimap unfiltered
        start local 1 // com.google.common.base.Predicate keyPredicate
         0: .line 2029
            aload 0 /* unfiltered */
            instanceof com.google.common.collect.FilteredKeyListMultimap
            ifeq 5
         1: .line 2030
            aload 0 /* unfiltered */
            checkcast com.google.common.collect.FilteredKeyListMultimap
            astore 2 /* prev */
        start local 2 // com.google.common.collect.FilteredKeyListMultimap prev
         2: .line 2031
            new com.google.common.collect.FilteredKeyListMultimap
            dup
         3: .line 2032
            aload 2 /* prev */
            invokevirtual com.google.common.collect.FilteredKeyListMultimap.unfiltered:()Lcom/google/common/collect/ListMultimap;
            aload 2 /* prev */
            getfield com.google.common.collect.FilteredKeyListMultimap.keyPredicate:Lcom/google/common/base/Predicate;
            aload 1 /* keyPredicate */
            invokestatic com.google.common.base.Predicates.and:(Lcom/google/common/base/Predicate;Lcom/google/common/base/Predicate;)Lcom/google/common/base/Predicate;
         4: .line 2031
            invokespecial com.google.common.collect.FilteredKeyListMultimap.<init>:(Lcom/google/common/collect/ListMultimap;Lcom/google/common/base/Predicate;)V
            areturn
        end local 2 // com.google.common.collect.FilteredKeyListMultimap prev
         5: .line 2034
      StackMap locals:
      StackMap stack:
            new com.google.common.collect.FilteredKeyListMultimap
            dup
            aload 0 /* unfiltered */
            aload 1 /* keyPredicate */
            invokespecial com.google.common.collect.FilteredKeyListMultimap.<init>:(Lcom/google/common/collect/ListMultimap;Lcom/google/common/base/Predicate;)V
            areturn
        end local 1 // com.google.common.base.Predicate keyPredicate
        end local 0 // com.google.common.collect.ListMultimap unfiltered
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    6     0    unfiltered  Lcom/google/common/collect/ListMultimap<TK;TV;>;
            0    6     1  keyPredicate  Lcom/google/common/base/Predicate<-TK;>;
            2    5     2          prev  Lcom/google/common/collect/FilteredKeyListMultimap<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/ListMultimap<TK;TV;>;Lcom/google/common/base/Predicate<-TK;>;)Lcom/google/common/collect/ListMultimap<TK;TV;>;
    MethodParameters:
              Name  Flags
      unfiltered    
      keyPredicate  final

  public static <K, V> com.google.common.collect.Multimap<K, V> filterValues(com.google.common.collect.Multimap<K, V>, com.google.common.base.Predicate<? super V>);
    descriptor: (Lcom/google/common/collect/Multimap;Lcom/google/common/base/Predicate;)Lcom/google/common/collect/Multimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.google.common.collect.Multimap unfiltered
        start local 1 // com.google.common.base.Predicate valuePredicate
         0: .line 2067
            aload 0 /* unfiltered */
            aload 1 /* valuePredicate */
            invokestatic com.google.common.collect.Maps.valuePredicateOnEntries:(Lcom/google/common/base/Predicate;)Lcom/google/common/base/Predicate;
            invokestatic com.google.common.collect.Multimaps.filterEntries:(Lcom/google/common/collect/Multimap;Lcom/google/common/base/Predicate;)Lcom/google/common/collect/Multimap;
            areturn
        end local 1 // com.google.common.base.Predicate valuePredicate
        end local 0 // com.google.common.collect.Multimap unfiltered
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0      unfiltered  Lcom/google/common/collect/Multimap<TK;TV;>;
            0    1     1  valuePredicate  Lcom/google/common/base/Predicate<-TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/Multimap<TK;TV;>;Lcom/google/common/base/Predicate<-TV;>;)Lcom/google/common/collect/Multimap<TK;TV;>;
    MethodParameters:
                Name  Flags
      unfiltered      
      valuePredicate  final

  public static <K, V> com.google.common.collect.SetMultimap<K, V> filterValues(com.google.common.collect.SetMultimap<K, V>, com.google.common.base.Predicate<? super V>);
    descriptor: (Lcom/google/common/collect/SetMultimap;Lcom/google/common/base/Predicate;)Lcom/google/common/collect/SetMultimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.google.common.collect.SetMultimap unfiltered
        start local 1 // com.google.common.base.Predicate valuePredicate
         0: .line 2099
            aload 0 /* unfiltered */
            aload 1 /* valuePredicate */
            invokestatic com.google.common.collect.Maps.valuePredicateOnEntries:(Lcom/google/common/base/Predicate;)Lcom/google/common/base/Predicate;
            invokestatic com.google.common.collect.Multimaps.filterEntries:(Lcom/google/common/collect/SetMultimap;Lcom/google/common/base/Predicate;)Lcom/google/common/collect/SetMultimap;
            areturn
        end local 1 // com.google.common.base.Predicate valuePredicate
        end local 0 // com.google.common.collect.SetMultimap unfiltered
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0      unfiltered  Lcom/google/common/collect/SetMultimap<TK;TV;>;
            0    1     1  valuePredicate  Lcom/google/common/base/Predicate<-TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/SetMultimap<TK;TV;>;Lcom/google/common/base/Predicate<-TV;>;)Lcom/google/common/collect/SetMultimap<TK;TV;>;
    MethodParameters:
                Name  Flags
      unfiltered      
      valuePredicate  final

  public static <K, V> com.google.common.collect.Multimap<K, V> filterEntries(com.google.common.collect.Multimap<K, V>, com.google.common.base.Predicate<? super java.util.Map$Entry<K, V>>);
    descriptor: (Lcom/google/common/collect/Multimap;Lcom/google/common/base/Predicate;)Lcom/google/common/collect/Multimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.google.common.collect.Multimap unfiltered
        start local 1 // com.google.common.base.Predicate entryPredicate
         0: .line 2129
            aload 1 /* entryPredicate */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 2130
            aload 0 /* unfiltered */
            instanceof com.google.common.collect.SetMultimap
            ifeq 3
         2: .line 2131
            aload 0 /* unfiltered */
            checkcast com.google.common.collect.SetMultimap
            aload 1 /* entryPredicate */
            invokestatic com.google.common.collect.Multimaps.filterEntries:(Lcom/google/common/collect/SetMultimap;Lcom/google/common/base/Predicate;)Lcom/google/common/collect/SetMultimap;
            areturn
         3: .line 2133
      StackMap locals:
      StackMap stack:
            aload 0 /* unfiltered */
            instanceof com.google.common.collect.FilteredMultimap
            ifeq 5
         4: .line 2134
            aload 0 /* unfiltered */
            checkcast com.google.common.collect.FilteredMultimap
            aload 1 /* entryPredicate */
            invokestatic com.google.common.collect.Multimaps.filterFiltered:(Lcom/google/common/collect/FilteredMultimap;Lcom/google/common/base/Predicate;)Lcom/google/common/collect/Multimap;
            goto 6
         5: .line 2135
      StackMap locals:
      StackMap stack:
            new com.google.common.collect.FilteredEntryMultimap
            dup
            aload 0 /* unfiltered */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.google.common.collect.Multimap
            aload 1 /* entryPredicate */
            invokespecial com.google.common.collect.FilteredEntryMultimap.<init>:(Lcom/google/common/collect/Multimap;Lcom/google/common/base/Predicate;)V
         6: .line 2133
      StackMap locals:
      StackMap stack: com.google.common.collect.Multimap
            areturn
        end local 1 // com.google.common.base.Predicate entryPredicate
        end local 0 // com.google.common.collect.Multimap unfiltered
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    7     0      unfiltered  Lcom/google/common/collect/Multimap<TK;TV;>;
            0    7     1  entryPredicate  Lcom/google/common/base/Predicate<-Ljava/util/Map$Entry<TK;TV;>;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/Multimap<TK;TV;>;Lcom/google/common/base/Predicate<-Ljava/util/Map$Entry<TK;TV;>;>;)Lcom/google/common/collect/Multimap<TK;TV;>;
    MethodParameters:
                Name  Flags
      unfiltered      
      entryPredicate  

  public static <K, V> com.google.common.collect.SetMultimap<K, V> filterEntries(com.google.common.collect.SetMultimap<K, V>, com.google.common.base.Predicate<? super java.util.Map$Entry<K, V>>);
    descriptor: (Lcom/google/common/collect/SetMultimap;Lcom/google/common/base/Predicate;)Lcom/google/common/collect/SetMultimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.google.common.collect.SetMultimap unfiltered
        start local 1 // com.google.common.base.Predicate entryPredicate
         0: .line 2165
            aload 1 /* entryPredicate */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 2166
            aload 0 /* unfiltered */
            instanceof com.google.common.collect.FilteredSetMultimap
            ifeq 3
         2: .line 2167
            aload 0 /* unfiltered */
            checkcast com.google.common.collect.FilteredSetMultimap
            aload 1 /* entryPredicate */
            invokestatic com.google.common.collect.Multimaps.filterFiltered:(Lcom/google/common/collect/FilteredSetMultimap;Lcom/google/common/base/Predicate;)Lcom/google/common/collect/SetMultimap;
            goto 4
         3: .line 2168
      StackMap locals:
      StackMap stack:
            new com.google.common.collect.FilteredEntrySetMultimap
            dup
            aload 0 /* unfiltered */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.google.common.collect.SetMultimap
            aload 1 /* entryPredicate */
            invokespecial com.google.common.collect.FilteredEntrySetMultimap.<init>:(Lcom/google/common/collect/SetMultimap;Lcom/google/common/base/Predicate;)V
         4: .line 2166
      StackMap locals:
      StackMap stack: com.google.common.collect.SetMultimap
            areturn
        end local 1 // com.google.common.base.Predicate entryPredicate
        end local 0 // com.google.common.collect.SetMultimap unfiltered
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    5     0      unfiltered  Lcom/google/common/collect/SetMultimap<TK;TV;>;
            0    5     1  entryPredicate  Lcom/google/common/base/Predicate<-Ljava/util/Map$Entry<TK;TV;>;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/SetMultimap<TK;TV;>;Lcom/google/common/base/Predicate<-Ljava/util/Map$Entry<TK;TV;>;>;)Lcom/google/common/collect/SetMultimap<TK;TV;>;
    MethodParameters:
                Name  Flags
      unfiltered      
      entryPredicate  

  private static <K, V> com.google.common.collect.Multimap<K, V> filterFiltered(com.google.common.collect.FilteredMultimap<K, V>, com.google.common.base.Predicate<? super java.util.Map$Entry<K, V>>);
    descriptor: (Lcom/google/common/collect/FilteredMultimap;Lcom/google/common/base/Predicate;)Lcom/google/common/collect/Multimap;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // com.google.common.collect.FilteredMultimap multimap
        start local 1 // com.google.common.base.Predicate entryPredicate
         0: .line 2180
            aload 0 /* multimap */
            invokeinterface com.google.common.collect.FilteredMultimap.entryPredicate:()Lcom/google/common/base/Predicate;
            aload 1 /* entryPredicate */
            invokestatic com.google.common.base.Predicates.and:(Lcom/google/common/base/Predicate;Lcom/google/common/base/Predicate;)Lcom/google/common/base/Predicate;
         1: .line 2179
            astore 2 /* predicate */
        start local 2 // com.google.common.base.Predicate predicate
         2: .line 2181
            new com.google.common.collect.FilteredEntryMultimap
            dup
            aload 0 /* multimap */
            invokeinterface com.google.common.collect.FilteredMultimap.unfiltered:()Lcom/google/common/collect/Multimap;
            aload 2 /* predicate */
            invokespecial com.google.common.collect.FilteredEntryMultimap.<init>:(Lcom/google/common/collect/Multimap;Lcom/google/common/base/Predicate;)V
            areturn
        end local 2 // com.google.common.base.Predicate predicate
        end local 1 // com.google.common.base.Predicate entryPredicate
        end local 0 // com.google.common.collect.FilteredMultimap multimap
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0        multimap  Lcom/google/common/collect/FilteredMultimap<TK;TV;>;
            0    3     1  entryPredicate  Lcom/google/common/base/Predicate<-Ljava/util/Map$Entry<TK;TV;>;>;
            2    3     2       predicate  Lcom/google/common/base/Predicate<Ljava/util/Map$Entry<TK;TV;>;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/FilteredMultimap<TK;TV;>;Lcom/google/common/base/Predicate<-Ljava/util/Map$Entry<TK;TV;>;>;)Lcom/google/common/collect/Multimap<TK;TV;>;
    MethodParameters:
                Name  Flags
      multimap        
      entryPredicate  

  private static <K, V> com.google.common.collect.SetMultimap<K, V> filterFiltered(com.google.common.collect.FilteredSetMultimap<K, V>, com.google.common.base.Predicate<? super java.util.Map$Entry<K, V>>);
    descriptor: (Lcom/google/common/collect/FilteredSetMultimap;Lcom/google/common/base/Predicate;)Lcom/google/common/collect/SetMultimap;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // com.google.common.collect.FilteredSetMultimap multimap
        start local 1 // com.google.common.base.Predicate entryPredicate
         0: .line 2193
            aload 0 /* multimap */
            invokeinterface com.google.common.collect.FilteredSetMultimap.entryPredicate:()Lcom/google/common/base/Predicate;
            aload 1 /* entryPredicate */
            invokestatic com.google.common.base.Predicates.and:(Lcom/google/common/base/Predicate;Lcom/google/common/base/Predicate;)Lcom/google/common/base/Predicate;
         1: .line 2192
            astore 2 /* predicate */
        start local 2 // com.google.common.base.Predicate predicate
         2: .line 2194
            new com.google.common.collect.FilteredEntrySetMultimap
            dup
            aload 0 /* multimap */
            invokeinterface com.google.common.collect.FilteredSetMultimap.unfiltered:()Lcom/google/common/collect/SetMultimap;
            aload 2 /* predicate */
            invokespecial com.google.common.collect.FilteredEntrySetMultimap.<init>:(Lcom/google/common/collect/SetMultimap;Lcom/google/common/base/Predicate;)V
            areturn
        end local 2 // com.google.common.base.Predicate predicate
        end local 1 // com.google.common.base.Predicate entryPredicate
        end local 0 // com.google.common.collect.FilteredSetMultimap multimap
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0        multimap  Lcom/google/common/collect/FilteredSetMultimap<TK;TV;>;
            0    3     1  entryPredicate  Lcom/google/common/base/Predicate<-Ljava/util/Map$Entry<TK;TV;>;>;
            2    3     2       predicate  Lcom/google/common/base/Predicate<Ljava/util/Map$Entry<TK;TV;>;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/FilteredSetMultimap<TK;TV;>;Lcom/google/common/base/Predicate<-Ljava/util/Map$Entry<TK;TV;>;>;)Lcom/google/common/collect/SetMultimap<TK;TV;>;
    MethodParameters:
                Name  Flags
      multimap        
      entryPredicate  

  static boolean equalsImpl(com.google.common.collect.Multimap<?, ?>, );
    descriptor: (Lcom/google/common/collect/Multimap;Ljava/lang/Object;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.google.common.collect.Multimap multimap
        start local 1 // java.lang.Object object
         0: .line 2198
            aload 1 /* object */
            aload 0 /* multimap */
            if_acmpne 2
         1: .line 2199
            iconst_1
            ireturn
         2: .line 2201
      StackMap locals:
      StackMap stack:
            aload 1 /* object */
            instanceof com.google.common.collect.Multimap
            ifeq 5
         3: .line 2202
            aload 1 /* object */
            checkcast com.google.common.collect.Multimap
            astore 2 /* that */
        start local 2 // com.google.common.collect.Multimap that
         4: .line 2203
            aload 0 /* multimap */
            invokeinterface com.google.common.collect.Multimap.asMap:()Ljava/util/Map;
            aload 2 /* that */
            invokeinterface com.google.common.collect.Multimap.asMap:()Ljava/util/Map;
            invokeinterface java.util.Map.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 2 // com.google.common.collect.Multimap that
         5: .line 2205
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.Object object
        end local 0 // com.google.common.collect.Multimap multimap
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0  multimap  Lcom/google/common/collect/Multimap<**>;
            0    6     1    object  Ljava/lang/Object;
            4    5     2      that  Lcom/google/common/collect/Multimap<**>;
    Signature: (Lcom/google/common/collect/Multimap<**>;Ljava/lang/Object;)Z
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
          Name  Flags
      multimap  
      object    

  private static void lambda$0(java.util.function.Function, java.util.function.Function, com.google.common.collect.Multimap, java.lang.Object);
    descriptor: (Ljava/util/function/Function;Ljava/util/function/Function;Lcom/google/common/collect/Multimap;Ljava/lang/Object;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=4
        start local 2 // com.google.common.collect.Multimap multimap
        start local 3 // java.lang.Object input
         0: .line 117
            aload 2 /* multimap */
            aload 0
            aload 3 /* input */
            invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
            aload 1
            aload 3 /* input */
            invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
            invokeinterface com.google.common.collect.Multimap.put:(Ljava/lang/Object;Ljava/lang/Object;)Z
            return
        end local 3 // java.lang.Object input
        end local 2 // com.google.common.collect.Multimap multimap
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     2  multimap  TM;
            0    1     3     input  TT;

  private static com.google.common.collect.Multimap lambda$1(com.google.common.collect.Multimap, com.google.common.collect.Multimap);
    descriptor: (Lcom/google/common/collect/Multimap;Lcom/google/common/collect/Multimap;)Lcom/google/common/collect/Multimap;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.google.common.collect.Multimap multimap1
        start local 1 // com.google.common.collect.Multimap multimap2
         0: .line 119
            aload 0 /* multimap1 */
            aload 1 /* multimap2 */
            invokeinterface com.google.common.collect.Multimap.putAll:(Lcom/google/common/collect/Multimap;)Z
            pop
         1: .line 120
            aload 0 /* multimap1 */
            areturn
        end local 1 // com.google.common.collect.Multimap multimap2
        end local 0 // com.google.common.collect.Multimap multimap1
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0  multimap1  TM;
            0    2     1  multimap2  TM;

  private static void lambda$2(java.util.function.Function, java.util.function.Function, com.google.common.collect.Multimap, java.lang.Object);
    descriptor: (Ljava/util/function/Function;Ljava/util/function/Function;Lcom/google/common/collect/Multimap;Ljava/lang/Object;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=6, args_size=4
        start local 2 // com.google.common.collect.Multimap multimap
        start local 3 // java.lang.Object input
         0: .line 168
            aload 0
            aload 3 /* input */
            invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 4 /* key */
        start local 4 // java.lang.Object key
         1: .line 169
            aload 2 /* multimap */
            aload 4 /* key */
            invokeinterface com.google.common.collect.Multimap.get:(Ljava/lang/Object;)Ljava/util/Collection;
            astore 5 /* valuesForKey */
        start local 5 // java.util.Collection valuesForKey
         2: .line 170
            aload 1
            aload 3 /* input */
            invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.stream.Stream
            aload 5 /* valuesForKey */
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic accept(Ljava/util/Collection;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  java/util/Collection.add(Ljava/lang/Object;)Z (9 itf)
                  (Ljava/lang/Object;)V
            invokeinterface java.util.stream.Stream.forEachOrdered:(Ljava/util/function/Consumer;)V
        end local 5 // java.util.Collection valuesForKey
        end local 4 // java.lang.Object key
         3: .line 171
            return
        end local 3 // java.lang.Object input
        end local 2 // com.google.common.collect.Multimap multimap
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     2      multimap  TM;
            0    4     3         input  TT;
            1    3     4           key  TK;
            2    3     5  valuesForKey  Ljava/util/Collection<TV;>;

  private static com.google.common.collect.Multimap lambda$3(com.google.common.collect.Multimap, com.google.common.collect.Multimap);
    descriptor: (Lcom/google/common/collect/Multimap;Lcom/google/common/collect/Multimap;)Lcom/google/common/collect/Multimap;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.google.common.collect.Multimap multimap1
        start local 1 // com.google.common.collect.Multimap multimap2
         0: .line 173
            aload 0 /* multimap1 */
            aload 1 /* multimap2 */
            invokeinterface com.google.common.collect.Multimap.putAll:(Lcom/google/common/collect/Multimap;)Z
            pop
         1: .line 174
            aload 0 /* multimap1 */
            areturn
        end local 1 // com.google.common.collect.Multimap multimap2
        end local 0 // com.google.common.collect.Multimap multimap1
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0  multimap1  TM;
            0    2     1  multimap2  TM;
}
SourceFile: "Multimaps.java"
NestMembers:
  com.google.common.collect.Multimaps$AsMap  com.google.common.collect.Multimaps$AsMap$EntrySet  com.google.common.collect.Multimaps$AsMap$EntrySet$1  com.google.common.collect.Multimaps$CustomListMultimap  com.google.common.collect.Multimaps$CustomMultimap  com.google.common.collect.Multimaps$CustomSetMultimap  com.google.common.collect.Multimaps$CustomSortedSetMultimap  com.google.common.collect.Multimaps$Entries  com.google.common.collect.Multimaps$Keys  com.google.common.collect.Multimaps$Keys$1  com.google.common.collect.Multimaps$Keys$1$1  com.google.common.collect.Multimaps$MapMultimap  com.google.common.collect.Multimaps$MapMultimap$1  com.google.common.collect.Multimaps$MapMultimap$1$1  com.google.common.collect.Multimaps$TransformedEntriesListMultimap  com.google.common.collect.Multimaps$TransformedEntriesMultimap  com.google.common.collect.Multimaps$TransformedEntriesMultimap$1  com.google.common.collect.Multimaps$UnmodifiableListMultimap  com.google.common.collect.Multimaps$UnmodifiableMultimap  com.google.common.collect.Multimaps$UnmodifiableMultimap$1  com.google.common.collect.Multimaps$UnmodifiableSetMultimap  com.google.common.collect.Multimaps$UnmodifiableSortedSetMultimap
InnerClasses:
  public final Builder = com.google.common.collect.ImmutableListMultimap$Builder of com.google.common.collect.ImmutableListMultimap
  public abstract EntryTransformer = com.google.common.collect.Maps$EntryTransformer of com.google.common.collect.Maps
  UnmodifiableEntries = com.google.common.collect.Maps$UnmodifiableEntries of com.google.common.collect.Maps
  final AsMap = com.google.common.collect.Multimaps$AsMap of com.google.common.collect.Multimaps
  private CustomListMultimap = com.google.common.collect.Multimaps$CustomListMultimap of com.google.common.collect.Multimaps
  private CustomMultimap = com.google.common.collect.Multimaps$CustomMultimap of com.google.common.collect.Multimaps
  private CustomSetMultimap = com.google.common.collect.Multimaps$CustomSetMultimap of com.google.common.collect.Multimaps
  private CustomSortedSetMultimap = com.google.common.collect.Multimaps$CustomSortedSetMultimap of com.google.common.collect.Multimaps
  abstract Entries = com.google.common.collect.Multimaps$Entries of com.google.common.collect.Multimaps
  Keys = com.google.common.collect.Multimaps$Keys of com.google.common.collect.Multimaps
  private MapMultimap = com.google.common.collect.Multimaps$MapMultimap of com.google.common.collect.Multimaps
  private final TransformedEntriesListMultimap = com.google.common.collect.Multimaps$TransformedEntriesListMultimap of com.google.common.collect.Multimaps
  private TransformedEntriesMultimap = com.google.common.collect.Multimaps$TransformedEntriesMultimap of com.google.common.collect.Multimaps
  private UnmodifiableListMultimap = com.google.common.collect.Multimaps$UnmodifiableListMultimap of com.google.common.collect.Multimaps
  private UnmodifiableMultimap = com.google.common.collect.Multimaps$UnmodifiableMultimap of com.google.common.collect.Multimaps
  private UnmodifiableSetMultimap = com.google.common.collect.Multimaps$UnmodifiableSetMultimap of com.google.common.collect.Multimaps
  private UnmodifiableSortedSetMultimap = com.google.common.collect.Multimaps$UnmodifiableSortedSetMultimap of com.google.common.collect.Multimaps
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract Entry = java.util.Map$Entry of java.util.Map
  public final Characteristics = java.util.stream.Collector$Characteristics of java.util.stream.Collector
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.GwtCompatible(emulated = true)