final class org.apache.cassandra.utils.MergeIterator$ManyToOne<In, Out> extends org.apache.cassandra.utils.MergeIterator<In, Out>
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: org.apache.cassandra.utils.MergeIterator$ManyToOne
  super_class: org.apache.cassandra.utils.MergeIterator
{
  protected final org.apache.cassandra.utils.MergeIterator$Candidate<In>[] heap;
    descriptor: [Lorg/apache/cassandra/utils/MergeIterator$Candidate;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Signature: [Lorg/apache/cassandra/utils/MergeIterator$Candidate<TIn;>;

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

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

  static final int SORTED_SECTION_SIZE;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 4

  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 116
            ldc Lorg/apache/cassandra/utils/MergeIterator;
            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.MergeIterator$ManyToOne.$assertionsDisabled:Z
         3: .line 134
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(java.util.List<? extends java.util.Iterator<In>>, java.util.Comparator<? super In>, org.apache.cassandra.utils.MergeIterator$Reducer<In, Out>);
    descriptor: (Ljava/util/List;Ljava/util/Comparator;Lorg/apache/cassandra/utils/MergeIterator$Reducer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=4
        start local 0 // org.apache.cassandra.utils.MergeIterator$ManyToOne this
        start local 1 // java.util.List iters
        start local 2 // java.util.Comparator comp
        start local 3 // org.apache.cassandra.utils.MergeIterator$Reducer reducer
         0: .line 138
            aload 0 /* this */
            aload 1 /* iters */
            aload 3 /* reducer */
            invokespecial org.apache.cassandra.utils.MergeIterator.<init>:(Ljava/util/List;Lorg/apache/cassandra/utils/MergeIterator$Reducer;)V
         1: .line 141
            aload 1 /* iters */
            invokeinterface java.util.List.size:()I
            anewarray org.apache.cassandra.utils.MergeIterator$Candidate
            astore 4 /* heap */
        start local 4 // org.apache.cassandra.utils.MergeIterator$Candidate[] heap
         2: .line 142
            aload 0 /* this */
            aload 4 /* heap */
            putfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
         3: .line 143
            aload 0 /* this */
            iconst_0
            putfield org.apache.cassandra.utils.MergeIterator$ManyToOne.size:I
         4: .line 145
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         5: goto 9
         6: .line 147
      StackMap locals: org.apache.cassandra.utils.MergeIterator$ManyToOne java.util.List java.util.Comparator org.apache.cassandra.utils.MergeIterator$Reducer org.apache.cassandra.utils.MergeIterator$Candidate[] int
      StackMap stack:
            new org.apache.cassandra.utils.MergeIterator$Candidate
            dup
            iload 5 /* i */
            aload 1 /* iters */
            iload 5 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.util.Iterator
            aload 2 /* comp */
            invokespecial org.apache.cassandra.utils.MergeIterator$Candidate.<init>:(ILjava/util/Iterator;Ljava/util/Comparator;)V
            astore 6 /* candidate */
        start local 6 // org.apache.cassandra.utils.MergeIterator$Candidate candidate
         7: .line 148
            aload 4 /* heap */
            aload 0 /* this */
            dup
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.size:I
            dup_x1
            iconst_1
            iadd
            putfield org.apache.cassandra.utils.MergeIterator$ManyToOne.size:I
            aload 6 /* candidate */
            aastore
        end local 6 // org.apache.cassandra.utils.MergeIterator$Candidate candidate
         8: .line 145
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 5 /* i */
            aload 1 /* iters */
            invokeinterface java.util.List.size:()I
            if_icmplt 6
        end local 5 // int i
        10: .line 150
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.size:I
            putfield org.apache.cassandra.utils.MergeIterator$ManyToOne.needingAdvance:I
        11: .line 151
            return
        end local 4 // org.apache.cassandra.utils.MergeIterator$Candidate[] heap
        end local 3 // org.apache.cassandra.utils.MergeIterator$Reducer reducer
        end local 2 // java.util.Comparator comp
        end local 1 // java.util.List iters
        end local 0 // org.apache.cassandra.utils.MergeIterator$ManyToOne this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0       this  Lorg/apache/cassandra/utils/MergeIterator$ManyToOne<TIn;TOut;>;
            0   12     1      iters  Ljava/util/List<+Ljava/util/Iterator<TIn;>;>;
            0   12     2       comp  Ljava/util/Comparator<-TIn;>;
            0   12     3    reducer  Lorg/apache/cassandra/utils/MergeIterator$Reducer<TIn;TOut;>;
            2   12     4       heap  [Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            5   10     5          i  I
            7    8     6  candidate  Lorg/apache/cassandra/utils/MergeIterator$Candidate<TIn;>;
    Signature: (Ljava/util/List<+Ljava/util/Iterator<TIn;>;>;Ljava/util/Comparator<-TIn;>;Lorg/apache/cassandra/utils/MergeIterator$Reducer<TIn;TOut;>;)V
    MethodParameters:
         Name  Flags
      iters    
      comp     
      reducer  

  protected final Out computeNext();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.utils.MergeIterator$ManyToOne this
         0: .line 155
            aload 0 /* this */
            invokevirtual org.apache.cassandra.utils.MergeIterator$ManyToOne.advance:()V
         1: .line 156
            aload 0 /* this */
            invokevirtual org.apache.cassandra.utils.MergeIterator$ManyToOne.consume:()Ljava/lang/Object;
            areturn
        end local 0 // org.apache.cassandra.utils.MergeIterator$ManyToOne this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/cassandra/utils/MergeIterator$ManyToOne<TIn;TOut;>;
    Signature: ()TOut;

  private void advance();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.apache.cassandra.utils.MergeIterator$ManyToOne this
         0: .line 176
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.needingAdvance:I
            iconst_1
            isub
            istore 1 /* i */
        start local 1 // int i
         1: goto 6
         2: .line 178
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 1 /* i */
            aaload
            astore 2 /* candidate */
        start local 2 // org.apache.cassandra.utils.MergeIterator$Candidate candidate
         3: .line 185
            aload 2 /* candidate */
            invokevirtual org.apache.cassandra.utils.MergeIterator$Candidate.needsAdvance:()Z
            ifeq 5
         4: .line 186
            aload 0 /* this */
            aload 2 /* candidate */
            invokevirtual org.apache.cassandra.utils.MergeIterator$Candidate.advance:()Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 1 /* i */
            invokevirtual org.apache.cassandra.utils.MergeIterator$ManyToOne.replaceAndSink:(Lorg/apache/cassandra/utils/MergeIterator$Candidate;I)V
        end local 2 // org.apache.cassandra.utils.MergeIterator$Candidate candidate
         5: .line 176
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ -1
      StackMap locals:
      StackMap stack:
         6: iload 1 /* i */
            ifge 2
        end local 1 // int i
         7: .line 188
            return
        end local 0 // org.apache.cassandra.utils.MergeIterator$ManyToOne this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lorg/apache/cassandra/utils/MergeIterator$ManyToOne<TIn;TOut;>;
            1    7     1          i  I
            3    5     2  candidate  Lorg/apache/cassandra/utils/MergeIterator$Candidate<TIn;>;

  private Out consume();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // org.apache.cassandra.utils.MergeIterator$ManyToOne this
         0: .line 198
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.size:I
            ifne 2
         1: .line 199
            aload 0 /* this */
            invokevirtual org.apache.cassandra.utils.MergeIterator$ManyToOne.endOfData:()Ljava/lang/Object;
            areturn
         2: .line 201
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.reducer:Lorg/apache/cassandra/utils/MergeIterator$Reducer;
            invokevirtual org.apache.cassandra.utils.MergeIterator$Reducer.onKeyChange:()V
         3: .line 202
            getstatic org.apache.cassandra.utils.MergeIterator$ManyToOne.$assertionsDisabled:Z
            ifne 4
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iconst_0
            aaload
            getfield org.apache.cassandra.utils.MergeIterator$Candidate.equalParent:Z
            ifeq 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 203
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iconst_0
            aaload
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.reducer:Lorg/apache/cassandra/utils/MergeIterator$Reducer;
            invokevirtual org.apache.cassandra.utils.MergeIterator$Candidate.consume:(Lorg/apache/cassandra/utils/MergeIterator$Reducer;)V
         5: .line 204
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.size:I
            istore 1 /* size */
        start local 1 // int size
         6: .line 205
            iload 1 /* size */
            iconst_4
            invokestatic java.lang.Math.min:(II)I
            istore 2 /* sortedSectionSize */
        start local 2 // int sortedSectionSize
         7: .line 208
            iconst_1
            istore 3 /* i */
        start local 3 // int i
         8: goto 13
         9: .line 210
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 3 /* i */
            aaload
            getfield org.apache.cassandra.utils.MergeIterator$Candidate.equalParent:Z
            ifne 11
        10: .line 211
            goto 15
        11: .line 212
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 3 /* i */
            aaload
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.reducer:Lorg/apache/cassandra/utils/MergeIterator$Reducer;
            invokevirtual org.apache.cassandra.utils.MergeIterator$Candidate.consume:(Lorg/apache/cassandra/utils/MergeIterator$Reducer;)V
        12: .line 208
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 3 /* i */
            iload 2 /* sortedSectionSize */
            if_icmplt 9
        14: .line 214
            iload 3 /* i */
            aload 0 /* this */
            iload 3 /* i */
            invokevirtual org.apache.cassandra.utils.MergeIterator$ManyToOne.consumeHeap:(I)I
            iconst_1
            iadd
            invokestatic java.lang.Math.max:(II)I
            istore 3 /* i */
        15: .line 216
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 3 /* i */
            putfield org.apache.cassandra.utils.MergeIterator$ManyToOne.needingAdvance:I
        16: .line 217
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.reducer:Lorg/apache/cassandra/utils/MergeIterator$Reducer;
            invokevirtual org.apache.cassandra.utils.MergeIterator$Reducer.getReduced:()Ljava/lang/Object;
            areturn
        end local 3 // int i
        end local 2 // int sortedSectionSize
        end local 1 // int size
        end local 0 // org.apache.cassandra.utils.MergeIterator$ManyToOne this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   17     0               this  Lorg/apache/cassandra/utils/MergeIterator$ManyToOne<TIn;TOut;>;
            6   17     1               size  I
            7   17     2  sortedSectionSize  I
            8   17     3                  i  I
    Signature: ()TOut;

  private int consumeHeap(int);
    descriptor: (I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.apache.cassandra.utils.MergeIterator$ManyToOne this
        start local 1 // int idx
         0: .line 227
            iload 1 /* idx */
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.size:I
            if_icmpge 1
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 1 /* idx */
            aaload
            getfield org.apache.cassandra.utils.MergeIterator$Candidate.equalParent:Z
            ifne 2
         1: .line 228
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
         2: .line 230
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 1 /* idx */
            aaload
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.reducer:Lorg/apache/cassandra/utils/MergeIterator$Reducer;
            invokevirtual org.apache.cassandra.utils.MergeIterator$Candidate.consume:(Lorg/apache/cassandra/utils/MergeIterator$Reducer;)V
         3: .line 231
            iload 1 /* idx */
            iconst_1
            ishl
            iconst_3
            isub
            istore 2 /* nextIdx */
        start local 2 // int nextIdx
         4: .line 232
            iload 1 /* idx */
            aload 0 /* this */
            iload 2 /* nextIdx */
            invokevirtual org.apache.cassandra.utils.MergeIterator$ManyToOne.consumeHeap:(I)I
            aload 0 /* this */
            iload 2 /* nextIdx */
            iconst_1
            iadd
            invokevirtual org.apache.cassandra.utils.MergeIterator$ManyToOne.consumeHeap:(I)I
            invokestatic java.lang.Math.max:(II)I
            invokestatic java.lang.Math.max:(II)I
            ireturn
        end local 2 // int nextIdx
        end local 1 // int idx
        end local 0 // org.apache.cassandra.utils.MergeIterator$ManyToOne this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/apache/cassandra/utils/MergeIterator$ManyToOne<TIn;TOut;>;
            0    5     1      idx  I
            4    5     2  nextIdx  I
    MethodParameters:
      Name  Flags
      idx   

  private void replaceAndSink(org.apache.cassandra.utils.MergeIterator$Candidate<In>, );
    descriptor: (Lorg/apache/cassandra/utils/MergeIterator$Candidate;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=8, args_size=3
        start local 0 // org.apache.cassandra.utils.MergeIterator$ManyToOne this
        start local 1 // org.apache.cassandra.utils.MergeIterator$Candidate candidate
        start local 2 // int currIdx
         0: .line 244
            aload 1 /* candidate */
            ifnonnull 3
         1: .line 247
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            aload 0 /* this */
            dup
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.size:I
            iconst_1
            isub
            dup_x1
            putfield org.apache.cassandra.utils.MergeIterator$ManyToOne.size:I
            aaload
            astore 1 /* candidate */
         2: .line 248
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.size:I
            aconst_null
            aastore
         3: .line 251
      StackMap locals:
      StackMap stack:
            aload 1 /* candidate */
            iconst_0
            putfield org.apache.cassandra.utils.MergeIterator$Candidate.equalParent:Z
         4: .line 253
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.size:I
            istore 3 /* size */
        start local 3 // int size
         5: .line 254
            iload 3 /* size */
            iconst_1
            isub
            iconst_4
            invokestatic java.lang.Math.min:(II)I
            istore 4 /* sortedSectionSize */
        start local 4 // int sortedSectionSize
         6: .line 259
            goto 17
        start local 5 // int nextIdx
         7: .line 261
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 5 /* nextIdx */
            aaload
            getfield org.apache.cassandra.utils.MergeIterator$Candidate.equalParent:Z
            ifne 15
         8: .line 263
            aload 1 /* candidate */
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 5 /* nextIdx */
            aaload
            invokevirtual org.apache.cassandra.utils.MergeIterator$Candidate.compareTo:(Lorg/apache/cassandra/utils/MergeIterator$Candidate;)I
            istore 6 /* cmp */
        start local 6 // int cmp
         9: .line 264
            iload 6 /* cmp */
            ifgt 15
        10: .line 266
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 5 /* nextIdx */
            aaload
            iload 6 /* cmp */
            ifne 11
            iconst_1
            goto 12
      StackMap locals: org.apache.cassandra.utils.MergeIterator$ManyToOne org.apache.cassandra.utils.MergeIterator$Candidate int int int int int
      StackMap stack: org.apache.cassandra.utils.MergeIterator$Candidate
        11: iconst_0
      StackMap locals: org.apache.cassandra.utils.MergeIterator$ManyToOne org.apache.cassandra.utils.MergeIterator$Candidate int int int int int
      StackMap stack: org.apache.cassandra.utils.MergeIterator$Candidate int
        12: putfield org.apache.cassandra.utils.MergeIterator$Candidate.equalParent:Z
        13: .line 267
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 2 /* currIdx */
            aload 1 /* candidate */
            aastore
        14: .line 268
            return
        end local 6 // int cmp
        15: .line 272
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 2 /* currIdx */
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 5 /* nextIdx */
            aaload
            aastore
        16: .line 273
            iload 5 /* nextIdx */
            istore 2 /* currIdx */
        end local 5 // int nextIdx
        17: .line 259
      StackMap locals:
      StackMap stack:
            iload 2 /* currIdx */
            iconst_1
            iadd
            dup
            istore 5 /* nextIdx */
        start local 5 // int nextIdx
        18: iload 4 /* sortedSectionSize */
            if_icmple 7
        19: .line 280
            goto 39
        20: .line 282
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 5 /* nextIdx */
            aaload
            getfield org.apache.cassandra.utils.MergeIterator$Candidate.equalParent:Z
            ifne 37
        21: .line 284
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 5 /* nextIdx */
            iconst_1
            iadd
            aaload
            getfield org.apache.cassandra.utils.MergeIterator$Candidate.equalParent:Z
            ifne 36
        22: .line 287
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 5 /* nextIdx */
            iconst_1
            iadd
            aaload
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 5 /* nextIdx */
            aaload
            invokevirtual org.apache.cassandra.utils.MergeIterator$Candidate.compareTo:(Lorg/apache/cassandra/utils/MergeIterator$Candidate;)I
            istore 6 /* siblingCmp */
        start local 6 // int siblingCmp
        23: .line 288
            iload 6 /* siblingCmp */
            ifge 25
        24: .line 289
            iinc 5 /* nextIdx */ 1
        25: .line 292
      StackMap locals: int
      StackMap stack:
            aload 1 /* candidate */
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 5 /* nextIdx */
            aaload
            invokevirtual org.apache.cassandra.utils.MergeIterator$Candidate.compareTo:(Lorg/apache/cassandra/utils/MergeIterator$Candidate;)I
            istore 7 /* cmp */
        start local 7 // int cmp
        26: .line 293
            iload 7 /* cmp */
            ifgt 33
        27: .line 295
            iload 7 /* cmp */
            ifne 31
        28: .line 297
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 5 /* nextIdx */
            aaload
            iconst_1
            putfield org.apache.cassandra.utils.MergeIterator$Candidate.equalParent:Z
        29: .line 298
            iload 6 /* siblingCmp */
            ifne 31
        30: .line 299
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 5 /* nextIdx */
            iconst_1
            iadd
            aaload
            iconst_1
            putfield org.apache.cassandra.utils.MergeIterator$Candidate.equalParent:Z
        31: .line 302
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 2 /* currIdx */
            aload 1 /* candidate */
            aastore
        32: .line 303
            return
        33: .line 306
      StackMap locals:
      StackMap stack:
            iload 6 /* siblingCmp */
            ifne 37
        34: .line 311
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 5 /* nextIdx */
            iconst_1
            iadd
            aaload
            iconst_1
            putfield org.apache.cassandra.utils.MergeIterator$Candidate.equalParent:Z
        end local 7 // int cmp
        end local 6 // int siblingCmp
        35: .line 313
            goto 37
        36: .line 315
      StackMap locals:
      StackMap stack:
            iinc 5 /* nextIdx */ 1
        37: .line 318
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 2 /* currIdx */
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 5 /* nextIdx */
            aaload
            aastore
        38: .line 319
            iload 5 /* nextIdx */
            istore 2 /* currIdx */
        39: .line 280
      StackMap locals:
      StackMap stack:
            iload 2 /* currIdx */
            iconst_2
            imul
            iload 4 /* sortedSectionSize */
            iconst_1
            isub
            isub
            dup
            istore 5 /* nextIdx */
            iconst_1
            iadd
            iload 3 /* size */
            if_icmplt 20
        40: .line 324
            iload 5 /* nextIdx */
            iload 3 /* size */
            if_icmplt 43
        41: .line 326
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 2 /* currIdx */
            aload 1 /* candidate */
            aastore
        42: .line 327
            return
        43: .line 331
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 5 /* nextIdx */
            aaload
            getfield org.apache.cassandra.utils.MergeIterator$Candidate.equalParent:Z
            ifne 51
        44: .line 333
            aload 1 /* candidate */
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 5 /* nextIdx */
            aaload
            invokevirtual org.apache.cassandra.utils.MergeIterator$Candidate.compareTo:(Lorg/apache/cassandra/utils/MergeIterator$Candidate;)I
            istore 6 /* cmp */
        start local 6 // int cmp
        45: .line 334
            iload 6 /* cmp */
            ifgt 51
        46: .line 336
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 5 /* nextIdx */
            aaload
            iload 6 /* cmp */
            ifne 47
            iconst_1
            goto 48
      StackMap locals: org.apache.cassandra.utils.MergeIterator$ManyToOne org.apache.cassandra.utils.MergeIterator$Candidate int int int int int
      StackMap stack: org.apache.cassandra.utils.MergeIterator$Candidate
        47: iconst_0
      StackMap locals: org.apache.cassandra.utils.MergeIterator$ManyToOne org.apache.cassandra.utils.MergeIterator$Candidate int int int int int
      StackMap stack: org.apache.cassandra.utils.MergeIterator$Candidate int
        48: putfield org.apache.cassandra.utils.MergeIterator$Candidate.equalParent:Z
        49: .line 337
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 2 /* currIdx */
            aload 1 /* candidate */
            aastore
        50: .line 338
            return
        end local 6 // int cmp
        51: .line 342
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 2 /* currIdx */
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 5 /* nextIdx */
            aaload
            aastore
        52: .line 343
            aload 0 /* this */
            getfield org.apache.cassandra.utils.MergeIterator$ManyToOne.heap:[Lorg/apache/cassandra/utils/MergeIterator$Candidate;
            iload 5 /* nextIdx */
            aload 1 /* candidate */
            aastore
        53: .line 344
            return
        end local 5 // int nextIdx
        end local 4 // int sortedSectionSize
        end local 3 // int size
        end local 2 // int currIdx
        end local 1 // org.apache.cassandra.utils.MergeIterator$Candidate candidate
        end local 0 // org.apache.cassandra.utils.MergeIterator$ManyToOne this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   54     0               this  Lorg/apache/cassandra/utils/MergeIterator$ManyToOne<TIn;TOut;>;
            0   54     1          candidate  Lorg/apache/cassandra/utils/MergeIterator$Candidate<TIn;>;
            0   54     2            currIdx  I
            5   54     3               size  I
            6   54     4  sortedSectionSize  I
            7   17     5            nextIdx  I
           18   54     5            nextIdx  I
            9   15     6                cmp  I
           23   35     6         siblingCmp  I
           26   35     7                cmp  I
           45   51     6                cmp  I
    Signature: (Lorg/apache/cassandra/utils/MergeIterator$Candidate<TIn;>;I)V
    MethodParameters:
           Name  Flags
      candidate  
      currIdx    
}
Signature: <In:Ljava/lang/Object;Out:Ljava/lang/Object;>Lorg/apache/cassandra/utils/MergeIterator<TIn;TOut;>;
SourceFile: "MergeIterator.java"
NestHost: org.apache.cassandra.utils.MergeIterator
InnerClasses:
  protected final Candidate = org.apache.cassandra.utils.MergeIterator$Candidate of org.apache.cassandra.utils.MergeIterator
  final ManyToOne = org.apache.cassandra.utils.MergeIterator$ManyToOne of org.apache.cassandra.utils.MergeIterator
  public abstract Reducer = org.apache.cassandra.utils.MergeIterator$Reducer of org.apache.cassandra.utils.MergeIterator