public final class org.eclipse.collections.impl.utility.internal.InternalArrayIterate
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.eclipse.collections.impl.utility.internal.InternalArrayIterate
  super_class: java.lang.Object
{
  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.eclipse.collections.impl.utility.internal.InternalArrayIterate this
         0: .line 75
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 77
            new java.lang.AssertionError
            dup
            ldc "Suppress default constructor for noninstantiability"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        end local 0 // org.eclipse.collections.impl.utility.internal.InternalArrayIterate this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/eclipse/collections/impl/utility/internal/InternalArrayIterate;

  public static <T> boolean arrayEqualsList(T[], int, java.util.List<?>);
    descriptor: ([Ljava/lang/Object;ILjava/util/List;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // java.util.List list
         0: .line 82
            iload 1 /* size */
            aload 2 /* list */
            invokeinterface java.util.List.size:()I
            if_icmpeq 2
         1: .line 84
            iconst_0
            ireturn
         2: .line 86
      StackMap locals:
      StackMap stack:
            aload 2 /* list */
            instanceof java.util.RandomAccess
            ifeq 4
         3: .line 88
            aload 0 /* array */
            iload 1 /* size */
            aload 2 /* list */
            invokestatic org.eclipse.collections.impl.utility.internal.InternalArrayIterate.randomAccessListEquals:([Ljava/lang/Object;ILjava/util/List;)Z
            ireturn
         4: .line 90
      StackMap locals:
      StackMap stack:
            aload 0 /* array */
            iload 1 /* size */
            aload 2 /* list */
            invokestatic org.eclipse.collections.impl.utility.internal.InternalArrayIterate.nonRandomAccessListEquals:([Ljava/lang/Object;ILjava/util/List;)Z
            ireturn
        end local 2 // java.util.List list
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0  array  [Ljava/lang/Object;
            0    5     1   size  I
            0    5     2   list  Ljava/util/List<*>;
    Signature: <T:Ljava/lang/Object;>([TT;ILjava/util/List<*>;)Z
    MethodParameters:
       Name  Flags
      array  
      size   
      list   

  private static <T> boolean randomAccessListEquals(T[], int, java.util.List<?>);
    descriptor: ([Ljava/lang/Object;ILjava/util/List;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // java.util.List list
         0: .line 95
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         1: goto 5
         2: .line 97
      StackMap locals: int
      StackMap stack:
            aload 0 /* array */
            iload 3 /* i */
            aaload
            aload 2 /* list */
            iload 3 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifne 4
         3: .line 99
            iconst_0
            ireturn
         4: .line 95
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 3 /* i */
            iload 1 /* size */
            if_icmplt 2
        end local 3 // int i
         6: .line 102
            iconst_1
            ireturn
        end local 2 // java.util.List list
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0  array  [Ljava/lang/Object;
            0    7     1   size  I
            0    7     2   list  Ljava/util/List<*>;
            1    6     3      i  I
    Signature: <T:Ljava/lang/Object;>([TT;ILjava/util/List<*>;)Z
    MethodParameters:
       Name  Flags
      array  
      size   
      list   

  private static <T> boolean nonRandomAccessListEquals(T[], int, java.util.List<?>);
    descriptor: ([Ljava/lang/Object;ILjava/util/List;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // java.util.List list
         0: .line 107
            aload 2 /* list */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3 /* iterator */
        start local 3 // java.util.Iterator iterator
         1: .line 108
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: goto 8
         3: .line 110
      StackMap locals: java.util.Iterator int
      StackMap stack:
            aload 3 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
         4: .line 112
            iconst_0
            ireturn
         5: .line 114
      StackMap locals:
      StackMap stack:
            aload 0 /* array */
            iload 4 /* i */
            aaload
            aload 3 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifne 7
         6: .line 116
            iconst_0
            ireturn
         7: .line 108
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 4 /* i */
            iload 1 /* size */
            if_icmplt 3
        end local 4 // int i
         9: .line 119
            aload 3 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 10
            iconst_0
            goto 11
      StackMap locals:
      StackMap stack:
        10: iconst_1
      StackMap locals:
      StackMap stack: int
        11: ireturn
        end local 3 // java.util.Iterator iterator
        end local 2 // java.util.List list
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0     array  [Ljava/lang/Object;
            0   12     1      size  I
            0   12     2      list  Ljava/util/List<*>;
            1   12     3  iterator  Ljava/util/Iterator<*>;
            2    9     4         i  I
    Signature: <T:Ljava/lang/Object;>([TT;ILjava/util/List<*>;)Z
    MethodParameters:
       Name  Flags
      array  
      size   
      list   

  public static <T> void forEachWithoutChecks(T[], int, int, org.eclipse.collections.api.block.procedure.Procedure<? super T>);
    descriptor: ([Ljava/lang/Object;IILorg/eclipse/collections/api/block/procedure/Procedure;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // java.lang.Object[] objectArray
        start local 1 // int from
        start local 2 // int to
        start local 3 // org.eclipse.collections.api.block.procedure.Procedure procedure
         0: .line 124
            iload 1 /* from */
            iload 2 /* to */
            if_icmpgt 7
         1: .line 126
            iload 1 /* from */
            istore 4 /* i */
        start local 4 // int i
         2: goto 5
         3: .line 128
      StackMap locals: int
      StackMap stack:
            aload 3 /* procedure */
            aload 0 /* objectArray */
            iload 4 /* i */
            aaload
            invokeinterface org.eclipse.collections.api.block.procedure.Procedure.value:(Ljava/lang/Object;)V
         4: .line 126
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 4 /* i */
            iload 2 /* to */
            if_icmple 3
        end local 4 // int i
         6: .line 130
            goto 12
         7: .line 133
      StackMap locals:
      StackMap stack:
            iload 1 /* from */
            istore 4 /* i */
        start local 4 // int i
         8: goto 11
         9: .line 135
      StackMap locals: int
      StackMap stack:
            aload 3 /* procedure */
            aload 0 /* objectArray */
            iload 4 /* i */
            aaload
            invokeinterface org.eclipse.collections.api.block.procedure.Procedure.value:(Ljava/lang/Object;)V
        10: .line 133
            iinc 4 /* i */ -1
      StackMap locals:
      StackMap stack:
        11: iload 4 /* i */
            iload 2 /* to */
            if_icmpge 9
        end local 4 // int i
        12: .line 138
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.eclipse.collections.api.block.procedure.Procedure procedure
        end local 2 // int to
        end local 1 // int from
        end local 0 // java.lang.Object[] objectArray
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   13     0  objectArray  [Ljava/lang/Object;
            0   13     1         from  I
            0   13     2           to  I
            0   13     3    procedure  Lorg/eclipse/collections/api/block/procedure/Procedure<-TT;>;
            2    6     4            i  I
            8   12     4            i  I
    Signature: <T:Ljava/lang/Object;>([TT;IILorg/eclipse/collections/api/block/procedure/Procedure<-TT;>;)V
    MethodParameters:
             Name  Flags
      objectArray  
      from         
      to           
      procedure    

  public static <T> void forEachWithIndexWithoutChecks(T[], int, int, org.eclipse.collections.api.block.procedure.primitive.ObjectIntProcedure<? super T>);
    descriptor: ([Ljava/lang/Object;IILorg/eclipse/collections/api/block/procedure/primitive/ObjectIntProcedure;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // java.lang.Object[] objectArray
        start local 1 // int from
        start local 2 // int to
        start local 3 // org.eclipse.collections.api.block.procedure.primitive.ObjectIntProcedure objectIntProcedure
         0: .line 142
            iload 1 /* from */
            iload 2 /* to */
            if_icmpgt 7
         1: .line 144
            iload 1 /* from */
            istore 4 /* i */
        start local 4 // int i
         2: goto 5
         3: .line 146
      StackMap locals: int
      StackMap stack:
            aload 3 /* objectIntProcedure */
            aload 0 /* objectArray */
            iload 4 /* i */
            aaload
            iload 4 /* i */
            invokeinterface org.eclipse.collections.api.block.procedure.primitive.ObjectIntProcedure.value:(Ljava/lang/Object;I)V
         4: .line 144
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 4 /* i */
            iload 2 /* to */
            if_icmple 3
        end local 4 // int i
         6: .line 148
            goto 12
         7: .line 151
      StackMap locals:
      StackMap stack:
            iload 1 /* from */
            istore 4 /* i */
        start local 4 // int i
         8: goto 11
         9: .line 153
      StackMap locals: int
      StackMap stack:
            aload 3 /* objectIntProcedure */
            aload 0 /* objectArray */
            iload 4 /* i */
            aaload
            iload 4 /* i */
            invokeinterface org.eclipse.collections.api.block.procedure.primitive.ObjectIntProcedure.value:(Ljava/lang/Object;I)V
        10: .line 151
            iinc 4 /* i */ -1
      StackMap locals:
      StackMap stack:
        11: iload 4 /* i */
            iload 2 /* to */
            if_icmpge 9
        end local 4 // int i
        12: .line 156
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.eclipse.collections.api.block.procedure.primitive.ObjectIntProcedure objectIntProcedure
        end local 2 // int to
        end local 1 // int from
        end local 0 // java.lang.Object[] objectArray
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   13     0         objectArray  [Ljava/lang/Object;
            0   13     1                from  I
            0   13     2                  to  I
            0   13     3  objectIntProcedure  Lorg/eclipse/collections/api/block/procedure/primitive/ObjectIntProcedure<-TT;>;
            2    6     4                   i  I
            8   12     4                   i  I
    Signature: <T:Ljava/lang/Object;>([TT;IILorg/eclipse/collections/api/block/procedure/primitive/ObjectIntProcedure<-TT;>;)V
    MethodParameters:
                    Name  Flags
      objectArray         
      from                
      to                  
      objectIntProcedure  

  public static <T> void batchForEach(org.eclipse.collections.api.block.procedure.Procedure<? super T>, T[], int, int, );
    descriptor: (Lorg/eclipse/collections/api/block/procedure/Procedure;[Ljava/lang/Object;III)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=9, args_size=5
        start local 0 // org.eclipse.collections.api.block.procedure.Procedure procedure
        start local 1 // java.lang.Object[] array
        start local 2 // int size
        start local 3 // int sectionIndex
        start local 4 // int sectionCount
         0: .line 160
            iload 2 /* size */
            iload 4 /* sectionCount */
            idiv
            istore 5 /* sectionSize */
        start local 5 // int sectionSize
         1: .line 161
            iload 5 /* sectionSize */
            iload 3 /* sectionIndex */
            imul
            istore 6 /* start */
        start local 6 // int start
         2: .line 162
            iload 3 /* sectionIndex */
            iload 4 /* sectionCount */
            iconst_1
            isub
            if_icmpne 3
            iload 2 /* size */
            goto 4
      StackMap locals: int int
      StackMap stack:
         3: iload 6 /* start */
            iload 5 /* sectionSize */
            iadd
      StackMap locals:
      StackMap stack: int
         4: istore 7 /* end */
        start local 7 // int end
         5: .line 163
            aload 0 /* procedure */
            instanceof org.eclipse.collections.impl.block.procedure.FastListSelectProcedure
            ifeq 8
         6: .line 165
            aload 1 /* array */
            iload 6 /* start */
            iload 7 /* end */
            aload 0 /* procedure */
            checkcast org.eclipse.collections.impl.block.procedure.FastListSelectProcedure
            invokestatic org.eclipse.collections.impl.utility.internal.InternalArrayIterate.batchFastListSelect:([Ljava/lang/Object;IILorg/eclipse/collections/impl/block/procedure/FastListSelectProcedure;)V
         7: .line 166
            goto 28
         8: .line 167
      StackMap locals: int
      StackMap stack:
            aload 0 /* procedure */
            instanceof org.eclipse.collections.impl.block.procedure.FastListCollectProcedure
            ifeq 11
         9: .line 169
            aload 1 /* array */
            iload 6 /* start */
            iload 7 /* end */
            aload 0 /* procedure */
            checkcast org.eclipse.collections.impl.block.procedure.FastListCollectProcedure
            invokestatic org.eclipse.collections.impl.utility.internal.InternalArrayIterate.batchFastListCollect:([Ljava/lang/Object;IILorg/eclipse/collections/impl/block/procedure/FastListCollectProcedure;)V
        10: .line 170
            goto 28
        11: .line 171
      StackMap locals:
      StackMap stack:
            aload 0 /* procedure */
            instanceof org.eclipse.collections.impl.block.procedure.FastListCollectIfProcedure
            ifeq 14
        12: .line 173
            aload 1 /* array */
            iload 6 /* start */
            iload 7 /* end */
            aload 0 /* procedure */
            checkcast org.eclipse.collections.impl.block.procedure.FastListCollectIfProcedure
            invokestatic org.eclipse.collections.impl.utility.internal.InternalArrayIterate.batchFastListCollectIf:([Ljava/lang/Object;IILorg/eclipse/collections/impl/block/procedure/FastListCollectIfProcedure;)V
        13: .line 174
            goto 28
        14: .line 175
      StackMap locals:
      StackMap stack:
            aload 0 /* procedure */
            instanceof org.eclipse.collections.impl.block.procedure.CountProcedure
            ifeq 17
        15: .line 177
            aload 1 /* array */
            iload 6 /* start */
            iload 7 /* end */
            aload 0 /* procedure */
            checkcast org.eclipse.collections.impl.block.procedure.CountProcedure
            invokestatic org.eclipse.collections.impl.utility.internal.InternalArrayIterate.batchCount:([Ljava/lang/Object;IILorg/eclipse/collections/impl/block/procedure/CountProcedure;)V
        16: .line 178
            goto 28
        17: .line 179
      StackMap locals:
      StackMap stack:
            aload 0 /* procedure */
            instanceof org.eclipse.collections.impl.block.procedure.FastListRejectProcedure
            ifeq 20
        18: .line 181
            aload 1 /* array */
            iload 6 /* start */
            iload 7 /* end */
            aload 0 /* procedure */
            checkcast org.eclipse.collections.impl.block.procedure.FastListRejectProcedure
            invokestatic org.eclipse.collections.impl.utility.internal.InternalArrayIterate.batchReject:([Ljava/lang/Object;IILorg/eclipse/collections/impl/block/procedure/FastListRejectProcedure;)V
        19: .line 182
            goto 28
        20: .line 183
      StackMap locals:
      StackMap stack:
            aload 0 /* procedure */
            instanceof org.eclipse.collections.impl.block.procedure.MultimapPutProcedure
            ifeq 23
        21: .line 185
            aload 1 /* array */
            iload 6 /* start */
            iload 7 /* end */
            aload 0 /* procedure */
            checkcast org.eclipse.collections.impl.block.procedure.MultimapPutProcedure
            invokestatic org.eclipse.collections.impl.utility.internal.InternalArrayIterate.batchGroupBy:([Ljava/lang/Object;IILorg/eclipse/collections/impl/block/procedure/MultimapPutProcedure;)V
        22: .line 186
            goto 28
        23: .line 189
      StackMap locals:
      StackMap stack:
            iload 6 /* start */
            istore 8 /* i */
        start local 8 // int i
        24: goto 27
        25: .line 191
      StackMap locals: int
      StackMap stack:
            aload 0 /* procedure */
            aload 1 /* array */
            iload 8 /* i */
            aaload
            invokeinterface org.eclipse.collections.api.block.procedure.Procedure.value:(Ljava/lang/Object;)V
        26: .line 189
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        27: iload 8 /* i */
            iload 7 /* end */
            if_icmplt 25
        end local 8 // int i
        28: .line 194
      StackMap locals:
      StackMap stack:
            return
        end local 7 // int end
        end local 6 // int start
        end local 5 // int sectionSize
        end local 4 // int sectionCount
        end local 3 // int sectionIndex
        end local 2 // int size
        end local 1 // java.lang.Object[] array
        end local 0 // org.eclipse.collections.api.block.procedure.Procedure procedure
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   29     0     procedure  Lorg/eclipse/collections/api/block/procedure/Procedure<-TT;>;
            0   29     1         array  [Ljava/lang/Object;
            0   29     2          size  I
            0   29     3  sectionIndex  I
            0   29     4  sectionCount  I
            1   29     5   sectionSize  I
            2   29     6         start  I
            5   29     7           end  I
           24   28     8             i  I
    Signature: <T:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/procedure/Procedure<-TT;>;[TT;III)V
    MethodParameters:
              Name  Flags
      procedure     
      array         
      size          
      sectionIndex  
      sectionCount  

  private static <T> void batchGroupBy(T[], int, int, org.eclipse.collections.impl.block.procedure.MultimapPutProcedure<?, T>);
    descriptor: ([Ljava/lang/Object;IILorg/eclipse/collections/impl/block/procedure/MultimapPutProcedure;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int start
        start local 2 // int end
        start local 3 // org.eclipse.collections.impl.block.procedure.MultimapPutProcedure castProcedure
         0: .line 201
            iload 1 /* start */
            istore 4 /* i */
        start local 4 // int i
         1: goto 4
         2: .line 203
      StackMap locals: int
      StackMap stack:
            aload 3 /* castProcedure */
            aload 0 /* array */
            iload 4 /* i */
            aaload
            invokevirtual org.eclipse.collections.impl.block.procedure.MultimapPutProcedure.value:(Ljava/lang/Object;)V
         3: .line 201
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 4 /* i */
            iload 2 /* end */
            if_icmplt 2
        end local 4 // int i
         5: .line 205
            return
        end local 3 // org.eclipse.collections.impl.block.procedure.MultimapPutProcedure castProcedure
        end local 2 // int end
        end local 1 // int start
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    6     0          array  [Ljava/lang/Object;
            0    6     1          start  I
            0    6     2            end  I
            0    6     3  castProcedure  Lorg/eclipse/collections/impl/block/procedure/MultimapPutProcedure<*TT;>;
            1    5     4              i  I
    Signature: <T:Ljava/lang/Object;>([TT;IILorg/eclipse/collections/impl/block/procedure/MultimapPutProcedure<*TT;>;)V
    MethodParameters:
               Name  Flags
      array          
      start          
      end            
      castProcedure  

  private static <T> void batchReject(T[], int, int, org.eclipse.collections.impl.block.procedure.FastListRejectProcedure<T>);
    descriptor: ([Ljava/lang/Object;IILorg/eclipse/collections/impl/block/procedure/FastListRejectProcedure;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int start
        start local 2 // int end
        start local 3 // org.eclipse.collections.impl.block.procedure.FastListRejectProcedure castProcedure
         0: .line 212
            iload 1 /* start */
            istore 4 /* i */
        start local 4 // int i
         1: goto 4
         2: .line 214
      StackMap locals: int
      StackMap stack:
            aload 3 /* castProcedure */
            aload 0 /* array */
            iload 4 /* i */
            aaload
            invokevirtual org.eclipse.collections.impl.block.procedure.FastListRejectProcedure.value:(Ljava/lang/Object;)V
         3: .line 212
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 4 /* i */
            iload 2 /* end */
            if_icmplt 2
        end local 4 // int i
         5: .line 216
            return
        end local 3 // org.eclipse.collections.impl.block.procedure.FastListRejectProcedure castProcedure
        end local 2 // int end
        end local 1 // int start
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    6     0          array  [Ljava/lang/Object;
            0    6     1          start  I
            0    6     2            end  I
            0    6     3  castProcedure  Lorg/eclipse/collections/impl/block/procedure/FastListRejectProcedure<TT;>;
            1    5     4              i  I
    Signature: <T:Ljava/lang/Object;>([TT;IILorg/eclipse/collections/impl/block/procedure/FastListRejectProcedure<TT;>;)V
    MethodParameters:
               Name  Flags
      array          
      start          
      end            
      castProcedure  

  private static <T> void batchCount(T[], int, int, org.eclipse.collections.impl.block.procedure.CountProcedure<T>);
    descriptor: ([Ljava/lang/Object;IILorg/eclipse/collections/impl/block/procedure/CountProcedure;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int start
        start local 2 // int end
        start local 3 // org.eclipse.collections.impl.block.procedure.CountProcedure castProcedure
         0: .line 223
            iload 1 /* start */
            istore 4 /* i */
        start local 4 // int i
         1: goto 4
         2: .line 225
      StackMap locals: int
      StackMap stack:
            aload 3 /* castProcedure */
            aload 0 /* array */
            iload 4 /* i */
            aaload
            invokevirtual org.eclipse.collections.impl.block.procedure.CountProcedure.value:(Ljava/lang/Object;)V
         3: .line 223
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 4 /* i */
            iload 2 /* end */
            if_icmplt 2
        end local 4 // int i
         5: .line 227
            return
        end local 3 // org.eclipse.collections.impl.block.procedure.CountProcedure castProcedure
        end local 2 // int end
        end local 1 // int start
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    6     0          array  [Ljava/lang/Object;
            0    6     1          start  I
            0    6     2            end  I
            0    6     3  castProcedure  Lorg/eclipse/collections/impl/block/procedure/CountProcedure<TT;>;
            1    5     4              i  I
    Signature: <T:Ljava/lang/Object;>([TT;IILorg/eclipse/collections/impl/block/procedure/CountProcedure<TT;>;)V
    MethodParameters:
               Name  Flags
      array          
      start          
      end            
      castProcedure  

  private static <T> void batchFastListCollectIf(T[], int, int, org.eclipse.collections.impl.block.procedure.FastListCollectIfProcedure<T, ?>);
    descriptor: ([Ljava/lang/Object;IILorg/eclipse/collections/impl/block/procedure/FastListCollectIfProcedure;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int start
        start local 2 // int end
        start local 3 // org.eclipse.collections.impl.block.procedure.FastListCollectIfProcedure castProcedure
         0: .line 234
            iload 1 /* start */
            istore 4 /* i */
        start local 4 // int i
         1: goto 4
         2: .line 236
      StackMap locals: int
      StackMap stack:
            aload 3 /* castProcedure */
            aload 0 /* array */
            iload 4 /* i */
            aaload
            invokevirtual org.eclipse.collections.impl.block.procedure.FastListCollectIfProcedure.value:(Ljava/lang/Object;)V
         3: .line 234
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 4 /* i */
            iload 2 /* end */
            if_icmplt 2
        end local 4 // int i
         5: .line 238
            return
        end local 3 // org.eclipse.collections.impl.block.procedure.FastListCollectIfProcedure castProcedure
        end local 2 // int end
        end local 1 // int start
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    6     0          array  [Ljava/lang/Object;
            0    6     1          start  I
            0    6     2            end  I
            0    6     3  castProcedure  Lorg/eclipse/collections/impl/block/procedure/FastListCollectIfProcedure<TT;*>;
            1    5     4              i  I
    Signature: <T:Ljava/lang/Object;>([TT;IILorg/eclipse/collections/impl/block/procedure/FastListCollectIfProcedure<TT;*>;)V
    MethodParameters:
               Name  Flags
      array          
      start          
      end            
      castProcedure  

  private static <T> void batchFastListCollect(T[], int, int, org.eclipse.collections.impl.block.procedure.FastListCollectProcedure<T, ?>);
    descriptor: ([Ljava/lang/Object;IILorg/eclipse/collections/impl/block/procedure/FastListCollectProcedure;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int start
        start local 2 // int end
        start local 3 // org.eclipse.collections.impl.block.procedure.FastListCollectProcedure castProcedure
         0: .line 245
            iload 1 /* start */
            istore 4 /* i */
        start local 4 // int i
         1: goto 4
         2: .line 247
      StackMap locals: int
      StackMap stack:
            aload 3 /* castProcedure */
            aload 0 /* array */
            iload 4 /* i */
            aaload
            invokevirtual org.eclipse.collections.impl.block.procedure.FastListCollectProcedure.value:(Ljava/lang/Object;)V
         3: .line 245
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 4 /* i */
            iload 2 /* end */
            if_icmplt 2
        end local 4 // int i
         5: .line 249
            return
        end local 3 // org.eclipse.collections.impl.block.procedure.FastListCollectProcedure castProcedure
        end local 2 // int end
        end local 1 // int start
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    6     0          array  [Ljava/lang/Object;
            0    6     1          start  I
            0    6     2            end  I
            0    6     3  castProcedure  Lorg/eclipse/collections/impl/block/procedure/FastListCollectProcedure<TT;*>;
            1    5     4              i  I
    Signature: <T:Ljava/lang/Object;>([TT;IILorg/eclipse/collections/impl/block/procedure/FastListCollectProcedure<TT;*>;)V
    MethodParameters:
               Name  Flags
      array          
      start          
      end            
      castProcedure  

  private static <T> void batchFastListSelect(T[], int, int, org.eclipse.collections.impl.block.procedure.FastListSelectProcedure<T>);
    descriptor: ([Ljava/lang/Object;IILorg/eclipse/collections/impl/block/procedure/FastListSelectProcedure;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int start
        start local 2 // int end
        start local 3 // org.eclipse.collections.impl.block.procedure.FastListSelectProcedure castProcedure
         0: .line 256
            iload 1 /* start */
            istore 4 /* i */
        start local 4 // int i
         1: goto 4
         2: .line 258
      StackMap locals: int
      StackMap stack:
            aload 3 /* castProcedure */
            aload 0 /* array */
            iload 4 /* i */
            aaload
            invokevirtual org.eclipse.collections.impl.block.procedure.FastListSelectProcedure.value:(Ljava/lang/Object;)V
         3: .line 256
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 4 /* i */
            iload 2 /* end */
            if_icmplt 2
        end local 4 // int i
         5: .line 260
            return
        end local 3 // org.eclipse.collections.impl.block.procedure.FastListSelectProcedure castProcedure
        end local 2 // int end
        end local 1 // int start
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    6     0          array  [Ljava/lang/Object;
            0    6     1          start  I
            0    6     2            end  I
            0    6     3  castProcedure  Lorg/eclipse/collections/impl/block/procedure/FastListSelectProcedure<TT;>;
            1    5     4              i  I
    Signature: <T:Ljava/lang/Object;>([TT;IILorg/eclipse/collections/impl/block/procedure/FastListSelectProcedure<TT;>;)V
    MethodParameters:
               Name  Flags
      array          
      start          
      end            
      castProcedure  

  public static <T, V, R extends org.eclipse.collections.api.multimap.MutableMultimap<V, T>> R groupBy(T[], int, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>, );
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/multimap/MutableMultimap;)Lorg/eclipse/collections/api/multimap/MutableMultimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.function.Function function
        start local 3 // org.eclipse.collections.api.multimap.MutableMultimap target
         0: .line 264
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: goto 5
         2: .line 266
      StackMap locals: int
      StackMap stack:
            aload 0 /* array */
            iload 4 /* i */
            aaload
            astore 5 /* item */
        start local 5 // java.lang.Object item
         3: .line 267
            aload 3 /* target */
            aload 2 /* function */
            aload 5 /* item */
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            aload 5 /* item */
            invokeinterface org.eclipse.collections.api.multimap.MutableMultimap.put:(Ljava/lang/Object;Ljava/lang/Object;)Z
            pop
        end local 5 // java.lang.Object item
         4: .line 264
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 4 /* i */
            iload 1 /* size */
            if_icmplt 2
        end local 4 // int i
         6: .line 269
            aload 3 /* target */
            areturn
        end local 3 // org.eclipse.collections.api.multimap.MutableMultimap target
        end local 2 // org.eclipse.collections.api.block.function.Function function
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0     array  [Ljava/lang/Object;
            0    7     1      size  I
            0    7     2  function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            0    7     3    target  TR;
            1    6     4         i  I
            3    4     5      item  TT;
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;R::Lorg/eclipse/collections/api/multimap/MutableMultimap<TV;TT;>;>([TT;ILorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;TR;)TR;
    MethodParameters:
          Name  Flags
      array     
      size      
      function  
      target    

  public static <T, V, R extends org.eclipse.collections.api.multimap.MutableMultimap<V, T>> R groupByEach(T[], int, org.eclipse.collections.api.block.function.Function<? super T, ? extends java.lang.Iterable<V>>, );
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/multimap/MutableMultimap;)Lorg/eclipse/collections/api/multimap/MutableMultimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=9, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.function.Function function
        start local 3 // org.eclipse.collections.api.multimap.MutableMultimap target
         0: .line 278
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: goto 9
         2: .line 280
      StackMap locals: int
      StackMap stack:
            aload 0 /* array */
            iload 4 /* i */
            aaload
            astore 5 /* item */
        start local 5 // java.lang.Object item
         3: .line 281
            aload 2 /* function */
            aload 5 /* item */
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Iterable
            astore 6 /* iterable */
        start local 6 // java.lang.Iterable iterable
         4: .line 282
            aload 6 /* iterable */
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 8
            goto 7
      StackMap locals: java.lang.Object[] int org.eclipse.collections.api.block.function.Function org.eclipse.collections.api.multimap.MutableMultimap int java.lang.Object java.lang.Iterable top java.util.Iterator
      StackMap stack:
         5: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Object
            astore 7 /* key */
        start local 7 // java.lang.Object key
         6: .line 284
            aload 3 /* target */
            aload 7 /* key */
            aload 5 /* item */
            invokeinterface org.eclipse.collections.api.multimap.MutableMultimap.put:(Ljava/lang/Object;Ljava/lang/Object;)Z
            pop
        end local 7 // java.lang.Object key
         7: .line 282
      StackMap locals:
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        end local 6 // java.lang.Iterable iterable
        end local 5 // java.lang.Object item
         8: .line 278
            iinc 4 /* i */ 1
      StackMap locals: java.lang.Object[] int org.eclipse.collections.api.block.function.Function org.eclipse.collections.api.multimap.MutableMultimap int
      StackMap stack:
         9: iload 4 /* i */
            iload 1 /* size */
            if_icmplt 2
        end local 4 // int i
        10: .line 287
            aload 3 /* target */
            areturn
        end local 3 // org.eclipse.collections.api.multimap.MutableMultimap target
        end local 2 // org.eclipse.collections.api.block.function.Function function
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0     array  [Ljava/lang/Object;
            0   11     1      size  I
            0   11     2  function  Lorg/eclipse/collections/api/block/function/Function<-TT;+Ljava/lang/Iterable<TV;>;>;
            0   11     3    target  TR;
            1   10     4         i  I
            3    8     5      item  TT;
            4    8     6  iterable  Ljava/lang/Iterable<TV;>;
            6    7     7       key  TV;
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;R::Lorg/eclipse/collections/api/multimap/MutableMultimap<TV;TT;>;>([TT;ILorg/eclipse/collections/api/block/function/Function<-TT;+Ljava/lang/Iterable<TV;>;>;TR;)TR;
    MethodParameters:
          Name  Flags
      array     
      size      
      function  
      target    

  public static <T, K, R extends org.eclipse.collections.api.map.MutableMapIterable<K, T>> R groupByUniqueKey(T[], int, org.eclipse.collections.api.block.function.Function<? super T, ? extends K>, );
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/map/MutableMapIterable;)Lorg/eclipse/collections/api/map/MutableMapIterable;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=7, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.function.Function function
        start local 3 // org.eclipse.collections.api.map.MutableMapIterable target
         0: .line 296
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: goto 7
         2: .line 298
      StackMap locals: int
      StackMap stack:
            aload 0 /* array */
            iload 4 /* i */
            aaload
            astore 5 /* value */
        start local 5 // java.lang.Object value
         3: .line 299
            aload 2 /* function */
            aload 5 /* value */
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 6 /* key */
        start local 6 // java.lang.Object key
         4: .line 300
            aload 3 /* target */
            aload 6 /* key */
            aload 5 /* value */
            invokeinterface org.eclipse.collections.api.map.MutableMapIterable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            ifnull 6
         5: .line 302
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Key "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* key */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " already exists in map!"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        end local 6 // java.lang.Object key
        end local 5 // java.lang.Object value
         6: .line 296
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 4 /* i */
            iload 1 /* size */
            if_icmplt 2
        end local 4 // int i
         8: .line 305
            aload 3 /* target */
            areturn
        end local 3 // org.eclipse.collections.api.map.MutableMapIterable target
        end local 2 // org.eclipse.collections.api.block.function.Function function
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0     array  [Ljava/lang/Object;
            0    9     1      size  I
            0    9     2  function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TK;>;
            0    9     3    target  TR;
            1    8     4         i  I
            3    6     5     value  TT;
            4    6     6       key  TK;
    Signature: <T:Ljava/lang/Object;K:Ljava/lang/Object;R::Lorg/eclipse/collections/api/map/MutableMapIterable<TK;TT;>;>([TT;ILorg/eclipse/collections/api/block/function/Function<-TT;+TK;>;TR;)TR;
    MethodParameters:
          Name  Flags
      array     
      size      
      function  
      target    

  public static <T> org.eclipse.collections.impl.partition.list.PartitionFastList<T> partition(T[], int, org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate;)Lorg/eclipse/collections/impl/partition/list/PartitionFastList;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=7, args_size=3
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 310
            new org.eclipse.collections.impl.partition.list.PartitionFastList
            dup
            invokespecial org.eclipse.collections.impl.partition.list.PartitionFastList.<init>:()V
            astore 3 /* partitionFastList */
        start local 3 // org.eclipse.collections.impl.partition.list.PartitionFastList partitionFastList
         1: .line 312
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: goto 10
         3: .line 314
      StackMap locals: org.eclipse.collections.impl.partition.list.PartitionFastList int
      StackMap stack:
            aload 0 /* array */
            iload 4 /* i */
            aaload
            astore 5 /* each */
        start local 5 // java.lang.Object each
         4: .line 315
            aload 2 /* predicate */
            aload 5 /* each */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate.accept:(Ljava/lang/Object;)Z
            ifeq 6
         5: .line 316
            aload 3 /* partitionFastList */
            invokevirtual org.eclipse.collections.impl.partition.list.PartitionFastList.getSelected:()Lorg/eclipse/collections/api/list/MutableList;
            goto 7
         6: .line 317
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 3 /* partitionFastList */
            invokevirtual org.eclipse.collections.impl.partition.list.PartitionFastList.getRejected:()Lorg/eclipse/collections/api/list/MutableList;
         7: .line 315
      StackMap locals:
      StackMap stack: org.eclipse.collections.api.list.MutableList
            astore 6 /* bucket */
        start local 6 // org.eclipse.collections.api.list.MutableList bucket
         8: .line 318
            aload 6 /* bucket */
            aload 5 /* each */
            invokeinterface org.eclipse.collections.api.list.MutableList.add:(Ljava/lang/Object;)Z
            pop
        end local 6 // org.eclipse.collections.api.list.MutableList bucket
        end local 5 // java.lang.Object each
         9: .line 312
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 4 /* i */
            iload 1 /* size */
            if_icmplt 3
        end local 4 // int i
        11: .line 320
            aload 3 /* partitionFastList */
            areturn
        end local 3 // org.eclipse.collections.impl.partition.list.PartitionFastList partitionFastList
        end local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   12     0              array  [Ljava/lang/Object;
            0   12     1               size  I
            0   12     2          predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            1   12     3  partitionFastList  Lorg/eclipse/collections/impl/partition/list/PartitionFastList<TT;>;
            2   11     4                  i  I
            4    9     5               each  TT;
            8    9     6             bucket  Lorg/eclipse/collections/api/list/MutableList<TT;>;
    Signature: <T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)Lorg/eclipse/collections/impl/partition/list/PartitionFastList<TT;>;
    MethodParameters:
           Name  Flags
      array      
      size       
      predicate  

  public static <T, P> org.eclipse.collections.impl.partition.list.PartitionFastList<T> partitionWith(T[], int, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, P);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Lorg/eclipse/collections/impl/partition/list/PartitionFastList;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=8, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 3 // java.lang.Object parameter
         0: .line 325
            new org.eclipse.collections.impl.partition.list.PartitionFastList
            dup
            invokespecial org.eclipse.collections.impl.partition.list.PartitionFastList.<init>:()V
            astore 4 /* partitionFastList */
        start local 4 // org.eclipse.collections.impl.partition.list.PartitionFastList partitionFastList
         1: .line 327
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         2: goto 10
         3: .line 329
      StackMap locals: org.eclipse.collections.impl.partition.list.PartitionFastList int
      StackMap stack:
            aload 0 /* array */
            iload 5 /* i */
            aaload
            astore 6 /* each */
        start local 6 // java.lang.Object each
         4: .line 330
            aload 2 /* predicate */
            aload 6 /* each */
            aload 3 /* parameter */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate2.accept:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 6
         5: .line 331
            aload 4 /* partitionFastList */
            invokevirtual org.eclipse.collections.impl.partition.list.PartitionFastList.getSelected:()Lorg/eclipse/collections/api/list/MutableList;
            goto 7
         6: .line 332
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 4 /* partitionFastList */
            invokevirtual org.eclipse.collections.impl.partition.list.PartitionFastList.getRejected:()Lorg/eclipse/collections/api/list/MutableList;
         7: .line 330
      StackMap locals:
      StackMap stack: org.eclipse.collections.api.list.MutableList
            astore 7 /* bucket */
        start local 7 // org.eclipse.collections.api.list.MutableList bucket
         8: .line 333
            aload 7 /* bucket */
            aload 6 /* each */
            invokeinterface org.eclipse.collections.api.list.MutableList.add:(Ljava/lang/Object;)Z
            pop
        end local 7 // org.eclipse.collections.api.list.MutableList bucket
        end local 6 // java.lang.Object each
         9: .line 327
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 5 /* i */
            iload 1 /* size */
            if_icmplt 3
        end local 5 // int i
        11: .line 335
            aload 4 /* partitionFastList */
            areturn
        end local 4 // org.eclipse.collections.impl.partition.list.PartitionFastList partitionFastList
        end local 3 // java.lang.Object parameter
        end local 2 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   12     0              array  [Ljava/lang/Object;
            0   12     1               size  I
            0   12     2          predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0   12     3          parameter  TP;
            1   12     4  partitionFastList  Lorg/eclipse/collections/impl/partition/list/PartitionFastList<TT;>;
            2   11     5                  i  I
            4    9     6               each  TT;
            8    9     7             bucket  Lorg/eclipse/collections/api/list/MutableList<TT;>;
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;)Lorg/eclipse/collections/impl/partition/list/PartitionFastList<TT;>;
    MethodParameters:
           Name  Flags
      array      
      size       
      predicate  
      parameter  

  public static <T, P> org.eclipse.collections.api.tuple.Twin<org.eclipse.collections.api.list.MutableList<T>> selectAndRejectWith(T[], int, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, P);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Lorg/eclipse/collections/api/tuple/Twin;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=8, args_size=4
        start local 0 // java.lang.Object[] objectArray
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 3 // java.lang.Object parameter
         0: .line 345
            getstatic org.eclipse.collections.api.factory.Lists.mutable:Lorg/eclipse/collections/api/factory/list/MutableListFactory;
            invokeinterface org.eclipse.collections.api.factory.list.MutableListFactory.empty:()Lorg/eclipse/collections/api/list/MutableList;
            astore 4 /* positiveResult */
        start local 4 // org.eclipse.collections.api.list.MutableList positiveResult
         1: .line 346
            getstatic org.eclipse.collections.api.factory.Lists.mutable:Lorg/eclipse/collections/api/factory/list/MutableListFactory;
            invokeinterface org.eclipse.collections.api.factory.list.MutableListFactory.empty:()Lorg/eclipse/collections/api/list/MutableList;
            astore 5 /* negativeResult */
        start local 5 // org.eclipse.collections.api.list.MutableList negativeResult
         2: .line 347
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         3: goto 9
         4: .line 349
      StackMap locals: org.eclipse.collections.api.list.MutableList org.eclipse.collections.api.list.MutableList int
      StackMap stack:
            aload 0 /* objectArray */
            iload 6 /* i */
            aaload
            astore 7 /* each */
        start local 7 // java.lang.Object each
         5: .line 350
            aload 2 /* predicate */
            aload 7 /* each */
            aload 3 /* parameter */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate2.accept:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 6
            aload 4 /* positiveResult */
            goto 7
      StackMap locals: java.lang.Object
      StackMap stack:
         6: aload 5 /* negativeResult */
      StackMap locals:
      StackMap stack: org.eclipse.collections.api.list.MutableList
         7: aload 7 /* each */
            invokeinterface org.eclipse.collections.api.list.MutableList.add:(Ljava/lang/Object;)Z
            pop
        end local 7 // java.lang.Object each
         8: .line 347
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 6 /* i */
            iload 1 /* size */
            if_icmplt 4
        end local 6 // int i
        10: .line 352
            aload 4 /* positiveResult */
            aload 5 /* negativeResult */
            invokestatic org.eclipse.collections.impl.tuple.Tuples.twin:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/eclipse/collections/api/tuple/Twin;
            areturn
        end local 5 // org.eclipse.collections.api.list.MutableList negativeResult
        end local 4 // org.eclipse.collections.api.list.MutableList positiveResult
        end local 3 // java.lang.Object parameter
        end local 2 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 1 // int size
        end local 0 // java.lang.Object[] objectArray
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   11     0     objectArray  [Ljava/lang/Object;
            0   11     1            size  I
            0   11     2       predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0   11     3       parameter  TP;
            1   11     4  positiveResult  Lorg/eclipse/collections/api/list/MutableList<TT;>;
            2   11     5  negativeResult  Lorg/eclipse/collections/api/list/MutableList<TT;>;
            3   10     6               i  I
            5    8     7            each  TT;
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;)Lorg/eclipse/collections/api/tuple/Twin<Lorg/eclipse/collections/api/list/MutableList<TT;>;>;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
             Name  Flags
      objectArray  
      size         
      predicate    
      parameter    

  public static int indexOf(java.lang.Object[], int, java.lang.Object);
    descriptor: ([Ljava/lang/Object;ILjava/lang/Object;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // java.lang.Object object
         0: .line 357
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         1: goto 5
         2: .line 359
      StackMap locals: int
      StackMap stack:
            aload 0 /* array */
            iload 3 /* i */
            aaload
            aload 2 /* object */
            invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 4
         3: .line 361
            iload 3 /* i */
            ireturn
         4: .line 357
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 3 /* i */
            iload 1 /* size */
            if_icmplt 2
        end local 3 // int i
         6: .line 364
            iconst_m1
            ireturn
        end local 2 // java.lang.Object object
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0   array  [Ljava/lang/Object;
            0    7     1    size  I
            0    7     2  object  Ljava/lang/Object;
            1    6     3       i  I
    MethodParameters:
        Name  Flags
      array   
      size    
      object  

  public static int lastIndexOf(java.lang.Object[], int, java.lang.Object);
    descriptor: ([Ljava/lang/Object;ILjava/lang/Object;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // java.lang.Object object
         0: .line 369
            iload 1 /* size */
            iconst_1
            isub
            istore 3 /* i */
        start local 3 // int i
         1: goto 5
         2: .line 371
      StackMap locals: int
      StackMap stack:
            aload 0 /* array */
            iload 3 /* i */
            aaload
            aload 2 /* object */
            invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 4
         3: .line 373
            iload 3 /* i */
            ireturn
         4: .line 369
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ -1
      StackMap locals:
      StackMap stack:
         5: iload 3 /* i */
            ifge 2
        end local 3 // int i
         6: .line 376
            iconst_m1
            ireturn
        end local 2 // java.lang.Object object
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0   array  [Ljava/lang/Object;
            0    7     1    size  I
            0    7     2  object  Ljava/lang/Object;
            1    6     3       i  I
    MethodParameters:
        Name  Flags
      array   
      size    
      object  

  public static <T, R extends java.util.Collection<T>> R select(T[], int, org.eclipse.collections.api.block.predicate.Predicate<? super T>, );
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
        start local 3 // java.util.Collection target
         0: .line 381
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: goto 6
         2: .line 383
      StackMap locals: int
      StackMap stack:
            aload 0 /* array */
            iload 4 /* i */
            aaload
            astore 5 /* item */
        start local 5 // java.lang.Object item
         3: .line 384
            aload 2 /* predicate */
            aload 5 /* item */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate.accept:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 386
            aload 3 /* target */
            aload 5 /* item */
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // java.lang.Object item
         5: .line 381
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 4 /* i */
            iload 1 /* size */
            if_icmplt 2
        end local 4 // int i
         7: .line 389
            aload 3 /* target */
            areturn
        end local 3 // java.util.Collection target
        end local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0      array  [Ljava/lang/Object;
            0    8     1       size  I
            0    8     2  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            0    8     3     target  TR;
            1    7     4          i  I
            3    5     5       item  TT;
    Signature: <T:Ljava/lang/Object;R::Ljava/util/Collection<TT;>;>([TT;ILorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;TR;)TR;
    MethodParameters:
           Name  Flags
      array      
      size       
      predicate  
      target     

  public static <T, P, R extends java.util.Collection<T>> R selectWith(T[], int, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, P, );
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=5
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 3 // java.lang.Object parameter
        start local 4 // java.util.Collection targetCollection
         0: .line 399
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         1: goto 6
         2: .line 401
      StackMap locals: int
      StackMap stack:
            aload 0 /* array */
            iload 5 /* i */
            aaload
            astore 6 /* item */
        start local 6 // java.lang.Object item
         3: .line 402
            aload 2 /* predicate */
            aload 6 /* item */
            aload 3 /* parameter */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate2.accept:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 5
         4: .line 404
            aload 4 /* targetCollection */
            aload 6 /* item */
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
        end local 6 // java.lang.Object item
         5: .line 399
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 5 /* i */
            iload 1 /* size */
            if_icmplt 2
        end local 5 // int i
         7: .line 407
            aload 4 /* targetCollection */
            areturn
        end local 4 // java.util.Collection targetCollection
        end local 3 // java.lang.Object parameter
        end local 2 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    8     0             array  [Ljava/lang/Object;
            0    8     1              size  I
            0    8     2         predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    8     3         parameter  TP;
            0    8     4  targetCollection  TR;
            1    7     5                 i  I
            3    5     6              item  TT;
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;R::Ljava/util/Collection<TT;>;>([TT;ILorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;TR;)TR;
    MethodParameters:
                  Name  Flags
      array             
      size              
      predicate         
      parameter         
      targetCollection  

  public static <T, R extends java.util.Collection<T>> R reject(T[], int, org.eclipse.collections.api.block.predicate.Predicate<? super T>, );
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
        start local 3 // java.util.Collection target
         0: .line 412
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: goto 6
         2: .line 414
      StackMap locals: int
      StackMap stack:
            aload 0 /* array */
            iload 4 /* i */
            aaload
            astore 5 /* item */
        start local 5 // java.lang.Object item
         3: .line 415
            aload 2 /* predicate */
            aload 5 /* item */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate.accept:(Ljava/lang/Object;)Z
            ifne 5
         4: .line 417
            aload 3 /* target */
            aload 5 /* item */
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // java.lang.Object item
         5: .line 412
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 4 /* i */
            iload 1 /* size */
            if_icmplt 2
        end local 4 // int i
         7: .line 420
            aload 3 /* target */
            areturn
        end local 3 // java.util.Collection target
        end local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0      array  [Ljava/lang/Object;
            0    8     1       size  I
            0    8     2  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            0    8     3     target  TR;
            1    7     4          i  I
            3    5     5       item  TT;
    Signature: <T:Ljava/lang/Object;R::Ljava/util/Collection<TT;>;>([TT;ILorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;TR;)TR;
    MethodParameters:
           Name  Flags
      array      
      size       
      predicate  
      target     

  public static <T, P, R extends java.util.Collection<T>> R rejectWith(T[], int, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, P, );
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=5
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 3 // java.lang.Object parameter
        start local 4 // java.util.Collection target
         0: .line 430
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         1: goto 6
         2: .line 432
      StackMap locals: int
      StackMap stack:
            aload 0 /* array */
            iload 5 /* i */
            aaload
            astore 6 /* item */
        start local 6 // java.lang.Object item
         3: .line 433
            aload 2 /* predicate */
            aload 6 /* item */
            aload 3 /* parameter */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate2.accept:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifne 5
         4: .line 435
            aload 4 /* target */
            aload 6 /* item */
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
        end local 6 // java.lang.Object item
         5: .line 430
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 5 /* i */
            iload 1 /* size */
            if_icmplt 2
        end local 5 // int i
         7: .line 438
            aload 4 /* target */
            areturn
        end local 4 // java.util.Collection target
        end local 3 // java.lang.Object parameter
        end local 2 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0      array  [Ljava/lang/Object;
            0    8     1       size  I
            0    8     2  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    8     3  parameter  TP;
            0    8     4     target  TR;
            1    7     5          i  I
            3    5     6       item  TT;
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;R::Ljava/util/Collection<TT;>;>([TT;ILorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;TR;)TR;
    MethodParameters:
           Name  Flags
      array      
      size       
      predicate  
      parameter  
      target     

  public static <T> org.eclipse.collections.impl.list.mutable.FastList<T> selectInstancesOf([], int, java.lang.Class<T>);
    descriptor: ([Ljava/lang/Object;ILjava/lang/Class;)Lorg/eclipse/collections/impl/list/mutable/FastList;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=3
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // java.lang.Class clazz
         0: .line 443
            iload 1 /* size */
            invokestatic org.eclipse.collections.impl.list.mutable.FastList.newList:(I)Lorg/eclipse/collections/impl/list/mutable/FastList;
            astore 3 /* results */
        start local 3 // org.eclipse.collections.impl.list.mutable.FastList results
         1: .line 444
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: goto 7
         3: .line 446
      StackMap locals: org.eclipse.collections.impl.list.mutable.FastList int
      StackMap stack:
            aload 0 /* array */
            iload 4 /* i */
            aaload
            astore 5 /* each */
        start local 5 // java.lang.Object each
         4: .line 447
            aload 2 /* clazz */
            aload 5 /* each */
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            ifeq 6
         5: .line 449
            aload 3 /* results */
            aload 5 /* each */
            invokevirtual org.eclipse.collections.impl.list.mutable.FastList.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // java.lang.Object each
         6: .line 444
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 4 /* i */
            iload 1 /* size */
            if_icmplt 3
        end local 4 // int i
         8: .line 452
            aload 3 /* results */
            areturn
        end local 3 // org.eclipse.collections.impl.list.mutable.FastList results
        end local 2 // java.lang.Class clazz
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0    array  [Ljava/lang/Object;
            0    9     1     size  I
            0    9     2    clazz  Ljava/lang/Class<TT;>;
            1    9     3  results  Lorg/eclipse/collections/impl/list/mutable/FastList<TT;>;
            2    8     4        i  I
            4    6     5     each  Ljava/lang/Object;
    Signature: <T:Ljava/lang/Object;>([Ljava/lang/Object;ILjava/lang/Class<TT;>;)Lorg/eclipse/collections/impl/list/mutable/FastList<TT;>;
    MethodParameters:
       Name  Flags
      array  
      size   
      clazz  

  public static <T, V, R extends java.util.Collection<V>> R collect(T[], int, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>, );
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/function/Function;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.function.Function function
        start local 3 // java.util.Collection target
         0: .line 461
            iload 1 /* size */
            aload 3 /* target */
            invokestatic org.eclipse.collections.impl.utility.internal.InternalArrayIterate.ensureCapacityForAdditionalSize:(ILjava/util/Collection;)V
         1: .line 462
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: goto 5
         3: .line 464
      StackMap locals: int
      StackMap stack:
            aload 3 /* target */
            aload 2 /* function */
            aload 0 /* array */
            iload 4 /* i */
            aaload
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
         4: .line 462
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 4 /* i */
            iload 1 /* size */
            if_icmplt 3
        end local 4 // int i
         6: .line 466
            aload 3 /* target */
            areturn
        end local 3 // java.util.Collection target
        end local 2 // org.eclipse.collections.api.block.function.Function function
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0     array  [Ljava/lang/Object;
            0    7     1      size  I
            0    7     2  function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            0    7     3    target  TR;
            2    6     4         i  I
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;R::Ljava/util/Collection<TV;>;>([TT;ILorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;TR;)TR;
    MethodParameters:
          Name  Flags
      array     
      size      
      function  
      target    

  public static <T, V, R extends java.util.Collection<V>> R collectWithIndex(T[], int, org.eclipse.collections.api.block.function.primitive.ObjectIntToObjectFunction<? super T, ? extends V>, );
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/function/primitive/ObjectIntToObjectFunction;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.function.primitive.ObjectIntToObjectFunction function
        start local 3 // java.util.Collection target
         0: .line 478
            iload 1 /* size */
            aload 3 /* target */
            invokestatic org.eclipse.collections.impl.utility.internal.InternalArrayIterate.ensureCapacityForAdditionalSize:(ILjava/util/Collection;)V
         1: .line 479
            iconst_0
            istore 4 /* index */
        start local 4 // int index
         2: .line 480
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         3: goto 6
         4: .line 482
      StackMap locals: int int
      StackMap stack:
            aload 3 /* target */
            aload 2 /* function */
            aload 0 /* array */
            iload 5 /* i */
            aaload
            iload 4 /* index */
            iinc 4 /* index */ 1
            invokeinterface org.eclipse.collections.api.block.function.primitive.ObjectIntToObjectFunction.valueOf:(Ljava/lang/Object;I)Ljava/lang/Object;
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
         5: .line 480
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 5 /* i */
            iload 1 /* size */
            if_icmplt 4
        end local 5 // int i
         7: .line 484
            aload 3 /* target */
            areturn
        end local 4 // int index
        end local 3 // java.util.Collection target
        end local 2 // org.eclipse.collections.api.block.function.primitive.ObjectIntToObjectFunction function
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0     array  [Ljava/lang/Object;
            0    8     1      size  I
            0    8     2  function  Lorg/eclipse/collections/api/block/function/primitive/ObjectIntToObjectFunction<-TT;+TV;>;
            0    8     3    target  TR;
            2    8     4     index  I
            3    7     5         i  I
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;R::Ljava/util/Collection<TV;>;>([TT;ILorg/eclipse/collections/api/block/function/primitive/ObjectIntToObjectFunction<-TT;+TV;>;TR;)TR;
    MethodParameters:
          Name  Flags
      array     
      size      
      function  
      target    

  private static void ensureCapacityForAdditionalSize(int, java.util.Collection<?>);
    descriptor: (ILjava/util/Collection;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // int size
        start local 1 // java.util.Collection target
         0: .line 489
            aload 1 /* target */
            instanceof org.eclipse.collections.impl.list.mutable.FastList
            ifeq 3
         1: .line 491
            aload 1 /* target */
            checkcast org.eclipse.collections.impl.list.mutable.FastList
            aload 1 /* target */
            invokeinterface java.util.Collection.size:()I
            iload 0 /* size */
            iadd
            invokevirtual org.eclipse.collections.impl.list.mutable.FastList.ensureCapacity:(I)V
         2: .line 492
            goto 5
         3: .line 493
      StackMap locals:
      StackMap stack:
            aload 1 /* target */
            instanceof java.util.ArrayList
            ifeq 5
         4: .line 495
            aload 1 /* target */
            checkcast java.util.ArrayList
            aload 1 /* target */
            invokeinterface java.util.Collection.size:()I
            iload 0 /* size */
            iadd
            invokevirtual java.util.ArrayList.ensureCapacity:(I)V
         5: .line 497
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.Collection target
        end local 0 // int size
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    size  I
            0    6     1  target  Ljava/util/Collection<*>;
    Signature: (ILjava/util/Collection<*>;)V
    MethodParameters:
        Name  Flags
      size    
      target  

  public static <T, V, R extends java.util.Collection<V>> R flatCollect(T[], int, org.eclipse.collections.api.block.function.Function<? super T, ? extends java.lang.Iterable<V>>, );
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/function/Function;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.function.Function function
        start local 3 // java.util.Collection target
         0: .line 505
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: goto 4
         2: .line 507
      StackMap locals: int
      StackMap stack:
            aload 2 /* function */
            aload 0 /* array */
            iload 4 /* i */
            aaload
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Iterable
            aload 3 /* target */
            invokestatic org.eclipse.collections.impl.utility.Iterate.addAllTo:(Ljava/lang/Iterable;Ljava/util/Collection;)Ljava/util/Collection;
            pop
         3: .line 505
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 4 /* i */
            iload 1 /* size */
            if_icmplt 2
        end local 4 // int i
         5: .line 509
            aload 3 /* target */
            areturn
        end local 3 // java.util.Collection target
        end local 2 // org.eclipse.collections.api.block.function.Function function
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0     array  [Ljava/lang/Object;
            0    6     1      size  I
            0    6     2  function  Lorg/eclipse/collections/api/block/function/Function<-TT;+Ljava/lang/Iterable<TV;>;>;
            0    6     3    target  TR;
            1    5     4         i  I
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;R::Ljava/util/Collection<TV;>;>([TT;ILorg/eclipse/collections/api/block/function/Function<-TT;+Ljava/lang/Iterable<TV;>;>;TR;)TR;
    MethodParameters:
          Name  Flags
      array     
      size      
      function  
      target    

  public static <T, P, V, R extends java.util.Collection<V>> R collectWith(T[], int, org.eclipse.collections.api.block.function.Function2<? super T, ? super P, ? extends V>, P, );
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/function/Function2;Ljava/lang/Object;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=5
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.function.Function2 function
        start local 3 // java.lang.Object parameter
        start local 4 // java.util.Collection target
         0: .line 519
            iload 1 /* size */
            aload 4 /* target */
            invokestatic org.eclipse.collections.impl.utility.internal.InternalArrayIterate.ensureCapacityForAdditionalSize:(ILjava/util/Collection;)V
         1: .line 520
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         2: goto 5
         3: .line 522
      StackMap locals: int
      StackMap stack:
            aload 4 /* target */
            aload 2 /* function */
            aload 0 /* array */
            iload 5 /* i */
            aaload
            aload 3 /* parameter */
            invokeinterface org.eclipse.collections.api.block.function.Function2.value:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
         4: .line 520
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 5 /* i */
            iload 1 /* size */
            if_icmplt 3
        end local 5 // int i
         6: .line 524
            aload 4 /* target */
            areturn
        end local 4 // java.util.Collection target
        end local 3 // java.lang.Object parameter
        end local 2 // org.eclipse.collections.api.block.function.Function2 function
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0      array  [Ljava/lang/Object;
            0    7     1       size  I
            0    7     2   function  Lorg/eclipse/collections/api/block/function/Function2<-TT;-TP;+TV;>;
            0    7     3  parameter  TP;
            0    7     4     target  TR;
            2    6     5          i  I
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;V:Ljava/lang/Object;R::Ljava/util/Collection<TV;>;>([TT;ILorg/eclipse/collections/api/block/function/Function2<-TT;-TP;+TV;>;TP;TR;)TR;
    MethodParameters:
           Name  Flags
      array      
      size       
      function   
      parameter  
      target     

  public static <T, V, R extends java.util.Collection<V>> R collectIf(T[], int, org.eclipse.collections.api.block.predicate.Predicate<? super T>, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>, );
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate;Lorg/eclipse/collections/api/block/function/Function;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=5
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
        start local 3 // org.eclipse.collections.api.block.function.Function function
        start local 4 // java.util.Collection target
         0: .line 534
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         1: goto 6
         2: .line 536
      StackMap locals: int
      StackMap stack:
            aload 0 /* array */
            iload 5 /* i */
            aaload
            astore 6 /* item */
        start local 6 // java.lang.Object item
         3: .line 537
            aload 2 /* predicate */
            aload 6 /* item */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate.accept:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 539
            aload 4 /* target */
            aload 3 /* function */
            aload 6 /* item */
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
        end local 6 // java.lang.Object item
         5: .line 534
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 5 /* i */
            iload 1 /* size */
            if_icmplt 2
        end local 5 // int i
         7: .line 542
            aload 4 /* target */
            areturn
        end local 4 // java.util.Collection target
        end local 3 // org.eclipse.collections.api.block.function.Function function
        end local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0      array  [Ljava/lang/Object;
            0    8     1       size  I
            0    8     2  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            0    8     3   function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            0    8     4     target  TR;
            1    7     5          i  I
            3    5     6       item  TT;
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;R::Ljava/util/Collection<TV;>;>([TT;ILorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;TR;)TR;
    MethodParameters:
           Name  Flags
      array      
      size       
      predicate  
      function   
      target     

  public static <T> T min(T[], int, java.util.Comparator<? super T>);
    descriptor: ([Ljava/lang/Object;ILjava/util/Comparator;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // java.util.Comparator comparator
         0: .line 547
            iload 1 /* size */
            ifne 2
         1: .line 549
            new java.util.NoSuchElementException
            dup
            invokespecial java.util.NoSuchElementException.<init>:()V
            athrow
         2: .line 552
      StackMap locals:
      StackMap stack:
            aload 0 /* array */
            iconst_0
            aaload
            astore 3 /* min */
        start local 3 // java.lang.Object min
         3: .line 553
            iconst_1
            istore 4 /* i */
        start local 4 // int i
         4: goto 9
         5: .line 555
      StackMap locals: java.lang.Object int
      StackMap stack:
            aload 0 /* array */
            iload 4 /* i */
            aaload
            astore 5 /* item */
        start local 5 // java.lang.Object item
         6: .line 556
            aload 2 /* comparator */
            aload 5 /* item */
            aload 3 /* min */
            invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
            ifge 8
         7: .line 558
            aload 5 /* item */
            astore 3 /* min */
        end local 5 // java.lang.Object item
         8: .line 553
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 4 /* i */
            iload 1 /* size */
            if_icmplt 5
        end local 4 // int i
        10: .line 561
            aload 3 /* min */
            areturn
        end local 3 // java.lang.Object min
        end local 2 // java.util.Comparator comparator
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0       array  [Ljava/lang/Object;
            0   11     1        size  I
            0   11     2  comparator  Ljava/util/Comparator<-TT;>;
            3   11     3         min  TT;
            4   10     4           i  I
            6    8     5        item  TT;
    Signature: <T:Ljava/lang/Object;>([TT;ILjava/util/Comparator<-TT;>;)TT;
    MethodParameters:
            Name  Flags
      array       
      size        
      comparator  

  public static <T> T max(T[], int, java.util.Comparator<? super T>);
    descriptor: ([Ljava/lang/Object;ILjava/util/Comparator;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // java.util.Comparator comparator
         0: .line 566
            iload 1 /* size */
            ifne 2
         1: .line 568
            new java.util.NoSuchElementException
            dup
            invokespecial java.util.NoSuchElementException.<init>:()V
            athrow
         2: .line 571
      StackMap locals:
      StackMap stack:
            aload 0 /* array */
            iconst_0
            aaload
            astore 3 /* max */
        start local 3 // java.lang.Object max
         3: .line 572
            iconst_1
            istore 4 /* i */
        start local 4 // int i
         4: goto 9
         5: .line 574
      StackMap locals: java.lang.Object int
      StackMap stack:
            aload 0 /* array */
            iload 4 /* i */
            aaload
            astore 5 /* item */
        start local 5 // java.lang.Object item
         6: .line 575
            aload 2 /* comparator */
            aload 5 /* item */
            aload 3 /* max */
            invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
            ifle 8
         7: .line 577
            aload 5 /* item */
            astore 3 /* max */
        end local 5 // java.lang.Object item
         8: .line 572
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 4 /* i */
            iload 1 /* size */
            if_icmplt 5
        end local 4 // int i
        10: .line 580
            aload 3 /* max */
            areturn
        end local 3 // java.lang.Object max
        end local 2 // java.util.Comparator comparator
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0       array  [Ljava/lang/Object;
            0   11     1        size  I
            0   11     2  comparator  Ljava/util/Comparator<-TT;>;
            3   11     3         max  TT;
            4   10     4           i  I
            6    8     5        item  TT;
    Signature: <T:Ljava/lang/Object;>([TT;ILjava/util/Comparator<-TT;>;)TT;
    MethodParameters:
            Name  Flags
      array       
      size        
      comparator  

  public static <T> T min(T[], );
    descriptor: ([Ljava/lang/Object;I)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // java.lang.Object[] array
        start local 1 // int size
         0: .line 585
            iload 1 /* size */
            ifne 2
         1: .line 587
            new java.util.NoSuchElementException
            dup
            invokespecial java.util.NoSuchElementException.<init>:()V
            athrow
         2: .line 590
      StackMap locals:
      StackMap stack:
            aload 0 /* array */
            iconst_0
            aaload
            astore 2 /* min */
        start local 2 // java.lang.Object min
         3: .line 591
            iconst_1
            istore 3 /* i */
        start local 3 // int i
         4: goto 9
         5: .line 593
      StackMap locals: java.lang.Object int
      StackMap stack:
            aload 0 /* array */
            iload 3 /* i */
            aaload
            astore 4 /* item */
        start local 4 // java.lang.Object item
         6: .line 594
            aload 4 /* item */
            checkcast java.lang.Comparable
            aload 2 /* min */
            invokeinterface java.lang.Comparable.compareTo:(Ljava/lang/Object;)I
            ifge 8
         7: .line 596
            aload 4 /* item */
            astore 2 /* min */
        end local 4 // java.lang.Object item
         8: .line 591
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 3 /* i */
            iload 1 /* size */
            if_icmplt 5
        end local 3 // int i
        10: .line 599
            aload 2 /* min */
            areturn
        end local 2 // java.lang.Object min
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   11     0  array  [Ljava/lang/Object;
            0   11     1   size  I
            3   11     2    min  TT;
            4   10     3      i  I
            6    8     4   item  TT;
    Signature: <T:Ljava/lang/Object;>([TT;I)TT;
    MethodParameters:
       Name  Flags
      array  
      size   

  public static <T> T max(T[], );
    descriptor: ([Ljava/lang/Object;I)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // java.lang.Object[] array
        start local 1 // int size
         0: .line 604
            iload 1 /* size */
            ifne 2
         1: .line 606
            new java.util.NoSuchElementException
            dup
            invokespecial java.util.NoSuchElementException.<init>:()V
            athrow
         2: .line 609
      StackMap locals:
      StackMap stack:
            aload 0 /* array */
            iconst_0
            aaload
            astore 2 /* max */
        start local 2 // java.lang.Object max
         3: .line 610
            iconst_1
            istore 3 /* i */
        start local 3 // int i
         4: goto 9
         5: .line 612
      StackMap locals: java.lang.Object int
      StackMap stack:
            aload 0 /* array */
            iload 3 /* i */
            aaload
            astore 4 /* item */
        start local 4 // java.lang.Object item
         6: .line 613
            aload 4 /* item */
            checkcast java.lang.Comparable
            aload 2 /* max */
            invokeinterface java.lang.Comparable.compareTo:(Ljava/lang/Object;)I
            ifle 8
         7: .line 615
            aload 4 /* item */
            astore 2 /* max */
        end local 4 // java.lang.Object item
         8: .line 610
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 3 /* i */
            iload 1 /* size */
            if_icmplt 5
        end local 3 // int i
        10: .line 618
            aload 2 /* max */
            areturn
        end local 2 // java.lang.Object max
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   11     0  array  [Ljava/lang/Object;
            0   11     1   size  I
            3   11     2    max  TT;
            4   10     3      i  I
            6    8     4   item  TT;
    Signature: <T:Ljava/lang/Object;>([TT;I)TT;
    MethodParameters:
       Name  Flags
      array  
      size   

  public static <T, V extends java.lang.Comparable<? super V>> T minBy(T[], int, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/function/Function;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=8, args_size=3
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.function.Function function
         0: .line 623
            aload 0 /* array */
            invokestatic org.eclipse.collections.impl.utility.ArrayIterate.isEmpty:([Ljava/lang/Object;)Z
            ifeq 2
         1: .line 625
            new java.util.NoSuchElementException
            dup
            invokespecial java.util.NoSuchElementException.<init>:()V
            athrow
         2: .line 628
      StackMap locals:
      StackMap stack:
            aload 0 /* array */
            iconst_0
            aaload
            astore 3 /* min */
        start local 3 // java.lang.Object min
         3: .line 629
            aload 2 /* function */
            aload 3 /* min */
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Comparable
            astore 4 /* minValue */
        start local 4 // java.lang.Comparable minValue
         4: .line 630
            iconst_1
            istore 5 /* i */
        start local 5 // int i
         5: goto 12
         6: .line 632
      StackMap locals: java.lang.Object java.lang.Comparable int
      StackMap stack:
            aload 0 /* array */
            iload 5 /* i */
            aaload
            astore 6 /* next */
        start local 6 // java.lang.Object next
         7: .line 633
            aload 2 /* function */
            aload 6 /* next */
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Comparable
            astore 7 /* nextValue */
        start local 7 // java.lang.Comparable nextValue
         8: .line 634
            aload 7 /* nextValue */
            aload 4 /* minValue */
            invokeinterface java.lang.Comparable.compareTo:(Ljava/lang/Object;)I
            ifge 11
         9: .line 636
            aload 6 /* next */
            astore 3 /* min */
        10: .line 637
            aload 7 /* nextValue */
            astore 4 /* minValue */
        end local 7 // java.lang.Comparable nextValue
        end local 6 // java.lang.Object next
        11: .line 630
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 5 /* i */
            iload 1 /* size */
            if_icmplt 6
        end local 5 // int i
        13: .line 640
            aload 3 /* min */
            areturn
        end local 4 // java.lang.Comparable minValue
        end local 3 // java.lang.Object min
        end local 2 // org.eclipse.collections.api.block.function.Function function
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   14     0      array  [Ljava/lang/Object;
            0   14     1       size  I
            0   14     2   function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            3   14     3        min  TT;
            4   14     4   minValue  TV;
            5   13     5          i  I
            7   11     6       next  TT;
            8   11     7  nextValue  TV;
    Signature: <T:Ljava/lang/Object;V::Ljava/lang/Comparable<-TV;>;>([TT;ILorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;)TT;
    MethodParameters:
          Name  Flags
      array     
      size      
      function  

  public static <T, V extends java.lang.Comparable<? super V>> T maxBy(T[], int, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/function/Function;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=8, args_size=3
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.function.Function function
         0: .line 645
            aload 0 /* array */
            invokestatic org.eclipse.collections.impl.utility.ArrayIterate.isEmpty:([Ljava/lang/Object;)Z
            ifeq 2
         1: .line 647
            new java.util.NoSuchElementException
            dup
            invokespecial java.util.NoSuchElementException.<init>:()V
            athrow
         2: .line 650
      StackMap locals:
      StackMap stack:
            aload 0 /* array */
            iconst_0
            aaload
            astore 3 /* max */
        start local 3 // java.lang.Object max
         3: .line 651
            aload 2 /* function */
            aload 3 /* max */
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Comparable
            astore 4 /* maxValue */
        start local 4 // java.lang.Comparable maxValue
         4: .line 652
            iconst_1
            istore 5 /* i */
        start local 5 // int i
         5: goto 12
         6: .line 654
      StackMap locals: java.lang.Object java.lang.Comparable int
      StackMap stack:
            aload 0 /* array */
            iload 5 /* i */
            aaload
            astore 6 /* next */
        start local 6 // java.lang.Object next
         7: .line 655
            aload 2 /* function */
            aload 6 /* next */
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Comparable
            astore 7 /* nextValue */
        start local 7 // java.lang.Comparable nextValue
         8: .line 656
            aload 7 /* nextValue */
            aload 4 /* maxValue */
            invokeinterface java.lang.Comparable.compareTo:(Ljava/lang/Object;)I
            ifle 11
         9: .line 658
            aload 6 /* next */
            astore 3 /* max */
        10: .line 659
            aload 7 /* nextValue */
            astore 4 /* maxValue */
        end local 7 // java.lang.Comparable nextValue
        end local 6 // java.lang.Object next
        11: .line 652
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 5 /* i */
            iload 1 /* size */
            if_icmplt 6
        end local 5 // int i
        13: .line 662
            aload 3 /* max */
            areturn
        end local 4 // java.lang.Comparable maxValue
        end local 3 // java.lang.Object max
        end local 2 // org.eclipse.collections.api.block.function.Function function
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   14     0      array  [Ljava/lang/Object;
            0   14     1       size  I
            0   14     2   function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            3   14     3        max  TT;
            4   14     4   maxValue  TV;
            5   13     5          i  I
            7   11     6       next  TT;
            8   11     7  nextValue  TV;
    Signature: <T:Ljava/lang/Object;V::Ljava/lang/Comparable<-TV;>;>([TT;ILorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;)TT;
    MethodParameters:
          Name  Flags
      array     
      size      
      function  

  public static <T> int count(T[], int, org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 667
            iconst_0
            istore 3 /* count */
        start local 3 // int count
         1: .line 668
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: goto 6
         3: .line 670
      StackMap locals: int int
      StackMap stack:
            aload 2 /* predicate */
            aload 0 /* array */
            iload 4 /* i */
            aaload
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate.accept:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 672
            iinc 3 /* count */ 1
         5: .line 668
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 4 /* i */
            iload 1 /* size */
            if_icmplt 3
        end local 4 // int i
         7: .line 675
            iload 3 /* count */
            ireturn
        end local 3 // int count
        end local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0      array  [Ljava/lang/Object;
            0    8     1       size  I
            0    8     2  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            1    8     3      count  I
            2    7     4          i  I
    Signature: <T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)I
    MethodParameters:
           Name  Flags
      array      
      size       
      predicate  

  public static <T, P> int countWith(T[], int, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, );
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 3 // java.lang.Object parameter
         0: .line 680
            iconst_0
            istore 4 /* count */
        start local 4 // int count
         1: .line 681
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         2: goto 6
         3: .line 683
      StackMap locals: int int
      StackMap stack:
            aload 2 /* predicate */
            aload 0 /* array */
            iload 5 /* i */
            aaload
            aload 3 /* parameter */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate2.accept:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 5
         4: .line 685
            iinc 4 /* count */ 1
         5: .line 681
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 5 /* i */
            iload 1 /* size */
            if_icmplt 3
        end local 5 // int i
         7: .line 688
            iload 4 /* count */
            ireturn
        end local 4 // int count
        end local 3 // java.lang.Object parameter
        end local 2 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0      array  [Ljava/lang/Object;
            0    8     1       size  I
            0    8     2  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    8     3  parameter  TP;
            1    8     4      count  I
            2    7     5          i  I
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;)I
    MethodParameters:
           Name  Flags
      array      
      size       
      predicate  
      parameter  

  public static <T> boolean shortCircuit(T[], int, org.eclipse.collections.api.block.predicate.Predicate<? super T>, boolean, boolean, );
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate;ZZZ)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=8, args_size=6
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
        start local 3 // boolean expected
        start local 4 // boolean onShortCircuit
        start local 5 // boolean atEnd
         0: .line 699
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         1: goto 6
         2: .line 701
      StackMap locals: int
      StackMap stack:
            aload 0 /* array */
            iload 6 /* i */
            aaload
            astore 7 /* each */
        start local 7 // java.lang.Object each
         3: .line 702
            aload 2 /* predicate */
            aload 7 /* each */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate.accept:(Ljava/lang/Object;)Z
            iload 3 /* expected */
            if_icmpne 5
         4: .line 704
            iload 4 /* onShortCircuit */
            ireturn
        end local 7 // java.lang.Object each
         5: .line 699
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 6 /* i */
            iload 1 /* size */
            if_icmplt 2
        end local 6 // int i
         7: .line 707
            iload 5 /* atEnd */
            ireturn
        end local 5 // boolean atEnd
        end local 4 // boolean onShortCircuit
        end local 3 // boolean expected
        end local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    8     0           array  [Ljava/lang/Object;
            0    8     1            size  I
            0    8     2       predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            0    8     3        expected  Z
            0    8     4  onShortCircuit  Z
            0    8     5           atEnd  Z
            1    7     6               i  I
            3    5     7            each  TT;
    Signature: <T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;ZZZ)Z
    MethodParameters:
                Name  Flags
      array           
      size            
      predicate       
      expected        
      onShortCircuit  
      atEnd           

  public static <T, P> boolean shortCircuitWith(T[], int, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, P, boolean, boolean, );
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;ZZZ)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=9, args_size=7
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.Predicate2 predicate2
        start local 3 // java.lang.Object parameter
        start local 4 // boolean expected
        start local 5 // boolean onShortCircuit
        start local 6 // boolean atEnd
         0: .line 719
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         1: goto 6
         2: .line 721
      StackMap locals: int
      StackMap stack:
            aload 0 /* array */
            iload 7 /* i */
            aaload
            astore 8 /* each */
        start local 8 // java.lang.Object each
         3: .line 722
            aload 2 /* predicate2 */
            aload 8 /* each */
            aload 3 /* parameter */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate2.accept:(Ljava/lang/Object;Ljava/lang/Object;)Z
            iload 4 /* expected */
            if_icmpne 5
         4: .line 724
            iload 5 /* onShortCircuit */
            ireturn
        end local 8 // java.lang.Object each
         5: .line 719
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 7 /* i */
            iload 1 /* size */
            if_icmplt 2
        end local 7 // int i
         7: .line 727
            iload 6 /* atEnd */
            ireturn
        end local 6 // boolean atEnd
        end local 5 // boolean onShortCircuit
        end local 4 // boolean expected
        end local 3 // java.lang.Object parameter
        end local 2 // org.eclipse.collections.api.block.predicate.Predicate2 predicate2
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    8     0           array  [Ljava/lang/Object;
            0    8     1            size  I
            0    8     2      predicate2  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    8     3       parameter  TP;
            0    8     4        expected  Z
            0    8     5  onShortCircuit  Z
            0    8     6           atEnd  Z
            1    7     7               i  I
            3    5     8            each  TT;
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;ZZZ)Z
    MethodParameters:
                Name  Flags
      array           
      size            
      predicate2      
      parameter       
      expected        
      onShortCircuit  
      atEnd           

  public static <T, P> boolean corresponds(T[], int, org.eclipse.collections.api.ordered.OrderedIterable<P>, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/ordered/OrderedIterable;Lorg/eclipse/collections/api/block/predicate/Predicate2;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.ordered.OrderedIterable other
        start local 3 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
         0: .line 732
            iload 1 /* size */
            aload 2 /* other */
            invokeinterface org.eclipse.collections.api.ordered.OrderedIterable.size:()I
            if_icmpeq 2
         1: .line 734
            iconst_0
            ireturn
         2: .line 737
      StackMap locals:
      StackMap stack:
            aload 2 /* other */
            instanceof java.util.RandomAccess
            ifeq 11
         3: .line 739
            aload 2 /* other */
            checkcast java.util.List
            astore 4 /* otherList */
        start local 4 // java.util.List otherList
         4: .line 740
            iconst_0
            istore 5 /* index */
        start local 5 // int index
         5: goto 9
         6: .line 742
      StackMap locals: java.util.List int
      StackMap stack:
            aload 3 /* predicate */
            aload 0 /* array */
            iload 5 /* index */
            aaload
            aload 4 /* otherList */
            iload 5 /* index */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate2.accept:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifne 8
         7: .line 744
            iconst_0
            ireturn
         8: .line 740
      StackMap locals:
      StackMap stack:
            iinc 5 /* index */ 1
      StackMap locals:
      StackMap stack:
         9: iload 5 /* index */
            iload 1 /* size */
            if_icmplt 6
        end local 5 // int index
        10: .line 747
            iconst_1
            ireturn
        end local 4 // java.util.List otherList
        11: .line 750
      StackMap locals:
      StackMap stack:
            aload 2 /* other */
            invokeinterface org.eclipse.collections.api.ordered.OrderedIterable.iterator:()Ljava/util/Iterator;
            astore 4 /* otherIterator */
        start local 4 // java.util.Iterator otherIterator
        12: .line 751
            iconst_0
            istore 5 /* index */
        start local 5 // int index
        13: goto 17
        14: .line 753
      StackMap locals: java.util.Iterator int
      StackMap stack:
            aload 3 /* predicate */
            aload 0 /* array */
            iload 5 /* index */
            aaload
            aload 4 /* otherIterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate2.accept:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifne 16
        15: .line 755
            iconst_0
            ireturn
        16: .line 751
      StackMap locals:
      StackMap stack:
            iinc 5 /* index */ 1
      StackMap locals:
      StackMap stack:
        17: iload 5 /* index */
            iload 1 /* size */
            if_icmplt 14
        end local 5 // int index
        18: .line 759
            iconst_1
            ireturn
        end local 4 // java.util.Iterator otherIterator
        end local 3 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 2 // org.eclipse.collections.api.ordered.OrderedIterable other
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   19     0          array  [Ljava/lang/Object;
            0   19     1           size  I
            0   19     2          other  Lorg/eclipse/collections/api/ordered/OrderedIterable<TP;>;
            0   19     3      predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            4   11     4      otherList  Ljava/util/List<TP;>;
            5   10     5          index  I
           12   19     4  otherIterator  Ljava/util/Iterator<TP;>;
           13   18     5          index  I
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/ordered/OrderedIterable<TP;>;Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;)Z
    MethodParameters:
           Name  Flags
      array      
      size       
      other      
      predicate  

  public static <T> boolean anySatisfy(T[], int, org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 764
            aload 0 /* array */
            iload 1 /* size */
            aload 2 /* predicate */
            iconst_1
            iconst_1
            iconst_0
            invokestatic org.eclipse.collections.impl.utility.internal.InternalArrayIterate.shortCircuit:([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate;ZZZ)Z
            ireturn
        end local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0      array  [Ljava/lang/Object;
            0    1     1       size  I
            0    1     2  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
    Signature: <T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)Z
    MethodParameters:
           Name  Flags
      array      
      size       
      predicate  

  public static <T, P> boolean anySatisfyWith(T[], int, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, );
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=4, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 3 // java.lang.Object parameter
         0: .line 769
            aload 0 /* array */
            iload 1 /* size */
            aload 2 /* predicate */
            aload 3 /* parameter */
            iconst_1
            iconst_1
            iconst_0
            invokestatic org.eclipse.collections.impl.utility.internal.InternalArrayIterate.shortCircuitWith:([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;ZZZ)Z
            ireturn
        end local 3 // java.lang.Object parameter
        end local 2 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0      array  [Ljava/lang/Object;
            0    1     1       size  I
            0    1     2  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    1     3  parameter  TP;
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;)Z
    MethodParameters:
           Name  Flags
      array      
      size       
      predicate  
      parameter  

  public static <T> boolean allSatisfy(T[], int, org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 774
            aload 0 /* array */
            iload 1 /* size */
            aload 2 /* predicate */
            iconst_0
            iconst_0
            iconst_1
            invokestatic org.eclipse.collections.impl.utility.internal.InternalArrayIterate.shortCircuit:([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate;ZZZ)Z
            ireturn
        end local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0      array  [Ljava/lang/Object;
            0    1     1       size  I
            0    1     2  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
    Signature: <T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)Z
    MethodParameters:
           Name  Flags
      array      
      size       
      predicate  

  public static <T, P> boolean allSatisfyWith(T[], int, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, );
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=4, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 3 // java.lang.Object parameter
         0: .line 779
            aload 0 /* array */
            iload 1 /* size */
            aload 2 /* predicate */
            aload 3 /* parameter */
            iconst_0
            iconst_0
            iconst_1
            invokestatic org.eclipse.collections.impl.utility.internal.InternalArrayIterate.shortCircuitWith:([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;ZZZ)Z
            ireturn
        end local 3 // java.lang.Object parameter
        end local 2 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0      array  [Ljava/lang/Object;
            0    1     1       size  I
            0    1     2  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    1     3  parameter  TP;
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;)Z
    MethodParameters:
           Name  Flags
      array      
      size       
      predicate  
      parameter  

  public static <T> boolean noneSatisfy(T[], int, org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 784
            aload 0 /* array */
            iload 1 /* size */
            aload 2 /* predicate */
            iconst_1
            iconst_0
            iconst_1
            invokestatic org.eclipse.collections.impl.utility.internal.InternalArrayIterate.shortCircuit:([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate;ZZZ)Z
            ireturn
        end local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0      array  [Ljava/lang/Object;
            0    1     1       size  I
            0    1     2  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
    Signature: <T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)Z
    MethodParameters:
           Name  Flags
      array      
      size       
      predicate  

  public static <T, P> boolean noneSatisfyWith(T[], int, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, );
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=4, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 3 // java.lang.Object parameter
         0: .line 789
            aload 0 /* array */
            iload 1 /* size */
            aload 2 /* predicate */
            aload 3 /* parameter */
            iconst_1
            iconst_0
            iconst_1
            invokestatic org.eclipse.collections.impl.utility.internal.InternalArrayIterate.shortCircuitWith:([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;ZZZ)Z
            ireturn
        end local 3 // java.lang.Object parameter
        end local 2 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0      array  [Ljava/lang/Object;
            0    1     1       size  I
            0    1     2  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    1     3  parameter  TP;
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;)Z
    MethodParameters:
           Name  Flags
      array      
      size       
      predicate  
      parameter  

  public static <T> T detect(T[], int, org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 794
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         1: goto 6
         2: .line 796
      StackMap locals: int
      StackMap stack:
            aload 0 /* array */
            iload 3 /* i */
            aaload
            astore 4 /* each */
        start local 4 // java.lang.Object each
         3: .line 797
            aload 2 /* predicate */
            aload 4 /* each */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate.accept:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 799
            aload 4 /* each */
            areturn
        end local 4 // java.lang.Object each
         5: .line 794
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 3 /* i */
            iload 1 /* size */
            if_icmplt 2
        end local 3 // int i
         7: .line 802
            aconst_null
            areturn
        end local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0      array  [Ljava/lang/Object;
            0    8     1       size  I
            0    8     2  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            1    7     3          i  I
            3    5     4       each  TT;
    Signature: <T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)TT;
    MethodParameters:
           Name  Flags
      array      
      size       
      predicate  

  public static <T, P> T detectWith(T[], int, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, );
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 3 // java.lang.Object parameter
         0: .line 807
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: goto 6
         2: .line 809
      StackMap locals: int
      StackMap stack:
            aload 0 /* array */
            iload 4 /* i */
            aaload
            astore 5 /* each */
        start local 5 // java.lang.Object each
         3: .line 810
            aload 2 /* predicate */
            aload 5 /* each */
            aload 3 /* parameter */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate2.accept:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 5
         4: .line 812
            aload 5 /* each */
            areturn
        end local 5 // java.lang.Object each
         5: .line 807
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 4 /* i */
            iload 1 /* size */
            if_icmplt 2
        end local 4 // int i
         7: .line 815
            aconst_null
            areturn
        end local 3 // java.lang.Object parameter
        end local 2 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0      array  [Ljava/lang/Object;
            0    8     1       size  I
            0    8     2  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    8     3  parameter  TP;
            1    7     4          i  I
            3    5     5       each  TT;
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;)TT;
    MethodParameters:
           Name  Flags
      array      
      size       
      predicate  
      parameter  

  public static <T> java.util.Optional<T> detectOptional(T[], int, org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate;)Ljava/util/Optional;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 820
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         1: goto 6
         2: .line 822
      StackMap locals: int
      StackMap stack:
            aload 0 /* array */
            iload 3 /* i */
            aaload
            astore 4 /* each */
        start local 4 // java.lang.Object each
         3: .line 823
            aload 2 /* predicate */
            aload 4 /* each */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate.accept:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 825
            aload 4 /* each */
            invokestatic java.util.Optional.of:(Ljava/lang/Object;)Ljava/util/Optional;
            areturn
        end local 4 // java.lang.Object each
         5: .line 820
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 3 /* i */
            iload 1 /* size */
            if_icmplt 2
        end local 3 // int i
         7: .line 828
            invokestatic java.util.Optional.empty:()Ljava/util/Optional;
            areturn
        end local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0      array  [Ljava/lang/Object;
            0    8     1       size  I
            0    8     2  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            1    7     3          i  I
            3    5     4       each  TT;
    Signature: <T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)Ljava/util/Optional<TT;>;
    MethodParameters:
           Name  Flags
      array      
      size       
      predicate  

  public static <T, P> java.util.Optional<T> detectWithOptional(T[], int, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, P);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Ljava/util/Optional;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 3 // java.lang.Object parameter
         0: .line 833
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: goto 6
         2: .line 835
      StackMap locals: int
      StackMap stack:
            aload 0 /* array */
            iload 4 /* i */
            aaload
            astore 5 /* each */
        start local 5 // java.lang.Object each
         3: .line 836
            aload 2 /* predicate */
            aload 5 /* each */
            aload 3 /* parameter */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate2.accept:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 5
         4: .line 838
            aload 5 /* each */
            invokestatic java.util.Optional.of:(Ljava/lang/Object;)Ljava/util/Optional;
            areturn
        end local 5 // java.lang.Object each
         5: .line 833
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 4 /* i */
            iload 1 /* size */
            if_icmplt 2
        end local 4 // int i
         7: .line 841
            invokestatic java.util.Optional.empty:()Ljava/util/Optional;
            areturn
        end local 3 // java.lang.Object parameter
        end local 2 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0      array  [Ljava/lang/Object;
            0    8     1       size  I
            0    8     2  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    8     3  parameter  TP;
            1    7     4          i  I
            3    5     5       each  TT;
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;)Ljava/util/Optional<TT;>;
    MethodParameters:
           Name  Flags
      array      
      size       
      predicate  
      parameter  

  public static <T> void appendString(org.eclipse.collections.api.list.ListIterable<T>, T[], int, java.lang.Appendable, java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Lorg/eclipse/collections/api/list/ListIterable;[Ljava/lang/Object;ILjava/lang/Appendable;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=8, args_size=7
        start local 0 // org.eclipse.collections.api.list.ListIterable iterable
        start local 1 // java.lang.Object[] array
        start local 2 // int size
        start local 3 // java.lang.Appendable appendable
        start local 4 // java.lang.String start
        start local 5 // java.lang.String separator
        start local 6 // java.lang.String end
         0: .line 855
            aload 3 /* appendable */
            aload 4 /* start */
            invokeinterface java.lang.Appendable.append:(Ljava/lang/CharSequence;)Ljava/lang/Appendable;
            pop
         1: .line 857
            iload 2 /* size */
            ifle 9
         2: .line 859
            aload 3 /* appendable */
            aload 0 /* iterable */
            aload 1 /* array */
            iconst_0
            aaload
            invokestatic org.eclipse.collections.impl.utility.internal.IterableIterate.stringValueOfItem:(Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface java.lang.Appendable.append:(Ljava/lang/CharSequence;)Ljava/lang/Appendable;
            pop
         3: .line 861
            iconst_1
            istore 7 /* i */
        start local 7 // int i
         4: goto 8
         5: .line 863
      StackMap locals: int
      StackMap stack:
            aload 3 /* appendable */
            aload 5 /* separator */
            invokeinterface java.lang.Appendable.append:(Ljava/lang/CharSequence;)Ljava/lang/Appendable;
            pop
         6: .line 864
            aload 3 /* appendable */
            aload 0 /* iterable */
            aload 1 /* array */
            iload 7 /* i */
            aaload
            invokestatic org.eclipse.collections.impl.utility.internal.IterableIterate.stringValueOfItem:(Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface java.lang.Appendable.append:(Ljava/lang/CharSequence;)Ljava/lang/Appendable;
            pop
         7: .line 861
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 7 /* i */
            iload 2 /* size */
            if_icmplt 5
        end local 7 // int i
         9: .line 868
      StackMap locals:
      StackMap stack:
            aload 3 /* appendable */
            aload 6 /* end */
            invokeinterface java.lang.Appendable.append:(Ljava/lang/CharSequence;)Ljava/lang/Appendable;
            pop
        10: .line 869
            goto 13
        11: .line 870
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 7 /* e */
        start local 7 // java.io.IOException e
        12: .line 872
            new java.lang.RuntimeException
            dup
            aload 7 /* e */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 7 // java.io.IOException e
        13: .line 874
      StackMap locals:
      StackMap stack:
            return
        end local 6 // java.lang.String end
        end local 5 // java.lang.String separator
        end local 4 // java.lang.String start
        end local 3 // java.lang.Appendable appendable
        end local 2 // int size
        end local 1 // java.lang.Object[] array
        end local 0 // org.eclipse.collections.api.list.ListIterable iterable
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   14     0    iterable  Lorg/eclipse/collections/api/list/ListIterable<TT;>;
            0   14     1       array  [Ljava/lang/Object;
            0   14     2        size  I
            0   14     3  appendable  Ljava/lang/Appendable;
            0   14     4       start  Ljava/lang/String;
            0   14     5   separator  Ljava/lang/String;
            0   14     6         end  Ljava/lang/String;
            4    9     7           i  I
           12   13     7           e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           0    10      11  Class java.io.IOException
    Signature: <T:Ljava/lang/Object;>(Lorg/eclipse/collections/api/list/ListIterable<TT;>;[TT;ILjava/lang/Appendable;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    MethodParameters:
            Name  Flags
      iterable    
      array       
      size        
      appendable  
      start       
      separator   
      end         

  public static <T> int detectIndex(T[], int, org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // java.lang.Object[] objectArray
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 878
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         1: goto 5
         2: .line 880
      StackMap locals: int
      StackMap stack:
            aload 2 /* predicate */
            aload 0 /* objectArray */
            iload 3 /* i */
            aaload
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate.accept:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 882
            iload 3 /* i */
            ireturn
         4: .line 878
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 3 /* i */
            iload 1 /* size */
            if_icmplt 2
        end local 3 // int i
         6: .line 885
            iconst_m1
            ireturn
        end local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 1 // int size
        end local 0 // java.lang.Object[] objectArray
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0  objectArray  [Ljava/lang/Object;
            0    7     1         size  I
            0    7     2    predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            1    6     3            i  I
    Signature: <T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)I
    MethodParameters:
             Name  Flags
      objectArray  
      size         
      predicate    

  public static <T> int detectLastIndex(T[], int, org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/Predicate;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // java.lang.Object[] objectArray
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 890
            iload 1 /* size */
            iconst_1
            isub
            istore 3 /* i */
        start local 3 // int i
         1: goto 5
         2: .line 892
      StackMap locals: int
      StackMap stack:
            aload 2 /* predicate */
            aload 0 /* objectArray */
            iload 3 /* i */
            aaload
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate.accept:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 894
            iload 3 /* i */
            ireturn
         4: .line 890
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ -1
      StackMap locals:
      StackMap stack:
         5: iload 3 /* i */
            ifge 2
        end local 3 // int i
         6: .line 897
            iconst_m1
            ireturn
        end local 2 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 1 // int size
        end local 0 // java.lang.Object[] objectArray
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0  objectArray  [Ljava/lang/Object;
            0    7     1         size  I
            0    7     2    predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            1    6     3            i  I
    Signature: <T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)I
    MethodParameters:
             Name  Flags
      objectArray  
      size         
      predicate    

  public static <T> void forEachWithIndex(T[], int, org.eclipse.collections.api.block.procedure.primitive.ObjectIntProcedure<? super T>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/procedure/primitive/ObjectIntProcedure;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // java.lang.Object[] objectArray
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.procedure.primitive.ObjectIntProcedure objectIntProcedure
         0: .line 902
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         1: goto 4
         2: .line 904
      StackMap locals: int
      StackMap stack:
            aload 2 /* objectIntProcedure */
            aload 0 /* objectArray */
            iload 3 /* i */
            aaload
            iload 3 /* i */
            invokeinterface org.eclipse.collections.api.block.procedure.primitive.ObjectIntProcedure.value:(Ljava/lang/Object;I)V
         3: .line 902
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 3 /* i */
            iload 1 /* size */
            if_icmplt 2
        end local 3 // int i
         5: .line 906
            return
        end local 2 // org.eclipse.collections.api.block.procedure.primitive.ObjectIntProcedure objectIntProcedure
        end local 1 // int size
        end local 0 // java.lang.Object[] objectArray
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    6     0         objectArray  [Ljava/lang/Object;
            0    6     1                size  I
            0    6     2  objectIntProcedure  Lorg/eclipse/collections/api/block/procedure/primitive/ObjectIntProcedure<-TT;>;
            1    5     3                   i  I
    Signature: <T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/procedure/primitive/ObjectIntProcedure<-TT;>;)V
    MethodParameters:
                    Name  Flags
      objectArray         
      size                
      objectIntProcedure  

  public static <T, R extends java.util.List<T>> R distinct(T[], int, );
    descriptor: ([Ljava/lang/Object;ILjava/util/List;)Ljava/util/List;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=3
        start local 0 // java.lang.Object[] objectArray
        start local 1 // int size
        start local 2 // java.util.List targetList
         0: .line 914
            invokestatic org.eclipse.collections.impl.set.mutable.UnifiedSet.newSet:()Lorg/eclipse/collections/impl/set/mutable/UnifiedSet;
            astore 3 /* seenSoFar */
        start local 3 // org.eclipse.collections.api.set.MutableSet seenSoFar
         1: .line 916
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: goto 7
         3: .line 918
      StackMap locals: org.eclipse.collections.api.set.MutableSet int
      StackMap stack:
            aload 0 /* objectArray */
            iload 4 /* i */
            aaload
            astore 5 /* each */
        start local 5 // java.lang.Object each
         4: .line 919
            aload 3 /* seenSoFar */
            aload 5 /* each */
            invokeinterface org.eclipse.collections.api.set.MutableSet.add:(Ljava/lang/Object;)Z
            ifeq 6
         5: .line 921
            aload 2 /* targetList */
            aload 5 /* each */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // java.lang.Object each
         6: .line 916
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 4 /* i */
            iload 1 /* size */
            if_icmplt 3
        end local 4 // int i
         8: .line 924
            aload 2 /* targetList */
            areturn
        end local 3 // org.eclipse.collections.api.set.MutableSet seenSoFar
        end local 2 // java.util.List targetList
        end local 1 // int size
        end local 0 // java.lang.Object[] objectArray
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0  objectArray  [Ljava/lang/Object;
            0    9     1         size  I
            0    9     2   targetList  TR;
            1    9     3    seenSoFar  Lorg/eclipse/collections/api/set/MutableSet<TT;>;
            2    8     4            i  I
            4    6     5         each  TT;
    Signature: <T:Ljava/lang/Object;R::Ljava/util/List<TT;>;>([TT;ITR;)TR;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
             Name  Flags
      objectArray  
      size         
      targetList   

  public static <T> org.eclipse.collections.impl.list.mutable.FastList<T> distinct(T[], int);
    descriptor: ([Ljava/lang/Object;I)Lorg/eclipse/collections/impl/list/mutable/FastList;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.Object[] objectArray
        start local 1 // int size
         0: .line 932
            aload 0 /* objectArray */
            iload 1 /* size */
            invokestatic org.eclipse.collections.impl.list.mutable.FastList.newList:()Lorg/eclipse/collections/impl/list/mutable/FastList;
            invokestatic org.eclipse.collections.impl.utility.internal.InternalArrayIterate.distinct:([Ljava/lang/Object;ILjava/util/List;)Ljava/util/List;
            checkcast org.eclipse.collections.impl.list.mutable.FastList
            areturn
        end local 1 // int size
        end local 0 // java.lang.Object[] objectArray
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0  objectArray  [Ljava/lang/Object;
            0    1     1         size  I
    Signature: <T:Ljava/lang/Object;>([TT;I)Lorg/eclipse/collections/impl/list/mutable/FastList<TT;>;
    MethodParameters:
             Name  Flags
      objectArray  
      size         

  public static <T> org.eclipse.collections.impl.list.mutable.FastList<T> distinct(T[], int, org.eclipse.collections.api.block.HashingStrategy<? super T>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/HashingStrategy;)Lorg/eclipse/collections/impl/list/mutable/FastList;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=7, args_size=3
        start local 0 // java.lang.Object[] objectArray
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.HashingStrategy hashingStrategy
         0: .line 940
            aload 2 /* hashingStrategy */
            invokestatic org.eclipse.collections.impl.set.strategy.mutable.UnifiedSetWithHashingStrategy.newSet:(Lorg/eclipse/collections/api/block/HashingStrategy;)Lorg/eclipse/collections/impl/set/strategy/mutable/UnifiedSetWithHashingStrategy;
            astore 3 /* seenSoFar */
        start local 3 // org.eclipse.collections.api.set.MutableSet seenSoFar
         1: .line 942
            invokestatic org.eclipse.collections.impl.list.mutable.FastList.newList:()Lorg/eclipse/collections/impl/list/mutable/FastList;
            astore 4 /* result */
        start local 4 // org.eclipse.collections.impl.list.mutable.FastList result
         2: .line 943
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         3: goto 8
         4: .line 945
      StackMap locals: org.eclipse.collections.api.set.MutableSet org.eclipse.collections.impl.list.mutable.FastList int
      StackMap stack:
            aload 0 /* objectArray */
            iload 5 /* i */
            aaload
            astore 6 /* each */
        start local 6 // java.lang.Object each
         5: .line 946
            aload 3 /* seenSoFar */
            aload 6 /* each */
            invokeinterface org.eclipse.collections.api.set.MutableSet.add:(Ljava/lang/Object;)Z
            ifeq 7
         6: .line 948
            aload 4 /* result */
            aload 6 /* each */
            invokevirtual org.eclipse.collections.impl.list.mutable.FastList.add:(Ljava/lang/Object;)Z
            pop
        end local 6 // java.lang.Object each
         7: .line 943
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 5 /* i */
            iload 1 /* size */
            if_icmplt 4
        end local 5 // int i
         9: .line 951
            aload 4 /* result */
            areturn
        end local 4 // org.eclipse.collections.impl.list.mutable.FastList result
        end local 3 // org.eclipse.collections.api.set.MutableSet seenSoFar
        end local 2 // org.eclipse.collections.api.block.HashingStrategy hashingStrategy
        end local 1 // int size
        end local 0 // java.lang.Object[] objectArray
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   10     0      objectArray  [Ljava/lang/Object;
            0   10     1             size  I
            0   10     2  hashingStrategy  Lorg/eclipse/collections/api/block/HashingStrategy<-TT;>;
            1   10     3        seenSoFar  Lorg/eclipse/collections/api/set/MutableSet<TT;>;
            2   10     4           result  Lorg/eclipse/collections/impl/list/mutable/FastList<TT;>;
            3    9     5                i  I
            5    7     6             each  TT;
    Signature: <T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/HashingStrategy<-TT;>;)Lorg/eclipse/collections/impl/list/mutable/FastList<TT;>;
    MethodParameters:
                 Name  Flags
      objectArray      
      size             
      hashingStrategy  

  public static <T> long sumOfInt(T[], int, org.eclipse.collections.api.block.function.primitive.IntFunction<? super T>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/function/primitive/IntFunction;)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.function.primitive.IntFunction function
         0: .line 956
            lconst_0
            lstore 3 /* result */
        start local 3 // long result
         1: .line 957
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         2: goto 5
         3: .line 959
      StackMap locals: long int
      StackMap stack:
            lload 3 /* result */
            aload 2 /* function */
            aload 0 /* array */
            iload 5 /* i */
            aaload
            invokeinterface org.eclipse.collections.api.block.function.primitive.IntFunction.intValueOf:(Ljava/lang/Object;)I
            i2l
            ladd
            lstore 3 /* result */
         4: .line 957
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 5 /* i */
            iload 1 /* size */
            if_icmplt 3
        end local 5 // int i
         6: .line 961
            lload 3 /* result */
            lreturn
        end local 3 // long result
        end local 2 // org.eclipse.collections.api.block.function.primitive.IntFunction function
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0     array  [Ljava/lang/Object;
            0    7     1      size  I
            0    7     2  function  Lorg/eclipse/collections/api/block/function/primitive/IntFunction<-TT;>;
            1    7     3    result  J
            2    6     5         i  I
    Signature: <T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/function/primitive/IntFunction<-TT;>;)J
    MethodParameters:
          Name  Flags
      array     
      size      
      function  

  public static <T> long sumOfLong(T[], int, org.eclipse.collections.api.block.function.primitive.LongFunction<? super T>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/function/primitive/LongFunction;)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.function.primitive.LongFunction function
         0: .line 966
            lconst_0
            lstore 3 /* result */
        start local 3 // long result
         1: .line 967
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         2: goto 5
         3: .line 969
      StackMap locals: long int
      StackMap stack:
            lload 3 /* result */
            aload 2 /* function */
            aload 0 /* array */
            iload 5 /* i */
            aaload
            invokeinterface org.eclipse.collections.api.block.function.primitive.LongFunction.longValueOf:(Ljava/lang/Object;)J
            ladd
            lstore 3 /* result */
         4: .line 967
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 5 /* i */
            iload 1 /* size */
            if_icmplt 3
        end local 5 // int i
         6: .line 971
            lload 3 /* result */
            lreturn
        end local 3 // long result
        end local 2 // org.eclipse.collections.api.block.function.primitive.LongFunction function
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0     array  [Ljava/lang/Object;
            0    7     1      size  I
            0    7     2  function  Lorg/eclipse/collections/api/block/function/primitive/LongFunction<-TT;>;
            1    7     3    result  J
            2    6     5         i  I
    Signature: <T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/function/primitive/LongFunction<-TT;>;)J
    MethodParameters:
          Name  Flags
      array     
      size      
      function  

  public static <T> double sumOfFloat(T[], int, org.eclipse.collections.api.block.function.primitive.FloatFunction<? super T>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/function/primitive/FloatFunction;)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=12, args_size=3
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.function.primitive.FloatFunction function
         0: .line 976
            dconst_0
            dstore 3 /* sum */
        start local 3 // double sum
         1: .line 977
            dconst_0
            dstore 5 /* compensation */
        start local 5 // double compensation
         2: .line 978
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         3: goto 9
         4: .line 980
      StackMap locals: double double int
      StackMap stack:
            aload 2 /* function */
            aload 0 /* array */
            iload 7 /* i */
            aaload
            invokeinterface org.eclipse.collections.api.block.function.primitive.FloatFunction.floatValueOf:(Ljava/lang/Object;)F
            f2d
            dload 5 /* compensation */
            dsub
            dstore 8 /* adjustedValue */
        start local 8 // double adjustedValue
         5: .line 981
            dload 3 /* sum */
            dload 8 /* adjustedValue */
            dadd
            dstore 10 /* nextSum */
        start local 10 // double nextSum
         6: .line 982
            dload 10 /* nextSum */
            dload 3 /* sum */
            dsub
            dload 8 /* adjustedValue */
            dsub
            dstore 5 /* compensation */
         7: .line 983
            dload 10 /* nextSum */
            dstore 3 /* sum */
        end local 10 // double nextSum
        end local 8 // double adjustedValue
         8: .line 978
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 7 /* i */
            iload 1 /* size */
            if_icmplt 4
        end local 7 // int i
        10: .line 985
            dload 3 /* sum */
            dreturn
        end local 5 // double compensation
        end local 3 // double sum
        end local 2 // org.eclipse.collections.api.block.function.primitive.FloatFunction function
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   11     0          array  [Ljava/lang/Object;
            0   11     1           size  I
            0   11     2       function  Lorg/eclipse/collections/api/block/function/primitive/FloatFunction<-TT;>;
            1   11     3            sum  D
            2   11     5   compensation  D
            3   10     7              i  I
            5    8     8  adjustedValue  D
            6    8    10        nextSum  D
    Signature: <T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/function/primitive/FloatFunction<-TT;>;)D
    MethodParameters:
          Name  Flags
      array     
      size      
      function  

  public static <T> double sumOfDouble(T[], int, org.eclipse.collections.api.block.function.primitive.DoubleFunction<? super T>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/function/primitive/DoubleFunction;)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=12, args_size=3
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.function.primitive.DoubleFunction function
         0: .line 990
            dconst_0
            dstore 3 /* sum */
        start local 3 // double sum
         1: .line 991
            dconst_0
            dstore 5 /* compensation */
        start local 5 // double compensation
         2: .line 992
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         3: goto 9
         4: .line 994
      StackMap locals: double double int
      StackMap stack:
            aload 2 /* function */
            aload 0 /* array */
            iload 7 /* i */
            aaload
            invokeinterface org.eclipse.collections.api.block.function.primitive.DoubleFunction.doubleValueOf:(Ljava/lang/Object;)D
            dload 5 /* compensation */
            dsub
            dstore 8 /* adjustedValue */
        start local 8 // double adjustedValue
         5: .line 995
            dload 3 /* sum */
            dload 8 /* adjustedValue */
            dadd
            dstore 10 /* nextSum */
        start local 10 // double nextSum
         6: .line 996
            dload 10 /* nextSum */
            dload 3 /* sum */
            dsub
            dload 8 /* adjustedValue */
            dsub
            dstore 5 /* compensation */
         7: .line 997
            dload 10 /* nextSum */
            dstore 3 /* sum */
        end local 10 // double nextSum
        end local 8 // double adjustedValue
         8: .line 992
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 7 /* i */
            iload 1 /* size */
            if_icmplt 4
        end local 7 // int i
        10: .line 999
            dload 3 /* sum */
            dreturn
        end local 5 // double compensation
        end local 3 // double sum
        end local 2 // org.eclipse.collections.api.block.function.primitive.DoubleFunction function
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   11     0          array  [Ljava/lang/Object;
            0   11     1           size  I
            0   11     2       function  Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction<-TT;>;
            1   11     3            sum  D
            2   11     5   compensation  D
            3   10     7              i  I
            5    8     8  adjustedValue  D
            6    8    10        nextSum  D
    Signature: <T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/function/primitive/DoubleFunction<-TT;>;)D
    MethodParameters:
          Name  Flags
      array     
      size      
      function  

  public static <V, T> org.eclipse.collections.api.map.primitive.MutableObjectLongMap<V> sumByInt(T[], int, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>, org.eclipse.collections.api.block.function.primitive.IntFunction<? super T>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/primitive/IntFunction;)Lorg/eclipse/collections/api/map/primitive/MutableObjectLongMap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=7, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.function.Function groupBy
        start local 3 // org.eclipse.collections.api.block.function.primitive.IntFunction function
         0: .line 1004
            getstatic org.eclipse.collections.impl.factory.primitive.ObjectLongMaps.mutable:Lorg/eclipse/collections/api/factory/map/primitive/MutableObjectLongMapFactory;
            invokeinterface org.eclipse.collections.api.factory.map.primitive.MutableObjectLongMapFactory.empty:()Lorg/eclipse/collections/api/map/primitive/MutableObjectLongMap;
            astore 4 /* result */
        start local 4 // org.eclipse.collections.api.map.primitive.MutableObjectLongMap result
         1: .line 1005
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         2: goto 6
         3: .line 1007
      StackMap locals: org.eclipse.collections.api.map.primitive.MutableObjectLongMap int
      StackMap stack:
            aload 0 /* array */
            iload 5 /* i */
            aaload
            astore 6 /* item */
        start local 6 // java.lang.Object item
         4: .line 1008
            aload 4 /* result */
            aload 2 /* groupBy */
            aload 6 /* item */
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            aload 3 /* function */
            aload 6 /* item */
            invokeinterface org.eclipse.collections.api.block.function.primitive.IntFunction.intValueOf:(Ljava/lang/Object;)I
            i2l
            invokeinterface org.eclipse.collections.api.map.primitive.MutableObjectLongMap.addToValue:(Ljava/lang/Object;J)J
            pop2
        end local 6 // java.lang.Object item
         5: .line 1005
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 5 /* i */
            iload 1 /* size */
            if_icmplt 3
        end local 5 // int i
         7: .line 1010
            aload 4 /* result */
            areturn
        end local 4 // org.eclipse.collections.api.map.primitive.MutableObjectLongMap result
        end local 3 // org.eclipse.collections.api.block.function.primitive.IntFunction function
        end local 2 // org.eclipse.collections.api.block.function.Function groupBy
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0     array  [Ljava/lang/Object;
            0    8     1      size  I
            0    8     2   groupBy  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            0    8     3  function  Lorg/eclipse/collections/api/block/function/primitive/IntFunction<-TT;>;
            1    8     4    result  Lorg/eclipse/collections/api/map/primitive/MutableObjectLongMap<TV;>;
            2    7     5         i  I
            4    5     6      item  TT;
    Signature: <V:Ljava/lang/Object;T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;Lorg/eclipse/collections/api/block/function/primitive/IntFunction<-TT;>;)Lorg/eclipse/collections/api/map/primitive/MutableObjectLongMap<TV;>;
    MethodParameters:
          Name  Flags
      array     
      size      
      groupBy   
      function  

  public static <V, T> org.eclipse.collections.api.map.primitive.MutableObjectLongMap<V> sumByLong(T[], int, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>, org.eclipse.collections.api.block.function.primitive.LongFunction<? super T>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/primitive/LongFunction;)Lorg/eclipse/collections/api/map/primitive/MutableObjectLongMap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=7, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.function.Function groupBy
        start local 3 // org.eclipse.collections.api.block.function.primitive.LongFunction function
         0: .line 1015
            getstatic org.eclipse.collections.impl.factory.primitive.ObjectLongMaps.mutable:Lorg/eclipse/collections/api/factory/map/primitive/MutableObjectLongMapFactory;
            invokeinterface org.eclipse.collections.api.factory.map.primitive.MutableObjectLongMapFactory.empty:()Lorg/eclipse/collections/api/map/primitive/MutableObjectLongMap;
            astore 4 /* result */
        start local 4 // org.eclipse.collections.api.map.primitive.MutableObjectLongMap result
         1: .line 1016
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         2: goto 6
         3: .line 1018
      StackMap locals: org.eclipse.collections.api.map.primitive.MutableObjectLongMap int
      StackMap stack:
            aload 0 /* array */
            iload 5 /* i */
            aaload
            astore 6 /* item */
        start local 6 // java.lang.Object item
         4: .line 1019
            aload 4 /* result */
            aload 2 /* groupBy */
            aload 6 /* item */
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            aload 3 /* function */
            aload 6 /* item */
            invokeinterface org.eclipse.collections.api.block.function.primitive.LongFunction.longValueOf:(Ljava/lang/Object;)J
            invokeinterface org.eclipse.collections.api.map.primitive.MutableObjectLongMap.addToValue:(Ljava/lang/Object;J)J
            pop2
        end local 6 // java.lang.Object item
         5: .line 1016
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 5 /* i */
            iload 1 /* size */
            if_icmplt 3
        end local 5 // int i
         7: .line 1021
            aload 4 /* result */
            areturn
        end local 4 // org.eclipse.collections.api.map.primitive.MutableObjectLongMap result
        end local 3 // org.eclipse.collections.api.block.function.primitive.LongFunction function
        end local 2 // org.eclipse.collections.api.block.function.Function groupBy
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0     array  [Ljava/lang/Object;
            0    8     1      size  I
            0    8     2   groupBy  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            0    8     3  function  Lorg/eclipse/collections/api/block/function/primitive/LongFunction<-TT;>;
            1    8     4    result  Lorg/eclipse/collections/api/map/primitive/MutableObjectLongMap<TV;>;
            2    7     5         i  I
            4    5     6      item  TT;
    Signature: <V:Ljava/lang/Object;T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;Lorg/eclipse/collections/api/block/function/primitive/LongFunction<-TT;>;)Lorg/eclipse/collections/api/map/primitive/MutableObjectLongMap<TV;>;
    MethodParameters:
          Name  Flags
      array     
      size      
      groupBy   
      function  

  public static <V, T> org.eclipse.collections.api.map.primitive.MutableObjectDoubleMap<V> sumByFloat(T[], int, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>, org.eclipse.collections.api.block.function.primitive.FloatFunction<? super T>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/primitive/FloatFunction;)Lorg/eclipse/collections/api/map/primitive/MutableObjectDoubleMap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=15, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.function.Function groupBy
        start local 3 // org.eclipse.collections.api.block.function.primitive.FloatFunction function
         0: .line 1026
            getstatic org.eclipse.collections.impl.factory.primitive.ObjectDoubleMaps.mutable:Lorg/eclipse/collections/api/factory/map/primitive/MutableObjectDoubleMapFactory;
            invokeinterface org.eclipse.collections.api.factory.map.primitive.MutableObjectDoubleMapFactory.empty:()Lorg/eclipse/collections/api/map/primitive/MutableObjectDoubleMap;
            astore 4 /* result */
        start local 4 // org.eclipse.collections.api.map.primitive.MutableObjectDoubleMap result
         1: .line 1027
            getstatic org.eclipse.collections.impl.factory.primitive.ObjectDoubleMaps.mutable:Lorg/eclipse/collections/api/factory/map/primitive/MutableObjectDoubleMapFactory;
            invokeinterface org.eclipse.collections.api.factory.map.primitive.MutableObjectDoubleMapFactory.empty:()Lorg/eclipse/collections/api/map/primitive/MutableObjectDoubleMap;
            astore 5 /* groupKeyToCompensation */
        start local 5 // org.eclipse.collections.api.map.primitive.MutableObjectDoubleMap groupKeyToCompensation
         2: .line 1028
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         3: goto 12
         4: .line 1030
      StackMap locals: org.eclipse.collections.api.map.primitive.MutableObjectDoubleMap org.eclipse.collections.api.map.primitive.MutableObjectDoubleMap int
      StackMap stack:
            aload 0 /* array */
            iload 6 /* i */
            aaload
            astore 7 /* item */
        start local 7 // java.lang.Object item
         5: .line 1031
            aload 2 /* groupBy */
            aload 7 /* item */
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 8 /* groupByKey */
        start local 8 // java.lang.Object groupByKey
         6: .line 1032
            aload 5 /* groupKeyToCompensation */
            aload 8 /* groupByKey */
            dconst_0
            invokeinterface org.eclipse.collections.api.map.primitive.MutableObjectDoubleMap.getIfAbsentPut:(Ljava/lang/Object;D)D
            dstore 9 /* compensation */
        start local 9 // double compensation
         7: .line 1033
            aload 3 /* function */
            aload 7 /* item */
            invokeinterface org.eclipse.collections.api.block.function.primitive.FloatFunction.floatValueOf:(Ljava/lang/Object;)F
            f2d
            dload 9 /* compensation */
            dsub
            dstore 11 /* adjustedValue */
        start local 11 // double adjustedValue
         8: .line 1034
            aload 4 /* result */
            aload 8 /* groupByKey */
            invokeinterface org.eclipse.collections.api.map.primitive.MutableObjectDoubleMap.get:(Ljava/lang/Object;)D
            dload 11 /* adjustedValue */
            dadd
            dstore 13 /* nextSum */
        start local 13 // double nextSum
         9: .line 1035
            aload 5 /* groupKeyToCompensation */
            aload 8 /* groupByKey */
            dload 13 /* nextSum */
            aload 4 /* result */
            aload 8 /* groupByKey */
            invokeinterface org.eclipse.collections.api.map.primitive.MutableObjectDoubleMap.get:(Ljava/lang/Object;)D
            dsub
            dload 11 /* adjustedValue */
            dsub
            invokeinterface org.eclipse.collections.api.map.primitive.MutableObjectDoubleMap.put:(Ljava/lang/Object;D)V
        10: .line 1036
            aload 4 /* result */
            aload 8 /* groupByKey */
            dload 13 /* nextSum */
            invokeinterface org.eclipse.collections.api.map.primitive.MutableObjectDoubleMap.put:(Ljava/lang/Object;D)V
        end local 13 // double nextSum
        end local 11 // double adjustedValue
        end local 9 // double compensation
        end local 8 // java.lang.Object groupByKey
        end local 7 // java.lang.Object item
        11: .line 1028
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 6 /* i */
            iload 1 /* size */
            if_icmplt 4
        end local 6 // int i
        13: .line 1038
            aload 4 /* result */
            areturn
        end local 5 // org.eclipse.collections.api.map.primitive.MutableObjectDoubleMap groupKeyToCompensation
        end local 4 // org.eclipse.collections.api.map.primitive.MutableObjectDoubleMap result
        end local 3 // org.eclipse.collections.api.block.function.primitive.FloatFunction function
        end local 2 // org.eclipse.collections.api.block.function.Function groupBy
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   14     0                   array  [Ljava/lang/Object;
            0   14     1                    size  I
            0   14     2                 groupBy  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            0   14     3                function  Lorg/eclipse/collections/api/block/function/primitive/FloatFunction<-TT;>;
            1   14     4                  result  Lorg/eclipse/collections/api/map/primitive/MutableObjectDoubleMap<TV;>;
            2   14     5  groupKeyToCompensation  Lorg/eclipse/collections/api/map/primitive/MutableObjectDoubleMap<TV;>;
            3   13     6                       i  I
            5   11     7                    item  TT;
            6   11     8              groupByKey  TV;
            7   11     9            compensation  D
            8   11    11           adjustedValue  D
            9   11    13                 nextSum  D
    Signature: <V:Ljava/lang/Object;T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;Lorg/eclipse/collections/api/block/function/primitive/FloatFunction<-TT;>;)Lorg/eclipse/collections/api/map/primitive/MutableObjectDoubleMap<TV;>;
    MethodParameters:
          Name  Flags
      array     
      size      
      groupBy   
      function  

  public static <V, T> org.eclipse.collections.api.map.primitive.MutableObjectDoubleMap<V> sumByDouble(T[], int, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>, org.eclipse.collections.api.block.function.primitive.DoubleFunction<? super T>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction;)Lorg/eclipse/collections/api/map/primitive/MutableObjectDoubleMap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=15, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.function.Function groupBy
        start local 3 // org.eclipse.collections.api.block.function.primitive.DoubleFunction function
         0: .line 1043
            getstatic org.eclipse.collections.impl.factory.primitive.ObjectDoubleMaps.mutable:Lorg/eclipse/collections/api/factory/map/primitive/MutableObjectDoubleMapFactory;
            invokeinterface org.eclipse.collections.api.factory.map.primitive.MutableObjectDoubleMapFactory.empty:()Lorg/eclipse/collections/api/map/primitive/MutableObjectDoubleMap;
            astore 4 /* result */
        start local 4 // org.eclipse.collections.api.map.primitive.MutableObjectDoubleMap result
         1: .line 1044
            invokestatic org.eclipse.collections.impl.map.mutable.primitive.ObjectDoubleHashMap.newMap:()Lorg/eclipse/collections/impl/map/mutable/primitive/ObjectDoubleHashMap;
            astore 5 /* groupKeyToCompensation */
        start local 5 // org.eclipse.collections.api.map.primitive.MutableObjectDoubleMap groupKeyToCompensation
         2: .line 1045
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         3: goto 12
         4: .line 1047
      StackMap locals: org.eclipse.collections.api.map.primitive.MutableObjectDoubleMap org.eclipse.collections.api.map.primitive.MutableObjectDoubleMap int
      StackMap stack:
            aload 0 /* array */
            iload 6 /* i */
            aaload
            astore 7 /* item */
        start local 7 // java.lang.Object item
         5: .line 1048
            aload 2 /* groupBy */
            aload 7 /* item */
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 8 /* groupByKey */
        start local 8 // java.lang.Object groupByKey
         6: .line 1049
            aload 5 /* groupKeyToCompensation */
            aload 8 /* groupByKey */
            dconst_0
            invokeinterface org.eclipse.collections.api.map.primitive.MutableObjectDoubleMap.getIfAbsentPut:(Ljava/lang/Object;D)D
            dstore 9 /* compensation */
        start local 9 // double compensation
         7: .line 1050
            aload 3 /* function */
            aload 7 /* item */
            invokeinterface org.eclipse.collections.api.block.function.primitive.DoubleFunction.doubleValueOf:(Ljava/lang/Object;)D
            dload 9 /* compensation */
            dsub
            dstore 11 /* adjustedValue */
        start local 11 // double adjustedValue
         8: .line 1051
            aload 4 /* result */
            aload 8 /* groupByKey */
            invokeinterface org.eclipse.collections.api.map.primitive.MutableObjectDoubleMap.get:(Ljava/lang/Object;)D
            dload 11 /* adjustedValue */
            dadd
            dstore 13 /* nextSum */
        start local 13 // double nextSum
         9: .line 1052
            aload 5 /* groupKeyToCompensation */
            aload 8 /* groupByKey */
            dload 13 /* nextSum */
            aload 4 /* result */
            aload 8 /* groupByKey */
            invokeinterface org.eclipse.collections.api.map.primitive.MutableObjectDoubleMap.get:(Ljava/lang/Object;)D
            dsub
            dload 11 /* adjustedValue */
            dsub
            invokeinterface org.eclipse.collections.api.map.primitive.MutableObjectDoubleMap.put:(Ljava/lang/Object;D)V
        10: .line 1053
            aload 4 /* result */
            aload 8 /* groupByKey */
            dload 13 /* nextSum */
            invokeinterface org.eclipse.collections.api.map.primitive.MutableObjectDoubleMap.put:(Ljava/lang/Object;D)V
        end local 13 // double nextSum
        end local 11 // double adjustedValue
        end local 9 // double compensation
        end local 8 // java.lang.Object groupByKey
        end local 7 // java.lang.Object item
        11: .line 1045
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 6 /* i */
            iload 1 /* size */
            if_icmplt 4
        end local 6 // int i
        13: .line 1055
            aload 4 /* result */
            areturn
        end local 5 // org.eclipse.collections.api.map.primitive.MutableObjectDoubleMap groupKeyToCompensation
        end local 4 // org.eclipse.collections.api.map.primitive.MutableObjectDoubleMap result
        end local 3 // org.eclipse.collections.api.block.function.primitive.DoubleFunction function
        end local 2 // org.eclipse.collections.api.block.function.Function groupBy
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   14     0                   array  [Ljava/lang/Object;
            0   14     1                    size  I
            0   14     2                 groupBy  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            0   14     3                function  Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction<-TT;>;
            1   14     4                  result  Lorg/eclipse/collections/api/map/primitive/MutableObjectDoubleMap<TV;>;
            2   14     5  groupKeyToCompensation  Lorg/eclipse/collections/api/map/primitive/MutableObjectDoubleMap<TV;>;
            3   13     6                       i  I
            5   11     7                    item  TT;
            6   11     8              groupByKey  TV;
            7   11     9            compensation  D
            8   11    11           adjustedValue  D
            9   11    13                 nextSum  D
    Signature: <V:Ljava/lang/Object;T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction<-TT;>;)Lorg/eclipse/collections/api/map/primitive/MutableObjectDoubleMap<TV;>;
    MethodParameters:
          Name  Flags
      array     
      size      
      groupBy   
      function  

  public static <T> java.util.IntSummaryStatistics summarizeInt(T[], int, org.eclipse.collections.api.block.function.primitive.IntFunction<? super T>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/function/primitive/IntFunction;)Ljava/util/IntSummaryStatistics;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // java.lang.Object[] items
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.function.primitive.IntFunction function
         0: .line 1063
            new java.util.IntSummaryStatistics
            dup
            invokespecial java.util.IntSummaryStatistics.<init>:()V
            astore 3 /* stats */
        start local 3 // java.util.IntSummaryStatistics stats
         1: .line 1064
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: goto 6
         3: .line 1066
      StackMap locals: java.util.IntSummaryStatistics int
      StackMap stack:
            aload 0 /* items */
            iload 4 /* i */
            aaload
            astore 5 /* item */
        start local 5 // java.lang.Object item
         4: .line 1067
            aload 3 /* stats */
            aload 2 /* function */
            aload 5 /* item */
            invokeinterface org.eclipse.collections.api.block.function.primitive.IntFunction.intValueOf:(Ljava/lang/Object;)I
            invokevirtual java.util.IntSummaryStatistics.accept:(I)V
        end local 5 // java.lang.Object item
         5: .line 1064
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 4 /* i */
            iload 1 /* size */
            if_icmplt 3
        end local 4 // int i
         7: .line 1069
            aload 3 /* stats */
            areturn
        end local 3 // java.util.IntSummaryStatistics stats
        end local 2 // org.eclipse.collections.api.block.function.primitive.IntFunction function
        end local 1 // int size
        end local 0 // java.lang.Object[] items
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0     items  [Ljava/lang/Object;
            0    8     1      size  I
            0    8     2  function  Lorg/eclipse/collections/api/block/function/primitive/IntFunction<-TT;>;
            1    8     3     stats  Ljava/util/IntSummaryStatistics;
            2    7     4         i  I
            4    5     5      item  TT;
    Signature: <T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/function/primitive/IntFunction<-TT;>;)Ljava/util/IntSummaryStatistics;
    MethodParameters:
          Name  Flags
      items     
      size      
      function  

  public static <T> java.util.DoubleSummaryStatistics summarizeFloat(T[], int, org.eclipse.collections.api.block.function.primitive.FloatFunction<? super T>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/function/primitive/FloatFunction;)Ljava/util/DoubleSummaryStatistics;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // java.lang.Object[] items
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.function.primitive.FloatFunction function
         0: .line 1077
            new java.util.DoubleSummaryStatistics
            dup
            invokespecial java.util.DoubleSummaryStatistics.<init>:()V
            astore 3 /* stats */
        start local 3 // java.util.DoubleSummaryStatistics stats
         1: .line 1078
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: goto 6
         3: .line 1080
      StackMap locals: java.util.DoubleSummaryStatistics int
      StackMap stack:
            aload 0 /* items */
            iload 4 /* i */
            aaload
            astore 5 /* item */
        start local 5 // java.lang.Object item
         4: .line 1081
            aload 3 /* stats */
            aload 2 /* function */
            aload 5 /* item */
            invokeinterface org.eclipse.collections.api.block.function.primitive.FloatFunction.floatValueOf:(Ljava/lang/Object;)F
            f2d
            invokevirtual java.util.DoubleSummaryStatistics.accept:(D)V
        end local 5 // java.lang.Object item
         5: .line 1078
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 4 /* i */
            iload 1 /* size */
            if_icmplt 3
        end local 4 // int i
         7: .line 1083
            aload 3 /* stats */
            areturn
        end local 3 // java.util.DoubleSummaryStatistics stats
        end local 2 // org.eclipse.collections.api.block.function.primitive.FloatFunction function
        end local 1 // int size
        end local 0 // java.lang.Object[] items
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0     items  [Ljava/lang/Object;
            0    8     1      size  I
            0    8     2  function  Lorg/eclipse/collections/api/block/function/primitive/FloatFunction<-TT;>;
            1    8     3     stats  Ljava/util/DoubleSummaryStatistics;
            2    7     4         i  I
            4    5     5      item  TT;
    Signature: <T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/function/primitive/FloatFunction<-TT;>;)Ljava/util/DoubleSummaryStatistics;
    MethodParameters:
          Name  Flags
      items     
      size      
      function  

  public static <T> java.util.LongSummaryStatistics summarizeLong(T[], int, org.eclipse.collections.api.block.function.primitive.LongFunction<? super T>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/function/primitive/LongFunction;)Ljava/util/LongSummaryStatistics;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // java.lang.Object[] items
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.function.primitive.LongFunction function
         0: .line 1091
            new java.util.LongSummaryStatistics
            dup
            invokespecial java.util.LongSummaryStatistics.<init>:()V
            astore 3 /* stats */
        start local 3 // java.util.LongSummaryStatistics stats
         1: .line 1092
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: goto 6
         3: .line 1094
      StackMap locals: java.util.LongSummaryStatistics int
      StackMap stack:
            aload 0 /* items */
            iload 4 /* i */
            aaload
            astore 5 /* item */
        start local 5 // java.lang.Object item
         4: .line 1095
            aload 3 /* stats */
            aload 2 /* function */
            aload 5 /* item */
            invokeinterface org.eclipse.collections.api.block.function.primitive.LongFunction.longValueOf:(Ljava/lang/Object;)J
            invokevirtual java.util.LongSummaryStatistics.accept:(J)V
        end local 5 // java.lang.Object item
         5: .line 1092
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 4 /* i */
            iload 1 /* size */
            if_icmplt 3
        end local 4 // int i
         7: .line 1097
            aload 3 /* stats */
            areturn
        end local 3 // java.util.LongSummaryStatistics stats
        end local 2 // org.eclipse.collections.api.block.function.primitive.LongFunction function
        end local 1 // int size
        end local 0 // java.lang.Object[] items
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0     items  [Ljava/lang/Object;
            0    8     1      size  I
            0    8     2  function  Lorg/eclipse/collections/api/block/function/primitive/LongFunction<-TT;>;
            1    8     3     stats  Ljava/util/LongSummaryStatistics;
            2    7     4         i  I
            4    5     5      item  TT;
    Signature: <T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/function/primitive/LongFunction<-TT;>;)Ljava/util/LongSummaryStatistics;
    MethodParameters:
          Name  Flags
      items     
      size      
      function  

  public static <T> java.util.DoubleSummaryStatistics summarizeDouble(T[], int, org.eclipse.collections.api.block.function.primitive.DoubleFunction<? super T>);
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/function/primitive/DoubleFunction;)Ljava/util/DoubleSummaryStatistics;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // java.lang.Object[] items
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.function.primitive.DoubleFunction function
         0: .line 1105
            new java.util.DoubleSummaryStatistics
            dup
            invokespecial java.util.DoubleSummaryStatistics.<init>:()V
            astore 3 /* stats */
        start local 3 // java.util.DoubleSummaryStatistics stats
         1: .line 1106
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: goto 6
         3: .line 1108
      StackMap locals: java.util.DoubleSummaryStatistics int
      StackMap stack:
            aload 0 /* items */
            iload 4 /* i */
            aaload
            astore 5 /* item */
        start local 5 // java.lang.Object item
         4: .line 1109
            aload 3 /* stats */
            aload 2 /* function */
            aload 5 /* item */
            invokeinterface org.eclipse.collections.api.block.function.primitive.DoubleFunction.doubleValueOf:(Ljava/lang/Object;)D
            invokevirtual java.util.DoubleSummaryStatistics.accept:(D)V
        end local 5 // java.lang.Object item
         5: .line 1106
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 4 /* i */
            iload 1 /* size */
            if_icmplt 3
        end local 4 // int i
         7: .line 1111
            aload 3 /* stats */
            areturn
        end local 3 // java.util.DoubleSummaryStatistics stats
        end local 2 // org.eclipse.collections.api.block.function.primitive.DoubleFunction function
        end local 1 // int size
        end local 0 // java.lang.Object[] items
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0     items  [Ljava/lang/Object;
            0    8     1      size  I
            0    8     2  function  Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction<-TT;>;
            1    8     3     stats  Ljava/util/DoubleSummaryStatistics;
            2    7     4         i  I
            4    5     5      item  TT;
    Signature: <T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/function/primitive/DoubleFunction<-TT;>;)Ljava/util/DoubleSummaryStatistics;
    MethodParameters:
          Name  Flags
      items     
      size      
      function  

  public static <T> java.util.Optional<T> reduce(T[], int, java.util.function.BinaryOperator<T>);
    descriptor: ([Ljava/lang/Object;ILjava/util/function/BinaryOperator;)Ljava/util/Optional;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // java.lang.Object[] items
        start local 1 // int size
        start local 2 // java.util.function.BinaryOperator accumulator
         0: .line 1119
            iload 1 /* size */
            ifne 2
         1: .line 1121
            invokestatic java.util.Optional.empty:()Ljava/util/Optional;
            areturn
         2: .line 1123
      StackMap locals:
      StackMap stack:
            aload 0 /* items */
            iconst_0
            aaload
            astore 3 /* result */
        start local 3 // java.lang.Object result
         3: .line 1124
            iconst_1
            istore 4 /* i */
        start local 4 // int i
         4: goto 7
         5: .line 1126
      StackMap locals: java.lang.Object int
      StackMap stack:
            aload 2 /* accumulator */
            aload 3 /* result */
            aload 0 /* items */
            iload 4 /* i */
            aaload
            invokeinterface java.util.function.BinaryOperator.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* result */
         6: .line 1124
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 4 /* i */
            iload 1 /* size */
            if_icmplt 5
        end local 4 // int i
         8: .line 1128
            aload 3 /* result */
            invokestatic java.util.Optional.of:(Ljava/lang/Object;)Ljava/util/Optional;
            areturn
        end local 3 // java.lang.Object result
        end local 2 // java.util.function.BinaryOperator accumulator
        end local 1 // int size
        end local 0 // java.lang.Object[] items
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0        items  [Ljava/lang/Object;
            0    9     1         size  I
            0    9     2  accumulator  Ljava/util/function/BinaryOperator<TT;>;
            3    9     3       result  TT;
            4    8     4            i  I
    Signature: <T:Ljava/lang/Object;>([TT;ILjava/util/function/BinaryOperator<TT;>;)Ljava/util/Optional<TT;>;
    MethodParameters:
             Name  Flags
      items        
      size         
      accumulator  

  public static <R, A, T> R reduceInPlace(T[], int, java.util.stream.Collector<? super T, A, R>);
    descriptor: ([Ljava/lang/Object;ILjava/util/stream/Collector;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=3
        start local 0 // java.lang.Object[] items
        start local 1 // int size
        start local 2 // java.util.stream.Collector collector
         0: .line 1136
            aload 2 /* collector */
            invokeinterface java.util.stream.Collector.supplier:()Ljava/util/function/Supplier;
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            astore 3 /* mutableResult */
        start local 3 // java.lang.Object mutableResult
         1: .line 1137
            aload 2 /* collector */
            invokeinterface java.util.stream.Collector.accumulator:()Ljava/util/function/BiConsumer;
            astore 4 /* accumulator */
        start local 4 // java.util.function.BiConsumer accumulator
         2: .line 1138
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         3: goto 7
         4: .line 1140
      StackMap locals: java.lang.Object java.util.function.BiConsumer int
      StackMap stack:
            aload 0 /* items */
            iload 5 /* i */
            aaload
            astore 6 /* item */
        start local 6 // java.lang.Object item
         5: .line 1141
            aload 4 /* accumulator */
            aload 3 /* mutableResult */
            aload 6 /* item */
            invokeinterface java.util.function.BiConsumer.accept:(Ljava/lang/Object;Ljava/lang/Object;)V
        end local 6 // java.lang.Object item
         6: .line 1138
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 5 /* i */
            iload 1 /* size */
            if_icmplt 4
        end local 5 // int i
         8: .line 1143
            aload 2 /* collector */
            invokeinterface java.util.stream.Collector.finisher:()Ljava/util/function/Function;
            aload 3 /* mutableResult */
            invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 4 // java.util.function.BiConsumer accumulator
        end local 3 // java.lang.Object mutableResult
        end local 2 // java.util.stream.Collector collector
        end local 1 // int size
        end local 0 // java.lang.Object[] items
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    9     0          items  [Ljava/lang/Object;
            0    9     1           size  I
            0    9     2      collector  Ljava/util/stream/Collector<-TT;TA;TR;>;
            1    9     3  mutableResult  TA;
            2    9     4    accumulator  Ljava/util/function/BiConsumer<TA;-TT;>;
            3    8     5              i  I
            5    6     6           item  TT;
    Signature: <R:Ljava/lang/Object;A:Ljava/lang/Object;T:Ljava/lang/Object;>([TT;ILjava/util/stream/Collector<-TT;TA;TR;>;)TR;
    MethodParameters:
           Name  Flags
      items      
      size       
      collector  

  public static <R, T> R reduceInPlace(T[], int, java.util.function.Supplier<R>, java.util.function.BiConsumer<R, ? super T>);
    descriptor: ([Ljava/lang/Object;ILjava/util/function/Supplier;Ljava/util/function/BiConsumer;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=4
        start local 0 // java.lang.Object[] items
        start local 1 // int size
        start local 2 // java.util.function.Supplier supplier
        start local 3 // java.util.function.BiConsumer accumulator
         0: .line 1151
            aload 2 /* supplier */
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            astore 4 /* mutableResult */
        start local 4 // java.lang.Object mutableResult
         1: .line 1152
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         2: goto 6
         3: .line 1154
      StackMap locals: java.lang.Object int
      StackMap stack:
            aload 0 /* items */
            iload 5 /* i */
            aaload
            astore 6 /* item */
        start local 6 // java.lang.Object item
         4: .line 1155
            aload 3 /* accumulator */
            aload 4 /* mutableResult */
            aload 6 /* item */
            invokeinterface java.util.function.BiConsumer.accept:(Ljava/lang/Object;Ljava/lang/Object;)V
        end local 6 // java.lang.Object item
         5: .line 1152
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 5 /* i */
            iload 1 /* size */
            if_icmplt 3
        end local 5 // int i
         7: .line 1157
            aload 4 /* mutableResult */
            areturn
        end local 4 // java.lang.Object mutableResult
        end local 3 // java.util.function.BiConsumer accumulator
        end local 2 // java.util.function.Supplier supplier
        end local 1 // int size
        end local 0 // java.lang.Object[] items
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    8     0          items  [Ljava/lang/Object;
            0    8     1           size  I
            0    8     2       supplier  Ljava/util/function/Supplier<TR;>;
            0    8     3    accumulator  Ljava/util/function/BiConsumer<TR;-TT;>;
            1    8     4  mutableResult  TR;
            2    7     5              i  I
            4    5     6           item  TT;
    Signature: <R:Ljava/lang/Object;T:Ljava/lang/Object;>([TT;ILjava/util/function/Supplier<TR;>;Ljava/util/function/BiConsumer<TR;-TT;>;)TR;
    MethodParameters:
             Name  Flags
      items        
      size         
      supplier     
      accumulator  

  public static <T> void replaceAll(T[], int, java.util.function.UnaryOperator<T>);
    descriptor: ([Ljava/lang/Object;ILjava/util/function/UnaryOperator;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // java.lang.Object[] items
        start local 1 // int size
        start local 2 // java.util.function.UnaryOperator operator
         0: .line 1165
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         1: goto 5
         2: .line 1167
      StackMap locals: int
      StackMap stack:
            aload 0 /* items */
            iload 3 /* i */
            aaload
            astore 4 /* item */
        start local 4 // java.lang.Object item
         3: .line 1168
            aload 0 /* items */
            iload 3 /* i */
            aload 2 /* operator */
            aload 4 /* item */
            invokeinterface java.util.function.UnaryOperator.apply:(Ljava/lang/Object;)Ljava/lang/Object;
            aastore
        end local 4 // java.lang.Object item
         4: .line 1165
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 3 /* i */
            iload 1 /* size */
            if_icmplt 2
        end local 3 // int i
         6: .line 1170
            return
        end local 2 // java.util.function.UnaryOperator operator
        end local 1 // int size
        end local 0 // java.lang.Object[] items
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0     items  [Ljava/lang/Object;
            0    7     1      size  I
            0    7     2  operator  Ljava/util/function/UnaryOperator<TT;>;
            1    6     3         i  I
            3    4     4      item  TT;
    Signature: <T:Ljava/lang/Object;>([TT;ILjava/util/function/UnaryOperator<TT;>;)V
    MethodParameters:
          Name  Flags
      items     
      size      
      operator  

  public static <R extends java.util.Collection<T>, T> R selectWithIndex(T[], int, org.eclipse.collections.api.block.predicate.primitive.ObjectIntPredicate<? super T>, );
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/primitive/ObjectIntPredicate;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.primitive.ObjectIntPredicate predicate
        start local 3 // java.util.Collection target
         0: .line 1184
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: goto 6
         2: .line 1186
      StackMap locals: int
      StackMap stack:
            aload 0 /* array */
            iload 4 /* i */
            aaload
            astore 5 /* item */
        start local 5 // java.lang.Object item
         3: .line 1187
            aload 2 /* predicate */
            aload 5 /* item */
            iload 4 /* i */
            invokeinterface org.eclipse.collections.api.block.predicate.primitive.ObjectIntPredicate.accept:(Ljava/lang/Object;I)Z
            ifeq 5
         4: .line 1189
            aload 3 /* target */
            aload 5 /* item */
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // java.lang.Object item
         5: .line 1184
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 4 /* i */
            iload 1 /* size */
            if_icmplt 2
        end local 4 // int i
         7: .line 1192
            aload 3 /* target */
            areturn
        end local 3 // java.util.Collection target
        end local 2 // org.eclipse.collections.api.block.predicate.primitive.ObjectIntPredicate predicate
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0      array  [Ljava/lang/Object;
            0    8     1       size  I
            0    8     2  predicate  Lorg/eclipse/collections/api/block/predicate/primitive/ObjectIntPredicate<-TT;>;
            0    8     3     target  TR;
            1    7     4          i  I
            3    5     5       item  TT;
    Signature: <R::Ljava/util/Collection<TT;>;T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/predicate/primitive/ObjectIntPredicate<-TT;>;TR;)TR;
    MethodParameters:
           Name  Flags
      array      
      size       
      predicate  
      target     

  public static <R extends java.util.Collection<T>, T> R rejectWithIndex(T[], int, org.eclipse.collections.api.block.predicate.primitive.ObjectIntPredicate<? super T>, );
    descriptor: ([Ljava/lang/Object;ILorg/eclipse/collections/api/block/predicate/primitive/ObjectIntPredicate;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // java.lang.Object[] array
        start local 1 // int size
        start local 2 // org.eclipse.collections.api.block.predicate.primitive.ObjectIntPredicate predicate
        start local 3 // java.util.Collection target
         0: .line 1207
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: goto 6
         2: .line 1209
      StackMap locals: int
      StackMap stack:
            aload 0 /* array */
            iload 4 /* i */
            aaload
            astore 5 /* item */
        start local 5 // java.lang.Object item
         3: .line 1210
            aload 2 /* predicate */
            aload 5 /* item */
            iload 4 /* i */
            invokeinterface org.eclipse.collections.api.block.predicate.primitive.ObjectIntPredicate.accept:(Ljava/lang/Object;I)Z
            ifne 5
         4: .line 1212
            aload 3 /* target */
            aload 5 /* item */
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // java.lang.Object item
         5: .line 1207
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 4 /* i */
            iload 1 /* size */
            if_icmplt 2
        end local 4 // int i
         7: .line 1215
            aload 3 /* target */
            areturn
        end local 3 // java.util.Collection target
        end local 2 // org.eclipse.collections.api.block.predicate.primitive.ObjectIntPredicate predicate
        end local 1 // int size
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0      array  [Ljava/lang/Object;
            0    8     1       size  I
            0    8     2  predicate  Lorg/eclipse/collections/api/block/predicate/primitive/ObjectIntPredicate<-TT;>;
            0    8     3     target  TR;
            1    7     4          i  I
            3    5     5       item  TT;
    Signature: <R::Ljava/util/Collection<TT;>;T:Ljava/lang/Object;>([TT;ILorg/eclipse/collections/api/block/predicate/primitive/ObjectIntPredicate<-TT;>;TR;)TR;
    MethodParameters:
           Name  Flags
      array      
      size       
      predicate  
      target     
}
SourceFile: "InternalArrayIterate.java"