public class org.apache.cassandra.utils.btree.BTree$Builder<V>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.cassandra.utils.btree.BTree$Builder
  super_class: java.lang.Object
{
  java.util.Comparator<? super V> comparator;
    descriptor: Ljava/util/Comparator;
    flags: (0x0000) 
    Signature: Ljava/util/Comparator<-TV;>;

  java.lang.Object[] values;
    descriptor: [Ljava/lang/Object;
    flags: (0x0000) 

  int count;
    descriptor: I
    flags: (0x0000) 

  boolean detected;
    descriptor: Z
    flags: (0x0000) 

  boolean auto;
    descriptor: Z
    flags: (0x0000) 

  org.apache.cassandra.utils.btree.BTree$Builder$QuickResolver<V> quickResolver;
    descriptor: Lorg/apache/cassandra/utils/btree/BTree$Builder$QuickResolver;
    flags: (0x0000) 
    Signature: Lorg/apache/cassandra/utils/btree/BTree$Builder$QuickResolver<TV;>;

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 782
            ldc Lorg/apache/cassandra/utils/btree/BTree;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.apache.cassandra.utils.btree.BTree$Builder.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected void <init>(java.util.Comparator<? super V>);
    descriptor: (Ljava/util/Comparator;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
        start local 1 // java.util.Comparator comparator
         0: .line 811
            aload 0 /* this */
            aload 1 /* comparator */
            bipush 16
            invokespecial org.apache.cassandra.utils.btree.BTree$Builder.<init>:(Ljava/util/Comparator;I)V
         1: .line 812
            return
        end local 1 // java.util.Comparator comparator
        end local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;
            0    2     1  comparator  Ljava/util/Comparator<-TV;>;
    Signature: (Ljava/util/Comparator<-TV;>;)V
    MethodParameters:
            Name  Flags
      comparator  

  protected void <init>(java.util.Comparator<? super V>, );
    descriptor: (Ljava/util/Comparator;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
        start local 1 // java.util.Comparator comparator
        start local 2 // int initialCapacity
         0: .line 814
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 805
            aload 0 /* this */
            iconst_1
            putfield org.apache.cassandra.utils.btree.BTree$Builder.detected:Z
         2: .line 806
            aload 0 /* this */
            iconst_1
            putfield org.apache.cassandra.utils.btree.BTree$Builder.auto:Z
         3: .line 816
            iload 2 /* initialCapacity */
            ifne 5
         4: .line 817
            bipush 16
            istore 2 /* initialCapacity */
         5: .line 818
      StackMap locals: org.apache.cassandra.utils.btree.BTree$Builder java.util.Comparator int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* comparator */
            putfield org.apache.cassandra.utils.btree.BTree$Builder.comparator:Ljava/util/Comparator;
         6: .line 819
            aload 0 /* this */
            iload 2 /* initialCapacity */
            anewarray java.lang.Object
            putfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
         7: .line 820
            return
        end local 2 // int initialCapacity
        end local 1 // java.util.Comparator comparator
        end local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    8     0             this  Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;
            0    8     1       comparator  Ljava/util/Comparator<-TV;>;
            0    8     2  initialCapacity  I
    Signature: (Ljava/util/Comparator<-TV;>;I)V
    MethodParameters:
                 Name  Flags
      comparator       
      initialCapacity  

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
         0: .line 823
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 805
            aload 0 /* this */
            iconst_1
            putfield org.apache.cassandra.utils.btree.BTree$Builder.detected:Z
         2: .line 806
            aload 0 /* this */
            iconst_1
            putfield org.apache.cassandra.utils.btree.BTree$Builder.auto:Z
         3: .line 825
            aload 0 /* this */
            bipush 16
            anewarray java.lang.Object
            putfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
         4: .line 826
            return
        end local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.VisibleForTesting()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        com.google.common.annotations.VisibleForTesting()

  private void <init>(org.apache.cassandra.utils.btree.BTree$Builder<V>);
    descriptor: (Lorg/apache/cassandra/utils/btree/BTree$Builder;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
        start local 1 // org.apache.cassandra.utils.btree.BTree$Builder builder
         0: .line 828
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 805
            aload 0 /* this */
            iconst_1
            putfield org.apache.cassandra.utils.btree.BTree$Builder.detected:Z
         2: .line 806
            aload 0 /* this */
            iconst_1
            putfield org.apache.cassandra.utils.btree.BTree$Builder.auto:Z
         3: .line 830
            aload 0 /* this */
            aload 1 /* builder */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.comparator:Ljava/util/Comparator;
            putfield org.apache.cassandra.utils.btree.BTree$Builder.comparator:Ljava/util/Comparator;
         4: .line 831
            aload 0 /* this */
            aload 1 /* builder */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            aload 1 /* builder */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            arraylength
            invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
            putfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
         5: .line 832
            aload 0 /* this */
            aload 1 /* builder */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
            putfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
         6: .line 833
            aload 0 /* this */
            aload 1 /* builder */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.detected:Z
            putfield org.apache.cassandra.utils.btree.BTree$Builder.detected:Z
         7: .line 834
            aload 0 /* this */
            aload 1 /* builder */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.auto:Z
            putfield org.apache.cassandra.utils.btree.BTree$Builder.auto:Z
         8: .line 835
            aload 0 /* this */
            aload 1 /* builder */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.quickResolver:Lorg/apache/cassandra/utils/btree/BTree$Builder$QuickResolver;
            putfield org.apache.cassandra.utils.btree.BTree$Builder.quickResolver:Lorg/apache/cassandra/utils/btree/BTree$Builder$QuickResolver;
         9: .line 836
            return
        end local 1 // org.apache.cassandra.utils.btree.BTree$Builder builder
        end local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;
            0   10     1  builder  Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;
    Signature: (Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;)V
    MethodParameters:
         Name  Flags
      builder  

  public org.apache.cassandra.utils.btree.BTree$Builder<V> copy();
    descriptor: ()Lorg/apache/cassandra/utils/btree/BTree$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
         0: .line 844
            new org.apache.cassandra.utils.btree.BTree$Builder
            dup
            aload 0 /* this */
            invokespecial org.apache.cassandra.utils.btree.BTree$Builder.<init>:(Lorg/apache/cassandra/utils/btree/BTree$Builder;)V
            areturn
        end local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;
    Signature: ()Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;

  public org.apache.cassandra.utils.btree.BTree$Builder<V> setQuickResolver(org.apache.cassandra.utils.btree.BTree$Builder$QuickResolver<V>);
    descriptor: (Lorg/apache/cassandra/utils/btree/BTree$Builder$QuickResolver;)Lorg/apache/cassandra/utils/btree/BTree$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
        start local 1 // org.apache.cassandra.utils.btree.BTree$Builder$QuickResolver quickResolver
         0: .line 849
            aload 0 /* this */
            aload 1 /* quickResolver */
            putfield org.apache.cassandra.utils.btree.BTree$Builder.quickResolver:Lorg/apache/cassandra/utils/btree/BTree$Builder$QuickResolver;
         1: .line 850
            aload 0 /* this */
            areturn
        end local 1 // org.apache.cassandra.utils.btree.BTree$Builder$QuickResolver quickResolver
        end local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;
            0    2     1  quickResolver  Lorg/apache/cassandra/utils/btree/BTree$Builder$QuickResolver<TV;>;
    Signature: (Lorg/apache/cassandra/utils/btree/BTree$Builder$QuickResolver<TV;>;)Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;
    MethodParameters:
               Name  Flags
      quickResolver  

  public void reuse();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
         0: .line 855
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.comparator:Ljava/util/Comparator;
            invokevirtual org.apache.cassandra.utils.btree.BTree$Builder.reuse:(Ljava/util/Comparator;)V
         1: .line 856
            return
        end local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;

  public void reuse(java.util.Comparator<? super V>);
    descriptor: (Ljava/util/Comparator;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
        start local 1 // java.util.Comparator comparator
         0: .line 860
            aload 0 /* this */
            aload 1 /* comparator */
            putfield org.apache.cassandra.utils.btree.BTree$Builder.comparator:Ljava/util/Comparator;
         1: .line 861
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            aconst_null
            invokestatic java.util.Arrays.fill:([Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 862
            aload 0 /* this */
            iconst_0
            putfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
         3: .line 863
            aload 0 /* this */
            iconst_1
            putfield org.apache.cassandra.utils.btree.BTree$Builder.detected:Z
         4: .line 864
            return
        end local 1 // java.util.Comparator comparator
        end local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;
            0    5     1  comparator  Ljava/util/Comparator<-TV;>;
    Signature: (Ljava/util/Comparator<-TV;>;)V
    MethodParameters:
            Name  Flags
      comparator  

  public org.apache.cassandra.utils.btree.BTree$Builder<V> auto(boolean);
    descriptor: (Z)Lorg/apache/cassandra/utils/btree/BTree$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
        start local 1 // boolean auto
         0: .line 868
            aload 0 /* this */
            iload 1 /* auto */
            putfield org.apache.cassandra.utils.btree.BTree$Builder.auto:Z
         1: .line 869
            aload 0 /* this */
            areturn
        end local 1 // boolean auto
        end local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;
            0    2     1  auto  Z
    Signature: (Z)Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;
    MethodParameters:
      Name  Flags
      auto  

  public org.apache.cassandra.utils.btree.BTree$Builder<V> add(V);
    descriptor: (Ljava/lang/Object;)Lorg/apache/cassandra/utils/btree/BTree$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
        start local 1 // java.lang.Object v
         0: .line 874
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            arraylength
            if_icmpne 2
         1: .line 875
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
            iconst_2
            imul
            invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
            putfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
         2: .line 877
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            astore 2 /* values */
        start local 2 // java.lang.Object[] values
         3: .line 878
            aload 0 /* this */
            dup
            getfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
            dup_x1
            iconst_1
            iadd
            putfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
            istore 3 /* prevCount */
        start local 3 // int prevCount
         4: .line 879
            aload 2 /* values */
            iload 3 /* prevCount */
            aload 1 /* v */
            aastore
         5: .line 881
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.auto:Z
            ifeq 15
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.detected:Z
            ifeq 15
            iload 3 /* prevCount */
            ifle 15
         6: .line 883
            aload 2 /* values */
            iload 3 /* prevCount */
            iconst_1
            isub
            aaload
            astore 4 /* prev */
        start local 4 // java.lang.Object prev
         7: .line 884
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.comparator:Ljava/util/Comparator;
            aload 4 /* prev */
            aload 1 /* v */
            invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
            istore 5 /* c */
        start local 5 // int c
         8: .line 885
            iload 5 /* c */
            ifne 13
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.auto:Z
            ifeq 13
         9: .line 887
            aload 0 /* this */
            iload 3 /* prevCount */
            putfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
        10: .line 888
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.quickResolver:Lorg/apache/cassandra/utils/btree/BTree$Builder$QuickResolver;
            ifnull 15
        11: .line 889
            aload 2 /* values */
            iload 3 /* prevCount */
            iconst_1
            isub
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.quickResolver:Lorg/apache/cassandra/utils/btree/BTree$Builder$QuickResolver;
            aload 4 /* prev */
            aload 1 /* v */
            invokeinterface org.apache.cassandra.utils.btree.BTree$Builder$QuickResolver.resolve:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            aastore
        12: .line 890
            goto 15
        13: .line 891
      StackMap locals: org.apache.cassandra.utils.btree.BTree$Builder java.lang.Object java.lang.Object[] int java.lang.Object int
      StackMap stack:
            iload 5 /* c */
            ifle 15
        14: .line 893
            aload 0 /* this */
            iconst_0
            putfield org.apache.cassandra.utils.btree.BTree$Builder.detected:Z
        end local 5 // int c
        end local 4 // java.lang.Object prev
        15: .line 897
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 3 // int prevCount
        end local 2 // java.lang.Object[] values
        end local 1 // java.lang.Object v
        end local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   16     0       this  Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;
            0   16     1          v  TV;
            3   16     2     values  [Ljava/lang/Object;
            4   16     3  prevCount  I
            7   15     4       prev  TV;
            8   15     5          c  I
    Signature: (TV;)Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;
    MethodParameters:
      Name  Flags
      v     

  public org.apache.cassandra.utils.btree.BTree$Builder<V> addAll(java.util.Collection<V>);
    descriptor: (Ljava/util/Collection;)Lorg/apache/cassandra/utils/btree/BTree$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
        start local 1 // java.util.Collection add
         0: .line 902
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.auto:Z
            ifeq 2
            aload 1 /* add */
            instanceof java.util.SortedSet
            ifeq 2
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.comparator:Ljava/util/Comparator;
            aload 1 /* add */
            checkcast java.util.SortedSet
            invokeinterface java.util.SortedSet.comparator:()Ljava/util/Comparator;
            invokestatic org.apache.cassandra.utils.btree.BTree$Builder.equalComparators:(Ljava/util/Comparator;Ljava/util/Comparator;)Z
            ifeq 2
         1: .line 906
            aload 0 /* this */
            aload 1 /* add */
            aload 1 /* add */
            invokeinterface java.util.Collection.size:()I
            invokevirtual org.apache.cassandra.utils.btree.BTree$Builder.mergeAll:(Ljava/lang/Iterable;I)Lorg/apache/cassandra/utils/btree/BTree$Builder;
            areturn
         2: .line 908
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield org.apache.cassandra.utils.btree.BTree$Builder.detected:Z
         3: .line 909
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            arraylength
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
            aload 1 /* add */
            invokeinterface java.util.Collection.size:()I
            iadd
            if_icmpge 5
         4: .line 910
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
            aload 1 /* add */
            invokeinterface java.util.Collection.size:()I
            iadd
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
            iconst_2
            imul
            invokestatic java.lang.Math.max:(II)I
            invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
            putfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
         5: .line 911
      StackMap locals:
      StackMap stack:
            aload 1 /* add */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3
            goto 8
      StackMap locals: org.apache.cassandra.utils.btree.BTree$Builder java.util.Collection top java.util.Iterator
      StackMap stack:
         6: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Object
            astore 2 /* v */
        start local 2 // java.lang.Object v
         7: .line 912
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            aload 0 /* this */
            dup
            getfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
            dup_x1
            iconst_1
            iadd
            putfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
            aload 2 /* v */
            aastore
        end local 2 // java.lang.Object v
         8: .line 911
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
         9: .line 913
            aload 0 /* this */
            areturn
        end local 1 // java.util.Collection add
        end local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;
            0   10     1   add  Ljava/util/Collection<TV;>;
            7    8     2     v  TV;
    Signature: (Ljava/util/Collection<TV;>;)Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;
    MethodParameters:
      Name  Flags
      add   

  private static boolean equalComparators(java.util.Comparator<?>, java.util.Comparator<?>);
    descriptor: (Ljava/util/Comparator;Ljava/util/Comparator;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.util.Comparator a
        start local 1 // java.util.Comparator b
         0: .line 918
            aload 0 /* a */
            aload 1 /* b */
            if_acmpeq 2
            aload 0 /* a */
            invokestatic org.apache.cassandra.utils.btree.BTree$Builder.isNaturalComparator:(Ljava/util/Comparator;)Z
            ifeq 1
            aload 1 /* b */
            invokestatic org.apache.cassandra.utils.btree.BTree$Builder.isNaturalComparator:(Ljava/util/Comparator;)Z
            ifne 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_1
            ireturn
        end local 1 // java.util.Comparator b
        end local 0 // java.util.Comparator a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     a  Ljava/util/Comparator<*>;
            0    3     1     b  Ljava/util/Comparator<*>;
    Signature: (Ljava/util/Comparator<*>;Ljava/util/Comparator<*>;)Z
    MethodParameters:
      Name  Flags
      a     
      b     

  private static boolean isNaturalComparator(java.util.Comparator<?>);
    descriptor: (Ljava/util/Comparator;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.Comparator a
         0: .line 923
            aload 0 /* a */
            ifnull 1
            aload 0 /* a */
            invokestatic java.util.Comparator.naturalOrder:()Ljava/util/Comparator;
            if_acmpeq 1
            aload 0 /* a */
            invokestatic com.google.common.collect.Ordering.natural:()Lcom/google/common/collect/Ordering;
            if_acmpeq 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // java.util.Comparator a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     a  Ljava/util/Comparator<*>;
    Signature: (Ljava/util/Comparator<*>;)Z
    MethodParameters:
      Name  Flags
      a     

  private org.apache.cassandra.utils.btree.BTree$Builder<V> mergeAll(java.lang.Iterable<V>, int);
    descriptor: (Ljava/lang/Iterable;I)Lorg/apache/cassandra/utils/btree/BTree$Builder;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=7, args_size=3
        start local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
        start local 1 // java.lang.Iterable add
        start local 2 // int addCount
         0: .line 929
            getstatic org.apache.cassandra.utils.btree.BTree$Builder.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.auto:Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 931
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.cassandra.utils.btree.BTree$Builder.autoEnforce:()V
         2: .line 933
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
            istore 3 /* curCount */
        start local 3 // int curCount
         3: .line 936
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            arraylength
            iload 3 /* curCount */
            iconst_2
            imul
            iload 2 /* addCount */
            iadd
            if_icmpge 5
         4: .line 937
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            iload 3 /* curCount */
            iconst_2
            imul
            iload 2 /* addCount */
            iadd
            iload 3 /* curCount */
            iconst_3
            imul
            invokestatic java.lang.Math.max:(II)I
            invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
            putfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
         5: .line 939
      StackMap locals: int
      StackMap stack:
            aload 1 /* add */
            instanceof org.apache.cassandra.utils.btree.BTreeSet
            ifeq 8
         6: .line 942
            aload 1 /* add */
            checkcast org.apache.cassandra.utils.btree.BTreeSet
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            iload 3 /* curCount */
            invokevirtual org.apache.cassandra.utils.btree.BTreeSet.toArray:([Ljava/lang/Object;I)[Ljava/lang/Object;
            pop
         7: .line 943
            goto 13
         8: .line 947
      StackMap locals:
      StackMap stack:
            iload 3 /* curCount */
            istore 4 /* i */
        start local 4 // int i
         9: .line 948
            aload 1 /* add */
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 6
            goto 12
      StackMap locals: org.apache.cassandra.utils.btree.BTree$Builder java.lang.Iterable int int int top java.util.Iterator
      StackMap stack:
        10: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Object
            astore 5 /* v */
        start local 5 // java.lang.Object v
        11: .line 949
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            iload 4 /* i */
            iinc 4 /* i */ 1
            aload 5 /* v */
            aastore
        end local 5 // java.lang.Object v
        12: .line 948
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 10
        end local 4 // int i
        13: .line 951
      StackMap locals: org.apache.cassandra.utils.btree.BTree$Builder java.lang.Iterable int int
      StackMap stack:
            aload 0 /* this */
            iload 2 /* addCount */
            invokevirtual org.apache.cassandra.utils.btree.BTree$Builder.mergeAll:(I)Lorg/apache/cassandra/utils/btree/BTree$Builder;
            areturn
        end local 3 // int curCount
        end local 2 // int addCount
        end local 1 // java.lang.Iterable add
        end local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   14     0      this  Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;
            0   14     1       add  Ljava/lang/Iterable<TV;>;
            0   14     2  addCount  I
            3   14     3  curCount  I
            9   13     4         i  I
           11   12     5         v  TV;
    Signature: (Ljava/lang/Iterable<TV;>;I)Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;
    MethodParameters:
          Name  Flags
      add       
      addCount  

  private org.apache.cassandra.utils.btree.BTree$Builder<V> mergeAll(int);
    descriptor: (I)Lorg/apache/cassandra/utils/btree/BTree$Builder;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=13, args_size=2
        start local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
        start local 1 // int addCount
         0: .line 956
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            astore 2 /* a */
        start local 2 // java.lang.Object[] a
         1: .line 957
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
            istore 3 /* addOffset */
        start local 3 // int addOffset
         2: .line 959
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: iload 3 /* addOffset */
            istore 5 /* j */
        start local 5 // int j
         4: .line 960
            iload 3 /* addOffset */
            istore 6 /* curEnd */
        start local 6 // int curEnd
         5: iload 3 /* addOffset */
            iload 1 /* addCount */
            iadd
            istore 7 /* addEnd */
        start local 7 // int addEnd
         6: .line 963
            goto 19
         7: .line 965
      StackMap locals: org.apache.cassandra.utils.btree.BTree$Builder int java.lang.Object[] int int int int int
      StackMap stack:
            aload 2 /* a */
            iload 4 /* i */
            aaload
            astore 8 /* ai */
        start local 8 // java.lang.Object ai
         8: aload 2 /* a */
            iload 5 /* j */
            aaload
            astore 9 /* aj */
        start local 9 // java.lang.Object aj
         9: .line 967
            aload 8 /* ai */
            aload 9 /* aj */
            if_acmpne 10
            iconst_0
            goto 11
      StackMap locals: java.lang.Object java.lang.Object
      StackMap stack:
        10: aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.comparator:Ljava/util/Comparator;
            aload 8 /* ai */
            aload 9 /* aj */
            invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
      StackMap locals:
      StackMap stack: int
        11: istore 10 /* c */
        start local 10 // int c
        12: .line 968
            iload 10 /* c */
            ifle 14
        13: .line 969
            goto 20
        14: .line 970
      StackMap locals: int
      StackMap stack:
            iload 10 /* c */
            ifne 18
        15: .line 972
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.quickResolver:Lorg/apache/cassandra/utils/btree/BTree$Builder$QuickResolver;
            ifnull 17
        16: .line 973
            aload 2 /* a */
            iload 4 /* i */
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.quickResolver:Lorg/apache/cassandra/utils/btree/BTree$Builder$QuickResolver;
            aload 8 /* ai */
            aload 9 /* aj */
            invokeinterface org.apache.cassandra.utils.btree.BTree$Builder$QuickResolver.resolve:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            aastore
        17: .line 974
      StackMap locals:
      StackMap stack:
            iinc 5 /* j */ 1
        18: .line 976
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
        end local 10 // int c
        end local 9 // java.lang.Object aj
        end local 8 // java.lang.Object ai
        19: .line 963
      StackMap locals:
      StackMap stack:
            iload 4 /* i */
            iload 6 /* curEnd */
            if_icmpge 20
            iload 5 /* j */
            iload 7 /* addEnd */
            if_icmplt 7
        20: .line 979
      StackMap locals:
      StackMap stack:
            iload 5 /* j */
            iload 7 /* addEnd */
            if_icmpne 22
        21: .line 980
            aload 0 /* this */
            areturn
        22: .line 983
      StackMap locals:
      StackMap stack:
            iload 4 /* i */
            istore 8 /* newCount */
        start local 8 // int newCount
        23: .line 984
            aload 2 /* a */
            iload 4 /* i */
            aload 2 /* a */
            iload 7 /* addEnd */
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
            iload 4 /* i */
            isub
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        24: .line 985
            iload 7 /* addEnd */
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
            iload 4 /* i */
            isub
            iadd
            istore 6 /* curEnd */
        25: .line 986
            iload 7 /* addEnd */
            istore 4 /* i */
        26: .line 988
            goto 41
        27: .line 990
      StackMap locals: int
      StackMap stack:
            aload 2 /* a */
            iload 4 /* i */
            aaload
            astore 9 /* ai */
        start local 9 // java.lang.Object ai
        28: .line 991
            aload 2 /* a */
            iload 5 /* j */
            aaload
            astore 10 /* aj */
        start local 10 // java.lang.Object aj
        29: .line 993
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.comparator:Ljava/util/Comparator;
            aload 9 /* ai */
            aload 10 /* aj */
            invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
            istore 11 /* c */
        start local 11 // int c
        30: .line 994
            iload 11 /* c */
            ifne 38
        31: .line 996
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.quickResolver:Lorg/apache/cassandra/utils/btree/BTree$Builder$QuickResolver;
            ifnonnull 32
            aload 9 /* ai */
            goto 33
      StackMap locals: java.lang.Object java.lang.Object int
      StackMap stack:
        32: aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.quickResolver:Lorg/apache/cassandra/utils/btree/BTree$Builder$QuickResolver;
            aload 9 /* ai */
            aload 10 /* aj */
            invokeinterface org.apache.cassandra.utils.btree.BTree$Builder$QuickResolver.resolve:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
      StackMap locals:
      StackMap stack: java.lang.Object
        33: astore 12 /* newValue */
        start local 12 // java.lang.Object newValue
        34: .line 997
            aload 2 /* a */
            iload 8 /* newCount */
            iinc 8 /* newCount */ 1
            aload 12 /* newValue */
            aastore
        35: .line 998
            iinc 4 /* i */ 1
        36: .line 999
            iinc 5 /* j */ 1
        end local 12 // java.lang.Object newValue
        37: .line 1000
            goto 41
        38: .line 1003
      StackMap locals:
      StackMap stack:
            aload 2 /* a */
            iload 8 /* newCount */
            iinc 8 /* newCount */ 1
            iload 11 /* c */
            ifge 39
            aload 2 /* a */
            iload 4 /* i */
            iinc 4 /* i */ 1
            aaload
            goto 40
      StackMap locals: org.apache.cassandra.utils.btree.BTree$Builder int java.lang.Object[] int int int int int int java.lang.Object java.lang.Object int
      StackMap stack: java.lang.Object[] int
        39: aload 2 /* a */
            iload 5 /* j */
            iinc 5 /* j */ 1
            aaload
      StackMap locals: org.apache.cassandra.utils.btree.BTree$Builder int java.lang.Object[] int int int int int int java.lang.Object java.lang.Object int
      StackMap stack: java.lang.Object[] int java.lang.Object
        40: aastore
        end local 11 // int c
        end local 10 // java.lang.Object aj
        end local 9 // java.lang.Object ai
        41: .line 988
      StackMap locals:
      StackMap stack:
            iload 4 /* i */
            iload 6 /* curEnd */
            if_icmpge 42
            iload 5 /* j */
            iload 7 /* addEnd */
            if_icmplt 27
        42: .line 1008
      StackMap locals:
      StackMap stack:
            iload 4 /* i */
            iload 6 /* curEnd */
            if_icmpge 46
        43: .line 1010
            aload 2 /* a */
            iload 4 /* i */
            aload 2 /* a */
            iload 8 /* newCount */
            iload 6 /* curEnd */
            iload 4 /* i */
            isub
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        44: .line 1011
            iload 8 /* newCount */
            iload 6 /* curEnd */
            iload 4 /* i */
            isub
            iadd
            istore 8 /* newCount */
        45: .line 1012
            goto 50
        46: .line 1013
      StackMap locals:
      StackMap stack:
            iload 5 /* j */
            iload 7 /* addEnd */
            if_icmpge 50
        47: .line 1015
            iload 5 /* j */
            iload 8 /* newCount */
            if_icmpeq 49
        48: .line 1016
            aload 2 /* a */
            iload 5 /* j */
            aload 2 /* a */
            iload 8 /* newCount */
            iload 7 /* addEnd */
            iload 5 /* j */
            isub
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        49: .line 1017
      StackMap locals:
      StackMap stack:
            iload 8 /* newCount */
            iload 7 /* addEnd */
            iload 5 /* j */
            isub
            iadd
            istore 8 /* newCount */
        50: .line 1019
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 8 /* newCount */
            putfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
        51: .line 1020
            aload 0 /* this */
            areturn
        end local 8 // int newCount
        end local 7 // int addEnd
        end local 6 // int curEnd
        end local 5 // int j
        end local 4 // int i
        end local 3 // int addOffset
        end local 2 // java.lang.Object[] a
        end local 1 // int addCount
        end local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   52     0       this  Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;
            0   52     1   addCount  I
            1   52     2          a  [Ljava/lang/Object;
            2   52     3  addOffset  I
            3   52     4          i  I
            4   52     5          j  I
            5   52     6     curEnd  I
            6   52     7     addEnd  I
            8   19     8         ai  TV;
            9   19     9         aj  TV;
           12   19    10          c  I
           23   52     8   newCount  I
           28   41     9         ai  TV;
           29   41    10         aj  TV;
           30   41    11          c  I
           34   37    12   newValue  Ljava/lang/Object;
    Signature: (I)Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;
    MethodParameters:
          Name  Flags
      addCount  

  public boolean isEmpty();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
         0: .line 1025
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;

  public org.apache.cassandra.utils.btree.BTree$Builder<V> reverse();
    descriptor: ()Lorg/apache/cassandra/utils/btree/BTree$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=1
        start local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
         0: .line 1030
            getstatic org.apache.cassandra.utils.btree.BTree$Builder.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.auto:Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1031
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
            iconst_2
            idiv
            istore 1 /* mid */
        start local 1 // int mid
         2: .line 1032
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: goto 8
         4: .line 1034
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            iload 2 /* i */
            aaload
            astore 3 /* t */
        start local 3 // java.lang.Object t
         5: .line 1035
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            iload 2 /* i */
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
            iconst_1
            iload 2 /* i */
            iadd
            isub
            aaload
            aastore
         6: .line 1036
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
            iconst_1
            iload 2 /* i */
            iadd
            isub
            aload 3 /* t */
            aastore
        end local 3 // java.lang.Object t
         7: .line 1032
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 2 /* i */
            iload 1 /* mid */
            if_icmplt 4
        end local 2 // int i
         9: .line 1038
            aload 0 /* this */
            areturn
        end local 1 // int mid
        end local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;
            2   10     1   mid  I
            3    9     2     i  I
            5    7     3     t  Ljava/lang/Object;
    Signature: ()Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;

  public org.apache.cassandra.utils.btree.BTree$Builder<V> sort();
    descriptor: ()Lorg/apache/cassandra/utils/btree/BTree$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
         0: .line 1043
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            iconst_0
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.comparator:Ljava/util/Comparator;
            invokestatic java.util.Arrays.sort:([Ljava/lang/Object;IILjava/util/Comparator;)V
         1: .line 1044
            aload 0 /* this */
            areturn
        end local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;
    Signature: ()Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;

  private void autoEnforce();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
         0: .line 1050
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.detected:Z
            ifne 14
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
            iconst_1
            if_icmple 14
         1: .line 1052
            aload 0 /* this */
            invokevirtual org.apache.cassandra.utils.btree.BTree$Builder.sort:()Lorg/apache/cassandra/utils/btree/BTree$Builder;
            pop
         2: .line 1053
            iconst_0
            istore 1 /* prevIdx */
        start local 1 // int prevIdx
         3: .line 1054
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            iconst_0
            aaload
            astore 2 /* prev */
        start local 2 // java.lang.Object prev
         4: .line 1055
            iconst_1
            istore 3 /* i */
        start local 3 // int i
         5: goto 12
         6: .line 1057
      StackMap locals: int java.lang.Object int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            iload 3 /* i */
            aaload
            astore 4 /* next */
        start local 4 // java.lang.Object next
         7: .line 1058
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.comparator:Ljava/util/Comparator;
            aload 2 /* prev */
            aload 4 /* next */
            invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
            ifeq 9
         8: .line 1059
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            iinc 1 /* prevIdx */ 1
            iload 1 /* prevIdx */
            aload 4 /* next */
            dup
            astore 2 /* prev */
            aastore
            goto 11
         9: .line 1060
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.quickResolver:Lorg/apache/cassandra/utils/btree/BTree$Builder$QuickResolver;
            ifnull 11
        10: .line 1061
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            iload 1 /* prevIdx */
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.quickResolver:Lorg/apache/cassandra/utils/btree/BTree$Builder$QuickResolver;
            aload 2 /* prev */
            aload 4 /* next */
            invokeinterface org.apache.cassandra.utils.btree.BTree$Builder$QuickResolver.resolve:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            dup
            astore 2 /* prev */
            aastore
        end local 4 // java.lang.Object next
        11: .line 1055
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 3 /* i */
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
            if_icmplt 6
        end local 3 // int i
        13: .line 1063
            aload 0 /* this */
            iload 1 /* prevIdx */
            iconst_1
            iadd
            putfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
        end local 2 // java.lang.Object prev
        end local 1 // int prevIdx
        14: .line 1065
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield org.apache.cassandra.utils.btree.BTree$Builder.detected:Z
        15: .line 1066
            return
        end local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   16     0     this  Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;
            3   14     1  prevIdx  I
            4   14     2     prev  TV;
            5   13     3        i  I
            7   11     4     next  TV;

  public org.apache.cassandra.utils.btree.BTree$Builder<V> resolve(org.apache.cassandra.utils.btree.BTree$Builder$Resolver);
    descriptor: (Lorg/apache/cassandra/utils/btree/BTree$Builder$Resolver;)Lorg/apache/cassandra/utils/btree/BTree$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
        start local 1 // org.apache.cassandra.utils.btree.BTree$Builder$Resolver resolver
         0: .line 1070
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
            ifle 12
         1: .line 1072
            iconst_0
            istore 2 /* c */
        start local 2 // int c
         2: .line 1073
            iconst_0
            istore 3 /* prev */
        start local 3 // int prev
         3: .line 1074
            iconst_1
            istore 4 /* i */
        start local 4 // int i
         4: goto 9
         5: .line 1076
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.comparator:Ljava/util/Comparator;
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            iload 4 /* i */
            aaload
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            iload 3 /* prev */
            aaload
            invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
            ifeq 8
         6: .line 1078
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            iload 2 /* c */
            iinc 2 /* c */ 1
            aload 1 /* resolver */
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            iload 3 /* prev */
            iload 4 /* i */
            invokeinterface org.apache.cassandra.utils.btree.BTree$Builder$Resolver.resolve:([Ljava/lang/Object;II)Ljava/lang/Object;
            aastore
         7: .line 1079
            iload 4 /* i */
            istore 3 /* prev */
         8: .line 1074
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 4 /* i */
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
            if_icmplt 5
        end local 4 // int i
        10: .line 1082
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            iload 2 /* c */
            iinc 2 /* c */ 1
            aload 1 /* resolver */
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            iload 3 /* prev */
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
            invokeinterface org.apache.cassandra.utils.btree.BTree$Builder$Resolver.resolve:([Ljava/lang/Object;II)Ljava/lang/Object;
            aastore
        11: .line 1083
            aload 0 /* this */
            iload 2 /* c */
            putfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
        end local 3 // int prev
        end local 2 // int c
        12: .line 1085
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 1 // org.apache.cassandra.utils.btree.BTree$Builder$Resolver resolver
        end local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   13     0      this  Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;
            0   13     1  resolver  Lorg/apache/cassandra/utils/btree/BTree$Builder$Resolver;
            2   12     2         c  I
            3   12     3      prev  I
            4   10     4         i  I
    Signature: (Lorg/apache/cassandra/utils/btree/BTree$Builder$Resolver;)Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;
    MethodParameters:
          Name  Flags
      resolver  

  public java.lang.Object[] build();
    descriptor: ()[Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
         0: .line 1090
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.auto:Z
            ifeq 2
         1: .line 1091
            aload 0 /* this */
            invokevirtual org.apache.cassandra.utils.btree.BTree$Builder.autoEnforce:()V
         2: .line 1092
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.values:[Ljava/lang/Object;
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            iconst_0
            aload 0 /* this */
            getfield org.apache.cassandra.utils.btree.BTree$Builder.count:I
            invokeinterface java.util.List.subList:(II)Ljava/util/List;
            invokestatic org.apache.cassandra.utils.btree.UpdateFunction.noOp:()Lorg/apache/cassandra/utils/btree/UpdateFunction;
            invokestatic org.apache.cassandra.utils.btree.BTree.build:(Ljava/util/Collection;Lorg/apache/cassandra/utils/btree/UpdateFunction;)[Ljava/lang/Object;
            areturn
        end local 0 // org.apache.cassandra.utils.btree.BTree$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/cassandra/utils/btree/BTree$Builder<TV;>;
}
Signature: <V:Ljava/lang/Object;>Ljava/lang/Object;
SourceFile: "BTree.java"
NestHost: org.apache.cassandra.utils.btree.BTree
InnerClasses:
  public Builder = org.apache.cassandra.utils.btree.BTree$Builder of org.apache.cassandra.utils.btree.BTree
  public abstract QuickResolver = org.apache.cassandra.utils.btree.BTree$Builder$QuickResolver of org.apache.cassandra.utils.btree.BTree$Builder
  public abstract Resolver = org.apache.cassandra.utils.btree.BTree$Builder$Resolver of org.apache.cassandra.utils.btree.BTree$Builder