final class com.google.common.collect.TreeMultiset$AvlNode<E>
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: com.google.common.collect.TreeMultiset$AvlNode
  super_class: java.lang.Object
{
  private final E elem;
    descriptor: Ljava/lang/Object;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: TE;
    RuntimeVisibleTypeAnnotations: 
      FIELD
        org.checkerframework.checker.nullness.qual.Nullable()

  private int elemCount;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int distinctElements;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private long totalCount;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private int height;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private com.google.common.collect.TreeMultiset$AvlNode<E> left;
    descriptor: Lcom/google/common/collect/TreeMultiset$AvlNode;
    flags: (0x0002) ACC_PRIVATE
    Signature: Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
    RuntimeVisibleTypeAnnotations: 
      FIELD
        org.checkerframework.checker.nullness.qual.Nullable()

  private com.google.common.collect.TreeMultiset$AvlNode<E> right;
    descriptor: Lcom/google/common/collect/TreeMultiset$AvlNode;
    flags: (0x0002) ACC_PRIVATE
    Signature: Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
    RuntimeVisibleTypeAnnotations: 
      FIELD
        org.checkerframework.checker.nullness.qual.Nullable()

  private com.google.common.collect.TreeMultiset$AvlNode<E> pred;
    descriptor: Lcom/google/common/collect/TreeMultiset$AvlNode;
    flags: (0x0002) ACC_PRIVATE
    Signature: Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
    RuntimeVisibleTypeAnnotations: 
      FIELD
        org.checkerframework.checker.nullness.qual.Nullable()

  private com.google.common.collect.TreeMultiset$AvlNode<E> succ;
    descriptor: Lcom/google/common/collect/TreeMultiset$AvlNode;
    flags: (0x0002) ACC_PRIVATE
    Signature: Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
    RuntimeVisibleTypeAnnotations: 
      FIELD
        org.checkerframework.checker.nullness.qual.Nullable()

  void <init>(E, );
    descriptor: (Ljava/lang/Object;I)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.google.common.collect.TreeMultiset$AvlNode this
        start local 1 // java.lang.Object elem
        start local 2 // int elemCount
         0: .line 580
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 581
            iload 2 /* elemCount */
            ifle 2
            iconst_1
            goto 3
      StackMap locals: com.google.common.collect.TreeMultiset$AvlNode java.lang.Object int
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: invokestatic com.google.common.base.Preconditions.checkArgument:(Z)V
         4: .line 582
            aload 0 /* this */
            aload 1 /* elem */
            putfield com.google.common.collect.TreeMultiset$AvlNode.elem:Ljava/lang/Object;
         5: .line 583
            aload 0 /* this */
            iload 2 /* elemCount */
            putfield com.google.common.collect.TreeMultiset$AvlNode.elemCount:I
         6: .line 584
            aload 0 /* this */
            iload 2 /* elemCount */
            i2l
            putfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
         7: .line 585
            aload 0 /* this */
            iconst_1
            putfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
         8: .line 586
            aload 0 /* this */
            iconst_1
            putfield com.google.common.collect.TreeMultiset$AvlNode.height:I
         9: .line 587
            aload 0 /* this */
            aconst_null
            putfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
        10: .line 588
            aload 0 /* this */
            aconst_null
            putfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
        11: .line 589
            return
        end local 2 // int elemCount
        end local 1 // java.lang.Object elem
        end local 0 // com.google.common.collect.TreeMultiset$AvlNode this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0       this  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
            0   12     1       elem  TE;
            0   12     2  elemCount  I
    Signature: (TE;I)V
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
           Name  Flags
      elem       
      elemCount  

  public int count(java.util.Comparator<? super E>, );
    descriptor: (Ljava/util/Comparator;Ljava/lang/Object;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // com.google.common.collect.TreeMultiset$AvlNode this
        start local 1 // java.util.Comparator comparator
        start local 2 // java.lang.Object e
         0: .line 592
            aload 1 /* comparator */
            aload 2 /* e */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.elem:Ljava/lang/Object;
            invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
            istore 3 /* cmp */
        start local 3 // int cmp
         1: .line 593
            iload 3 /* cmp */
            ifge 5
         2: .line 594
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            ifnonnull 3
            iconst_0
            goto 4
      StackMap locals: int
      StackMap stack:
         3: aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            aload 1 /* comparator */
            aload 2 /* e */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.count:(Ljava/util/Comparator;Ljava/lang/Object;)I
      StackMap locals:
      StackMap stack: int
         4: ireturn
         5: .line 595
      StackMap locals:
      StackMap stack:
            iload 3 /* cmp */
            ifle 9
         6: .line 596
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            ifnonnull 7
            iconst_0
            goto 8
      StackMap locals:
      StackMap stack:
         7: aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            aload 1 /* comparator */
            aload 2 /* e */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.count:(Ljava/util/Comparator;Ljava/lang/Object;)I
      StackMap locals:
      StackMap stack: int
         8: ireturn
         9: .line 598
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.elemCount:I
            ireturn
        end local 3 // int cmp
        end local 2 // java.lang.Object e
        end local 1 // java.util.Comparator comparator
        end local 0 // com.google.common.collect.TreeMultiset$AvlNode this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
            0   10     1  comparator  Ljava/util/Comparator<-TE;>;
            0   10     2           e  TE;
            1   10     3         cmp  I
    Signature: (Ljava/util/Comparator<-TE;>;TE;)I
    MethodParameters:
            Name  Flags
      comparator  
      e           

  private com.google.common.collect.TreeMultiset$AvlNode<E> addRightChild(E, int);
    descriptor: (Ljava/lang/Object;I)Lcom/google/common/collect/TreeMultiset$AvlNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // com.google.common.collect.TreeMultiset$AvlNode this
        start local 1 // java.lang.Object e
        start local 2 // int count
         0: .line 603
            aload 0 /* this */
            new com.google.common.collect.TreeMultiset$AvlNode
            dup
            aload 1 /* e */
            iload 2 /* count */
            invokespecial com.google.common.collect.TreeMultiset$AvlNode.<init>:(Ljava/lang/Object;I)V
            putfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
         1: .line 604
            aload 0 /* this */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.succ:Lcom/google/common/collect/TreeMultiset$AvlNode;
            invokestatic com.google.common.collect.TreeMultiset.successor:(Lcom/google/common/collect/TreeMultiset$AvlNode;Lcom/google/common/collect/TreeMultiset$AvlNode;Lcom/google/common/collect/TreeMultiset$AvlNode;)V
         2: .line 605
            aload 0 /* this */
            iconst_2
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.height:I
            invokestatic java.lang.Math.max:(II)I
            putfield com.google.common.collect.TreeMultiset$AvlNode.height:I
         3: .line 606
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
            iconst_1
            iadd
            putfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
         4: .line 607
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
            iload 2 /* count */
            i2l
            ladd
            putfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
         5: .line 608
            aload 0 /* this */
            areturn
        end local 2 // int count
        end local 1 // java.lang.Object e
        end local 0 // com.google.common.collect.TreeMultiset$AvlNode this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
            0    6     1      e  TE;
            0    6     2  count  I
    Signature: (TE;I)Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
    MethodParameters:
       Name  Flags
      e      
      count  

  private com.google.common.collect.TreeMultiset$AvlNode<E> addLeftChild(E, int);
    descriptor: (Ljava/lang/Object;I)Lcom/google/common/collect/TreeMultiset$AvlNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // com.google.common.collect.TreeMultiset$AvlNode this
        start local 1 // java.lang.Object e
        start local 2 // int count
         0: .line 612
            aload 0 /* this */
            new com.google.common.collect.TreeMultiset$AvlNode
            dup
            aload 1 /* e */
            iload 2 /* count */
            invokespecial com.google.common.collect.TreeMultiset$AvlNode.<init>:(Ljava/lang/Object;I)V
            putfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
         1: .line 613
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.pred:Lcom/google/common/collect/TreeMultiset$AvlNode;
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            aload 0 /* this */
            invokestatic com.google.common.collect.TreeMultiset.successor:(Lcom/google/common/collect/TreeMultiset$AvlNode;Lcom/google/common/collect/TreeMultiset$AvlNode;Lcom/google/common/collect/TreeMultiset$AvlNode;)V
         2: .line 614
            aload 0 /* this */
            iconst_2
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.height:I
            invokestatic java.lang.Math.max:(II)I
            putfield com.google.common.collect.TreeMultiset$AvlNode.height:I
         3: .line 615
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
            iconst_1
            iadd
            putfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
         4: .line 616
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
            iload 2 /* count */
            i2l
            ladd
            putfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
         5: .line 617
            aload 0 /* this */
            areturn
        end local 2 // int count
        end local 1 // java.lang.Object e
        end local 0 // com.google.common.collect.TreeMultiset$AvlNode this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
            0    6     1      e  TE;
            0    6     2  count  I
    Signature: (TE;I)Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
    MethodParameters:
       Name  Flags
      e      
      count  

  com.google.common.collect.TreeMultiset$AvlNode<E> add(java.util.Comparator<? super E>, E, int, int[]);
    descriptor: (Ljava/util/Comparator;Ljava/lang/Object;I[I)Lcom/google/common/collect/TreeMultiset$AvlNode;
    flags: (0x0000) 
    Code:
      stack=6, locals=8, args_size=5
        start local 0 // com.google.common.collect.TreeMultiset$AvlNode this
        start local 1 // java.util.Comparator comparator
        start local 2 // java.lang.Object e
        start local 3 // int count
        start local 4 // int[] result
         0: .line 625
            aload 1 /* comparator */
            aload 2 /* e */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.elem:Ljava/lang/Object;
            invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
            istore 5 /* cmp */
        start local 5 // int cmp
         1: .line 626
            iload 5 /* cmp */
            ifge 14
         2: .line 627
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            astore 6 /* initLeft */
        start local 6 // com.google.common.collect.TreeMultiset$AvlNode initLeft
         3: .line 628
            aload 6 /* initLeft */
            ifnonnull 6
         4: .line 629
            aload 4 /* result */
            iconst_0
            iconst_0
            iastore
         5: .line 630
            aload 0 /* this */
            aload 2 /* e */
            iload 3 /* count */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.addLeftChild:(Ljava/lang/Object;I)Lcom/google/common/collect/TreeMultiset$AvlNode;
            areturn
         6: .line 632
      StackMap locals: int com.google.common.collect.TreeMultiset$AvlNode
      StackMap stack:
            aload 6 /* initLeft */
            getfield com.google.common.collect.TreeMultiset$AvlNode.height:I
            istore 7 /* initHeight */
        start local 7 // int initHeight
         7: .line 634
            aload 0 /* this */
            aload 6 /* initLeft */
            aload 1 /* comparator */
            aload 2 /* e */
            iload 3 /* count */
            aload 4 /* result */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.add:(Ljava/util/Comparator;Ljava/lang/Object;I[I)Lcom/google/common/collect/TreeMultiset$AvlNode;
            putfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
         8: .line 635
            aload 4 /* result */
            iconst_0
            iaload
            ifne 10
         9: .line 636
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
            iconst_1
            iadd
            putfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
        10: .line 638
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
            iload 3 /* count */
            i2l
            ladd
            putfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
        11: .line 639
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            getfield com.google.common.collect.TreeMultiset$AvlNode.height:I
            iload 7 /* initHeight */
            if_icmpne 12
            aload 0 /* this */
            goto 13
      StackMap locals:
      StackMap stack:
        12: aload 0 /* this */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.rebalance:()Lcom/google/common/collect/TreeMultiset$AvlNode;
      StackMap locals:
      StackMap stack: com.google.common.collect.TreeMultiset$AvlNode
        13: areturn
        end local 7 // int initHeight
        end local 6 // com.google.common.collect.TreeMultiset$AvlNode initLeft
        14: .line 640
      StackMap locals:
      StackMap stack:
            iload 5 /* cmp */
            ifle 27
        15: .line 641
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            astore 6 /* initRight */
        start local 6 // com.google.common.collect.TreeMultiset$AvlNode initRight
        16: .line 642
            aload 6 /* initRight */
            ifnonnull 19
        17: .line 643
            aload 4 /* result */
            iconst_0
            iconst_0
            iastore
        18: .line 644
            aload 0 /* this */
            aload 2 /* e */
            iload 3 /* count */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.addRightChild:(Ljava/lang/Object;I)Lcom/google/common/collect/TreeMultiset$AvlNode;
            areturn
        19: .line 646
      StackMap locals: com.google.common.collect.TreeMultiset$AvlNode
      StackMap stack:
            aload 6 /* initRight */
            getfield com.google.common.collect.TreeMultiset$AvlNode.height:I
            istore 7 /* initHeight */
        start local 7 // int initHeight
        20: .line 648
            aload 0 /* this */
            aload 6 /* initRight */
            aload 1 /* comparator */
            aload 2 /* e */
            iload 3 /* count */
            aload 4 /* result */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.add:(Ljava/util/Comparator;Ljava/lang/Object;I[I)Lcom/google/common/collect/TreeMultiset$AvlNode;
            putfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
        21: .line 649
            aload 4 /* result */
            iconst_0
            iaload
            ifne 23
        22: .line 650
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
            iconst_1
            iadd
            putfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
        23: .line 652
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
            iload 3 /* count */
            i2l
            ladd
            putfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
        24: .line 653
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            getfield com.google.common.collect.TreeMultiset$AvlNode.height:I
            iload 7 /* initHeight */
            if_icmpne 25
            aload 0 /* this */
            goto 26
      StackMap locals:
      StackMap stack:
        25: aload 0 /* this */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.rebalance:()Lcom/google/common/collect/TreeMultiset$AvlNode;
      StackMap locals:
      StackMap stack: com.google.common.collect.TreeMultiset$AvlNode
        26: areturn
        end local 7 // int initHeight
        end local 6 // com.google.common.collect.TreeMultiset$AvlNode initRight
        27: .line 657
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            iconst_0
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.elemCount:I
            iastore
        28: .line 658
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.elemCount:I
            i2l
            iload 3 /* count */
            i2l
            ladd
            lstore 6 /* resultCount */
        start local 6 // long resultCount
        29: .line 659
            lload 6 /* resultCount */
            ldc 2147483647
            lcmp
            ifgt 30
            iconst_1
            goto 31
      StackMap locals: long
      StackMap stack:
        30: iconst_0
      StackMap locals:
      StackMap stack: int
        31: invokestatic com.google.common.base.Preconditions.checkArgument:(Z)V
        32: .line 660
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.elemCount:I
            iload 3 /* count */
            iadd
            putfield com.google.common.collect.TreeMultiset$AvlNode.elemCount:I
        33: .line 661
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
            iload 3 /* count */
            i2l
            ladd
            putfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
        34: .line 662
            aload 0 /* this */
            areturn
        end local 6 // long resultCount
        end local 5 // int cmp
        end local 4 // int[] result
        end local 3 // int count
        end local 2 // java.lang.Object e
        end local 1 // java.util.Comparator comparator
        end local 0 // com.google.common.collect.TreeMultiset$AvlNode this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   35     0         this  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
            0   35     1   comparator  Ljava/util/Comparator<-TE;>;
            0   35     2            e  TE;
            0   35     3        count  I
            0   35     4       result  [I
            1   35     5          cmp  I
            3   14     6     initLeft  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
            7   14     7   initHeight  I
           16   27     6    initRight  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
           20   27     7   initHeight  I
           29   35     6  resultCount  J
    Signature: (Ljava/util/Comparator<-TE;>;TE;I[I)Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
            Name  Flags
      comparator  
      e           
      count       
      result      

  com.google.common.collect.TreeMultiset$AvlNode<E> remove(java.util.Comparator<? super E>, E, int, int[]);
    descriptor: (Ljava/util/Comparator;Ljava/lang/Object;I[I)Lcom/google/common/collect/TreeMultiset$AvlNode;
    flags: (0x0000) 
    Code:
      stack=6, locals=7, args_size=5
        start local 0 // com.google.common.collect.TreeMultiset$AvlNode this
        start local 1 // java.util.Comparator comparator
        start local 2 // java.lang.Object e
        start local 3 // int count
        start local 4 // int[] result
         0: .line 666
            aload 1 /* comparator */
            aload 2 /* e */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.elem:Ljava/lang/Object;
            invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
            istore 5 /* cmp */
        start local 5 // int cmp
         1: .line 667
            iload 5 /* cmp */
            ifge 16
         2: .line 668
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            astore 6 /* initLeft */
        start local 6 // com.google.common.collect.TreeMultiset$AvlNode initLeft
         3: .line 669
            aload 6 /* initLeft */
            ifnonnull 6
         4: .line 670
            aload 4 /* result */
            iconst_0
            iconst_0
            iastore
         5: .line 671
            aload 0 /* this */
            areturn
         6: .line 674
      StackMap locals: int com.google.common.collect.TreeMultiset$AvlNode
      StackMap stack:
            aload 0 /* this */
            aload 6 /* initLeft */
            aload 1 /* comparator */
            aload 2 /* e */
            iload 3 /* count */
            aload 4 /* result */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.remove:(Ljava/util/Comparator;Ljava/lang/Object;I[I)Lcom/google/common/collect/TreeMultiset$AvlNode;
            putfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
         7: .line 676
            aload 4 /* result */
            iconst_0
            iaload
            ifle 13
         8: .line 677
            iload 3 /* count */
            aload 4 /* result */
            iconst_0
            iaload
            if_icmplt 12
         9: .line 678
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
            iconst_1
            isub
            putfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
        10: .line 679
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
            aload 4 /* result */
            iconst_0
            iaload
            i2l
            lsub
            putfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
        11: .line 680
            goto 13
        12: .line 681
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
            iload 3 /* count */
            i2l
            lsub
            putfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
        13: .line 684
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            iconst_0
            iaload
            ifne 14
            aload 0 /* this */
            goto 15
      StackMap locals:
      StackMap stack:
        14: aload 0 /* this */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.rebalance:()Lcom/google/common/collect/TreeMultiset$AvlNode;
      StackMap locals:
      StackMap stack: com.google.common.collect.TreeMultiset$AvlNode
        15: areturn
        end local 6 // com.google.common.collect.TreeMultiset$AvlNode initLeft
        16: .line 685
      StackMap locals:
      StackMap stack:
            iload 5 /* cmp */
            ifle 29
        17: .line 686
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            astore 6 /* initRight */
        start local 6 // com.google.common.collect.TreeMultiset$AvlNode initRight
        18: .line 687
            aload 6 /* initRight */
            ifnonnull 21
        19: .line 688
            aload 4 /* result */
            iconst_0
            iconst_0
            iastore
        20: .line 689
            aload 0 /* this */
            areturn
        21: .line 692
      StackMap locals: com.google.common.collect.TreeMultiset$AvlNode
      StackMap stack:
            aload 0 /* this */
            aload 6 /* initRight */
            aload 1 /* comparator */
            aload 2 /* e */
            iload 3 /* count */
            aload 4 /* result */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.remove:(Ljava/util/Comparator;Ljava/lang/Object;I[I)Lcom/google/common/collect/TreeMultiset$AvlNode;
            putfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
        22: .line 694
            aload 4 /* result */
            iconst_0
            iaload
            ifle 28
        23: .line 695
            iload 3 /* count */
            aload 4 /* result */
            iconst_0
            iaload
            if_icmplt 27
        24: .line 696
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
            iconst_1
            isub
            putfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
        25: .line 697
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
            aload 4 /* result */
            iconst_0
            iaload
            i2l
            lsub
            putfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
        26: .line 698
            goto 28
        27: .line 699
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
            iload 3 /* count */
            i2l
            lsub
            putfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
        28: .line 702
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.rebalance:()Lcom/google/common/collect/TreeMultiset$AvlNode;
            areturn
        end local 6 // com.google.common.collect.TreeMultiset$AvlNode initRight
        29: .line 706
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            iconst_0
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.elemCount:I
            iastore
        30: .line 707
            iload 3 /* count */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.elemCount:I
            if_icmplt 32
        31: .line 708
            aload 0 /* this */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.deleteMe:()Lcom/google/common/collect/TreeMultiset$AvlNode;
            areturn
        32: .line 710
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.elemCount:I
            iload 3 /* count */
            isub
            putfield com.google.common.collect.TreeMultiset$AvlNode.elemCount:I
        33: .line 711
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
            iload 3 /* count */
            i2l
            lsub
            putfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
        34: .line 712
            aload 0 /* this */
            areturn
        end local 5 // int cmp
        end local 4 // int[] result
        end local 3 // int count
        end local 2 // java.lang.Object e
        end local 1 // java.util.Comparator comparator
        end local 0 // com.google.common.collect.TreeMultiset$AvlNode this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   35     0        this  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
            0   35     1  comparator  Ljava/util/Comparator<-TE;>;
            0   35     2           e  TE;
            0   35     3       count  I
            0   35     4      result  [I
            1   35     5         cmp  I
            3   16     6    initLeft  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
           18   29     6   initRight  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
    Signature: (Ljava/util/Comparator<-TE;>;TE;I[I)Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
            Name  Flags
      comparator  
      e           
      count       
      result      

  com.google.common.collect.TreeMultiset$AvlNode<E> setCount(java.util.Comparator<? super E>, E, int, int[]);
    descriptor: (Ljava/util/Comparator;Ljava/lang/Object;I[I)Lcom/google/common/collect/TreeMultiset$AvlNode;
    flags: (0x0000) 
    Code:
      stack=6, locals=7, args_size=5
        start local 0 // com.google.common.collect.TreeMultiset$AvlNode this
        start local 1 // java.util.Comparator comparator
        start local 2 // java.lang.Object e
        start local 3 // int count
        start local 4 // int[] result
         0: .line 717
            aload 1 /* comparator */
            aload 2 /* e */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.elem:Ljava/lang/Object;
            invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
            istore 5 /* cmp */
        start local 5 // int cmp
         1: .line 718
            iload 5 /* cmp */
            ifge 16
         2: .line 719
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            astore 6 /* initLeft */
        start local 6 // com.google.common.collect.TreeMultiset$AvlNode initLeft
         3: .line 720
            aload 6 /* initLeft */
            ifnonnull 8
         4: .line 721
            aload 4 /* result */
            iconst_0
            iconst_0
            iastore
         5: .line 722
            iload 3 /* count */
            ifle 6
            aload 0 /* this */
            aload 2 /* e */
            iload 3 /* count */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.addLeftChild:(Ljava/lang/Object;I)Lcom/google/common/collect/TreeMultiset$AvlNode;
            goto 7
      StackMap locals: int com.google.common.collect.TreeMultiset$AvlNode
      StackMap stack:
         6: aload 0 /* this */
      StackMap locals:
      StackMap stack: com.google.common.collect.TreeMultiset$AvlNode
         7: areturn
         8: .line 725
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* initLeft */
            aload 1 /* comparator */
            aload 2 /* e */
            iload 3 /* count */
            aload 4 /* result */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.setCount:(Ljava/util/Comparator;Ljava/lang/Object;I[I)Lcom/google/common/collect/TreeMultiset$AvlNode;
            putfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
         9: .line 727
            iload 3 /* count */
            ifne 12
            aload 4 /* result */
            iconst_0
            iaload
            ifeq 12
        10: .line 728
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
            iconst_1
            isub
            putfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
        11: .line 729
            goto 14
      StackMap locals:
      StackMap stack:
        12: iload 3 /* count */
            ifle 14
            aload 4 /* result */
            iconst_0
            iaload
            ifne 14
        13: .line 730
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
            iconst_1
            iadd
            putfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
        14: .line 733
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
            iload 3 /* count */
            aload 4 /* result */
            iconst_0
            iaload
            isub
            i2l
            ladd
            putfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
        15: .line 734
            aload 0 /* this */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.rebalance:()Lcom/google/common/collect/TreeMultiset$AvlNode;
            areturn
        end local 6 // com.google.common.collect.TreeMultiset$AvlNode initLeft
        16: .line 735
      StackMap locals:
      StackMap stack:
            iload 5 /* cmp */
            ifle 31
        17: .line 736
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            astore 6 /* initRight */
        start local 6 // com.google.common.collect.TreeMultiset$AvlNode initRight
        18: .line 737
            aload 6 /* initRight */
            ifnonnull 23
        19: .line 738
            aload 4 /* result */
            iconst_0
            iconst_0
            iastore
        20: .line 739
            iload 3 /* count */
            ifle 21
            aload 0 /* this */
            aload 2 /* e */
            iload 3 /* count */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.addRightChild:(Ljava/lang/Object;I)Lcom/google/common/collect/TreeMultiset$AvlNode;
            goto 22
      StackMap locals: com.google.common.collect.TreeMultiset$AvlNode
      StackMap stack:
        21: aload 0 /* this */
      StackMap locals:
      StackMap stack: com.google.common.collect.TreeMultiset$AvlNode
        22: areturn
        23: .line 742
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* initRight */
            aload 1 /* comparator */
            aload 2 /* e */
            iload 3 /* count */
            aload 4 /* result */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.setCount:(Ljava/util/Comparator;Ljava/lang/Object;I[I)Lcom/google/common/collect/TreeMultiset$AvlNode;
            putfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
        24: .line 744
            iload 3 /* count */
            ifne 27
            aload 4 /* result */
            iconst_0
            iaload
            ifeq 27
        25: .line 745
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
            iconst_1
            isub
            putfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
        26: .line 746
            goto 29
      StackMap locals:
      StackMap stack:
        27: iload 3 /* count */
            ifle 29
            aload 4 /* result */
            iconst_0
            iaload
            ifne 29
        28: .line 747
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
            iconst_1
            iadd
            putfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
        29: .line 750
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
            iload 3 /* count */
            aload 4 /* result */
            iconst_0
            iaload
            isub
            i2l
            ladd
            putfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
        30: .line 751
            aload 0 /* this */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.rebalance:()Lcom/google/common/collect/TreeMultiset$AvlNode;
            areturn
        end local 6 // com.google.common.collect.TreeMultiset$AvlNode initRight
        31: .line 755
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            iconst_0
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.elemCount:I
            iastore
        32: .line 756
            iload 3 /* count */
            ifne 34
        33: .line 757
            aload 0 /* this */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.deleteMe:()Lcom/google/common/collect/TreeMultiset$AvlNode;
            areturn
        34: .line 759
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
            iload 3 /* count */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.elemCount:I
            isub
            i2l
            ladd
            putfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
        35: .line 760
            aload 0 /* this */
            iload 3 /* count */
            putfield com.google.common.collect.TreeMultiset$AvlNode.elemCount:I
        36: .line 761
            aload 0 /* this */
            areturn
        end local 5 // int cmp
        end local 4 // int[] result
        end local 3 // int count
        end local 2 // java.lang.Object e
        end local 1 // java.util.Comparator comparator
        end local 0 // com.google.common.collect.TreeMultiset$AvlNode this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   37     0        this  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
            0   37     1  comparator  Ljava/util/Comparator<-TE;>;
            0   37     2           e  TE;
            0   37     3       count  I
            0   37     4      result  [I
            1   37     5         cmp  I
            3   16     6    initLeft  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
           18   31     6   initRight  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
    Signature: (Ljava/util/Comparator<-TE;>;TE;I[I)Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
            Name  Flags
      comparator  
      e           
      count       
      result      

  com.google.common.collect.TreeMultiset$AvlNode<E> setCount(java.util.Comparator<? super E>, E, int, int, int[]);
    descriptor: (Ljava/util/Comparator;Ljava/lang/Object;II[I)Lcom/google/common/collect/TreeMultiset$AvlNode;
    flags: (0x0000) 
    Code:
      stack=7, locals=8, args_size=6
        start local 0 // com.google.common.collect.TreeMultiset$AvlNode this
        start local 1 // java.util.Comparator comparator
        start local 2 // java.lang.Object e
        start local 3 // int expectedCount
        start local 4 // int newCount
        start local 5 // int[] result
         0: .line 770
            aload 1 /* comparator */
            aload 2 /* e */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.elem:Ljava/lang/Object;
            invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
            istore 6 /* cmp */
        start local 6 // int cmp
         1: .line 771
            iload 6 /* cmp */
            ifge 17
         2: .line 772
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            astore 7 /* initLeft */
        start local 7 // com.google.common.collect.TreeMultiset$AvlNode initLeft
         3: .line 773
            aload 7 /* initLeft */
            ifnonnull 8
         4: .line 774
            aload 5 /* result */
            iconst_0
            iconst_0
            iastore
         5: .line 775
            iload 3 /* expectedCount */
            ifne 7
            iload 4 /* newCount */
            ifle 7
         6: .line 776
            aload 0 /* this */
            aload 2 /* e */
            iload 4 /* newCount */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.addLeftChild:(Ljava/lang/Object;I)Lcom/google/common/collect/TreeMultiset$AvlNode;
            areturn
         7: .line 778
      StackMap locals: int com.google.common.collect.TreeMultiset$AvlNode
      StackMap stack:
            aload 0 /* this */
            areturn
         8: .line 781
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* initLeft */
            aload 1 /* comparator */
            aload 2 /* e */
            iload 3 /* expectedCount */
            iload 4 /* newCount */
            aload 5 /* result */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.setCount:(Ljava/util/Comparator;Ljava/lang/Object;II[I)Lcom/google/common/collect/TreeMultiset$AvlNode;
            putfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
         9: .line 783
            aload 5 /* result */
            iconst_0
            iaload
            iload 3 /* expectedCount */
            if_icmpne 16
        10: .line 784
            iload 4 /* newCount */
            ifne 13
            aload 5 /* result */
            iconst_0
            iaload
            ifeq 13
        11: .line 785
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
            iconst_1
            isub
            putfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
        12: .line 786
            goto 15
      StackMap locals:
      StackMap stack:
        13: iload 4 /* newCount */
            ifle 15
            aload 5 /* result */
            iconst_0
            iaload
            ifne 15
        14: .line 787
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
            iconst_1
            iadd
            putfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
        15: .line 789
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
            iload 4 /* newCount */
            aload 5 /* result */
            iconst_0
            iaload
            isub
            i2l
            ladd
            putfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
        16: .line 791
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.rebalance:()Lcom/google/common/collect/TreeMultiset$AvlNode;
            areturn
        end local 7 // com.google.common.collect.TreeMultiset$AvlNode initLeft
        17: .line 792
      StackMap locals:
      StackMap stack:
            iload 6 /* cmp */
            ifle 33
        18: .line 793
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            astore 7 /* initRight */
        start local 7 // com.google.common.collect.TreeMultiset$AvlNode initRight
        19: .line 794
            aload 7 /* initRight */
            ifnonnull 24
        20: .line 795
            aload 5 /* result */
            iconst_0
            iconst_0
            iastore
        21: .line 796
            iload 3 /* expectedCount */
            ifne 23
            iload 4 /* newCount */
            ifle 23
        22: .line 797
            aload 0 /* this */
            aload 2 /* e */
            iload 4 /* newCount */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.addRightChild:(Ljava/lang/Object;I)Lcom/google/common/collect/TreeMultiset$AvlNode;
            areturn
        23: .line 799
      StackMap locals: com.google.common.collect.TreeMultiset$AvlNode
      StackMap stack:
            aload 0 /* this */
            areturn
        24: .line 802
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* initRight */
            aload 1 /* comparator */
            aload 2 /* e */
            iload 3 /* expectedCount */
            iload 4 /* newCount */
            aload 5 /* result */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.setCount:(Ljava/util/Comparator;Ljava/lang/Object;II[I)Lcom/google/common/collect/TreeMultiset$AvlNode;
            putfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
        25: .line 804
            aload 5 /* result */
            iconst_0
            iaload
            iload 3 /* expectedCount */
            if_icmpne 32
        26: .line 805
            iload 4 /* newCount */
            ifne 29
            aload 5 /* result */
            iconst_0
            iaload
            ifeq 29
        27: .line 806
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
            iconst_1
            isub
            putfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
        28: .line 807
            goto 31
      StackMap locals:
      StackMap stack:
        29: iload 4 /* newCount */
            ifle 31
            aload 5 /* result */
            iconst_0
            iaload
            ifne 31
        30: .line 808
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
            iconst_1
            iadd
            putfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
        31: .line 810
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
            iload 4 /* newCount */
            aload 5 /* result */
            iconst_0
            iaload
            isub
            i2l
            ladd
            putfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
        32: .line 812
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.rebalance:()Lcom/google/common/collect/TreeMultiset$AvlNode;
            areturn
        end local 7 // com.google.common.collect.TreeMultiset$AvlNode initRight
        33: .line 816
      StackMap locals:
      StackMap stack:
            aload 5 /* result */
            iconst_0
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.elemCount:I
            iastore
        34: .line 817
            iload 3 /* expectedCount */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.elemCount:I
            if_icmpne 39
        35: .line 818
            iload 4 /* newCount */
            ifne 37
        36: .line 819
            aload 0 /* this */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.deleteMe:()Lcom/google/common/collect/TreeMultiset$AvlNode;
            areturn
        37: .line 821
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
            iload 4 /* newCount */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.elemCount:I
            isub
            i2l
            ladd
            putfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
        38: .line 822
            aload 0 /* this */
            iload 4 /* newCount */
            putfield com.google.common.collect.TreeMultiset$AvlNode.elemCount:I
        39: .line 824
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 6 // int cmp
        end local 5 // int[] result
        end local 4 // int newCount
        end local 3 // int expectedCount
        end local 2 // java.lang.Object e
        end local 1 // java.util.Comparator comparator
        end local 0 // com.google.common.collect.TreeMultiset$AvlNode this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   40     0           this  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
            0   40     1     comparator  Ljava/util/Comparator<-TE;>;
            0   40     2              e  TE;
            0   40     3  expectedCount  I
            0   40     4       newCount  I
            0   40     5         result  [I
            1   40     6            cmp  I
            3   17     7       initLeft  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
           19   33     7      initRight  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
    Signature: (Ljava/util/Comparator<-TE;>;TE;II[I)Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
               Name  Flags
      comparator     
      e              
      expectedCount  
      newCount       
      result         

  private com.google.common.collect.TreeMultiset$AvlNode<E> deleteMe();
    descriptor: ()Lcom/google/common/collect/TreeMultiset$AvlNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // com.google.common.collect.TreeMultiset$AvlNode this
         0: .line 828
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.elemCount:I
            istore 1 /* oldElemCount */
        start local 1 // int oldElemCount
         1: .line 829
            aload 0 /* this */
            iconst_0
            putfield com.google.common.collect.TreeMultiset$AvlNode.elemCount:I
         2: .line 830
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.pred:Lcom/google/common/collect/TreeMultiset$AvlNode;
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.succ:Lcom/google/common/collect/TreeMultiset$AvlNode;
            invokestatic com.google.common.collect.TreeMultiset.successor:(Lcom/google/common/collect/TreeMultiset$AvlNode;Lcom/google/common/collect/TreeMultiset$AvlNode;)V
         3: .line 831
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            ifnonnull 5
         4: .line 832
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            areturn
         5: .line 833
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            ifnonnull 7
         6: .line 834
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            areturn
         7: .line 835
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            getfield com.google.common.collect.TreeMultiset$AvlNode.height:I
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            getfield com.google.common.collect.TreeMultiset$AvlNode.height:I
            if_icmplt 14
         8: .line 836
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.pred:Lcom/google/common/collect/TreeMultiset$AvlNode;
            astore 2 /* newTop */
        start local 2 // com.google.common.collect.TreeMultiset$AvlNode newTop
         9: .line 838
            aload 2 /* newTop */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            aload 2 /* newTop */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.removeMax:(Lcom/google/common/collect/TreeMultiset$AvlNode;)Lcom/google/common/collect/TreeMultiset$AvlNode;
            putfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
        10: .line 839
            aload 2 /* newTop */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            putfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
        11: .line 840
            aload 2 /* newTop */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
            iconst_1
            isub
            putfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
        12: .line 841
            aload 2 /* newTop */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
            iload 1 /* oldElemCount */
            i2l
            lsub
            putfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
        13: .line 842
            aload 2 /* newTop */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.rebalance:()Lcom/google/common/collect/TreeMultiset$AvlNode;
            areturn
        end local 2 // com.google.common.collect.TreeMultiset$AvlNode newTop
        14: .line 844
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.succ:Lcom/google/common/collect/TreeMultiset$AvlNode;
            astore 2 /* newTop */
        start local 2 // com.google.common.collect.TreeMultiset$AvlNode newTop
        15: .line 845
            aload 2 /* newTop */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            aload 2 /* newTop */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.removeMin:(Lcom/google/common/collect/TreeMultiset$AvlNode;)Lcom/google/common/collect/TreeMultiset$AvlNode;
            putfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
        16: .line 846
            aload 2 /* newTop */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            putfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
        17: .line 847
            aload 2 /* newTop */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
            iconst_1
            isub
            putfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
        18: .line 848
            aload 2 /* newTop */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
            iload 1 /* oldElemCount */
            i2l
            lsub
            putfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
        19: .line 849
            aload 2 /* newTop */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.rebalance:()Lcom/google/common/collect/TreeMultiset$AvlNode;
            areturn
        end local 2 // com.google.common.collect.TreeMultiset$AvlNode newTop
        end local 1 // int oldElemCount
        end local 0 // com.google.common.collect.TreeMultiset$AvlNode this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   20     0          this  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
            1   20     1  oldElemCount  I
            9   14     2        newTop  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
           15   20     2        newTop  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
    Signature: ()Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;

  private com.google.common.collect.TreeMultiset$AvlNode<E> removeMin(com.google.common.collect.TreeMultiset$AvlNode<E>);
    descriptor: (Lcom/google/common/collect/TreeMultiset$AvlNode;)Lcom/google/common/collect/TreeMultiset$AvlNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // com.google.common.collect.TreeMultiset$AvlNode this
        start local 1 // com.google.common.collect.TreeMultiset$AvlNode node
         0: .line 855
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            ifnonnull 2
         1: .line 856
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            areturn
         2: .line 858
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            aload 1 /* node */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.removeMin:(Lcom/google/common/collect/TreeMultiset$AvlNode;)Lcom/google/common/collect/TreeMultiset$AvlNode;
            putfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
         3: .line 859
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
            iconst_1
            isub
            putfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
         4: .line 860
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
            aload 1 /* node */
            getfield com.google.common.collect.TreeMultiset$AvlNode.elemCount:I
            i2l
            lsub
            putfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
         5: .line 861
            aload 0 /* this */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.rebalance:()Lcom/google/common/collect/TreeMultiset$AvlNode;
            areturn
        end local 1 // com.google.common.collect.TreeMultiset$AvlNode node
        end local 0 // com.google.common.collect.TreeMultiset$AvlNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
            0    6     1  node  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
    Signature: (Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;)Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
    MethodParameters:
      Name  Flags
      node  

  private com.google.common.collect.TreeMultiset$AvlNode<E> removeMax(com.google.common.collect.TreeMultiset$AvlNode<E>);
    descriptor: (Lcom/google/common/collect/TreeMultiset$AvlNode;)Lcom/google/common/collect/TreeMultiset$AvlNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // com.google.common.collect.TreeMultiset$AvlNode this
        start local 1 // com.google.common.collect.TreeMultiset$AvlNode node
         0: .line 867
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            ifnonnull 2
         1: .line 868
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            areturn
         2: .line 870
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            aload 1 /* node */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.removeMax:(Lcom/google/common/collect/TreeMultiset$AvlNode;)Lcom/google/common/collect/TreeMultiset$AvlNode;
            putfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
         3: .line 871
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
            iconst_1
            isub
            putfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
         4: .line 872
            aload 0 /* this */
            dup
            getfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
            aload 1 /* node */
            getfield com.google.common.collect.TreeMultiset$AvlNode.elemCount:I
            i2l
            lsub
            putfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
         5: .line 873
            aload 0 /* this */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.rebalance:()Lcom/google/common/collect/TreeMultiset$AvlNode;
            areturn
        end local 1 // com.google.common.collect.TreeMultiset$AvlNode node
        end local 0 // com.google.common.collect.TreeMultiset$AvlNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
            0    6     1  node  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
    Signature: (Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;)Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
    MethodParameters:
      Name  Flags
      node  

  private void recomputeMultiset();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // com.google.common.collect.TreeMultiset$AvlNode this
         0: .line 878
            aload 0 /* this */
         1: .line 879
            iconst_1
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            invokestatic com.google.common.collect.TreeMultiset.distinctElements:(Lcom/google/common/collect/TreeMultiset$AvlNode;)I
            iadd
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            invokestatic com.google.common.collect.TreeMultiset.distinctElements:(Lcom/google/common/collect/TreeMultiset$AvlNode;)I
            iadd
         2: .line 878
            putfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
         3: .line 880
            aload 0 /* this */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.elemCount:I
            i2l
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            invokestatic com.google.common.collect.TreeMultiset$AvlNode.totalCount:(Lcom/google/common/collect/TreeMultiset$AvlNode;)J
            ladd
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            invokestatic com.google.common.collect.TreeMultiset$AvlNode.totalCount:(Lcom/google/common/collect/TreeMultiset$AvlNode;)J
            ladd
            putfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
         4: .line 881
            return
        end local 0 // com.google.common.collect.TreeMultiset$AvlNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;

  private void recomputeHeight();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.google.common.collect.TreeMultiset$AvlNode this
         0: .line 884
            aload 0 /* this */
            iconst_1
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            invokestatic com.google.common.collect.TreeMultiset$AvlNode.height:(Lcom/google/common/collect/TreeMultiset$AvlNode;)I
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            invokestatic com.google.common.collect.TreeMultiset$AvlNode.height:(Lcom/google/common/collect/TreeMultiset$AvlNode;)I
            invokestatic java.lang.Math.max:(II)I
            iadd
            putfield com.google.common.collect.TreeMultiset$AvlNode.height:I
         1: .line 885
            return
        end local 0 // com.google.common.collect.TreeMultiset$AvlNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;

  private void recompute();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.collect.TreeMultiset$AvlNode this
         0: .line 888
            aload 0 /* this */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.recomputeMultiset:()V
         1: .line 889
            aload 0 /* this */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.recomputeHeight:()V
         2: .line 890
            return
        end local 0 // com.google.common.collect.TreeMultiset$AvlNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;

  private com.google.common.collect.TreeMultiset$AvlNode<E> rebalance();
    descriptor: ()Lcom/google/common/collect/TreeMultiset$AvlNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.common.collect.TreeMultiset$AvlNode this
         0: .line 893
            aload 0 /* this */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.balanceFactor:()I
            tableswitch { // -2 - 2
                   -2: 1
                   -1: 7
                    0: 7
                    1: 7
                    2: 4
              default: 7
          }
         1: .line 895
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.balanceFactor:()I
            ifle 3
         2: .line 896
            aload 0 /* this */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.rotateRight:()Lcom/google/common/collect/TreeMultiset$AvlNode;
            putfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
         3: .line 898
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.rotateLeft:()Lcom/google/common/collect/TreeMultiset$AvlNode;
            areturn
         4: .line 900
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.balanceFactor:()I
            ifge 6
         5: .line 901
            aload 0 /* this */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.rotateLeft:()Lcom/google/common/collect/TreeMultiset$AvlNode;
            putfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
         6: .line 903
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.rotateRight:()Lcom/google/common/collect/TreeMultiset$AvlNode;
            areturn
         7: .line 905
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.recomputeHeight:()V
         8: .line 906
            aload 0 /* this */
            areturn
        end local 0 // com.google.common.collect.TreeMultiset$AvlNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
    Signature: ()Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;

  private int balanceFactor();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.common.collect.TreeMultiset$AvlNode this
         0: .line 911
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            invokestatic com.google.common.collect.TreeMultiset$AvlNode.height:(Lcom/google/common/collect/TreeMultiset$AvlNode;)I
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            invokestatic com.google.common.collect.TreeMultiset$AvlNode.height:(Lcom/google/common/collect/TreeMultiset$AvlNode;)I
            isub
            ireturn
        end local 0 // com.google.common.collect.TreeMultiset$AvlNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;

  private com.google.common.collect.TreeMultiset$AvlNode<E> rotateLeft();
    descriptor: ()Lcom/google/common/collect/TreeMultiset$AvlNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // com.google.common.collect.TreeMultiset$AvlNode this
         0: .line 915
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            ifnull 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: invokestatic com.google.common.base.Preconditions.checkState:(Z)V
         3: .line 916
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            astore 1 /* newTop */
        start local 1 // com.google.common.collect.TreeMultiset$AvlNode newTop
         4: .line 917
            aload 0 /* this */
            aload 1 /* newTop */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            putfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
         5: .line 918
            aload 1 /* newTop */
            aload 0 /* this */
            putfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
         6: .line 919
            aload 1 /* newTop */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
            putfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
         7: .line 920
            aload 1 /* newTop */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
            putfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
         8: .line 921
            aload 0 /* this */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.recompute:()V
         9: .line 922
            aload 1 /* newTop */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.recomputeHeight:()V
        10: .line 923
            aload 1 /* newTop */
            areturn
        end local 1 // com.google.common.collect.TreeMultiset$AvlNode newTop
        end local 0 // com.google.common.collect.TreeMultiset$AvlNode this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
            4   11     1  newTop  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
    Signature: ()Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;

  private com.google.common.collect.TreeMultiset$AvlNode<E> rotateRight();
    descriptor: ()Lcom/google/common/collect/TreeMultiset$AvlNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // com.google.common.collect.TreeMultiset$AvlNode this
         0: .line 927
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            ifnull 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: invokestatic com.google.common.base.Preconditions.checkState:(Z)V
         3: .line 928
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            astore 1 /* newTop */
        start local 1 // com.google.common.collect.TreeMultiset$AvlNode newTop
         4: .line 929
            aload 0 /* this */
            aload 1 /* newTop */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            putfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
         5: .line 930
            aload 1 /* newTop */
            aload 0 /* this */
            putfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
         6: .line 931
            aload 1 /* newTop */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
            putfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
         7: .line 932
            aload 1 /* newTop */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
            putfield com.google.common.collect.TreeMultiset$AvlNode.distinctElements:I
         8: .line 933
            aload 0 /* this */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.recompute:()V
         9: .line 934
            aload 1 /* newTop */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.recomputeHeight:()V
        10: .line 935
            aload 1 /* newTop */
            areturn
        end local 1 // com.google.common.collect.TreeMultiset$AvlNode newTop
        end local 0 // com.google.common.collect.TreeMultiset$AvlNode this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
            4   11     1  newTop  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
    Signature: ()Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;

  private static long totalCount(com.google.common.collect.TreeMultiset$AvlNode<?>);
    descriptor: (Lcom/google/common/collect/TreeMultiset$AvlNode;)J
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.common.collect.TreeMultiset$AvlNode node
         0: .line 939
            aload 0 /* node */
            ifnonnull 1
            lconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* node */
            getfield com.google.common.collect.TreeMultiset$AvlNode.totalCount:J
      StackMap locals:
      StackMap stack: long
         2: lreturn
        end local 0 // com.google.common.collect.TreeMultiset$AvlNode node
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  node  Lcom/google/common/collect/TreeMultiset$AvlNode<*>;
    Signature: (Lcom/google/common/collect/TreeMultiset$AvlNode<*>;)J
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
      Name  Flags
      node  

  private static int height(com.google.common.collect.TreeMultiset$AvlNode<?>);
    descriptor: (Lcom/google/common/collect/TreeMultiset$AvlNode;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.collect.TreeMultiset$AvlNode node
         0: .line 943
            aload 0 /* node */
            ifnonnull 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* node */
            getfield com.google.common.collect.TreeMultiset$AvlNode.height:I
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // com.google.common.collect.TreeMultiset$AvlNode node
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  node  Lcom/google/common/collect/TreeMultiset$AvlNode<*>;
    Signature: (Lcom/google/common/collect/TreeMultiset$AvlNode<*>;)I
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
      Name  Flags
      node  

  private com.google.common.collect.TreeMultiset$AvlNode<E> ceiling(java.util.Comparator<? super E>, E);
    descriptor: (Ljava/util/Comparator;Ljava/lang/Object;)Lcom/google/common/collect/TreeMultiset$AvlNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // com.google.common.collect.TreeMultiset$AvlNode this
        start local 1 // java.util.Comparator comparator
        start local 2 // java.lang.Object e
         0: .line 947
            aload 1 /* comparator */
            aload 2 /* e */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.elem:Ljava/lang/Object;
            invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
            istore 3 /* cmp */
        start local 3 // int cmp
         1: .line 948
            iload 3 /* cmp */
            ifge 5
         2: .line 949
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            ifnonnull 3
            aload 0 /* this */
            goto 4
      StackMap locals: int
      StackMap stack:
         3: aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            aload 1 /* comparator */
            aload 2 /* e */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.ceiling:(Ljava/util/Comparator;Ljava/lang/Object;)Lcom/google/common/collect/TreeMultiset$AvlNode;
            aload 0 /* this */
            invokestatic com.google.common.base.MoreObjects.firstNonNull:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.google.common.collect.TreeMultiset$AvlNode
      StackMap locals:
      StackMap stack: com.google.common.collect.TreeMultiset$AvlNode
         4: areturn
         5: .line 950
      StackMap locals:
      StackMap stack:
            iload 3 /* cmp */
            ifne 7
         6: .line 951
            aload 0 /* this */
            areturn
         7: .line 953
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            ifnonnull 8
            aconst_null
            goto 9
      StackMap locals:
      StackMap stack:
         8: aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            aload 1 /* comparator */
            aload 2 /* e */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.ceiling:(Ljava/util/Comparator;Ljava/lang/Object;)Lcom/google/common/collect/TreeMultiset$AvlNode;
      StackMap locals:
      StackMap stack: com.google.common.collect.TreeMultiset$AvlNode
         9: areturn
        end local 3 // int cmp
        end local 2 // java.lang.Object e
        end local 1 // java.util.Comparator comparator
        end local 0 // com.google.common.collect.TreeMultiset$AvlNode this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
            0   10     1  comparator  Ljava/util/Comparator<-TE;>;
            0   10     2           e  TE;
            1   10     3         cmp  I
    Signature: (Ljava/util/Comparator<-TE;>;TE;)Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
    RuntimeVisibleTypeAnnotations: 
      METHOD_RETURN
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
            Name  Flags
      comparator  
      e           

  private com.google.common.collect.TreeMultiset$AvlNode<E> floor(java.util.Comparator<? super E>, E);
    descriptor: (Ljava/util/Comparator;Ljava/lang/Object;)Lcom/google/common/collect/TreeMultiset$AvlNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // com.google.common.collect.TreeMultiset$AvlNode this
        start local 1 // java.util.Comparator comparator
        start local 2 // java.lang.Object e
         0: .line 958
            aload 1 /* comparator */
            aload 2 /* e */
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.elem:Ljava/lang/Object;
            invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
            istore 3 /* cmp */
        start local 3 // int cmp
         1: .line 959
            iload 3 /* cmp */
            ifle 5
         2: .line 960
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            ifnonnull 3
            aload 0 /* this */
            goto 4
      StackMap locals: int
      StackMap stack:
         3: aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.right:Lcom/google/common/collect/TreeMultiset$AvlNode;
            aload 1 /* comparator */
            aload 2 /* e */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.floor:(Ljava/util/Comparator;Ljava/lang/Object;)Lcom/google/common/collect/TreeMultiset$AvlNode;
            aload 0 /* this */
            invokestatic com.google.common.base.MoreObjects.firstNonNull:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.google.common.collect.TreeMultiset$AvlNode
      StackMap locals:
      StackMap stack: com.google.common.collect.TreeMultiset$AvlNode
         4: areturn
         5: .line 961
      StackMap locals:
      StackMap stack:
            iload 3 /* cmp */
            ifne 7
         6: .line 962
            aload 0 /* this */
            areturn
         7: .line 964
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            ifnonnull 8
            aconst_null
            goto 9
      StackMap locals:
      StackMap stack:
         8: aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.left:Lcom/google/common/collect/TreeMultiset$AvlNode;
            aload 1 /* comparator */
            aload 2 /* e */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.floor:(Ljava/util/Comparator;Ljava/lang/Object;)Lcom/google/common/collect/TreeMultiset$AvlNode;
      StackMap locals:
      StackMap stack: com.google.common.collect.TreeMultiset$AvlNode
         9: areturn
        end local 3 // int cmp
        end local 2 // java.lang.Object e
        end local 1 // java.util.Comparator comparator
        end local 0 // com.google.common.collect.TreeMultiset$AvlNode this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
            0   10     1  comparator  Ljava/util/Comparator<-TE;>;
            0   10     2           e  TE;
            1   10     3         cmp  I
    Signature: (Ljava/util/Comparator<-TE;>;TE;)Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
    RuntimeVisibleTypeAnnotations: 
      METHOD_RETURN
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
            Name  Flags
      comparator  
      e           

  E getElement();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.collect.TreeMultiset$AvlNode this
         0: .line 969
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.elem:Ljava/lang/Object;
            areturn
        end local 0 // com.google.common.collect.TreeMultiset$AvlNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
    Signature: ()TE;

  int getCount();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.collect.TreeMultiset$AvlNode this
         0: .line 973
            aload 0 /* this */
            getfield com.google.common.collect.TreeMultiset$AvlNode.elemCount:I
            ireturn
        end local 0 // com.google.common.collect.TreeMultiset$AvlNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.common.collect.TreeMultiset$AvlNode this
         0: .line 978
            aload 0 /* this */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.getElement:()Ljava/lang/Object;
            aload 0 /* this */
            invokevirtual com.google.common.collect.TreeMultiset$AvlNode.getCount:()I
            invokestatic com.google.common.collect.Multisets.immutableEntry:(Ljava/lang/Object;I)Lcom/google/common/collect/Multiset$Entry;
            invokeinterface com.google.common.collect.Multiset$Entry.toString:()Ljava/lang/String;
            areturn
        end local 0 // com.google.common.collect.TreeMultiset$AvlNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/collect/TreeMultiset$AvlNode<TE;>;
}
Signature: <E:Ljava/lang/Object;>Ljava/lang/Object;
SourceFile: "TreeMultiset.java"
NestHost: com.google.common.collect.TreeMultiset
InnerClasses:
  public abstract Entry = com.google.common.collect.Multiset$Entry of com.google.common.collect.Multiset
  private final AvlNode = com.google.common.collect.TreeMultiset$AvlNode of com.google.common.collect.TreeMultiset