public final class com.google.common.collect.Tables
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: com.google.common.collect.Tables
  super_class: java.lang.Object
{
  private static final com.google.common.base.Function<? extends java.util.Map<?, ?>, ? extends java.util.Map<?, ?>> UNMODIFIABLE_WRAPPER;
    descriptor: Lcom/google/common/base/Function;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lcom/google/common/base/Function<+Ljava/util/Map<**>;+Ljava/util/Map<**>;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 686
            new com.google.common.collect.Tables$1
            dup
            invokespecial com.google.common.collect.Tables$1.<init>:()V
         1: .line 685
            putstatic com.google.common.collect.Tables.UNMODIFIABLE_WRAPPER:Lcom/google/common/base/Function;
         2: .line 691
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.collect.Tables this
         0: .line 53
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.google.common.collect.Tables this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/collect/Tables;

  public static <T, R, C, V, I extends com.google.common.collect.Table<R, C, V>> java.util.stream.Collector<T, ?, I> toTable(java.util.function.Function<? super T, ? extends R>, java.util.function.Function<? super T, ? extends C>, java.util.function.Function<? super T, ? extends V>, java.util.function.Supplier<I>);
    descriptor: (Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Supplier;)Ljava/util/stream/Collector;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // java.util.function.Function rowFunction
        start local 1 // java.util.function.Function columnFunction
        start local 2 // java.util.function.Function valueFunction
        start local 3 // java.util.function.Supplier tableSupplier
         0: .line 72
            aload 0 /* rowFunction */
         1: .line 73
            aload 1 /* columnFunction */
         2: .line 74
            aload 2 /* valueFunction */
         3: .line 75
            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/Tables.lambda$0(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; (6)
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
         4: .line 78
            aload 3 /* tableSupplier */
         5: .line 71
            invokestatic com.google.common.collect.Tables.toTable:(Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/BinaryOperator;Ljava/util/function/Supplier;)Ljava/util/stream/Collector;
            areturn
        end local 3 // java.util.function.Supplier tableSupplier
        end local 2 // java.util.function.Function valueFunction
        end local 1 // java.util.function.Function columnFunction
        end local 0 // java.util.function.Function rowFunction
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    6     0     rowFunction  Ljava/util/function/Function<-TT;+TR;>;
            0    6     1  columnFunction  Ljava/util/function/Function<-TT;+TC;>;
            0    6     2   valueFunction  Ljava/util/function/Function<-TT;+TV;>;
            0    6     3   tableSupplier  Ljava/util/function/Supplier<TI;>;
    Signature: <T:Ljava/lang/Object;R:Ljava/lang/Object;C:Ljava/lang/Object;V:Ljava/lang/Object;I::Lcom/google/common/collect/Table<TR;TC;TV;>;>(Ljava/util/function/Function<-TT;+TR;>;Ljava/util/function/Function<-TT;+TC;>;Ljava/util/function/Function<-TT;+TV;>;Ljava/util/function/Supplier<TI;>;)Ljava/util/stream/Collector<TT;*TI;>;
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.Beta()
    MethodParameters:
                Name  Flags
      rowFunction     
      columnFunction  
      valueFunction   
      tableSupplier   

  public static <T, R, C, V, I extends com.google.common.collect.Table<R, C, V>> java.util.stream.Collector<T, ?, I> toTable(java.util.function.Function<? super T, ? extends R>, java.util.function.Function<? super T, ? extends C>, java.util.function.Function<? super T, ? extends V>, java.util.function.BinaryOperator<V>, java.util.function.Supplier<I>);
    descriptor: (Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/BinaryOperator;Ljava/util/function/Supplier;)Ljava/util/stream/Collector;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // java.util.function.Function rowFunction
        start local 1 // java.util.function.Function columnFunction
        start local 2 // java.util.function.Function valueFunction
        start local 3 // java.util.function.BinaryOperator mergeFunction
        start local 4 // java.util.function.Supplier tableSupplier
         0: .line 101
            aload 0 /* rowFunction */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 102
            aload 1 /* columnFunction */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 103
            aload 2 /* valueFunction */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 104
            aload 3 /* mergeFunction */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 105
            aload 4 /* tableSupplier */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 107
            aload 4 /* tableSupplier */
         6: .line 108
            aload 0 /* rowFunction */
            aload 1 /* columnFunction */
            aload 2 /* valueFunction */
            aload 3 /* mergeFunction */
            invokedynamic accept(Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/BinaryOperator;)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/Tables.lambda$1(Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/BinaryOperator;Lcom/google/common/collect/Table;Ljava/lang/Object;)V (6)
                  (Lcom/google/common/collect/Table;Ljava/lang/Object;)V
         7: .line 115
            aload 3 /* mergeFunction */
            invokedynamic apply(Ljava/util/function/BinaryOperator;)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/Tables.lambda$2(Ljava/util/function/BinaryOperator;Lcom/google/common/collect/Table;Lcom/google/common/collect/Table;)Lcom/google/common/collect/Table; (6)
                  (Lcom/google/common/collect/Table;Lcom/google/common/collect/Table;)Lcom/google/common/collect/Table;
            iconst_0
            anewarray java.util.stream.Collector$Characteristics
         8: .line 106
            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 4 // java.util.function.Supplier tableSupplier
        end local 3 // java.util.function.BinaryOperator mergeFunction
        end local 2 // java.util.function.Function valueFunction
        end local 1 // java.util.function.Function columnFunction
        end local 0 // java.util.function.Function rowFunction
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    9     0     rowFunction  Ljava/util/function/Function<-TT;+TR;>;
            0    9     1  columnFunction  Ljava/util/function/Function<-TT;+TC;>;
            0    9     2   valueFunction  Ljava/util/function/Function<-TT;+TV;>;
            0    9     3   mergeFunction  Ljava/util/function/BinaryOperator<TV;>;
            0    9     4   tableSupplier  Ljava/util/function/Supplier<TI;>;
    Signature: <T:Ljava/lang/Object;R:Ljava/lang/Object;C:Ljava/lang/Object;V:Ljava/lang/Object;I::Lcom/google/common/collect/Table<TR;TC;TV;>;>(Ljava/util/function/Function<-TT;+TR;>;Ljava/util/function/Function<-TT;+TC;>;Ljava/util/function/Function<-TT;+TV;>;Ljava/util/function/BinaryOperator<TV;>;Ljava/util/function/Supplier<TI;>;)Ljava/util/stream/Collector<TT;*TI;>;
    MethodParameters:
                Name  Flags
      rowFunction     
      columnFunction  
      valueFunction   
      mergeFunction   
      tableSupplier   

  private static <R, C, V> void merge(com.google.common.collect.Table<R, C, V>, R, C, V, java.util.function.BinaryOperator<V>);
    descriptor: (Lcom/google/common/collect/Table;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/util/function/BinaryOperator;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=7, args_size=5
        start local 0 // com.google.common.collect.Table table
        start local 1 // java.lang.Object row
        start local 2 // java.lang.Object column
        start local 3 // java.lang.Object value
        start local 4 // java.util.function.BinaryOperator mergeFunction
         0: .line 125
            aload 3 /* value */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 126
            aload 0 /* table */
            aload 1 /* row */
            aload 2 /* column */
            invokeinterface com.google.common.collect.Table.get:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 5 /* oldValue */
        start local 5 // java.lang.Object oldValue
         2: .line 127
            aload 5 /* oldValue */
            ifnonnull 5
         3: .line 128
            aload 0 /* table */
            aload 1 /* row */
            aload 2 /* column */
            aload 3 /* value */
            invokeinterface com.google.common.collect.Table.put:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 129
            goto 10
         5: .line 130
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 4 /* mergeFunction */
            aload 5 /* oldValue */
            aload 3 /* value */
            invokeinterface java.util.function.BinaryOperator.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 6 /* newValue */
        start local 6 // java.lang.Object newValue
         6: .line 131
            aload 6 /* newValue */
            ifnonnull 9
         7: .line 132
            aload 0 /* table */
            aload 1 /* row */
            aload 2 /* column */
            invokeinterface com.google.common.collect.Table.remove:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 133
            goto 10
         9: .line 134
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* table */
            aload 1 /* row */
            aload 2 /* column */
            aload 6 /* newValue */
            invokeinterface com.google.common.collect.Table.put:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 6 // java.lang.Object newValue
        10: .line 137
      StackMap locals:
      StackMap stack:
            return
        end local 5 // java.lang.Object oldValue
        end local 4 // java.util.function.BinaryOperator mergeFunction
        end local 3 // java.lang.Object value
        end local 2 // java.lang.Object column
        end local 1 // java.lang.Object row
        end local 0 // com.google.common.collect.Table table
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   11     0          table  Lcom/google/common/collect/Table<TR;TC;TV;>;
            0   11     1            row  TR;
            0   11     2         column  TC;
            0   11     3          value  TV;
            0   11     4  mergeFunction  Ljava/util/function/BinaryOperator<TV;>;
            2   11     5       oldValue  TV;
            6   10     6       newValue  TV;
    Signature: <R:Ljava/lang/Object;C:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/Table<TR;TC;TV;>;TR;TC;TV;Ljava/util/function/BinaryOperator<TV;>;)V
    MethodParameters:
               Name  Flags
      table          
      row            
      column         
      value          
      mergeFunction  

  public static <R, C, V> com.google.common.collect.Table$Cell<R, C, V> immutableCell(R, C, V);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/google/common/collect/Table$Cell;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // java.lang.Object rowKey
        start local 1 // java.lang.Object columnKey
        start local 2 // java.lang.Object value
         0: .line 150
            new com.google.common.collect.Tables$ImmutableCell
            dup
            aload 0 /* rowKey */
            aload 1 /* columnKey */
            aload 2 /* value */
            invokespecial com.google.common.collect.Tables$ImmutableCell.<init>:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
            areturn
        end local 2 // java.lang.Object value
        end local 1 // java.lang.Object columnKey
        end local 0 // java.lang.Object rowKey
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0     rowKey  TR;
            0    1     1  columnKey  TC;
            0    1     2      value  TV;
    Signature: <R:Ljava/lang/Object;C:Ljava/lang/Object;V:Ljava/lang/Object;>(TR;TC;TV;)Lcom/google/common/collect/Table$Cell<TR;TC;TV;>;
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
           Name  Flags
      rowKey     
      columnKey  
      value      

  public static <R, C, V> com.google.common.collect.Table<C, R, V> transpose(com.google.common.collect.Table<R, C, V>);
    descriptor: (Lcom/google/common/collect/Table;)Lcom/google/common/collect/Table;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.google.common.collect.Table table
         0: .line 224
            aload 0 /* table */
            instanceof com.google.common.collect.Tables$TransposeTable
            ifeq 2
         1: .line 225
            aload 0 /* table */
            checkcast com.google.common.collect.Tables$TransposeTable
            getfield com.google.common.collect.Tables$TransposeTable.original:Lcom/google/common/collect/Table;
            goto 3
         2: .line 226
      StackMap locals:
      StackMap stack:
            new com.google.common.collect.Tables$TransposeTable
            dup
            aload 0 /* table */
            invokespecial com.google.common.collect.Tables$TransposeTable.<init>:(Lcom/google/common/collect/Table;)V
         3: .line 224
      StackMap locals:
      StackMap stack: com.google.common.collect.Table
            areturn
        end local 0 // com.google.common.collect.Table table
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0  table  Lcom/google/common/collect/Table<TR;TC;TV;>;
    Signature: <R:Ljava/lang/Object;C:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/Table<TR;TC;TV;>;)Lcom/google/common/collect/Table<TC;TR;TV;>;
    MethodParameters:
       Name  Flags
      table  

  public static <R, C, V> com.google.common.collect.Table<R, C, V> newCustomTable(java.util.Map<R, java.util.Map<C, V>>, com.google.common.base.Supplier<? extends java.util.Map<C, V>>);
    descriptor: (Ljava/util/Map;Lcom/google/common/base/Supplier;)Lcom/google/common/collect/Table;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.Map backingMap
        start local 1 // com.google.common.base.Supplier factory
         0: .line 384
            aload 0 /* backingMap */
            invokeinterface java.util.Map.isEmpty:()Z
            invokestatic com.google.common.base.Preconditions.checkArgument:(Z)V
         1: .line 385
            aload 1 /* factory */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 387
            new com.google.common.collect.StandardTable
            dup
            aload 0 /* backingMap */
            aload 1 /* factory */
            invokespecial com.google.common.collect.StandardTable.<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 backingMap
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0  backingMap  Ljava/util/Map<TR;Ljava/util/Map<TC;TV;>;>;
            0    3     1     factory  Lcom/google/common/base/Supplier<+Ljava/util/Map<TC;TV;>;>;
    Signature: <R:Ljava/lang/Object;C:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/Map<TR;Ljava/util/Map<TC;TV;>;>;Lcom/google/common/base/Supplier<+Ljava/util/Map<TC;TV;>;>;)Lcom/google/common/collect/Table<TR;TC;TV;>;
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.Beta()
    MethodParameters:
            Name  Flags
      backingMap  
      factory     

  public static <R, C, V1, V2> com.google.common.collect.Table<R, C, V2> transformValues(com.google.common.collect.Table<R, C, V1>, com.google.common.base.Function<? super V1, V2>);
    descriptor: (Lcom/google/common/collect/Table;Lcom/google/common/base/Function;)Lcom/google/common/collect/Table;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.google.common.collect.Table fromTable
        start local 1 // com.google.common.base.Function function
         0: .line 414
            new com.google.common.collect.Tables$TransformedTable
            dup
            aload 0 /* fromTable */
            aload 1 /* function */
            invokespecial com.google.common.collect.Tables$TransformedTable.<init>:(Lcom/google/common/collect/Table;Lcom/google/common/base/Function;)V
            areturn
        end local 1 // com.google.common.base.Function function
        end local 0 // com.google.common.collect.Table fromTable
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  fromTable  Lcom/google/common/collect/Table<TR;TC;TV1;>;
            0    1     1   function  Lcom/google/common/base/Function<-TV1;TV2;>;
    Signature: <R:Ljava/lang/Object;C:Ljava/lang/Object;V1:Ljava/lang/Object;V2:Ljava/lang/Object;>(Lcom/google/common/collect/Table<TR;TC;TV1;>;Lcom/google/common/base/Function<-TV1;TV2;>;)Lcom/google/common/collect/Table<TR;TC;TV2;>;
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.Beta()
    MethodParameters:
           Name  Flags
      fromTable  
      function   

  public static <R, C, V> com.google.common.collect.Table<R, C, V> unmodifiableTable(com.google.common.collect.Table<? extends R, ? extends C, ? extends V>);
    descriptor: (Lcom/google/common/collect/Table;)Lcom/google/common/collect/Table;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.google.common.collect.Table table
         0: .line 549
            new com.google.common.collect.Tables$UnmodifiableTable
            dup
            aload 0 /* table */
            invokespecial com.google.common.collect.Tables$UnmodifiableTable.<init>:(Lcom/google/common/collect/Table;)V
            areturn
        end local 0 // com.google.common.collect.Table table
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  table  Lcom/google/common/collect/Table<+TR;+TC;+TV;>;
    Signature: <R:Ljava/lang/Object;C:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/Table<+TR;+TC;+TV;>;)Lcom/google/common/collect/Table<TR;TC;TV;>;
    MethodParameters:
       Name  Flags
      table  

  public static <R, C, V> com.google.common.collect.RowSortedTable<R, C, V> unmodifiableRowSortedTable(com.google.common.collect.RowSortedTable<R, ? extends C, ? extends V>);
    descriptor: (Lcom/google/common/collect/RowSortedTable;)Lcom/google/common/collect/RowSortedTable;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.google.common.collect.RowSortedTable table
         0: .line 651
            new com.google.common.collect.Tables$UnmodifiableRowSortedMap
            dup
            aload 0 /* table */
            invokespecial com.google.common.collect.Tables$UnmodifiableRowSortedMap.<init>:(Lcom/google/common/collect/RowSortedTable;)V
            areturn
        end local 0 // com.google.common.collect.RowSortedTable table
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  table  Lcom/google/common/collect/RowSortedTable<TR;+TC;+TV;>;
    Signature: <R:Ljava/lang/Object;C:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/RowSortedTable<TR;+TC;+TV;>;)Lcom/google/common/collect/RowSortedTable<TR;TC;TV;>;
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.Beta()
    MethodParameters:
       Name  Flags
      table  

  private static <K, V> com.google.common.base.Function<java.util.Map<K, V>, java.util.Map<K, V>> unmodifiableWrapper();
    descriptor: ()Lcom/google/common/base/Function;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 682
            getstatic com.google.common.collect.Tables.UNMODIFIABLE_WRAPPER:Lcom/google/common/base/Function;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>()Lcom/google/common/base/Function<Ljava/util/Map<TK;TV;>;Ljava/util/Map<TK;TV;>;>;

  public static <R, C, V> com.google.common.collect.Table<R, C, V> synchronizedTable(com.google.common.collect.Table<R, C, V>);
    descriptor: (Lcom/google/common/collect/Table;)Lcom/google/common/collect/Table;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.common.collect.Table table
         0: .line 723
            aload 0 /* table */
            aconst_null
            invokestatic com.google.common.collect.Synchronized.table:(Lcom/google/common/collect/Table;Ljava/lang/Object;)Lcom/google/common/collect/Table;
            areturn
        end local 0 // com.google.common.collect.Table table
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  table  Lcom/google/common/collect/Table<TR;TC;TV;>;
    Signature: <R:Ljava/lang/Object;C:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/collect/Table<TR;TC;TV;>;)Lcom/google/common/collect/Table<TR;TC;TV;>;
    MethodParameters:
       Name  Flags
      table  

  static boolean equalsImpl(com.google.common.collect.Table<?, ?, ?>, );
    descriptor: (Lcom/google/common/collect/Table;Ljava/lang/Object;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.google.common.collect.Table table
        start local 1 // java.lang.Object obj
         0: .line 727
            aload 1 /* obj */
            aload 0 /* table */
            if_acmpne 2
         1: .line 728
            iconst_1
            ireturn
         2: .line 729
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            instanceof com.google.common.collect.Table
            ifeq 5
         3: .line 730
            aload 1 /* obj */
            checkcast com.google.common.collect.Table
            astore 2 /* that */
        start local 2 // com.google.common.collect.Table that
         4: .line 731
            aload 0 /* table */
            invokeinterface com.google.common.collect.Table.cellSet:()Ljava/util/Set;
            aload 2 /* that */
            invokeinterface com.google.common.collect.Table.cellSet:()Ljava/util/Set;
            invokeinterface java.util.Set.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 2 // com.google.common.collect.Table that
         5: .line 733
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.Object obj
        end local 0 // com.google.common.collect.Table table
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0  table  Lcom/google/common/collect/Table<***>;
            0    6     1    obj  Ljava/lang/Object;
            4    5     2   that  Lcom/google/common/collect/Table<***>;
    Signature: (Lcom/google/common/collect/Table<***>;Ljava/lang/Object;)Z
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
       Name  Flags
      table  
      obj    

  private static java.lang.Object lambda$0(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.lang.Object v1
        start local 1 // java.lang.Object v2
         0: .line 76
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Conflicting values "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* v1 */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* v2 */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // java.lang.Object v2
        end local 0 // java.lang.Object v1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    v1  TV;
            0    1     1    v2  TV;

  private static void lambda$1(java.util.function.Function, java.util.function.Function, java.util.function.Function, java.util.function.BinaryOperator, com.google.common.collect.Table, java.lang.Object);
    descriptor: (Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/BinaryOperator;Lcom/google/common/collect/Table;Ljava/lang/Object;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=5, locals=6, args_size=6
        start local 4 // com.google.common.collect.Table table
        start local 5 // java.lang.Object input
         0: .line 110
            aload 4 /* table */
         1: .line 111
            aload 0
            aload 5 /* input */
            invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
         2: .line 112
            aload 1
            aload 5 /* input */
            invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
         3: .line 113
            aload 2
            aload 5 /* input */
            invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
         4: .line 114
            aload 3
         5: .line 109
            invokestatic com.google.common.collect.Tables.merge:(Lcom/google/common/collect/Table;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/util/function/BinaryOperator;)V
         6: .line 114
            return
        end local 5 // java.lang.Object input
        end local 4 // com.google.common.collect.Table table
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     4  table  TI;
            0    7     5  input  TT;

  private static com.google.common.collect.Table lambda$2(java.util.function.BinaryOperator, com.google.common.collect.Table, com.google.common.collect.Table);
    descriptor: (Ljava/util/function/BinaryOperator;Lcom/google/common/collect/Table;Lcom/google/common/collect/Table;)Lcom/google/common/collect/Table;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=5, locals=5, args_size=3
        start local 1 // com.google.common.collect.Table table1
        start local 2 // com.google.common.collect.Table table2
         0: .line 116
            aload 2 /* table2 */
            invokeinterface com.google.common.collect.Table.cellSet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 4
            goto 3
      StackMap locals: java.util.function.BinaryOperator com.google.common.collect.Table com.google.common.collect.Table top java.util.Iterator
      StackMap stack:
         1: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.google.common.collect.Table$Cell
            astore 3 /* cell2 */
        start local 3 // com.google.common.collect.Table$Cell cell2
         2: .line 117
            aload 1 /* table1 */
            aload 3 /* cell2 */
            invokeinterface com.google.common.collect.Table$Cell.getRowKey:()Ljava/lang/Object;
            aload 3 /* cell2 */
            invokeinterface com.google.common.collect.Table$Cell.getColumnKey:()Ljava/lang/Object;
            aload 3 /* cell2 */
            invokeinterface com.google.common.collect.Table$Cell.getValue:()Ljava/lang/Object;
            aload 0
            invokestatic com.google.common.collect.Tables.merge:(Lcom/google/common/collect/Table;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/util/function/BinaryOperator;)V
        end local 3 // com.google.common.collect.Table$Cell cell2
         3: .line 116
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 119
            aload 1 /* table1 */
            areturn
        end local 2 // com.google.common.collect.Table table2
        end local 1 // com.google.common.collect.Table table1
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     1  table1  TI;
            0    5     2  table2  TI;
            2    3     3   cell2  Lcom/google/common/collect/Table$Cell<TR;TC;TV;>;
}
SourceFile: "Tables.java"
NestMembers:
  com.google.common.collect.Tables$1  com.google.common.collect.Tables$AbstractCell  com.google.common.collect.Tables$ImmutableCell  com.google.common.collect.Tables$TransformedTable  com.google.common.collect.Tables$TransformedTable$1  com.google.common.collect.Tables$TransformedTable$2  com.google.common.collect.Tables$TransformedTable$3  com.google.common.collect.Tables$TransposeTable  com.google.common.collect.Tables$TransposeTable$1  com.google.common.collect.Tables$UnmodifiableRowSortedMap  com.google.common.collect.Tables$UnmodifiableTable
InnerClasses:
  public abstract Cell = com.google.common.collect.Table$Cell of com.google.common.collect.Table
  com.google.common.collect.Tables$1
  abstract AbstractCell = com.google.common.collect.Tables$AbstractCell of com.google.common.collect.Tables
  final ImmutableCell = com.google.common.collect.Tables$ImmutableCell of com.google.common.collect.Tables
  private TransformedTable = com.google.common.collect.Tables$TransformedTable of com.google.common.collect.Tables
  private TransposeTable = com.google.common.collect.Tables$TransposeTable of com.google.common.collect.Tables
  final UnmodifiableRowSortedMap = com.google.common.collect.Tables$UnmodifiableRowSortedMap of com.google.common.collect.Tables
  private UnmodifiableTable = com.google.common.collect.Tables$UnmodifiableTable of com.google.common.collect.Tables
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public final Characteristics = java.util.stream.Collector$Characteristics of java.util.stream.Collector
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.GwtCompatible()