public final class org.eclipse.collections.impl.utility.internal.IteratorIterate
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.eclipse.collections.impl.utility.internal.IteratorIterate
  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.IteratorIterate this
         0: .line 89
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 91
            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.IteratorIterate this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/eclipse/collections/impl/utility/internal/IteratorIterate;

  public static <T, P> org.eclipse.collections.api.tuple.Twin<org.eclipse.collections.api.list.MutableList<T>> selectAndRejectWith(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, P);
    descriptor: (Ljava/util/Iterator;Lorg/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=6, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 2 // java.lang.Object parameter
         0: .line 102
            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 3 /* positiveResult */
        start local 3 // org.eclipse.collections.api.list.MutableList positiveResult
         1: .line 103
            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 /* negativeResult */
        start local 4 // org.eclipse.collections.api.list.MutableList negativeResult
         2: .line 104
            goto 7
         3: .line 106
      StackMap locals: org.eclipse.collections.api.list.MutableList org.eclipse.collections.api.list.MutableList
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 5 /* item */
        start local 5 // java.lang.Object item
         4: .line 107
            aload 1 /* predicate */
            aload 5 /* item */
            aload 2 /* parameter */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate2.accept:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 5
            aload 3 /* positiveResult */
            goto 6
      StackMap locals: java.lang.Object
      StackMap stack:
         5: aload 4 /* negativeResult */
      StackMap locals:
      StackMap stack: org.eclipse.collections.api.list.MutableList
         6: aload 5 /* item */
            invokeinterface org.eclipse.collections.api.list.MutableList.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // java.lang.Object item
         7: .line 104
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         8: .line 109
            aload 3 /* positiveResult */
            aload 4 /* negativeResult */
            invokestatic org.eclipse.collections.impl.tuple.Tuples.twin:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/eclipse/collections/api/tuple/Twin;
            areturn
        end local 4 // org.eclipse.collections.api.list.MutableList negativeResult
        end local 3 // org.eclipse.collections.api.list.MutableList positiveResult
        end local 2 // java.lang.Object parameter
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    9     0        iterator  Ljava/util/Iterator<TT;>;
            0    9     1       predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    9     2       parameter  TP;
            1    9     3  positiveResult  Lorg/eclipse/collections/api/list/MutableList<TT;>;
            2    9     4  negativeResult  Lorg/eclipse/collections/api/list/MutableList<TT;>;
            4    7     5            item  TT;
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;)Lorg/eclipse/collections/api/tuple/Twin<Lorg/eclipse/collections/api/list/MutableList<TT;>;>;
    MethodParameters:
           Name  Flags
      iterator   
      predicate  
      parameter  

  public static <T> org.eclipse.collections.api.partition.list.PartitionMutableList<T> partition(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate;)Lorg/eclipse/collections/api/partition/list/PartitionMutableList;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=7, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 117
            new org.eclipse.collections.impl.partition.list.PartitionFastList
            dup
            invokespecial org.eclipse.collections.impl.partition.list.PartitionFastList.<init>:()V
            astore 2 /* result */
        start local 2 // org.eclipse.collections.api.partition.list.PartitionMutableList result
         1: .line 118
            aload 2 /* result */
            invokeinterface org.eclipse.collections.api.partition.list.PartitionMutableList.getSelected:()Lorg/eclipse/collections/api/list/MutableList;
            astore 3 /* selected */
        start local 3 // org.eclipse.collections.api.list.MutableList selected
         2: .line 119
            aload 2 /* result */
            invokeinterface org.eclipse.collections.api.partition.list.PartitionMutableList.getRejected:()Lorg/eclipse/collections/api/list/MutableList;
            astore 4 /* rejected */
        start local 4 // org.eclipse.collections.api.list.MutableList rejected
         3: .line 121
            goto 9
         4: .line 123
      StackMap locals: org.eclipse.collections.api.partition.list.PartitionMutableList org.eclipse.collections.api.list.MutableList org.eclipse.collections.api.list.MutableList
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 5 /* each */
        start local 5 // java.lang.Object each
         5: .line 124
            aload 1 /* predicate */
            aload 5 /* each */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate.accept:(Ljava/lang/Object;)Z
            ifeq 6
            aload 3 /* selected */
            goto 7
      StackMap locals: java.lang.Object
      StackMap stack:
         6: aload 4 /* rejected */
      StackMap locals:
      StackMap stack: org.eclipse.collections.api.list.MutableList
         7: astore 6 /* bucket */
        start local 6 // org.eclipse.collections.api.list.MutableList bucket
         8: .line 125
            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 121
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        10: .line 127
            aload 2 /* result */
            areturn
        end local 4 // org.eclipse.collections.api.list.MutableList rejected
        end local 3 // org.eclipse.collections.api.list.MutableList selected
        end local 2 // org.eclipse.collections.api.partition.list.PartitionMutableList result
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0   iterator  Ljava/util/Iterator<TT;>;
            0   11     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            1   11     2     result  Lorg/eclipse/collections/api/partition/list/PartitionMutableList<TT;>;
            2   11     3   selected  Lorg/eclipse/collections/api/list/MutableList<TT;>;
            3   11     4   rejected  Lorg/eclipse/collections/api/list/MutableList<TT;>;
            5    9     5       each  TT;
            8    9     6     bucket  Lorg/eclipse/collections/api/list/MutableList<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)Lorg/eclipse/collections/api/partition/list/PartitionMutableList<TT;>;
    MethodParameters:
           Name  Flags
      iterator   
      predicate  

  public static <T, P> org.eclipse.collections.api.partition.list.PartitionMutableList<T> partitionWith(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, P);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Lorg/eclipse/collections/api/partition/list/PartitionMutableList;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=8, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 2 // java.lang.Object parameter
         0: .line 139
            new org.eclipse.collections.impl.partition.list.PartitionFastList
            dup
            invokespecial org.eclipse.collections.impl.partition.list.PartitionFastList.<init>:()V
            astore 3 /* result */
        start local 3 // org.eclipse.collections.api.partition.list.PartitionMutableList result
         1: .line 140
            aload 3 /* result */
            invokeinterface org.eclipse.collections.api.partition.list.PartitionMutableList.getSelected:()Lorg/eclipse/collections/api/list/MutableList;
            astore 4 /* selected */
        start local 4 // org.eclipse.collections.api.list.MutableList selected
         2: .line 141
            aload 3 /* result */
            invokeinterface org.eclipse.collections.api.partition.list.PartitionMutableList.getRejected:()Lorg/eclipse/collections/api/list/MutableList;
            astore 5 /* rejected */
        start local 5 // org.eclipse.collections.api.list.MutableList rejected
         3: .line 143
            goto 9
         4: .line 145
      StackMap locals: org.eclipse.collections.api.partition.list.PartitionMutableList org.eclipse.collections.api.list.MutableList org.eclipse.collections.api.list.MutableList
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 6 /* each */
        start local 6 // java.lang.Object each
         5: .line 146
            aload 1 /* predicate */
            aload 6 /* each */
            aload 2 /* parameter */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate2.accept:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 6
            aload 4 /* selected */
            goto 7
      StackMap locals: java.lang.Object
      StackMap stack:
         6: aload 5 /* rejected */
      StackMap locals:
      StackMap stack: org.eclipse.collections.api.list.MutableList
         7: astore 7 /* bucket */
        start local 7 // org.eclipse.collections.api.list.MutableList bucket
         8: .line 147
            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 143
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        10: .line 149
            aload 3 /* result */
            areturn
        end local 5 // org.eclipse.collections.api.list.MutableList rejected
        end local 4 // org.eclipse.collections.api.list.MutableList selected
        end local 3 // org.eclipse.collections.api.partition.list.PartitionMutableList result
        end local 2 // java.lang.Object parameter
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0   iterator  Ljava/util/Iterator<TT;>;
            0   11     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0   11     2  parameter  TP;
            1   11     3     result  Lorg/eclipse/collections/api/partition/list/PartitionMutableList<TT;>;
            2   11     4   selected  Lorg/eclipse/collections/api/list/MutableList<TT;>;
            3   11     5   rejected  Lorg/eclipse/collections/api/list/MutableList<TT;>;
            5    9     6       each  TT;
            8    9     7     bucket  Lorg/eclipse/collections/api/list/MutableList<TT;>;
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;)Lorg/eclipse/collections/api/partition/list/PartitionMutableList<TT;>;
    MethodParameters:
           Name  Flags
      iterator   
      predicate  
      parameter  

  public static <T, R extends org.eclipse.collections.api.partition.PartitionMutableCollection<T>> R partitionWhile(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate<? super T>, );
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate;Lorg/eclipse/collections/api/partition/PartitionMutableCollection;)Lorg/eclipse/collections/api/partition/PartitionMutableCollection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=7, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        start local 2 // org.eclipse.collections.api.partition.PartitionMutableCollection target
         0: .line 154
            aload 2 /* target */
            invokeinterface org.eclipse.collections.api.partition.PartitionMutableCollection.getSelected:()Lorg/eclipse/collections/api/collection/MutableCollection;
            astore 3 /* selected */
        start local 3 // org.eclipse.collections.api.collection.MutableCollection selected
         1: .line 155
            aload 2 /* target */
            invokeinterface org.eclipse.collections.api.partition.PartitionMutableCollection.getRejected:()Lorg/eclipse/collections/api/collection/MutableCollection;
            astore 4 /* rejected */
        start local 4 // org.eclipse.collections.api.collection.MutableCollection rejected
         2: .line 157
            iconst_0
            istore 5 /* partitionFound */
        start local 5 // boolean partitionFound
         3: .line 158
            goto 10
         4: .line 160
      StackMap locals: org.eclipse.collections.api.collection.MutableCollection org.eclipse.collections.api.collection.MutableCollection int
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 6 /* next */
        start local 6 // java.lang.Object next
         5: .line 161
            aload 1 /* predicate */
            aload 6 /* next */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate.accept:(Ljava/lang/Object;)Z
            ifeq 8
         6: .line 163
            aload 3 /* selected */
            aload 6 /* next */
            invokeinterface org.eclipse.collections.api.collection.MutableCollection.add:(Ljava/lang/Object;)Z
            pop
         7: .line 164
            goto 10
         8: .line 167
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 4 /* rejected */
            aload 6 /* next */
            invokeinterface org.eclipse.collections.api.collection.MutableCollection.add:(Ljava/lang/Object;)Z
            pop
         9: .line 168
            iconst_1
            istore 5 /* partitionFound */
        end local 6 // java.lang.Object next
        10: .line 158
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 13
            iload 5 /* partitionFound */
            ifeq 4
        11: .line 171
            goto 13
        12: .line 173
      StackMap locals:
      StackMap stack:
            aload 4 /* rejected */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.collection.MutableCollection.add:(Ljava/lang/Object;)Z
            pop
        13: .line 171
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 12
        14: .line 175
            aload 2 /* target */
            areturn
        end local 5 // boolean partitionFound
        end local 4 // org.eclipse.collections.api.collection.MutableCollection rejected
        end local 3 // org.eclipse.collections.api.collection.MutableCollection selected
        end local 2 // org.eclipse.collections.api.partition.PartitionMutableCollection target
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   15     0        iterator  Ljava/util/Iterator<TT;>;
            0   15     1       predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            0   15     2          target  TR;
            1   15     3        selected  Lorg/eclipse/collections/api/collection/MutableCollection<TT;>;
            2   15     4        rejected  Lorg/eclipse/collections/api/collection/MutableCollection<TT;>;
            3   15     5  partitionFound  Z
            5   10     6            next  TT;
    Signature: <T:Ljava/lang/Object;R::Lorg/eclipse/collections/api/partition/PartitionMutableCollection<TT;>;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;TR;)TR;
    MethodParameters:
           Name  Flags
      iterator   
      predicate  
      target     

  public static <T, R extends org.eclipse.collections.api.collection.MutableCollection<T>> R takeWhile(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate<? super T>, );
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate;Lorg/eclipse/collections/api/collection/MutableCollection;)Lorg/eclipse/collections/api/collection/MutableCollection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        start local 2 // org.eclipse.collections.api.collection.MutableCollection target
         0: .line 180
            goto 6
         1: .line 182
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 3 /* next */
        start local 3 // java.lang.Object next
         2: .line 183
            aload 1 /* predicate */
            aload 3 /* next */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate.accept:(Ljava/lang/Object;)Z
            ifeq 5
         3: .line 185
            aload 2 /* target */
            aload 3 /* next */
            invokeinterface org.eclipse.collections.api.collection.MutableCollection.add:(Ljava/lang/Object;)Z
            pop
         4: .line 186
            goto 6
         5: .line 189
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 2 /* target */
            areturn
        end local 3 // java.lang.Object next
         6: .line 180
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         7: .line 192
            aload 2 /* target */
            areturn
        end local 2 // org.eclipse.collections.api.collection.MutableCollection target
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0   iterator  Ljava/util/Iterator<TT;>;
            0    8     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            0    8     2     target  TR;
            2    6     3       next  TT;
    Signature: <T:Ljava/lang/Object;R::Lorg/eclipse/collections/api/collection/MutableCollection<TT;>;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;TR;)TR;
    MethodParameters:
           Name  Flags
      iterator   
      predicate  
      target     

  public static <T, R extends org.eclipse.collections.api.collection.MutableCollection<T>> R dropWhile(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate<? super T>, );
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate;Lorg/eclipse/collections/api/collection/MutableCollection;)Lorg/eclipse/collections/api/collection/MutableCollection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        start local 2 // org.eclipse.collections.api.collection.MutableCollection target
         0: .line 197
            iconst_0
            istore 3 /* partitionFound */
        start local 3 // boolean partitionFound
         1: .line 198
            goto 6
         2: .line 200
      StackMap locals: int
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 4 /* next */
        start local 4 // java.lang.Object next
         3: .line 201
            aload 1 /* predicate */
            aload 4 /* next */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate.accept:(Ljava/lang/Object;)Z
            ifne 6
         4: .line 203
            aload 2 /* target */
            aload 4 /* next */
            invokeinterface org.eclipse.collections.api.collection.MutableCollection.add:(Ljava/lang/Object;)Z
            pop
         5: .line 204
            iconst_1
            istore 3 /* partitionFound */
        end local 4 // java.lang.Object next
         6: .line 198
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 9
            iload 3 /* partitionFound */
            ifeq 2
         7: .line 207
            goto 9
         8: .line 209
      StackMap locals:
      StackMap stack:
            aload 2 /* target */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.collection.MutableCollection.add:(Ljava/lang/Object;)Z
            pop
         9: .line 207
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        10: .line 211
            aload 2 /* target */
            areturn
        end local 3 // boolean partitionFound
        end local 2 // org.eclipse.collections.api.collection.MutableCollection target
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   11     0        iterator  Ljava/util/Iterator<TT;>;
            0   11     1       predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            0   11     2          target  TR;
            1   11     3  partitionFound  Z
            3    6     4            next  TT;
    Signature: <T:Ljava/lang/Object;R::Lorg/eclipse/collections/api/collection/MutableCollection<TT;>;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;TR;)TR;
    MethodParameters:
           Name  Flags
      iterator   
      predicate  
      target     

  public static <T> int count(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 219
            iconst_0
            istore 2 /* count */
        start local 2 // int count
         1: .line 220
            goto 4
         2: .line 222
      StackMap locals: int
      StackMap stack:
            aload 1 /* predicate */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate.accept:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 224
            iinc 2 /* count */ 1
         4: .line 220
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 227
            iload 2 /* count */
            ireturn
        end local 2 // int count
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0   iterator  Ljava/util/Iterator<TT;>;
            0    6     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            1    6     2      count  I
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)I
    MethodParameters:
           Name  Flags
      iterator   
      predicate  

  public static <T, P> int countWith(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, );
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 2 // java.lang.Object parameter
         0: .line 238
            iconst_0
            istore 3 /* count */
        start local 3 // int count
         1: .line 239
            goto 4
         2: .line 241
      StackMap locals: int
      StackMap stack:
            aload 1 /* predicate */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            aload 2 /* parameter */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate2.accept:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 4
         3: .line 243
            iinc 3 /* count */ 1
         4: .line 239
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 246
            iload 3 /* count */
            ireturn
        end local 3 // int count
        end local 2 // java.lang.Object parameter
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0   iterator  Ljava/util/Iterator<TT;>;
            0    6     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    6     2  parameter  TP;
            1    6     3      count  I
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;)I
    MethodParameters:
           Name  Flags
      iterator   
      predicate  
      parameter  

  public static <T, R extends java.util.Collection<T>> R select(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate<? super T>, );
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        start local 2 // java.util.Collection targetCollection
         0: .line 257
            goto 4
         1: .line 259
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 3 /* item */
        start local 3 // java.lang.Object item
         2: .line 260
            aload 1 /* predicate */
            aload 3 /* item */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate.accept:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 262
            aload 2 /* targetCollection */
            aload 3 /* item */
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // java.lang.Object item
         4: .line 257
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 265
            aload 2 /* targetCollection */
            areturn
        end local 2 // java.util.Collection targetCollection
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    6     0          iterator  Ljava/util/Iterator<TT;>;
            0    6     1         predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            0    6     2  targetCollection  TR;
            2    4     3              item  TT;
    Signature: <T:Ljava/lang/Object;R::Ljava/util/Collection<TT;>;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;TR;)TR;
    MethodParameters:
                  Name  Flags
      iterator          
      predicate         
      targetCollection  

  public static <T, P, R extends java.util.Collection<T>> R selectWith(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, P, );
    descriptor: (Ljava/util/Iterator;Lorg/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=5, args_size=4
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 2 // java.lang.Object injectedValue
        start local 3 // java.util.Collection targetCollection
         0: .line 277
            goto 4
         1: .line 279
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 4 /* item */
        start local 4 // java.lang.Object item
         2: .line 280
            aload 1 /* predicate */
            aload 4 /* item */
            aload 2 /* injectedValue */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate2.accept:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 4
         3: .line 282
            aload 3 /* targetCollection */
            aload 4 /* item */
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // java.lang.Object item
         4: .line 277
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 285
            aload 3 /* targetCollection */
            areturn
        end local 3 // java.util.Collection targetCollection
        end local 2 // java.lang.Object injectedValue
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    6     0          iterator  Ljava/util/Iterator<TT;>;
            0    6     1         predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    6     2     injectedValue  TP;
            0    6     3  targetCollection  TR;
            2    4     4              item  TT;
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;R::Ljava/util/Collection<TT;>;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;TR;)TR;
    MethodParameters:
                  Name  Flags
      iterator          
      predicate         
      injectedValue     
      targetCollection  

  public static <T, R extends java.util.Collection<T>> R selectInstancesOf(java.util.Iterator<?>, java.lang.Class<T>, );
    descriptor: (Ljava/util/Iterator;Ljava/lang/Class;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // java.lang.Class clazz
        start local 2 // java.util.Collection targetCollection
         0: .line 296
            goto 4
         1: .line 298
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 3 /* item */
        start local 3 // java.lang.Object item
         2: .line 299
            aload 1 /* clazz */
            aload 3 /* item */
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 301
            aload 2 /* targetCollection */
            aload 3 /* item */
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // java.lang.Object item
         4: .line 296
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 304
            aload 2 /* targetCollection */
            areturn
        end local 2 // java.util.Collection targetCollection
        end local 1 // java.lang.Class clazz
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    6     0          iterator  Ljava/util/Iterator<*>;
            0    6     1             clazz  Ljava/lang/Class<TT;>;
            0    6     2  targetCollection  TR;
            2    4     3              item  Ljava/lang/Object;
    Signature: <T:Ljava/lang/Object;R::Ljava/util/Collection<TT;>;>(Ljava/util/Iterator<*>;Ljava/lang/Class<TT;>;TR;)TR;
    MethodParameters:
                  Name  Flags
      iterator          
      clazz             
      targetCollection  

  public static <T, V, R extends java.util.Collection<V>> R collectIf(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate<? super T>, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>, );
    descriptor: (Ljava/util/Iterator;Lorg/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=5, args_size=4
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        start local 2 // org.eclipse.collections.api.block.function.Function function
        start local 3 // java.util.Collection targetCollection
         0: .line 316
            goto 4
         1: .line 318
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 4 /* item */
        start local 4 // java.lang.Object item
         2: .line 319
            aload 1 /* predicate */
            aload 4 /* item */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate.accept:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 321
            aload 3 /* targetCollection */
            aload 2 /* function */
            aload 4 /* 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 4 // java.lang.Object item
         4: .line 316
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 324
            aload 3 /* targetCollection */
            areturn
        end local 3 // java.util.Collection targetCollection
        end local 2 // org.eclipse.collections.api.block.function.Function function
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    6     0          iterator  Ljava/util/Iterator<TT;>;
            0    6     1         predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            0    6     2          function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            0    6     3  targetCollection  TR;
            2    4     4              item  TT;
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;R::Ljava/util/Collection<TV;>;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;TR;)TR;
    MethodParameters:
                  Name  Flags
      iterator          
      predicate         
      function          
      targetCollection  

  public static <T, R extends java.util.Collection<T>> R reject(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate<? super T>, );
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        start local 2 // java.util.Collection targetCollection
         0: .line 335
            goto 4
         1: .line 337
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 3 /* item */
        start local 3 // java.lang.Object item
         2: .line 338
            aload 1 /* predicate */
            aload 3 /* item */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate.accept:(Ljava/lang/Object;)Z
            ifne 4
         3: .line 340
            aload 2 /* targetCollection */
            aload 3 /* item */
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // java.lang.Object item
         4: .line 335
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 343
            aload 2 /* targetCollection */
            areturn
        end local 2 // java.util.Collection targetCollection
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    6     0          iterator  Ljava/util/Iterator<TT;>;
            0    6     1         predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            0    6     2  targetCollection  TR;
            2    4     3              item  TT;
    Signature: <T:Ljava/lang/Object;R::Ljava/util/Collection<TT;>;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;TR;)TR;
    MethodParameters:
                  Name  Flags
      iterator          
      predicate         
      targetCollection  

  public static <T, P, R extends java.util.Collection<T>> R rejectWith(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, P, );
    descriptor: (Ljava/util/Iterator;Lorg/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=5, args_size=4
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 2 // java.lang.Object parameter
        start local 3 // java.util.Collection targetCollection
         0: .line 355
            goto 4
         1: .line 357
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 4 /* item */
        start local 4 // java.lang.Object item
         2: .line 358
            aload 1 /* predicate */
            aload 4 /* item */
            aload 2 /* parameter */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate2.accept:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifne 4
         3: .line 360
            aload 3 /* targetCollection */
            aload 4 /* item */
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // java.lang.Object item
         4: .line 355
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 363
            aload 3 /* targetCollection */
            areturn
        end local 3 // java.util.Collection targetCollection
        end local 2 // java.lang.Object parameter
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    6     0          iterator  Ljava/util/Iterator<TT;>;
            0    6     1         predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    6     2         parameter  TP;
            0    6     3  targetCollection  TR;
            2    4     4              item  TT;
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;R::Ljava/util/Collection<TT;>;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;TR;)TR;
    MethodParameters:
                  Name  Flags
      iterator          
      predicate         
      parameter         
      targetCollection  

  public static <T, V, R extends java.util.Collection<V>> R collect(java.util.Iterator<T>, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>, );
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/Function;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.Function function
        start local 2 // java.util.Collection targetCollection
         0: .line 374
            goto 2
         1: .line 376
      StackMap locals:
      StackMap stack:
            aload 2 /* targetCollection */
            aload 1 /* function */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            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
         2: .line 374
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         3: .line 378
            aload 2 /* targetCollection */
            areturn
        end local 2 // java.util.Collection targetCollection
        end local 1 // org.eclipse.collections.api.block.function.Function function
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    4     0          iterator  Ljava/util/Iterator<TT;>;
            0    4     1          function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            0    4     2  targetCollection  TR;
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;R::Ljava/util/Collection<TV;>;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;TR;)TR;
    MethodParameters:
                  Name  Flags
      iterator          
      function          
      targetCollection  

  public static <T> org.eclipse.collections.api.collection.primitive.MutableBooleanCollection collectBoolean(java.util.Iterator<T>, org.eclipse.collections.api.block.function.primitive.BooleanFunction<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/primitive/BooleanFunction;)Lorg/eclipse/collections/api/collection/primitive/MutableBooleanCollection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.primitive.BooleanFunction booleanFunction
         0: .line 388
            new org.eclipse.collections.impl.list.mutable.primitive.BooleanArrayList
            dup
            invokespecial org.eclipse.collections.impl.list.mutable.primitive.BooleanArrayList.<init>:()V
            astore 2 /* result */
        start local 2 // org.eclipse.collections.api.collection.primitive.MutableBooleanCollection result
         1: .line 389
            goto 3
         2: .line 391
      StackMap locals: org.eclipse.collections.api.collection.primitive.MutableBooleanCollection
      StackMap stack:
            aload 2 /* result */
            aload 1 /* booleanFunction */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.primitive.BooleanFunction.booleanValueOf:(Ljava/lang/Object;)Z
            invokeinterface org.eclipse.collections.api.collection.primitive.MutableBooleanCollection.add:(Z)Z
            pop
         3: .line 389
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         4: .line 393
            aload 2 /* result */
            areturn
        end local 2 // org.eclipse.collections.api.collection.primitive.MutableBooleanCollection result
        end local 1 // org.eclipse.collections.api.block.function.primitive.BooleanFunction booleanFunction
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    5     0         iterator  Ljava/util/Iterator<TT;>;
            0    5     1  booleanFunction  Lorg/eclipse/collections/api/block/function/primitive/BooleanFunction<-TT;>;
            1    5     2           result  Lorg/eclipse/collections/api/collection/primitive/MutableBooleanCollection;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/primitive/BooleanFunction<-TT;>;)Lorg/eclipse/collections/api/collection/primitive/MutableBooleanCollection;
    MethodParameters:
                 Name  Flags
      iterator         
      booleanFunction  

  public static <T, R extends org.eclipse.collections.api.collection.primitive.MutableBooleanCollection> R collectBoolean(java.util.Iterator<T>, org.eclipse.collections.api.block.function.primitive.BooleanFunction<? super T>, );
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/primitive/BooleanFunction;Lorg/eclipse/collections/api/collection/primitive/MutableBooleanCollection;)Lorg/eclipse/collections/api/collection/primitive/MutableBooleanCollection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.primitive.BooleanFunction booleanFunction
        start local 2 // org.eclipse.collections.api.collection.primitive.MutableBooleanCollection target
         0: .line 404
            goto 2
         1: .line 406
      StackMap locals:
      StackMap stack:
            aload 2 /* target */
            aload 1 /* booleanFunction */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.primitive.BooleanFunction.booleanValueOf:(Ljava/lang/Object;)Z
            invokeinterface org.eclipse.collections.api.collection.primitive.MutableBooleanCollection.add:(Z)Z
            pop
         2: .line 404
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         3: .line 408
            aload 2 /* target */
            areturn
        end local 2 // org.eclipse.collections.api.collection.primitive.MutableBooleanCollection target
        end local 1 // org.eclipse.collections.api.block.function.primitive.BooleanFunction booleanFunction
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    4     0         iterator  Ljava/util/Iterator<TT;>;
            0    4     1  booleanFunction  Lorg/eclipse/collections/api/block/function/primitive/BooleanFunction<-TT;>;
            0    4     2           target  TR;
    Signature: <T:Ljava/lang/Object;R::Lorg/eclipse/collections/api/collection/primitive/MutableBooleanCollection;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/primitive/BooleanFunction<-TT;>;TR;)TR;
    MethodParameters:
                 Name  Flags
      iterator         
      booleanFunction  
      target           

  public static <T> org.eclipse.collections.api.collection.primitive.MutableByteCollection collectByte(java.util.Iterator<T>, org.eclipse.collections.api.block.function.primitive.ByteFunction<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/primitive/ByteFunction;)Lorg/eclipse/collections/api/collection/primitive/MutableByteCollection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.primitive.ByteFunction byteFunction
         0: .line 418
            new org.eclipse.collections.impl.list.mutable.primitive.ByteArrayList
            dup
            invokespecial org.eclipse.collections.impl.list.mutable.primitive.ByteArrayList.<init>:()V
            astore 2 /* result */
        start local 2 // org.eclipse.collections.api.collection.primitive.MutableByteCollection result
         1: .line 419
            goto 3
         2: .line 421
      StackMap locals: org.eclipse.collections.api.collection.primitive.MutableByteCollection
      StackMap stack:
            aload 2 /* result */
            aload 1 /* byteFunction */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.primitive.ByteFunction.byteValueOf:(Ljava/lang/Object;)B
            invokeinterface org.eclipse.collections.api.collection.primitive.MutableByteCollection.add:(B)Z
            pop
         3: .line 419
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         4: .line 423
            aload 2 /* result */
            areturn
        end local 2 // org.eclipse.collections.api.collection.primitive.MutableByteCollection result
        end local 1 // org.eclipse.collections.api.block.function.primitive.ByteFunction byteFunction
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0      iterator  Ljava/util/Iterator<TT;>;
            0    5     1  byteFunction  Lorg/eclipse/collections/api/block/function/primitive/ByteFunction<-TT;>;
            1    5     2        result  Lorg/eclipse/collections/api/collection/primitive/MutableByteCollection;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/primitive/ByteFunction<-TT;>;)Lorg/eclipse/collections/api/collection/primitive/MutableByteCollection;
    MethodParameters:
              Name  Flags
      iterator      
      byteFunction  

  public static <T, R extends org.eclipse.collections.api.collection.primitive.MutableByteCollection> R collectByte(java.util.Iterator<T>, org.eclipse.collections.api.block.function.primitive.ByteFunction<? super T>, );
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/primitive/ByteFunction;Lorg/eclipse/collections/api/collection/primitive/MutableByteCollection;)Lorg/eclipse/collections/api/collection/primitive/MutableByteCollection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.primitive.ByteFunction byteFunction
        start local 2 // org.eclipse.collections.api.collection.primitive.MutableByteCollection target
         0: .line 434
            goto 2
         1: .line 436
      StackMap locals:
      StackMap stack:
            aload 2 /* target */
            aload 1 /* byteFunction */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.primitive.ByteFunction.byteValueOf:(Ljava/lang/Object;)B
            invokeinterface org.eclipse.collections.api.collection.primitive.MutableByteCollection.add:(B)Z
            pop
         2: .line 434
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         3: .line 438
            aload 2 /* target */
            areturn
        end local 2 // org.eclipse.collections.api.collection.primitive.MutableByteCollection target
        end local 1 // org.eclipse.collections.api.block.function.primitive.ByteFunction byteFunction
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0      iterator  Ljava/util/Iterator<TT;>;
            0    4     1  byteFunction  Lorg/eclipse/collections/api/block/function/primitive/ByteFunction<-TT;>;
            0    4     2        target  TR;
    Signature: <T:Ljava/lang/Object;R::Lorg/eclipse/collections/api/collection/primitive/MutableByteCollection;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/primitive/ByteFunction<-TT;>;TR;)TR;
    MethodParameters:
              Name  Flags
      iterator      
      byteFunction  
      target        

  public static <T> org.eclipse.collections.api.collection.primitive.MutableCharCollection collectChar(java.util.Iterator<T>, org.eclipse.collections.api.block.function.primitive.CharFunction<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/primitive/CharFunction;)Lorg/eclipse/collections/api/collection/primitive/MutableCharCollection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.primitive.CharFunction charFunction
         0: .line 448
            new org.eclipse.collections.impl.list.mutable.primitive.CharArrayList
            dup
            invokespecial org.eclipse.collections.impl.list.mutable.primitive.CharArrayList.<init>:()V
            astore 2 /* result */
        start local 2 // org.eclipse.collections.api.collection.primitive.MutableCharCollection result
         1: .line 449
            goto 3
         2: .line 451
      StackMap locals: org.eclipse.collections.api.collection.primitive.MutableCharCollection
      StackMap stack:
            aload 2 /* result */
            aload 1 /* charFunction */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.primitive.CharFunction.charValueOf:(Ljava/lang/Object;)C
            invokeinterface org.eclipse.collections.api.collection.primitive.MutableCharCollection.add:(C)Z
            pop
         3: .line 449
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         4: .line 453
            aload 2 /* result */
            areturn
        end local 2 // org.eclipse.collections.api.collection.primitive.MutableCharCollection result
        end local 1 // org.eclipse.collections.api.block.function.primitive.CharFunction charFunction
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0      iterator  Ljava/util/Iterator<TT;>;
            0    5     1  charFunction  Lorg/eclipse/collections/api/block/function/primitive/CharFunction<-TT;>;
            1    5     2        result  Lorg/eclipse/collections/api/collection/primitive/MutableCharCollection;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/primitive/CharFunction<-TT;>;)Lorg/eclipse/collections/api/collection/primitive/MutableCharCollection;
    MethodParameters:
              Name  Flags
      iterator      
      charFunction  

  public static <T, R extends org.eclipse.collections.api.collection.primitive.MutableCharCollection> R collectChar(java.util.Iterator<T>, org.eclipse.collections.api.block.function.primitive.CharFunction<? super T>, );
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/primitive/CharFunction;Lorg/eclipse/collections/api/collection/primitive/MutableCharCollection;)Lorg/eclipse/collections/api/collection/primitive/MutableCharCollection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.primitive.CharFunction charFunction
        start local 2 // org.eclipse.collections.api.collection.primitive.MutableCharCollection target
         0: .line 464
            goto 2
         1: .line 466
      StackMap locals:
      StackMap stack:
            aload 2 /* target */
            aload 1 /* charFunction */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.primitive.CharFunction.charValueOf:(Ljava/lang/Object;)C
            invokeinterface org.eclipse.collections.api.collection.primitive.MutableCharCollection.add:(C)Z
            pop
         2: .line 464
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         3: .line 468
            aload 2 /* target */
            areturn
        end local 2 // org.eclipse.collections.api.collection.primitive.MutableCharCollection target
        end local 1 // org.eclipse.collections.api.block.function.primitive.CharFunction charFunction
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0      iterator  Ljava/util/Iterator<TT;>;
            0    4     1  charFunction  Lorg/eclipse/collections/api/block/function/primitive/CharFunction<-TT;>;
            0    4     2        target  TR;
    Signature: <T:Ljava/lang/Object;R::Lorg/eclipse/collections/api/collection/primitive/MutableCharCollection;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/primitive/CharFunction<-TT;>;TR;)TR;
    MethodParameters:
              Name  Flags
      iterator      
      charFunction  
      target        

  public static <T> org.eclipse.collections.api.collection.primitive.MutableDoubleCollection collectDouble(java.util.Iterator<T>, org.eclipse.collections.api.block.function.primitive.DoubleFunction<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction;)Lorg/eclipse/collections/api/collection/primitive/MutableDoubleCollection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.primitive.DoubleFunction doubleFunction
         0: .line 478
            new org.eclipse.collections.impl.list.mutable.primitive.DoubleArrayList
            dup
            invokespecial org.eclipse.collections.impl.list.mutable.primitive.DoubleArrayList.<init>:()V
            astore 2 /* result */
        start local 2 // org.eclipse.collections.api.collection.primitive.MutableDoubleCollection result
         1: .line 479
            goto 3
         2: .line 481
      StackMap locals: org.eclipse.collections.api.collection.primitive.MutableDoubleCollection
      StackMap stack:
            aload 2 /* result */
            aload 1 /* doubleFunction */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.primitive.DoubleFunction.doubleValueOf:(Ljava/lang/Object;)D
            invokeinterface org.eclipse.collections.api.collection.primitive.MutableDoubleCollection.add:(D)Z
            pop
         3: .line 479
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         4: .line 483
            aload 2 /* result */
            areturn
        end local 2 // org.eclipse.collections.api.collection.primitive.MutableDoubleCollection result
        end local 1 // org.eclipse.collections.api.block.function.primitive.DoubleFunction doubleFunction
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    5     0        iterator  Ljava/util/Iterator<TT;>;
            0    5     1  doubleFunction  Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction<-TT;>;
            1    5     2          result  Lorg/eclipse/collections/api/collection/primitive/MutableDoubleCollection;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction<-TT;>;)Lorg/eclipse/collections/api/collection/primitive/MutableDoubleCollection;
    MethodParameters:
                Name  Flags
      iterator        
      doubleFunction  

  public static <T, R extends org.eclipse.collections.api.collection.primitive.MutableDoubleCollection> R collectDouble(java.util.Iterator<T>, org.eclipse.collections.api.block.function.primitive.DoubleFunction<? super T>, );
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction;Lorg/eclipse/collections/api/collection/primitive/MutableDoubleCollection;)Lorg/eclipse/collections/api/collection/primitive/MutableDoubleCollection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.primitive.DoubleFunction doubleFunction
        start local 2 // org.eclipse.collections.api.collection.primitive.MutableDoubleCollection target
         0: .line 494
            goto 2
         1: .line 496
      StackMap locals:
      StackMap stack:
            aload 2 /* target */
            aload 1 /* doubleFunction */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.primitive.DoubleFunction.doubleValueOf:(Ljava/lang/Object;)D
            invokeinterface org.eclipse.collections.api.collection.primitive.MutableDoubleCollection.add:(D)Z
            pop
         2: .line 494
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         3: .line 498
            aload 2 /* target */
            areturn
        end local 2 // org.eclipse.collections.api.collection.primitive.MutableDoubleCollection target
        end local 1 // org.eclipse.collections.api.block.function.primitive.DoubleFunction doubleFunction
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0        iterator  Ljava/util/Iterator<TT;>;
            0    4     1  doubleFunction  Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction<-TT;>;
            0    4     2          target  TR;
    Signature: <T:Ljava/lang/Object;R::Lorg/eclipse/collections/api/collection/primitive/MutableDoubleCollection;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction<-TT;>;TR;)TR;
    MethodParameters:
                Name  Flags
      iterator        
      doubleFunction  
      target          

  public static <T> org.eclipse.collections.api.collection.primitive.MutableFloatCollection collectFloat(java.util.Iterator<T>, org.eclipse.collections.api.block.function.primitive.FloatFunction<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/primitive/FloatFunction;)Lorg/eclipse/collections/api/collection/primitive/MutableFloatCollection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.primitive.FloatFunction floatFunction
         0: .line 508
            new org.eclipse.collections.impl.list.mutable.primitive.FloatArrayList
            dup
            invokespecial org.eclipse.collections.impl.list.mutable.primitive.FloatArrayList.<init>:()V
            astore 2 /* result */
        start local 2 // org.eclipse.collections.api.collection.primitive.MutableFloatCollection result
         1: .line 509
            goto 3
         2: .line 511
      StackMap locals: org.eclipse.collections.api.collection.primitive.MutableFloatCollection
      StackMap stack:
            aload 2 /* result */
            aload 1 /* floatFunction */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.primitive.FloatFunction.floatValueOf:(Ljava/lang/Object;)F
            invokeinterface org.eclipse.collections.api.collection.primitive.MutableFloatCollection.add:(F)Z
            pop
         3: .line 509
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         4: .line 513
            aload 2 /* result */
            areturn
        end local 2 // org.eclipse.collections.api.collection.primitive.MutableFloatCollection result
        end local 1 // org.eclipse.collections.api.block.function.primitive.FloatFunction floatFunction
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    5     0       iterator  Ljava/util/Iterator<TT;>;
            0    5     1  floatFunction  Lorg/eclipse/collections/api/block/function/primitive/FloatFunction<-TT;>;
            1    5     2         result  Lorg/eclipse/collections/api/collection/primitive/MutableFloatCollection;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/primitive/FloatFunction<-TT;>;)Lorg/eclipse/collections/api/collection/primitive/MutableFloatCollection;
    MethodParameters:
               Name  Flags
      iterator       
      floatFunction  

  public static <T, R extends org.eclipse.collections.api.collection.primitive.MutableFloatCollection> R collectFloat(java.util.Iterator<T>, org.eclipse.collections.api.block.function.primitive.FloatFunction<? super T>, );
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/primitive/FloatFunction;Lorg/eclipse/collections/api/collection/primitive/MutableFloatCollection;)Lorg/eclipse/collections/api/collection/primitive/MutableFloatCollection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.primitive.FloatFunction floatFunction
        start local 2 // org.eclipse.collections.api.collection.primitive.MutableFloatCollection target
         0: .line 524
            goto 2
         1: .line 526
      StackMap locals:
      StackMap stack:
            aload 2 /* target */
            aload 1 /* floatFunction */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.primitive.FloatFunction.floatValueOf:(Ljava/lang/Object;)F
            invokeinterface org.eclipse.collections.api.collection.primitive.MutableFloatCollection.add:(F)Z
            pop
         2: .line 524
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         3: .line 528
            aload 2 /* target */
            areturn
        end local 2 // org.eclipse.collections.api.collection.primitive.MutableFloatCollection target
        end local 1 // org.eclipse.collections.api.block.function.primitive.FloatFunction floatFunction
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0       iterator  Ljava/util/Iterator<TT;>;
            0    4     1  floatFunction  Lorg/eclipse/collections/api/block/function/primitive/FloatFunction<-TT;>;
            0    4     2         target  TR;
    Signature: <T:Ljava/lang/Object;R::Lorg/eclipse/collections/api/collection/primitive/MutableFloatCollection;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/primitive/FloatFunction<-TT;>;TR;)TR;
    MethodParameters:
               Name  Flags
      iterator       
      floatFunction  
      target         

  public static <T> org.eclipse.collections.api.collection.primitive.MutableIntCollection collectInt(java.util.Iterator<T>, org.eclipse.collections.api.block.function.primitive.IntFunction<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/primitive/IntFunction;)Lorg/eclipse/collections/api/collection/primitive/MutableIntCollection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.primitive.IntFunction intFunction
         0: .line 538
            new org.eclipse.collections.impl.list.mutable.primitive.IntArrayList
            dup
            invokespecial org.eclipse.collections.impl.list.mutable.primitive.IntArrayList.<init>:()V
            astore 2 /* result */
        start local 2 // org.eclipse.collections.api.collection.primitive.MutableIntCollection result
         1: .line 539
            goto 3
         2: .line 541
      StackMap locals: org.eclipse.collections.api.collection.primitive.MutableIntCollection
      StackMap stack:
            aload 2 /* result */
            aload 1 /* intFunction */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.primitive.IntFunction.intValueOf:(Ljava/lang/Object;)I
            invokeinterface org.eclipse.collections.api.collection.primitive.MutableIntCollection.add:(I)Z
            pop
         3: .line 539
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         4: .line 543
            aload 2 /* result */
            areturn
        end local 2 // org.eclipse.collections.api.collection.primitive.MutableIntCollection result
        end local 1 // org.eclipse.collections.api.block.function.primitive.IntFunction intFunction
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0     iterator  Ljava/util/Iterator<TT;>;
            0    5     1  intFunction  Lorg/eclipse/collections/api/block/function/primitive/IntFunction<-TT;>;
            1    5     2       result  Lorg/eclipse/collections/api/collection/primitive/MutableIntCollection;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/primitive/IntFunction<-TT;>;)Lorg/eclipse/collections/api/collection/primitive/MutableIntCollection;
    MethodParameters:
             Name  Flags
      iterator     
      intFunction  

  public static <T, R extends org.eclipse.collections.api.collection.primitive.MutableIntCollection> R collectInt(java.util.Iterator<T>, org.eclipse.collections.api.block.function.primitive.IntFunction<? super T>, );
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/primitive/IntFunction;Lorg/eclipse/collections/api/collection/primitive/MutableIntCollection;)Lorg/eclipse/collections/api/collection/primitive/MutableIntCollection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.primitive.IntFunction intFunction
        start local 2 // org.eclipse.collections.api.collection.primitive.MutableIntCollection target
         0: .line 554
            goto 2
         1: .line 556
      StackMap locals:
      StackMap stack:
            aload 2 /* target */
            aload 1 /* intFunction */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.primitive.IntFunction.intValueOf:(Ljava/lang/Object;)I
            invokeinterface org.eclipse.collections.api.collection.primitive.MutableIntCollection.add:(I)Z
            pop
         2: .line 554
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         3: .line 558
            aload 2 /* target */
            areturn
        end local 2 // org.eclipse.collections.api.collection.primitive.MutableIntCollection target
        end local 1 // org.eclipse.collections.api.block.function.primitive.IntFunction intFunction
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0     iterator  Ljava/util/Iterator<TT;>;
            0    4     1  intFunction  Lorg/eclipse/collections/api/block/function/primitive/IntFunction<-TT;>;
            0    4     2       target  TR;
    Signature: <T:Ljava/lang/Object;R::Lorg/eclipse/collections/api/collection/primitive/MutableIntCollection;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/primitive/IntFunction<-TT;>;TR;)TR;
    MethodParameters:
             Name  Flags
      iterator     
      intFunction  
      target       

  public static <T> org.eclipse.collections.api.collection.primitive.MutableLongCollection collectLong(java.util.Iterator<T>, org.eclipse.collections.api.block.function.primitive.LongFunction<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/primitive/LongFunction;)Lorg/eclipse/collections/api/collection/primitive/MutableLongCollection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.primitive.LongFunction longFunction
         0: .line 568
            new org.eclipse.collections.impl.list.mutable.primitive.LongArrayList
            dup
            invokespecial org.eclipse.collections.impl.list.mutable.primitive.LongArrayList.<init>:()V
            astore 2 /* result */
        start local 2 // org.eclipse.collections.api.collection.primitive.MutableLongCollection result
         1: .line 569
            goto 3
         2: .line 571
      StackMap locals: org.eclipse.collections.api.collection.primitive.MutableLongCollection
      StackMap stack:
            aload 2 /* result */
            aload 1 /* longFunction */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.primitive.LongFunction.longValueOf:(Ljava/lang/Object;)J
            invokeinterface org.eclipse.collections.api.collection.primitive.MutableLongCollection.add:(J)Z
            pop
         3: .line 569
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         4: .line 573
            aload 2 /* result */
            areturn
        end local 2 // org.eclipse.collections.api.collection.primitive.MutableLongCollection result
        end local 1 // org.eclipse.collections.api.block.function.primitive.LongFunction longFunction
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0      iterator  Ljava/util/Iterator<TT;>;
            0    5     1  longFunction  Lorg/eclipse/collections/api/block/function/primitive/LongFunction<-TT;>;
            1    5     2        result  Lorg/eclipse/collections/api/collection/primitive/MutableLongCollection;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/primitive/LongFunction<-TT;>;)Lorg/eclipse/collections/api/collection/primitive/MutableLongCollection;
    MethodParameters:
              Name  Flags
      iterator      
      longFunction  

  public static <T, R extends org.eclipse.collections.api.collection.primitive.MutableLongCollection> R collectLong(java.util.Iterator<T>, org.eclipse.collections.api.block.function.primitive.LongFunction<? super T>, );
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/primitive/LongFunction;Lorg/eclipse/collections/api/collection/primitive/MutableLongCollection;)Lorg/eclipse/collections/api/collection/primitive/MutableLongCollection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.primitive.LongFunction longFunction
        start local 2 // org.eclipse.collections.api.collection.primitive.MutableLongCollection target
         0: .line 584
            goto 2
         1: .line 586
      StackMap locals:
      StackMap stack:
            aload 2 /* target */
            aload 1 /* longFunction */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.primitive.LongFunction.longValueOf:(Ljava/lang/Object;)J
            invokeinterface org.eclipse.collections.api.collection.primitive.MutableLongCollection.add:(J)Z
            pop
         2: .line 584
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         3: .line 588
            aload 2 /* target */
            areturn
        end local 2 // org.eclipse.collections.api.collection.primitive.MutableLongCollection target
        end local 1 // org.eclipse.collections.api.block.function.primitive.LongFunction longFunction
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0      iterator  Ljava/util/Iterator<TT;>;
            0    4     1  longFunction  Lorg/eclipse/collections/api/block/function/primitive/LongFunction<-TT;>;
            0    4     2        target  TR;
    Signature: <T:Ljava/lang/Object;R::Lorg/eclipse/collections/api/collection/primitive/MutableLongCollection;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/primitive/LongFunction<-TT;>;TR;)TR;
    MethodParameters:
              Name  Flags
      iterator      
      longFunction  
      target        

  public static <T> org.eclipse.collections.api.collection.primitive.MutableShortCollection collectShort(java.util.Iterator<T>, org.eclipse.collections.api.block.function.primitive.ShortFunction<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/primitive/ShortFunction;)Lorg/eclipse/collections/api/collection/primitive/MutableShortCollection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.primitive.ShortFunction shortFunction
         0: .line 598
            new org.eclipse.collections.impl.list.mutable.primitive.ShortArrayList
            dup
            invokespecial org.eclipse.collections.impl.list.mutable.primitive.ShortArrayList.<init>:()V
            astore 2 /* result */
        start local 2 // org.eclipse.collections.api.collection.primitive.MutableShortCollection result
         1: .line 599
            goto 3
         2: .line 601
      StackMap locals: org.eclipse.collections.api.collection.primitive.MutableShortCollection
      StackMap stack:
            aload 2 /* result */
            aload 1 /* shortFunction */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.primitive.ShortFunction.shortValueOf:(Ljava/lang/Object;)S
            invokeinterface org.eclipse.collections.api.collection.primitive.MutableShortCollection.add:(S)Z
            pop
         3: .line 599
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         4: .line 603
            aload 2 /* result */
            areturn
        end local 2 // org.eclipse.collections.api.collection.primitive.MutableShortCollection result
        end local 1 // org.eclipse.collections.api.block.function.primitive.ShortFunction shortFunction
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    5     0       iterator  Ljava/util/Iterator<TT;>;
            0    5     1  shortFunction  Lorg/eclipse/collections/api/block/function/primitive/ShortFunction<-TT;>;
            1    5     2         result  Lorg/eclipse/collections/api/collection/primitive/MutableShortCollection;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/primitive/ShortFunction<-TT;>;)Lorg/eclipse/collections/api/collection/primitive/MutableShortCollection;
    MethodParameters:
               Name  Flags
      iterator       
      shortFunction  

  public static <T, R extends org.eclipse.collections.api.collection.primitive.MutableShortCollection> R collectShort(java.util.Iterator<T>, org.eclipse.collections.api.block.function.primitive.ShortFunction<? super T>, );
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/primitive/ShortFunction;Lorg/eclipse/collections/api/collection/primitive/MutableShortCollection;)Lorg/eclipse/collections/api/collection/primitive/MutableShortCollection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.primitive.ShortFunction shortFunction
        start local 2 // org.eclipse.collections.api.collection.primitive.MutableShortCollection target
         0: .line 614
            goto 2
         1: .line 616
      StackMap locals:
      StackMap stack:
            aload 2 /* target */
            aload 1 /* shortFunction */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.primitive.ShortFunction.shortValueOf:(Ljava/lang/Object;)S
            invokeinterface org.eclipse.collections.api.collection.primitive.MutableShortCollection.add:(S)Z
            pop
         2: .line 614
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         3: .line 618
            aload 2 /* target */
            areturn
        end local 2 // org.eclipse.collections.api.collection.primitive.MutableShortCollection target
        end local 1 // org.eclipse.collections.api.block.function.primitive.ShortFunction shortFunction
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0       iterator  Ljava/util/Iterator<TT;>;
            0    4     1  shortFunction  Lorg/eclipse/collections/api/block/function/primitive/ShortFunction<-TT;>;
            0    4     2         target  TR;
    Signature: <T:Ljava/lang/Object;R::Lorg/eclipse/collections/api/collection/primitive/MutableShortCollection;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/primitive/ShortFunction<-TT;>;TR;)TR;
    MethodParameters:
               Name  Flags
      iterator       
      shortFunction  
      target         

  public static <T, V, R extends java.util.Collection<V>> R flatCollect(java.util.Iterator<T>, org.eclipse.collections.api.block.function.Function<? super T, ? extends java.lang.Iterable<V>>, );
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/Function;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.Function function
        start local 2 // java.util.Collection targetCollection
         0: .line 629
            goto 2
         1: .line 631
      StackMap locals:
      StackMap stack:
            aload 1 /* function */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Iterable
            aload 2 /* targetCollection */
            invokestatic org.eclipse.collections.impl.utility.Iterate.addAllTo:(Ljava/lang/Iterable;Ljava/util/Collection;)Ljava/util/Collection;
            pop
         2: .line 629
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         3: .line 633
            aload 2 /* targetCollection */
            areturn
        end local 2 // java.util.Collection targetCollection
        end local 1 // org.eclipse.collections.api.block.function.Function function
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    4     0          iterator  Ljava/util/Iterator<TT;>;
            0    4     1          function  Lorg/eclipse/collections/api/block/function/Function<-TT;+Ljava/lang/Iterable<TV;>;>;
            0    4     2  targetCollection  TR;
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;R::Ljava/util/Collection<TV;>;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+Ljava/lang/Iterable<TV;>;>;TR;)TR;
    MethodParameters:
                  Name  Flags
      iterator          
      function          
      targetCollection  

  public static <T> void forEach(java.util.Iterator<T>, org.eclipse.collections.api.block.procedure.Procedure<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/procedure/Procedure;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.procedure.Procedure procedure
         0: .line 641
            goto 2
         1: .line 643
      StackMap locals:
      StackMap stack:
            aload 1 /* procedure */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.procedure.Procedure.value:(Ljava/lang/Object;)V
         2: .line 641
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         3: .line 645
            return
        end local 1 // org.eclipse.collections.api.block.procedure.Procedure procedure
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0   iterator  Ljava/util/Iterator<TT;>;
            0    4     1  procedure  Lorg/eclipse/collections/api/block/procedure/Procedure<-TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/procedure/Procedure<-TT;>;)V
    MethodParameters:
           Name  Flags
      iterator   
      procedure  

  public static <T> void forEachWithIndex(java.util.Iterator<T>, org.eclipse.collections.api.block.procedure.primitive.ObjectIntProcedure<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/procedure/primitive/ObjectIntProcedure;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.procedure.primitive.ObjectIntProcedure objectIntProcedure
         0: .line 652
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: .line 653
            goto 3
         2: .line 655
      StackMap locals: int
      StackMap stack:
            aload 1 /* objectIntProcedure */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            iload 2 /* i */
            iinc 2 /* i */ 1
            invokeinterface org.eclipse.collections.api.block.procedure.primitive.ObjectIntProcedure.value:(Ljava/lang/Object;I)V
         3: .line 653
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         4: .line 657
            return
        end local 2 // int i
        end local 1 // org.eclipse.collections.api.block.procedure.primitive.ObjectIntProcedure objectIntProcedure
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    5     0            iterator  Ljava/util/Iterator<TT;>;
            0    5     1  objectIntProcedure  Lorg/eclipse/collections/api/block/procedure/primitive/ObjectIntProcedure<-TT;>;
            1    5     2                   i  I
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/procedure/primitive/ObjectIntProcedure<-TT;>;)V
    MethodParameters:
                    Name  Flags
      iterator            
      objectIntProcedure  

  public static <T> T detect(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 664
            goto 4
         1: .line 666
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 2 /* each */
        start local 2 // java.lang.Object each
         2: .line 667
            aload 1 /* predicate */
            aload 2 /* each */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate.accept:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 669
            aload 2 /* each */
            areturn
        end local 2 // java.lang.Object each
         4: .line 664
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 672
            aconst_null
            areturn
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0   iterator  Ljava/util/Iterator<TT;>;
            0    6     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            2    4     2       each  TT;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)TT;
    MethodParameters:
           Name  Flags
      iterator   
      predicate  

  public static <T, P> T detectWith(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, );
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 2 // java.lang.Object parameter
         0: .line 680
            goto 4
         1: .line 682
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 3 /* each */
        start local 3 // java.lang.Object each
         2: .line 683
            aload 1 /* predicate */
            aload 3 /* each */
            aload 2 /* parameter */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate2.accept:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 4
         3: .line 685
            aload 3 /* each */
            areturn
        end local 3 // java.lang.Object each
         4: .line 680
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 688
            aconst_null
            areturn
        end local 2 // java.lang.Object parameter
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0   iterator  Ljava/util/Iterator<TT;>;
            0    6     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    6     2  parameter  TP;
            2    4     3       each  TT;
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;)TT;
    MethodParameters:
           Name  Flags
      iterator   
      predicate  
      parameter  

  public static <T> java.util.Optional<T> detectOptional(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate;)Ljava/util/Optional;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 696
            goto 4
         1: .line 698
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 2 /* each */
        start local 2 // java.lang.Object each
         2: .line 699
            aload 1 /* predicate */
            aload 2 /* each */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate.accept:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 701
            aload 2 /* each */
            invokestatic java.util.Optional.of:(Ljava/lang/Object;)Ljava/util/Optional;
            areturn
        end local 2 // java.lang.Object each
         4: .line 696
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 704
            invokestatic java.util.Optional.empty:()Ljava/util/Optional;
            areturn
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0   iterator  Ljava/util/Iterator<TT;>;
            0    6     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            2    4     2       each  TT;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)Ljava/util/Optional<TT;>;
    MethodParameters:
           Name  Flags
      iterator   
      predicate  

  public static <T, P> java.util.Optional<T> detectWithOptional(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, P);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Ljava/util/Optional;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 2 // java.lang.Object parameter
         0: .line 712
            goto 4
         1: .line 714
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 3 /* each */
        start local 3 // java.lang.Object each
         2: .line 715
            aload 1 /* predicate */
            aload 3 /* each */
            aload 2 /* parameter */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate2.accept:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 4
         3: .line 717
            aload 3 /* each */
            invokestatic java.util.Optional.of:(Ljava/lang/Object;)Ljava/util/Optional;
            areturn
        end local 3 // java.lang.Object each
         4: .line 712
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 720
            invokestatic java.util.Optional.empty:()Ljava/util/Optional;
            areturn
        end local 2 // java.lang.Object parameter
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0   iterator  Ljava/util/Iterator<TT;>;
            0    6     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    6     2  parameter  TP;
            2    4     3       each  TT;
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;)Ljava/util/Optional<TT;>;
    MethodParameters:
           Name  Flags
      iterator   
      predicate  
      parameter  

  public static <T, IV> IV injectInto(IV, java.util.Iterator<T>, org.eclipse.collections.api.block.function.Function2<? super IV, ? super T, ? extends IV>);
    descriptor: (Ljava/lang/Object;Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/Function2;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // java.lang.Object injectValue
        start local 1 // java.util.Iterator iterator
        start local 2 // org.eclipse.collections.api.block.function.Function2 function
         0: .line 731
            aload 0 /* injectValue */
            astore 3 /* result */
        start local 3 // java.lang.Object result
         1: .line 732
            goto 3
         2: .line 734
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 2 /* function */
            aload 3 /* result */
            aload 1 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.Function2.value:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* result */
         3: .line 732
      StackMap locals:
      StackMap stack:
            aload 1 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         4: .line 736
            aload 3 /* result */
            areturn
        end local 3 // java.lang.Object result
        end local 2 // org.eclipse.collections.api.block.function.Function2 function
        end local 1 // java.util.Iterator iterator
        end local 0 // java.lang.Object injectValue
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0  injectValue  TIV;
            0    5     1     iterator  Ljava/util/Iterator<TT;>;
            0    5     2     function  Lorg/eclipse/collections/api/block/function/Function2<-TIV;-TT;+TIV;>;
            1    5     3       result  TIV;
    Signature: <T:Ljava/lang/Object;IV:Ljava/lang/Object;>(TIV;Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/Function2<-TIV;-TT;+TIV;>;)TIV;
    MethodParameters:
             Name  Flags
      injectValue  
      iterator     
      function     

  public static <T> int injectInto(int, java.util.Iterator<T>, org.eclipse.collections.api.block.function.primitive.IntObjectToIntFunction<? super T>);
    descriptor: (ILjava/util/Iterator;Lorg/eclipse/collections/api/block/function/primitive/IntObjectToIntFunction;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // int injectValue
        start local 1 // java.util.Iterator iterator
        start local 2 // org.eclipse.collections.api.block.function.primitive.IntObjectToIntFunction function
         0: .line 747
            iload 0 /* injectValue */
            istore 3 /* result */
        start local 3 // int result
         1: .line 748
            goto 3
         2: .line 750
      StackMap locals: int
      StackMap stack:
            aload 2 /* function */
            iload 3 /* result */
            aload 1 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.primitive.IntObjectToIntFunction.intValueOf:(ILjava/lang/Object;)I
            istore 3 /* result */
         3: .line 748
      StackMap locals:
      StackMap stack:
            aload 1 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         4: .line 752
            iload 3 /* result */
            ireturn
        end local 3 // int result
        end local 2 // org.eclipse.collections.api.block.function.primitive.IntObjectToIntFunction function
        end local 1 // java.util.Iterator iterator
        end local 0 // int injectValue
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0  injectValue  I
            0    5     1     iterator  Ljava/util/Iterator<TT;>;
            0    5     2     function  Lorg/eclipse/collections/api/block/function/primitive/IntObjectToIntFunction<-TT;>;
            1    5     3       result  I
    Signature: <T:Ljava/lang/Object;>(ILjava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/primitive/IntObjectToIntFunction<-TT;>;)I
    MethodParameters:
             Name  Flags
      injectValue  
      iterator     
      function     

  public static <T> long injectInto(long, java.util.Iterator<T>, org.eclipse.collections.api.block.function.primitive.LongObjectToLongFunction<? super T>);
    descriptor: (JLjava/util/Iterator;Lorg/eclipse/collections/api/block/function/primitive/LongObjectToLongFunction;)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // long injectValue
        start local 2 // java.util.Iterator iterator
        start local 3 // org.eclipse.collections.api.block.function.primitive.LongObjectToLongFunction function
         0: .line 763
            lload 0 /* injectValue */
            lstore 4 /* result */
        start local 4 // long result
         1: .line 764
            goto 3
         2: .line 766
      StackMap locals: long
      StackMap stack:
            aload 3 /* function */
            lload 4 /* result */
            aload 2 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.primitive.LongObjectToLongFunction.longValueOf:(JLjava/lang/Object;)J
            lstore 4 /* result */
         3: .line 764
      StackMap locals:
      StackMap stack:
            aload 2 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         4: .line 768
            lload 4 /* result */
            lreturn
        end local 4 // long result
        end local 3 // org.eclipse.collections.api.block.function.primitive.LongObjectToLongFunction function
        end local 2 // java.util.Iterator iterator
        end local 0 // long injectValue
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0  injectValue  J
            0    5     2     iterator  Ljava/util/Iterator<TT;>;
            0    5     3     function  Lorg/eclipse/collections/api/block/function/primitive/LongObjectToLongFunction<-TT;>;
            1    5     4       result  J
    Signature: <T:Ljava/lang/Object;>(JLjava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/primitive/LongObjectToLongFunction<-TT;>;)J
    MethodParameters:
             Name  Flags
      injectValue  
      iterator     
      function     

  public static <T> double injectInto(double, java.util.Iterator<T>, org.eclipse.collections.api.block.function.primitive.DoubleObjectToDoubleFunction<? super T>);
    descriptor: (DLjava/util/Iterator;Lorg/eclipse/collections/api/block/function/primitive/DoubleObjectToDoubleFunction;)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // double injectValue
        start local 2 // java.util.Iterator iterator
        start local 3 // org.eclipse.collections.api.block.function.primitive.DoubleObjectToDoubleFunction function
         0: .line 779
            dload 0 /* injectValue */
            dstore 4 /* result */
        start local 4 // double result
         1: .line 780
            goto 3
         2: .line 782
      StackMap locals: double
      StackMap stack:
            aload 3 /* function */
            dload 4 /* result */
            aload 2 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.primitive.DoubleObjectToDoubleFunction.doubleValueOf:(DLjava/lang/Object;)D
            dstore 4 /* result */
         3: .line 780
      StackMap locals:
      StackMap stack:
            aload 2 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         4: .line 784
            dload 4 /* result */
            dreturn
        end local 4 // double result
        end local 3 // org.eclipse.collections.api.block.function.primitive.DoubleObjectToDoubleFunction function
        end local 2 // java.util.Iterator iterator
        end local 0 // double injectValue
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0  injectValue  D
            0    5     2     iterator  Ljava/util/Iterator<TT;>;
            0    5     3     function  Lorg/eclipse/collections/api/block/function/primitive/DoubleObjectToDoubleFunction<-TT;>;
            1    5     4       result  D
    Signature: <T:Ljava/lang/Object;>(DLjava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/primitive/DoubleObjectToDoubleFunction<-TT;>;)D
    MethodParameters:
             Name  Flags
      injectValue  
      iterator     
      function     

  public static <T> float injectInto(float, java.util.Iterator<T>, org.eclipse.collections.api.block.function.primitive.FloatObjectToFloatFunction<? super T>);
    descriptor: (FLjava/util/Iterator;Lorg/eclipse/collections/api/block/function/primitive/FloatObjectToFloatFunction;)F
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // float injectValue
        start local 1 // java.util.Iterator iterator
        start local 2 // org.eclipse.collections.api.block.function.primitive.FloatObjectToFloatFunction function
         0: .line 795
            fload 0 /* injectValue */
            fstore 3 /* result */
        start local 3 // float result
         1: .line 796
            goto 3
         2: .line 798
      StackMap locals: float
      StackMap stack:
            aload 2 /* function */
            fload 3 /* result */
            aload 1 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.primitive.FloatObjectToFloatFunction.floatValueOf:(FLjava/lang/Object;)F
            fstore 3 /* result */
         3: .line 796
      StackMap locals:
      StackMap stack:
            aload 1 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         4: .line 800
            fload 3 /* result */
            freturn
        end local 3 // float result
        end local 2 // org.eclipse.collections.api.block.function.primitive.FloatObjectToFloatFunction function
        end local 1 // java.util.Iterator iterator
        end local 0 // float injectValue
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0  injectValue  F
            0    5     1     iterator  Ljava/util/Iterator<TT;>;
            0    5     2     function  Lorg/eclipse/collections/api/block/function/primitive/FloatObjectToFloatFunction<-TT;>;
            1    5     3       result  F
    Signature: <T:Ljava/lang/Object;>(FLjava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/primitive/FloatObjectToFloatFunction<-TT;>;)F
    MethodParameters:
             Name  Flags
      injectValue  
      iterator     
      function     

  public static <T, IV, P> IV injectIntoWith(IV, java.util.Iterator<T>, org.eclipse.collections.api.block.function.Function3<? super IV, ? super T, ? super P, ? extends IV>, );
    descriptor: (Ljava/lang/Object;Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/Function3;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // java.lang.Object injectValue
        start local 1 // java.util.Iterator iterator
        start local 2 // org.eclipse.collections.api.block.function.Function3 function
        start local 3 // java.lang.Object parameter
         0: .line 808
            aload 0 /* injectValue */
            astore 4 /* result */
        start local 4 // java.lang.Object result
         1: .line 809
            goto 3
         2: .line 811
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 2 /* function */
            aload 4 /* result */
            aload 1 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            aload 3 /* parameter */
            invokeinterface org.eclipse.collections.api.block.function.Function3.value:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 4 /* result */
         3: .line 809
      StackMap locals:
      StackMap stack:
            aload 1 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         4: .line 813
            aload 4 /* result */
            areturn
        end local 4 // java.lang.Object result
        end local 3 // java.lang.Object parameter
        end local 2 // org.eclipse.collections.api.block.function.Function3 function
        end local 1 // java.util.Iterator iterator
        end local 0 // java.lang.Object injectValue
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0  injectValue  TIV;
            0    5     1     iterator  Ljava/util/Iterator<TT;>;
            0    5     2     function  Lorg/eclipse/collections/api/block/function/Function3<-TIV;-TT;-TP;+TIV;>;
            0    5     3    parameter  TP;
            1    5     4       result  TIV;
    Signature: <T:Ljava/lang/Object;IV:Ljava/lang/Object;P:Ljava/lang/Object;>(TIV;Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/Function3<-TIV;-TT;-TP;+TIV;>;TP;)TIV;
    MethodParameters:
             Name  Flags
      injectValue  
      iterator     
      function     
      parameter    

  public static <T> boolean shortCircuit(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate<? super T>, boolean, boolean, );
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate;ZZZ)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=5
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        start local 2 // boolean expected
        start local 3 // boolean onShortCircuit
        start local 4 // boolean atEnd
         0: .line 823
            goto 4
         1: .line 825
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 5 /* each */
        start local 5 // java.lang.Object each
         2: .line 826
            aload 1 /* predicate */
            aload 5 /* each */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate.accept:(Ljava/lang/Object;)Z
            iload 2 /* expected */
            if_icmpne 4
         3: .line 828
            iload 3 /* onShortCircuit */
            ireturn
        end local 5 // java.lang.Object each
         4: .line 823
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 831
            iload 4 /* atEnd */
            ireturn
        end local 4 // boolean atEnd
        end local 3 // boolean onShortCircuit
        end local 2 // boolean expected
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    6     0        iterator  Ljava/util/Iterator<TT;>;
            0    6     1       predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            0    6     2        expected  Z
            0    6     3  onShortCircuit  Z
            0    6     4           atEnd  Z
            2    4     5            each  TT;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;ZZZ)Z
    MethodParameters:
                Name  Flags
      iterator        
      predicate       
      expected        
      onShortCircuit  
      atEnd           

  public static <T, P> boolean shortCircuitWith(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, P, boolean, boolean, );
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;ZZZ)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=6
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate2
        start local 2 // java.lang.Object parameter
        start local 3 // boolean expected
        start local 4 // boolean onShortCircuit
        start local 5 // boolean atEnd
         0: .line 842
            goto 4
         1: .line 844
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 6 /* each */
        start local 6 // java.lang.Object each
         2: .line 845
            aload 1 /* predicate2 */
            aload 6 /* each */
            aload 2 /* parameter */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate2.accept:(Ljava/lang/Object;Ljava/lang/Object;)Z
            iload 3 /* expected */
            if_icmpne 4
         3: .line 847
            iload 4 /* onShortCircuit */
            ireturn
        end local 6 // java.lang.Object each
         4: .line 842
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 850
            iload 5 /* atEnd */
            ireturn
        end local 5 // boolean atEnd
        end local 4 // boolean onShortCircuit
        end local 3 // boolean expected
        end local 2 // java.lang.Object parameter
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate2
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    6     0        iterator  Ljava/util/Iterator<TT;>;
            0    6     1      predicate2  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    6     2       parameter  TP;
            0    6     3        expected  Z
            0    6     4  onShortCircuit  Z
            0    6     5           atEnd  Z
            2    4     6            each  TT;
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;ZZZ)Z
    MethodParameters:
                Name  Flags
      iterator        
      predicate2      
      parameter       
      expected        
      onShortCircuit  
      atEnd           

  public static <T> boolean anySatisfy(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 858
            aload 0 /* iterator */
            aload 1 /* predicate */
            iconst_1
            iconst_1
            iconst_0
            invokestatic org.eclipse.collections.impl.utility.internal.IteratorIterate.shortCircuit:(Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate;ZZZ)Z
            ireturn
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0   iterator  Ljava/util/Iterator<TT;>;
            0    1     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)Z
    MethodParameters:
           Name  Flags
      iterator   
      predicate  

  public static <T, P> boolean anySatisfyWith(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, );
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 2 // java.lang.Object parameter
         0: .line 866
            aload 0 /* iterator */
            aload 1 /* predicate */
            aload 2 /* parameter */
            iconst_1
            iconst_1
            iconst_0
            invokestatic org.eclipse.collections.impl.utility.internal.IteratorIterate.shortCircuitWith:(Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;ZZZ)Z
            ireturn
        end local 2 // java.lang.Object parameter
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0   iterator  Ljava/util/Iterator<TT;>;
            0    1     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    1     2  parameter  TP;
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;)Z
    MethodParameters:
           Name  Flags
      iterator   
      predicate  
      parameter  

  public static <T> boolean allSatisfy(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 874
            aload 0 /* iterator */
            aload 1 /* predicate */
            iconst_0
            iconst_0
            iconst_1
            invokestatic org.eclipse.collections.impl.utility.internal.IteratorIterate.shortCircuit:(Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate;ZZZ)Z
            ireturn
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0   iterator  Ljava/util/Iterator<TT;>;
            0    1     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)Z
    MethodParameters:
           Name  Flags
      iterator   
      predicate  

  public static <T, P> boolean allSatisfyWith(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, );
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 2 // java.lang.Object parameter
         0: .line 882
            aload 0 /* iterator */
            aload 1 /* predicate */
            aload 2 /* parameter */
            iconst_0
            iconst_0
            iconst_1
            invokestatic org.eclipse.collections.impl.utility.internal.IteratorIterate.shortCircuitWith:(Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;ZZZ)Z
            ireturn
        end local 2 // java.lang.Object parameter
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0   iterator  Ljava/util/Iterator<TT;>;
            0    1     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    1     2  parameter  TP;
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;)Z
    MethodParameters:
           Name  Flags
      iterator   
      predicate  
      parameter  

  public static <T> boolean noneSatisfy(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 890
            aload 0 /* iterator */
            aload 1 /* predicate */
            iconst_1
            iconst_0
            iconst_1
            invokestatic org.eclipse.collections.impl.utility.internal.IteratorIterate.shortCircuit:(Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate;ZZZ)Z
            ireturn
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0   iterator  Ljava/util/Iterator<TT;>;
            0    1     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)Z
    MethodParameters:
           Name  Flags
      iterator   
      predicate  

  public static <T, P> boolean noneSatisfyWith(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, );
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 2 // java.lang.Object parameter
         0: .line 898
            aload 0 /* iterator */
            aload 1 /* predicate */
            aload 2 /* parameter */
            iconst_1
            iconst_0
            iconst_1
            invokestatic org.eclipse.collections.impl.utility.internal.IteratorIterate.shortCircuitWith:(Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;ZZZ)Z
            ireturn
        end local 2 // java.lang.Object parameter
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0   iterator  Ljava/util/Iterator<TT;>;
            0    1     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    1     2  parameter  TP;
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;)Z
    MethodParameters:
           Name  Flags
      iterator   
      predicate  
      parameter  

  public static <T> boolean removeIf(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 906
            iconst_0
            istore 2 /* changed */
        start local 2 // boolean changed
         1: .line 907
            goto 6
         2: .line 909
      StackMap locals: int
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 3 /* each */
        start local 3 // java.lang.Object each
         3: .line 910
            aload 1 /* predicate */
            aload 3 /* each */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate.accept:(Ljava/lang/Object;)Z
            ifeq 6
         4: .line 912
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.remove:()V
         5: .line 913
            iconst_1
            istore 2 /* changed */
        end local 3 // java.lang.Object each
         6: .line 907
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         7: .line 916
            iload 2 /* changed */
            ireturn
        end local 2 // boolean changed
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0   iterator  Ljava/util/Iterator<TT;>;
            0    8     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            1    8     2    changed  Z
            3    6     3       each  TT;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)Z
    MethodParameters:
           Name  Flags
      iterator   
      predicate  

  public static <T, P> boolean removeIfWith(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, );
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 2 // java.lang.Object parameter
         0: .line 924
            iconst_0
            istore 3 /* changed */
        start local 3 // boolean changed
         1: .line 925
            goto 6
         2: .line 927
      StackMap locals: int
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 4 /* each */
        start local 4 // java.lang.Object each
         3: .line 928
            aload 1 /* predicate */
            aload 4 /* each */
            aload 2 /* parameter */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate2.accept:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 6
         4: .line 930
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.remove:()V
         5: .line 931
            iconst_1
            istore 3 /* changed */
        end local 4 // java.lang.Object each
         6: .line 925
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         7: .line 934
            iload 3 /* changed */
            ireturn
        end local 3 // boolean changed
        end local 2 // java.lang.Object parameter
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0   iterator  Ljava/util/Iterator<TT;>;
            0    8     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    8     2  parameter  TP;
            1    8     3    changed  Z
            3    6     4       each  TT;
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;)Z
    MethodParameters:
           Name  Flags
      iterator   
      predicate  
      parameter  

  public static <T> boolean removeIf(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate<? super T>, org.eclipse.collections.api.block.procedure.Procedure<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate;Lorg/eclipse/collections/api/block/procedure/Procedure;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        start local 2 // org.eclipse.collections.api.block.procedure.Procedure procedure
         0: .line 939
            iconst_0
            istore 3 /* changed */
        start local 3 // boolean changed
         1: .line 940
            goto 7
         2: .line 942
      StackMap locals: int
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 4 /* each */
        start local 4 // java.lang.Object each
         3: .line 943
            aload 1 /* predicate */
            aload 4 /* each */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate.accept:(Ljava/lang/Object;)Z
            ifeq 7
         4: .line 945
            aload 2 /* procedure */
            aload 4 /* each */
            invokeinterface org.eclipse.collections.api.block.procedure.Procedure.value:(Ljava/lang/Object;)V
         5: .line 946
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.remove:()V
         6: .line 947
            iconst_1
            istore 3 /* changed */
        end local 4 // java.lang.Object each
         7: .line 940
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         8: .line 950
            iload 3 /* changed */
            ireturn
        end local 3 // boolean changed
        end local 2 // org.eclipse.collections.api.block.procedure.Procedure procedure
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0   iterator  Ljava/util/Iterator<TT;>;
            0    9     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            0    9     2  procedure  Lorg/eclipse/collections/api/block/procedure/Procedure<-TT;>;
            1    9     3    changed  Z
            3    7     4       each  TT;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;Lorg/eclipse/collections/api/block/procedure/Procedure<-TT;>;)Z
    MethodParameters:
           Name  Flags
      iterator   
      predicate  
      procedure  

  public static <T, P> boolean removeIfWith(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, P, org.eclipse.collections.api.block.procedure.Procedure<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;Lorg/eclipse/collections/api/block/procedure/Procedure;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 2 // java.lang.Object parameter
        start local 3 // org.eclipse.collections.api.block.procedure.Procedure procedure
         0: .line 955
            iconst_0
            istore 4 /* changed */
        start local 4 // boolean changed
         1: .line 956
            goto 7
         2: .line 958
      StackMap locals: int
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 5 /* each */
        start local 5 // java.lang.Object each
         3: .line 959
            aload 1 /* predicate */
            aload 5 /* each */
            aload 2 /* parameter */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate2.accept:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 7
         4: .line 961
            aload 3 /* procedure */
            aload 5 /* each */
            invokeinterface org.eclipse.collections.api.block.procedure.Procedure.value:(Ljava/lang/Object;)V
         5: .line 962
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.remove:()V
         6: .line 963
            iconst_1
            istore 4 /* changed */
        end local 5 // java.lang.Object each
         7: .line 956
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         8: .line 966
            iload 4 /* changed */
            ireturn
        end local 4 // boolean changed
        end local 3 // org.eclipse.collections.api.block.procedure.Procedure procedure
        end local 2 // java.lang.Object parameter
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0   iterator  Ljava/util/Iterator<TT;>;
            0    9     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    9     2  parameter  TP;
            0    9     3  procedure  Lorg/eclipse/collections/api/block/procedure/Procedure<-TT;>;
            1    9     4    changed  Z
            3    7     5       each  TT;
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;Lorg/eclipse/collections/api/block/procedure/Procedure<-TT;>;)Z
    MethodParameters:
           Name  Flags
      iterator   
      predicate  
      parameter  
      procedure  

  public static <T> int detectIndex(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 974
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: .line 975
            goto 5
         2: .line 977
      StackMap locals: int
      StackMap stack:
            aload 1 /* predicate */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate.accept:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 979
            iload 2 /* i */
            ireturn
         4: .line 981
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
         5: .line 975
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 983
            iconst_m1
            ireturn
        end local 2 // int i
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0   iterator  Ljava/util/Iterator<TT;>;
            0    7     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            1    7     2          i  I
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)I
    MethodParameters:
           Name  Flags
      iterator   
      predicate  

  public static <T, IV> int detectIndexWith(java.util.Iterator<T>, org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super IV>, );
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 2 // java.lang.Object injectedValue
         0: .line 991
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         1: .line 992
            goto 5
         2: .line 994
      StackMap locals: int
      StackMap stack:
            aload 1 /* predicate */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            aload 2 /* injectedValue */
            invokeinterface org.eclipse.collections.api.block.predicate.Predicate2.accept:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 4
         3: .line 996
            iload 3 /* i */
            ireturn
         4: .line 998
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
         5: .line 992
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 1000
            iconst_m1
            ireturn
        end local 3 // int i
        end local 2 // java.lang.Object injectedValue
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    7     0       iterator  Ljava/util/Iterator<TT;>;
            0    7     1      predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TIV;>;
            0    7     2  injectedValue  TIV;
            1    7     3              i  I
    Signature: <T:Ljava/lang/Object;IV:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TIV;>;TIV;)I
    MethodParameters:
               Name  Flags
      iterator       
      predicate      
      injectedValue  

  public static <T, P> void forEachWith(java.util.Iterator<T>, org.eclipse.collections.api.block.procedure.Procedure2<? super T, ? super P>, );
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/procedure/Procedure2;Ljava/lang/Object;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.procedure.Procedure2 procedure
        start local 2 // java.lang.Object parameter
         0: .line 1008
            goto 2
         1: .line 1010
      StackMap locals:
      StackMap stack:
            aload 1 /* procedure */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            aload 2 /* parameter */
            invokeinterface org.eclipse.collections.api.block.procedure.Procedure2.value:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 1008
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         3: .line 1012
            return
        end local 2 // java.lang.Object parameter
        end local 1 // org.eclipse.collections.api.block.procedure.Procedure2 procedure
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0   iterator  Ljava/util/Iterator<TT;>;
            0    4     1  procedure  Lorg/eclipse/collections/api/block/procedure/Procedure2<-TT;-TP;>;
            0    4     2  parameter  TP;
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/procedure/Procedure2<-TT;-TP;>;TP;)V
    MethodParameters:
           Name  Flags
      iterator   
      procedure  
      parameter  

  public static <T, P, A, R extends java.util.Collection<A>> R collectWith(java.util.Iterator<T>, org.eclipse.collections.api.block.function.Function2<? super T, ? super P, ? extends A>, P, );
    descriptor: (Ljava/util/Iterator;Lorg/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=4, args_size=4
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.Function2 function
        start local 2 // java.lang.Object parameter
        start local 3 // java.util.Collection targetCollection
         0: .line 1023
            goto 2
         1: .line 1025
      StackMap locals:
      StackMap stack:
            aload 3 /* targetCollection */
            aload 1 /* function */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            aload 2 /* 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
         2: .line 1023
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         3: .line 1027
            aload 3 /* targetCollection */
            areturn
        end local 3 // java.util.Collection targetCollection
        end local 2 // java.lang.Object parameter
        end local 1 // org.eclipse.collections.api.block.function.Function2 function
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    4     0          iterator  Ljava/util/Iterator<TT;>;
            0    4     1          function  Lorg/eclipse/collections/api/block/function/Function2<-TT;-TP;+TA;>;
            0    4     2         parameter  TP;
            0    4     3  targetCollection  TR;
    Signature: <T:Ljava/lang/Object;P:Ljava/lang/Object;A:Ljava/lang/Object;R::Ljava/util/Collection<TA;>;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/Function2<-TT;-TP;+TA;>;TP;TR;)TR;
    MethodParameters:
                  Name  Flags
      iterator          
      function          
      parameter         
      targetCollection  

  public static <T, V> org.eclipse.collections.api.multimap.ImmutableMultimap<V, T> groupBy(java.util.Iterator<T>, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/multimap/ImmutableMultimap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.Function function
         0: .line 1037
            aload 0 /* iterator */
            aload 1 /* function */
            new org.eclipse.collections.impl.multimap.list.FastListMultimap
            dup
            invokespecial org.eclipse.collections.impl.multimap.list.FastListMultimap.<init>:()V
            invokestatic org.eclipse.collections.impl.utility.internal.IteratorIterate.groupBy:(Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/multimap/MutableMultimap;)Lorg/eclipse/collections/api/multimap/MutableMultimap;
            checkcast org.eclipse.collections.impl.multimap.list.FastListMultimap
            invokevirtual org.eclipse.collections.impl.multimap.list.FastListMultimap.toImmutable:()Lorg/eclipse/collections/api/multimap/list/ImmutableListMultimap;
            areturn
        end local 1 // org.eclipse.collections.api.block.function.Function function
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  iterator  Ljava/util/Iterator<TT;>;
            0    1     1  function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;)Lorg/eclipse/collections/api/multimap/ImmutableMultimap<TV;TT;>;
    MethodParameters:
          Name  Flags
      iterator  
      function  

  public static <T, V, R extends org.eclipse.collections.api.multimap.MutableMultimap<V, T>> R groupBy(java.util.Iterator<T>, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>, );
    descriptor: (Ljava/util/Iterator;Lorg/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=4, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.Function function
        start local 2 // org.eclipse.collections.api.multimap.MutableMultimap target
         0: .line 1048
            goto 3
         1: .line 1050
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 3 /* item */
        start local 3 // java.lang.Object item
         2: .line 1051
            aload 2 /* target */
            aload 1 /* function */
            aload 3 /* item */
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            aload 3 /* item */
            invokeinterface org.eclipse.collections.api.multimap.MutableMultimap.put:(Ljava/lang/Object;Ljava/lang/Object;)Z
            pop
        end local 3 // java.lang.Object item
         3: .line 1048
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 1053
            aload 2 /* target */
            areturn
        end local 2 // org.eclipse.collections.api.multimap.MutableMultimap target
        end local 1 // org.eclipse.collections.api.block.function.Function function
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0  iterator  Ljava/util/Iterator<TT;>;
            0    5     1  function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            0    5     2    target  TR;
            2    3     3      item  TT;
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;R::Lorg/eclipse/collections/api/multimap/MutableMultimap<TV;TT;>;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;TR;)TR;
    MethodParameters:
          Name  Flags
      iterator  
      function  
      target    

  public static <T, V, R extends org.eclipse.collections.api.multimap.MutableMultimap<V, T>> R groupByEach(java.util.Iterator<T>, org.eclipse.collections.api.block.function.Function<? super T, ? extends java.lang.Iterable<V>>, );
    descriptor: (Ljava/util/Iterator;Lorg/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=7, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.Function function
        start local 2 // org.eclipse.collections.api.multimap.MutableMultimap target
         0: .line 1064
            goto 7
         1: .line 1066
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 3 /* item */
        start local 3 // java.lang.Object item
         2: .line 1067
            aload 1 /* function */
            aload 3 /* item */
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Iterable
            astore 4 /* iterable */
        start local 4 // java.lang.Iterable iterable
         3: .line 1068
            aload 4 /* iterable */
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 6
            goto 6
      StackMap locals: java.util.Iterator org.eclipse.collections.api.block.function.Function org.eclipse.collections.api.multimap.MutableMultimap java.lang.Object java.lang.Iterable top java.util.Iterator
      StackMap stack:
         4: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Object
            astore 5 /* key */
        start local 5 // java.lang.Object key
         5: .line 1070
            aload 2 /* target */
            aload 5 /* key */
            aload 3 /* item */
            invokeinterface org.eclipse.collections.api.multimap.MutableMultimap.put:(Ljava/lang/Object;Ljava/lang/Object;)Z
            pop
        end local 5 // java.lang.Object key
         6: .line 1068
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        end local 4 // java.lang.Iterable iterable
        end local 3 // java.lang.Object item
         7: .line 1064
      StackMap locals: java.util.Iterator org.eclipse.collections.api.block.function.Function org.eclipse.collections.api.multimap.MutableMultimap
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         8: .line 1073
            aload 2 /* target */
            areturn
        end local 2 // org.eclipse.collections.api.multimap.MutableMultimap target
        end local 1 // org.eclipse.collections.api.block.function.Function function
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0  iterator  Ljava/util/Iterator<TT;>;
            0    9     1  function  Lorg/eclipse/collections/api/block/function/Function<-TT;+Ljava/lang/Iterable<TV;>;>;
            0    9     2    target  TR;
            2    7     3      item  TT;
            3    7     4  iterable  Ljava/lang/Iterable<TV;>;
            5    6     5       key  TV;
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;R::Lorg/eclipse/collections/api/multimap/MutableMultimap<TV;TT;>;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+Ljava/lang/Iterable<TV;>;>;TR;)TR;
    MethodParameters:
          Name  Flags
      iterator  
      function  
      target    

  public static <K, T, R extends org.eclipse.collections.api.map.MutableMapIterable<K, T>> R groupByUniqueKey(java.util.Iterator<T>, org.eclipse.collections.api.block.function.Function<? super T, ? extends K>, );
    descriptor: (Ljava/util/Iterator;Lorg/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=5, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.Function function
        start local 2 // org.eclipse.collections.api.map.MutableMapIterable target
         0: .line 1084
            goto 5
         1: .line 1086
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 3 /* value */
        start local 3 // java.lang.Object value
         2: .line 1087
            aload 1 /* function */
            aload 3 /* value */
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 4 /* key */
        start local 4 // java.lang.Object key
         3: .line 1088
            aload 2 /* target */
            aload 4 /* key */
            aload 3 /* value */
            invokeinterface org.eclipse.collections.api.map.MutableMapIterable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            ifnull 5
         4: .line 1090
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Key "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* 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 4 // java.lang.Object key
        end local 3 // java.lang.Object value
         5: .line 1084
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         6: .line 1093
            aload 2 /* target */
            areturn
        end local 2 // org.eclipse.collections.api.map.MutableMapIterable target
        end local 1 // org.eclipse.collections.api.block.function.Function function
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0  iterator  Ljava/util/Iterator<TT;>;
            0    7     1  function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TK;>;
            0    7     2    target  TR;
            2    5     3     value  TT;
            3    5     4       key  TK;
    Signature: <K:Ljava/lang/Object;T:Ljava/lang/Object;R::Lorg/eclipse/collections/api/map/MutableMapIterable<TK;TT;>;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TK;>;TR;)TR;
    MethodParameters:
          Name  Flags
      iterator  
      function  
      target    

  public static <T, R extends java.util.List<T>> R distinct(java.util.Iterator<T>, );
    descriptor: (Ljava/util/Iterator;Ljava/util/List;)Ljava/util/List;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // java.util.List targetCollection
         0: .line 1104
            invokestatic org.eclipse.collections.impl.set.mutable.UnifiedSet.newSet:()Lorg/eclipse/collections/impl/set/mutable/UnifiedSet;
            astore 2 /* seenSoFar */
        start local 2 // java.util.Set seenSoFar
         1: .line 1105
            goto 5
         2: .line 1107
      StackMap locals: java.util.Set
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 3 /* item */
        start local 3 // java.lang.Object item
         3: .line 1108
            aload 2 /* seenSoFar */
            aload 3 /* item */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 1110
            aload 1 /* targetCollection */
            aload 3 /* item */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // java.lang.Object item
         5: .line 1105
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 1113
            aload 1 /* targetCollection */
            areturn
        end local 2 // java.util.Set seenSoFar
        end local 1 // java.util.List targetCollection
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    7     0          iterator  Ljava/util/Iterator<TT;>;
            0    7     1  targetCollection  TR;
            1    7     2         seenSoFar  Ljava/util/Set<TT;>;
            3    5     3              item  TT;
    Signature: <T:Ljava/lang/Object;R::Ljava/util/List<TT;>;>(Ljava/util/Iterator<TT;>;TR;)TR;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
                  Name  Flags
      iterator          
      targetCollection  

  public static <T> org.eclipse.collections.api.list.MutableList<T> distinct(java.util.Iterator<T>);
    descriptor: (Ljava/util/Iterator;)Lorg/eclipse/collections/api/list/MutableList;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.Iterator iterator
         0: .line 1121
            aload 0 /* iterator */
            invokestatic org.eclipse.collections.impl.list.mutable.FastList.newList:()Lorg/eclipse/collections/impl/list/mutable/FastList;
            invokestatic org.eclipse.collections.impl.utility.internal.IteratorIterate.distinct:(Ljava/util/Iterator;Ljava/util/List;)Ljava/util/List;
            checkcast org.eclipse.collections.api.list.MutableList
            areturn
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  iterator  Ljava/util/Iterator<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;)Lorg/eclipse/collections/api/list/MutableList<TT;>;
    MethodParameters:
          Name  Flags
      iterator  

  public static <T> org.eclipse.collections.api.list.MutableList<T> distinct(java.util.Iterator<T>, org.eclipse.collections.api.block.HashingStrategy<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/HashingStrategy;)Lorg/eclipse/collections/api/list/MutableList;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.HashingStrategy hashingStrategy
         0: .line 1129
            aload 1 /* 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 2 /* seenSoFar */
        start local 2 // java.util.Set seenSoFar
         1: .line 1130
            invokestatic org.eclipse.collections.impl.list.mutable.FastList.newList:()Lorg/eclipse/collections/impl/list/mutable/FastList;
            astore 3 /* result */
        start local 3 // org.eclipse.collections.impl.list.mutable.FastList result
         2: .line 1131
            goto 6
         3: .line 1133
      StackMap locals: java.util.Set org.eclipse.collections.impl.list.mutable.FastList
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 4 /* item */
        start local 4 // java.lang.Object item
         4: .line 1134
            aload 2 /* seenSoFar */
            aload 4 /* item */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            ifeq 6
         5: .line 1136
            aload 3 /* result */
            aload 4 /* item */
            invokevirtual org.eclipse.collections.impl.list.mutable.FastList.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // java.lang.Object item
         6: .line 1131
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         7: .line 1139
            aload 3 /* result */
            areturn
        end local 3 // org.eclipse.collections.impl.list.mutable.FastList result
        end local 2 // java.util.Set seenSoFar
        end local 1 // org.eclipse.collections.api.block.HashingStrategy hashingStrategy
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    8     0         iterator  Ljava/util/Iterator<TT;>;
            0    8     1  hashingStrategy  Lorg/eclipse/collections/api/block/HashingStrategy<-TT;>;
            1    8     2        seenSoFar  Ljava/util/Set<TT;>;
            2    8     3           result  Lorg/eclipse/collections/impl/list/mutable/FastList<TT;>;
            4    6     4             item  TT;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/HashingStrategy<-TT;>;)Lorg/eclipse/collections/api/list/MutableList<TT;>;
    MethodParameters:
                 Name  Flags
      iterator         
      hashingStrategy  

  public static <X, Y, R extends java.util.Collection<org.eclipse.collections.api.tuple.Pair<X, Y>>> R zip(java.util.Iterator<X>, java.util.Iterator<Y>, );
    descriptor: (Ljava/util/Iterator;Ljava/util/Iterator;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.util.Iterator xs
        start local 1 // java.util.Iterator ys
        start local 2 // java.util.Collection target
         0: .line 1150
            goto 2
         1: .line 1152
      StackMap locals:
      StackMap stack:
            aload 2 /* target */
            aload 0 /* xs */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            aload 1 /* ys */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokestatic org.eclipse.collections.impl.tuple.Tuples.pair:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/eclipse/collections/api/tuple/Pair;
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
         2: .line 1150
      StackMap locals:
      StackMap stack:
            aload 0 /* xs */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 3
            aload 1 /* ys */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         3: .line 1154
      StackMap locals:
      StackMap stack:
            aload 2 /* target */
            areturn
        end local 2 // java.util.Collection target
        end local 1 // java.util.Iterator ys
        end local 0 // java.util.Iterator xs
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0      xs  Ljava/util/Iterator<TX;>;
            0    4     1      ys  Ljava/util/Iterator<TY;>;
            0    4     2  target  TR;
    Signature: <X:Ljava/lang/Object;Y:Ljava/lang/Object;R::Ljava/util/Collection<Lorg/eclipse/collections/api/tuple/Pair<TX;TY;>;>;>(Ljava/util/Iterator<TX;>;Ljava/util/Iterator<TY;>;TR;)TR;
    MethodParameters:
        Name  Flags
      xs      
      ys      
      target  

  public static <T, R extends java.util.Collection<org.eclipse.collections.api.tuple.Pair<T, java.lang.Integer>>> R zipWithIndex(java.util.Iterator<T>, );
    descriptor: (Ljava/util/Iterator;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // java.util.Collection target
         0: .line 1162
            iconst_0
            istore 2 /* index */
        start local 2 // int index
         1: .line 1163
            goto 4
         2: .line 1165
      StackMap locals: int
      StackMap stack:
            aload 1 /* target */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            iload 2 /* index */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokestatic org.eclipse.collections.impl.tuple.Tuples.pair:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/eclipse/collections/api/tuple/Pair;
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
         3: .line 1166
            iinc 2 /* index */ 1
         4: .line 1163
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 1168
            aload 1 /* target */
            areturn
        end local 2 // int index
        end local 1 // java.util.Collection target
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0  iterator  Ljava/util/Iterator<TT;>;
            0    6     1    target  TR;
            1    6     2     index  I
    Signature: <T:Ljava/lang/Object;R::Ljava/util/Collection<Lorg/eclipse/collections/api/tuple/Pair<TT;Ljava/lang/Integer;>;>;>(Ljava/util/Iterator<TT;>;TR;)TR;
    MethodParameters:
          Name  Flags
      iterator  
      target    

  public static <T> org.eclipse.collections.api.RichIterable<org.eclipse.collections.api.RichIterable<T>> chunk(java.util.Iterator<T>, int);
    descriptor: (Ljava/util/Iterator;I)Lorg/eclipse/collections/api/RichIterable;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // int size
         0: .line 1176
            iload 1 /* size */
            ifgt 2
         1: .line 1178
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Size for groups must be positive but was: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* size */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1181
      StackMap locals:
      StackMap stack:
            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 2 /* result */
        start local 2 // org.eclipse.collections.api.list.MutableList result
         3: .line 1182
            goto 11
         4: .line 1184
      StackMap locals: org.eclipse.collections.api.list.MutableList
      StackMap stack:
            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 3 /* batch */
        start local 3 // org.eclipse.collections.api.list.MutableList batch
         5: .line 1185
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         6: goto 9
         7: .line 1187
      StackMap locals: org.eclipse.collections.api.list.MutableList int
      StackMap stack:
            aload 3 /* batch */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.list.MutableList.add:(Ljava/lang/Object;)Z
            pop
         8: .line 1185
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 4 /* i */
            iload 1 /* size */
            if_icmpge 10
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        end local 4 // int i
        10: .line 1189
      StackMap locals:
      StackMap stack:
            aload 2 /* result */
            aload 3 /* batch */
            invokeinterface org.eclipse.collections.api.list.MutableList.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // org.eclipse.collections.api.list.MutableList batch
        11: .line 1182
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        12: .line 1191
            aload 2 /* result */
            areturn
        end local 2 // org.eclipse.collections.api.list.MutableList result
        end local 1 // int size
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   13     0  iterator  Ljava/util/Iterator<TT;>;
            0   13     1      size  I
            3   13     2    result  Lorg/eclipse/collections/api/list/MutableList<Lorg/eclipse/collections/api/RichIterable<TT;>;>;
            5   11     3     batch  Lorg/eclipse/collections/api/list/MutableList<TT;>;
            6   10     4         i  I
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;I)Lorg/eclipse/collections/api/RichIterable<Lorg/eclipse/collections/api/RichIterable<TT;>;>;
    MethodParameters:
          Name  Flags
      iterator  
      size      

  public static <T> T min(java.util.Iterator<T>, java.util.Comparator<? super T>);
    descriptor: (Ljava/util/Iterator;Ljava/util/Comparator;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // java.util.Comparator comparator
         0: .line 1199
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 2 /* min */
        start local 2 // java.lang.Object min
         1: .line 1200
            goto 5
         2: .line 1202
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 3 /* next */
        start local 3 // java.lang.Object next
         3: .line 1203
            aload 1 /* comparator */
            aload 3 /* next */
            aload 2 /* min */
            invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
            ifge 5
         4: .line 1205
            aload 3 /* next */
            astore 2 /* min */
        end local 3 // java.lang.Object next
         5: .line 1200
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 1208
            aload 2 /* min */
            areturn
        end local 2 // java.lang.Object min
        end local 1 // java.util.Comparator comparator
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0    iterator  Ljava/util/Iterator<TT;>;
            0    7     1  comparator  Ljava/util/Comparator<-TT;>;
            1    7     2         min  TT;
            3    5     3        next  TT;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Ljava/util/Comparator<-TT;>;)TT;
    MethodParameters:
            Name  Flags
      iterator    
      comparator  

  public static <T> T max(java.util.Iterator<T>, java.util.Comparator<? super T>);
    descriptor: (Ljava/util/Iterator;Ljava/util/Comparator;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // java.util.Comparator comparator
         0: .line 1216
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 2 /* max */
        start local 2 // java.lang.Object max
         1: .line 1217
            goto 5
         2: .line 1219
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 3 /* next */
        start local 3 // java.lang.Object next
         3: .line 1220
            aload 1 /* comparator */
            aload 3 /* next */
            aload 2 /* max */
            invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
            ifle 5
         4: .line 1222
            aload 3 /* next */
            astore 2 /* max */
        end local 3 // java.lang.Object next
         5: .line 1217
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 1225
            aload 2 /* max */
            areturn
        end local 2 // java.lang.Object max
        end local 1 // java.util.Comparator comparator
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0    iterator  Ljava/util/Iterator<TT;>;
            0    7     1  comparator  Ljava/util/Comparator<-TT;>;
            1    7     2         max  TT;
            3    5     3        next  TT;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Ljava/util/Comparator<-TT;>;)TT;
    MethodParameters:
            Name  Flags
      iterator    
      comparator  

  public static <T> java.util.Iterator<T> advanceIteratorTo(java.util.Iterator<T>, int);
    descriptor: (Ljava/util/Iterator;I)Ljava/util/Iterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // int from
         0: .line 1230
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 4
         2: .line 1232
      StackMap locals: int
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            pop
         3: .line 1230
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 2 /* i */
            iload 1 /* from */
            if_icmplt 2
        end local 2 // int i
         5: .line 1234
            aload 0 /* iterator */
            areturn
        end local 1 // int from
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0  iterator  Ljava/util/Iterator<TT;>;
            0    6     1      from  I
            1    5     2         i  I
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;I)Ljava/util/Iterator<TT;>;
    MethodParameters:
          Name  Flags
      iterator  
      from      

  public static <T> long sumOfInt(java.util.Iterator<T>, org.eclipse.collections.api.block.function.primitive.IntFunction<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/primitive/IntFunction;)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.primitive.IntFunction function
         0: .line 1239
            lconst_0
            lstore 2 /* sum */
        start local 2 // long sum
         1: .line 1240
            goto 3
         2: .line 1242
      StackMap locals: long
      StackMap stack:
            lload 2 /* sum */
            aload 1 /* function */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.primitive.IntFunction.intValueOf:(Ljava/lang/Object;)I
            i2l
            ladd
            lstore 2 /* sum */
         3: .line 1240
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         4: .line 1244
            lload 2 /* sum */
            lreturn
        end local 2 // long sum
        end local 1 // org.eclipse.collections.api.block.function.primitive.IntFunction function
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0  iterator  Ljava/util/Iterator<TT;>;
            0    5     1  function  Lorg/eclipse/collections/api/block/function/primitive/IntFunction<-TT;>;
            1    5     2       sum  J
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/primitive/IntFunction<-TT;>;)J
    MethodParameters:
          Name  Flags
      iterator  
      function  

  public static <T> long sumOfLong(java.util.Iterator<T>, org.eclipse.collections.api.block.function.primitive.LongFunction<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/primitive/LongFunction;)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.primitive.LongFunction function
         0: .line 1249
            lconst_0
            lstore 2 /* sum */
        start local 2 // long sum
         1: .line 1250
            goto 3
         2: .line 1252
      StackMap locals: long
      StackMap stack:
            lload 2 /* sum */
            aload 1 /* function */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.primitive.LongFunction.longValueOf:(Ljava/lang/Object;)J
            ladd
            lstore 2 /* sum */
         3: .line 1250
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         4: .line 1254
            lload 2 /* sum */
            lreturn
        end local 2 // long sum
        end local 1 // org.eclipse.collections.api.block.function.primitive.LongFunction function
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0  iterator  Ljava/util/Iterator<TT;>;
            0    5     1  function  Lorg/eclipse/collections/api/block/function/primitive/LongFunction<-TT;>;
            1    5     2       sum  J
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/primitive/LongFunction<-TT;>;)J
    MethodParameters:
          Name  Flags
      iterator  
      function  

  public static <T> double sumOfFloat(java.util.Iterator<T>, org.eclipse.collections.api.block.function.primitive.FloatFunction<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/primitive/FloatFunction;)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=10, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.primitive.FloatFunction function
         0: .line 1259
            dconst_0
            dstore 2 /* sum */
        start local 2 // double sum
         1: .line 1260
            dconst_0
            dstore 4 /* compensation */
        start local 4 // double compensation
         2: .line 1261
            goto 7
         3: .line 1263
      StackMap locals: double double
      StackMap stack:
            aload 1 /* function */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.primitive.FloatFunction.floatValueOf:(Ljava/lang/Object;)F
            f2d
            dload 4 /* compensation */
            dsub
            dstore 6 /* adjustedValue */
        start local 6 // double adjustedValue
         4: .line 1264
            dload 2 /* sum */
            dload 6 /* adjustedValue */
            dadd
            dstore 8 /* nextSum */
        start local 8 // double nextSum
         5: .line 1265
            dload 8 /* nextSum */
            dload 2 /* sum */
            dsub
            dload 6 /* adjustedValue */
            dsub
            dstore 4 /* compensation */
         6: .line 1266
            dload 8 /* nextSum */
            dstore 2 /* sum */
        end local 8 // double nextSum
        end local 6 // double adjustedValue
         7: .line 1261
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         8: .line 1268
            dload 2 /* sum */
            dreturn
        end local 4 // double compensation
        end local 2 // double sum
        end local 1 // org.eclipse.collections.api.block.function.primitive.FloatFunction function
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    9     0       iterator  Ljava/util/Iterator<TT;>;
            0    9     1       function  Lorg/eclipse/collections/api/block/function/primitive/FloatFunction<-TT;>;
            1    9     2            sum  D
            2    9     4   compensation  D
            4    7     6  adjustedValue  D
            5    7     8        nextSum  D
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/primitive/FloatFunction<-TT;>;)D
    MethodParameters:
          Name  Flags
      iterator  
      function  

  public static <T> double sumOfDouble(java.util.Iterator<T>, org.eclipse.collections.api.block.function.primitive.DoubleFunction<? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction;)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=10, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.primitive.DoubleFunction function
         0: .line 1273
            dconst_0
            dstore 2 /* sum */
        start local 2 // double sum
         1: .line 1274
            dconst_0
            dstore 4 /* compensation */
        start local 4 // double compensation
         2: .line 1275
            goto 7
         3: .line 1277
      StackMap locals: double double
      StackMap stack:
            aload 1 /* function */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.primitive.DoubleFunction.doubleValueOf:(Ljava/lang/Object;)D
            dload 4 /* compensation */
            dsub
            dstore 6 /* adjustedValue */
        start local 6 // double adjustedValue
         4: .line 1278
            dload 2 /* sum */
            dload 6 /* adjustedValue */
            dadd
            dstore 8 /* nextSum */
        start local 8 // double nextSum
         5: .line 1279
            dload 8 /* nextSum */
            dload 2 /* sum */
            dsub
            dload 6 /* adjustedValue */
            dsub
            dstore 4 /* compensation */
         6: .line 1280
            dload 8 /* nextSum */
            dstore 2 /* sum */
        end local 8 // double nextSum
        end local 6 // double adjustedValue
         7: .line 1275
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         8: .line 1282
            dload 2 /* sum */
            dreturn
        end local 4 // double compensation
        end local 2 // double sum
        end local 1 // org.eclipse.collections.api.block.function.primitive.DoubleFunction function
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    9     0       iterator  Ljava/util/Iterator<TT;>;
            0    9     1       function  Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction<-TT;>;
            1    9     2            sum  D
            2    9     4   compensation  D
            4    7     6  adjustedValue  D
            5    7     8        nextSum  D
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction<-TT;>;)D
    MethodParameters:
          Name  Flags
      iterator  
      function  

  public static <T> java.math.BigDecimal sumOfBigDecimal(java.util.Iterator<T>, org.eclipse.collections.api.block.function.Function<? super T, java.math.BigDecimal>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/Function;)Ljava/math/BigDecimal;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.Function function
         0: .line 1287
            getstatic java.math.BigDecimal.ZERO:Ljava/math/BigDecimal;
            astore 2 /* result */
        start local 2 // java.math.BigDecimal result
         1: .line 1288
            goto 3
         2: .line 1290
      StackMap locals: java.math.BigDecimal
      StackMap stack:
            aload 2 /* result */
            aload 1 /* function */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.math.BigDecimal
            invokevirtual java.math.BigDecimal.add:(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;
            astore 2 /* result */
         3: .line 1288
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         4: .line 1292
            aload 2 /* result */
            areturn
        end local 2 // java.math.BigDecimal result
        end local 1 // org.eclipse.collections.api.block.function.Function function
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0  iterator  Ljava/util/Iterator<TT;>;
            0    5     1  function  Lorg/eclipse/collections/api/block/function/Function<-TT;Ljava/math/BigDecimal;>;
            1    5     2    result  Ljava/math/BigDecimal;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/Function<-TT;Ljava/math/BigDecimal;>;)Ljava/math/BigDecimal;
    MethodParameters:
          Name  Flags
      iterator  
      function  

  public static <T> java.math.BigInteger sumOfBigInteger(java.util.Iterator<T>, org.eclipse.collections.api.block.function.Function<? super T, java.math.BigInteger>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/Function;)Ljava/math/BigInteger;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.Function function
         0: .line 1297
            getstatic java.math.BigInteger.ZERO:Ljava/math/BigInteger;
            astore 2 /* result */
        start local 2 // java.math.BigInteger result
         1: .line 1298
            goto 3
         2: .line 1300
      StackMap locals: java.math.BigInteger
      StackMap stack:
            aload 2 /* result */
            aload 1 /* function */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.math.BigInteger
            invokevirtual java.math.BigInteger.add:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
            astore 2 /* result */
         3: .line 1298
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         4: .line 1302
            aload 2 /* result */
            areturn
        end local 2 // java.math.BigInteger result
        end local 1 // org.eclipse.collections.api.block.function.Function function
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0  iterator  Ljava/util/Iterator<TT;>;
            0    5     1  function  Lorg/eclipse/collections/api/block/function/Function<-TT;Ljava/math/BigInteger;>;
            1    5     2    result  Ljava/math/BigInteger;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/Function<-TT;Ljava/math/BigInteger;>;)Ljava/math/BigInteger;
    MethodParameters:
          Name  Flags
      iterator  
      function  

  public static <V, T> org.eclipse.collections.api.map.MutableMap<V, java.math.BigDecimal> sumByBigDecimal(java.util.Iterator<T>, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>, org.eclipse.collections.api.block.function.Function<? super T, java.math.BigDecimal>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/map/MutableMap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.Function groupBy
        start local 2 // org.eclipse.collections.api.block.function.Function function
         0: .line 1310
            invokestatic org.eclipse.collections.impl.map.mutable.UnifiedMap.newMap:()Lorg/eclipse/collections/impl/map/mutable/UnifiedMap;
            astore 3 /* result */
        start local 3 // org.eclipse.collections.api.map.MutableMap result
         1: .line 1311
            goto 4
         2: .line 1313
      StackMap locals: org.eclipse.collections.api.map.MutableMap
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 4 /* item */
        start local 4 // java.lang.Object item
         3: .line 1314
            aload 3 /* result */
            aload 1 /* groupBy */
            aload 4 /* item */
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            invokestatic org.eclipse.collections.impl.block.factory.Functions0.zeroBigDecimal:()Lorg/eclipse/collections/api/block/function/Function0;
            aload 2 /* function */
            aload 4 /* item */
            invokedynamic valueOf(Lorg/eclipse/collections/api/block/function/Function;Ljava/lang/Object;)Lorg/eclipse/collections/api/block/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.altMetafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/eclipse/collections/impl/utility/internal/IteratorIterate.lambda$0(Lorg/eclipse/collections/api/block/function/Function;Ljava/lang/Object;Ljava/math/BigDecimal;)Ljava/math/BigDecimal; (6)
                  (Ljava/math/BigDecimal;)Ljava/math/BigDecimal;
                  1
            invokeinterface org.eclipse.collections.api.map.MutableMap.updateValue:(Ljava/lang/Object;Lorg/eclipse/collections/api/block/function/Function0;Lorg/eclipse/collections/api/block/function/Function;)Ljava/lang/Object;
            pop
        end local 4 // java.lang.Object item
         4: .line 1311
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 1316
            aload 3 /* result */
            areturn
        end local 3 // org.eclipse.collections.api.map.MutableMap result
        end local 2 // org.eclipse.collections.api.block.function.Function function
        end local 1 // org.eclipse.collections.api.block.function.Function groupBy
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0  iterator  Ljava/util/Iterator<TT;>;
            0    6     1   groupBy  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            0    6     2  function  Lorg/eclipse/collections/api/block/function/Function<-TT;Ljava/math/BigDecimal;>;
            1    6     3    result  Lorg/eclipse/collections/api/map/MutableMap<TV;Ljava/math/BigDecimal;>;
            3    4     4      item  TT;
    Signature: <V:Ljava/lang/Object;T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;Lorg/eclipse/collections/api/block/function/Function<-TT;Ljava/math/BigDecimal;>;)Lorg/eclipse/collections/api/map/MutableMap<TV;Ljava/math/BigDecimal;>;
    MethodParameters:
          Name  Flags
      iterator  
      groupBy   
      function  

  public static <V, T> org.eclipse.collections.api.map.MutableMap<V, java.math.BigInteger> sumByBigInteger(java.util.Iterator<T>, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>, org.eclipse.collections.api.block.function.Function<? super T, java.math.BigInteger>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/map/MutableMap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.Function groupBy
        start local 2 // org.eclipse.collections.api.block.function.Function function
         0: .line 1324
            invokestatic org.eclipse.collections.impl.map.mutable.UnifiedMap.newMap:()Lorg/eclipse/collections/impl/map/mutable/UnifiedMap;
            astore 3 /* result */
        start local 3 // org.eclipse.collections.api.map.MutableMap result
         1: .line 1325
            goto 4
         2: .line 1327
      StackMap locals: org.eclipse.collections.api.map.MutableMap
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 4 /* item */
        start local 4 // java.lang.Object item
         3: .line 1328
            aload 3 /* result */
            aload 1 /* groupBy */
            aload 4 /* item */
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            invokestatic org.eclipse.collections.impl.block.factory.Functions0.zeroBigInteger:()Lorg/eclipse/collections/api/block/function/Function0;
            aload 2 /* function */
            aload 4 /* item */
            invokedynamic valueOf(Lorg/eclipse/collections/api/block/function/Function;Ljava/lang/Object;)Lorg/eclipse/collections/api/block/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.altMetafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/eclipse/collections/impl/utility/internal/IteratorIterate.lambda$1(Lorg/eclipse/collections/api/block/function/Function;Ljava/lang/Object;Ljava/math/BigInteger;)Ljava/math/BigInteger; (6)
                  (Ljava/math/BigInteger;)Ljava/math/BigInteger;
                  1
            invokeinterface org.eclipse.collections.api.map.MutableMap.updateValue:(Ljava/lang/Object;Lorg/eclipse/collections/api/block/function/Function0;Lorg/eclipse/collections/api/block/function/Function;)Ljava/lang/Object;
            pop
        end local 4 // java.lang.Object item
         4: .line 1325
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 1330
            aload 3 /* result */
            areturn
        end local 3 // org.eclipse.collections.api.map.MutableMap result
        end local 2 // org.eclipse.collections.api.block.function.Function function
        end local 1 // org.eclipse.collections.api.block.function.Function groupBy
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0  iterator  Ljava/util/Iterator<TT;>;
            0    6     1   groupBy  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            0    6     2  function  Lorg/eclipse/collections/api/block/function/Function<-TT;Ljava/math/BigInteger;>;
            1    6     3    result  Lorg/eclipse/collections/api/map/MutableMap<TV;Ljava/math/BigInteger;>;
            3    4     4      item  TT;
    Signature: <V:Ljava/lang/Object;T:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;Lorg/eclipse/collections/api/block/function/Function<-TT;Ljava/math/BigInteger;>;)Lorg/eclipse/collections/api/map/MutableMap<TV;Ljava/math/BigInteger;>;
    MethodParameters:
          Name  Flags
      iterator  
      groupBy   
      function  

  public static <T, K, V> org.eclipse.collections.api.map.MutableMap<K, V> aggregateBy(java.util.Iterator<T>, org.eclipse.collections.api.block.function.Function<? super T, ? extends K>, org.eclipse.collections.api.block.function.Function0<? extends V>, org.eclipse.collections.api.block.procedure.Procedure2<? super V, ? super T>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function0;Lorg/eclipse/collections/api/block/procedure/Procedure2;)Lorg/eclipse/collections/api/map/MutableMap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=5, args_size=4
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.Function groupBy
        start local 2 // org.eclipse.collections.api.block.function.Function0 zeroValueFactory
        start local 3 // org.eclipse.collections.api.block.procedure.Procedure2 mutatingAggregator
         0: .line 1339
            invokestatic org.eclipse.collections.impl.map.mutable.UnifiedMap.newMap:()Lorg/eclipse/collections/impl/map/mutable/UnifiedMap;
            astore 4 /* map */
        start local 4 // org.eclipse.collections.api.map.MutableMap map
         1: .line 1340
            aload 0 /* iterator */
            new org.eclipse.collections.impl.block.procedure.MutatingAggregationProcedure
            dup
            aload 4 /* map */
            aload 1 /* groupBy */
            aload 2 /* zeroValueFactory */
            aload 3 /* mutatingAggregator */
            invokespecial org.eclipse.collections.impl.block.procedure.MutatingAggregationProcedure.<init>:(Lorg/eclipse/collections/api/map/MutableMapIterable;Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function0;Lorg/eclipse/collections/api/block/procedure/Procedure2;)V
            invokestatic org.eclipse.collections.impl.utility.internal.IteratorIterate.forEach:(Ljava/util/Iterator;Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         2: .line 1341
            aload 4 /* map */
            areturn
        end local 4 // org.eclipse.collections.api.map.MutableMap map
        end local 3 // org.eclipse.collections.api.block.procedure.Procedure2 mutatingAggregator
        end local 2 // org.eclipse.collections.api.block.function.Function0 zeroValueFactory
        end local 1 // org.eclipse.collections.api.block.function.Function groupBy
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    3     0            iterator  Ljava/util/Iterator<TT;>;
            0    3     1             groupBy  Lorg/eclipse/collections/api/block/function/Function<-TT;+TK;>;
            0    3     2    zeroValueFactory  Lorg/eclipse/collections/api/block/function/Function0<+TV;>;
            0    3     3  mutatingAggregator  Lorg/eclipse/collections/api/block/procedure/Procedure2<-TV;-TT;>;
            1    3     4                 map  Lorg/eclipse/collections/api/map/MutableMap<TK;TV;>;
    Signature: <T:Ljava/lang/Object;K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TK;>;Lorg/eclipse/collections/api/block/function/Function0<+TV;>;Lorg/eclipse/collections/api/block/procedure/Procedure2<-TV;-TT;>;)Lorg/eclipse/collections/api/map/MutableMap<TK;TV;>;
    MethodParameters:
                    Name  Flags
      iterator            
      groupBy             
      zeroValueFactory    
      mutatingAggregator  

  public static <T, K, V> org.eclipse.collections.api.map.MutableMap<K, V> aggregateBy(java.util.Iterator<T>, org.eclipse.collections.api.block.function.Function<? super T, ? extends K>, org.eclipse.collections.api.block.function.Function0<? extends V>, org.eclipse.collections.api.block.function.Function2<? super V, ? super T, ? extends V>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function0;Lorg/eclipse/collections/api/block/function/Function2;)Lorg/eclipse/collections/api/map/MutableMap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=5, args_size=4
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.Function groupBy
        start local 2 // org.eclipse.collections.api.block.function.Function0 zeroValueFactory
        start local 3 // org.eclipse.collections.api.block.function.Function2 nonMutatingAggregator
         0: .line 1350
            invokestatic org.eclipse.collections.impl.map.mutable.UnifiedMap.newMap:()Lorg/eclipse/collections/impl/map/mutable/UnifiedMap;
            astore 4 /* map */
        start local 4 // org.eclipse.collections.api.map.MutableMap map
         1: .line 1351
            aload 0 /* iterator */
            new org.eclipse.collections.impl.block.procedure.NonMutatingAggregationProcedure
            dup
            aload 4 /* map */
            aload 1 /* groupBy */
            aload 2 /* zeroValueFactory */
            aload 3 /* nonMutatingAggregator */
            invokespecial org.eclipse.collections.impl.block.procedure.NonMutatingAggregationProcedure.<init>:(Lorg/eclipse/collections/api/map/MutableMapIterable;Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function0;Lorg/eclipse/collections/api/block/function/Function2;)V
            invokestatic org.eclipse.collections.impl.utility.internal.IteratorIterate.forEach:(Ljava/util/Iterator;Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         2: .line 1352
            aload 4 /* map */
            areturn
        end local 4 // org.eclipse.collections.api.map.MutableMap map
        end local 3 // org.eclipse.collections.api.block.function.Function2 nonMutatingAggregator
        end local 2 // org.eclipse.collections.api.block.function.Function0 zeroValueFactory
        end local 1 // org.eclipse.collections.api.block.function.Function groupBy
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    3     0               iterator  Ljava/util/Iterator<TT;>;
            0    3     1                groupBy  Lorg/eclipse/collections/api/block/function/Function<-TT;+TK;>;
            0    3     2       zeroValueFactory  Lorg/eclipse/collections/api/block/function/Function0<+TV;>;
            0    3     3  nonMutatingAggregator  Lorg/eclipse/collections/api/block/function/Function2<-TV;-TT;+TV;>;
            1    3     4                    map  Lorg/eclipse/collections/api/map/MutableMap<TK;TV;>;
    Signature: <T:Ljava/lang/Object;K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TK;>;Lorg/eclipse/collections/api/block/function/Function0<+TV;>;Lorg/eclipse/collections/api/block/function/Function2<-TV;-TT;+TV;>;)Lorg/eclipse/collections/api/map/MutableMap<TK;TV;>;
    MethodParameters:
                       Name  Flags
      iterator               
      groupBy                
      zeroValueFactory       
      nonMutatingAggregator  

  public static <T, V extends java.lang.Comparable<? super V>> T minBy(java.util.Iterator<T>, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/Function;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.Function function
         0: .line 1357
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 2 /* min */
        start local 2 // java.lang.Object min
         1: .line 1358
            aload 1 /* function */
            aload 2 /* min */
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Comparable
            astore 3 /* minValue */
        start local 3 // java.lang.Comparable minValue
         2: .line 1359
            goto 8
         3: .line 1361
      StackMap locals: java.lang.Object java.lang.Comparable
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 4 /* next */
        start local 4 // java.lang.Object next
         4: .line 1362
            aload 1 /* function */
            aload 4 /* next */
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Comparable
            astore 5 /* nextValue */
        start local 5 // java.lang.Comparable nextValue
         5: .line 1363
            aload 5 /* nextValue */
            aload 3 /* minValue */
            invokeinterface java.lang.Comparable.compareTo:(Ljava/lang/Object;)I
            ifge 8
         6: .line 1365
            aload 4 /* next */
            astore 2 /* min */
         7: .line 1366
            aload 5 /* nextValue */
            astore 3 /* minValue */
        end local 5 // java.lang.Comparable nextValue
        end local 4 // java.lang.Object next
         8: .line 1359
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         9: .line 1369
            aload 2 /* min */
            areturn
        end local 3 // java.lang.Comparable minValue
        end local 2 // java.lang.Object min
        end local 1 // org.eclipse.collections.api.block.function.Function function
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0   iterator  Ljava/util/Iterator<TT;>;
            0   10     1   function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            1   10     2        min  TT;
            2   10     3   minValue  TV;
            4    8     4       next  TT;
            5    8     5  nextValue  TV;
    Signature: <T:Ljava/lang/Object;V::Ljava/lang/Comparable<-TV;>;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;)TT;
    MethodParameters:
          Name  Flags
      iterator  
      function  

  public static <T, V extends java.lang.Comparable<? super V>> T maxBy(java.util.Iterator<T>, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>);
    descriptor: (Ljava/util/Iterator;Lorg/eclipse/collections/api/block/function/Function;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.eclipse.collections.api.block.function.Function function
         0: .line 1374
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 2 /* max */
        start local 2 // java.lang.Object max
         1: .line 1375
            aload 1 /* function */
            aload 2 /* max */
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Comparable
            astore 3 /* maxValue */
        start local 3 // java.lang.Comparable maxValue
         2: .line 1376
            goto 8
         3: .line 1378
      StackMap locals: java.lang.Object java.lang.Comparable
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 4 /* next */
        start local 4 // java.lang.Object next
         4: .line 1379
            aload 1 /* function */
            aload 4 /* next */
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Comparable
            astore 5 /* nextValue */
        start local 5 // java.lang.Comparable nextValue
         5: .line 1380
            aload 5 /* nextValue */
            aload 3 /* maxValue */
            invokeinterface java.lang.Comparable.compareTo:(Ljava/lang/Object;)I
            ifle 8
         6: .line 1382
            aload 4 /* next */
            astore 2 /* max */
         7: .line 1383
            aload 5 /* nextValue */
            astore 3 /* maxValue */
        end local 5 // java.lang.Comparable nextValue
        end local 4 // java.lang.Object next
         8: .line 1376
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         9: .line 1386
            aload 2 /* max */
            areturn
        end local 3 // java.lang.Comparable maxValue
        end local 2 // java.lang.Object max
        end local 1 // org.eclipse.collections.api.block.function.Function function
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0   iterator  Ljava/util/Iterator<TT;>;
            0   10     1   function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            1   10     2        max  TT;
            2   10     3   maxValue  TV;
            4    8     4       next  TT;
            5    8     5  nextValue  TV;
    Signature: <T:Ljava/lang/Object;V::Ljava/lang/Comparable<-TV;>;>(Ljava/util/Iterator<TT;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;)TT;
    MethodParameters:
          Name  Flags
      iterator  
      function  

  private static java.math.BigDecimal lambda$0(org.eclipse.collections.api.block.function.Function, java.lang.Object, java.math.BigDecimal);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;Ljava/lang/Object;Ljava/math/BigDecimal;)Ljava/math/BigDecimal;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 2 // java.math.BigDecimal original
         0: .line 1314
            aload 2 /* original */
            aload 0
            aload 1
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.math.BigDecimal
            invokevirtual java.math.BigDecimal.add:(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;
            areturn
        end local 2 // java.math.BigDecimal original
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     2  original  Ljava/math/BigDecimal;

  private static java.math.BigInteger lambda$1(org.eclipse.collections.api.block.function.Function, java.lang.Object, java.math.BigInteger);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;Ljava/lang/Object;Ljava/math/BigInteger;)Ljava/math/BigInteger;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 2 // java.math.BigInteger original
         0: .line 1328
            aload 2 /* original */
            aload 0
            aload 1
            invokeinterface org.eclipse.collections.api.block.function.Function.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.math.BigInteger
            invokevirtual java.math.BigInteger.add:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
            areturn
        end local 2 // java.math.BigInteger original
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     2  original  Ljava/math/BigInteger;

  private static java.lang.Object $deserializeLambda$(java.lang.invoke.SerializedLambda);
    descriptor: (Ljava/lang/invoke/SerializedLambda;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=7, locals=3, args_size=1
         0: .line 1
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getImplMethodName:()Ljava/lang/String;
            astore 1
            iconst_m1
            istore 2
            aload 1
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 2
          -1647345005: 1
          -1647345004: 2
              default: 3
          }
      StackMap locals: java.lang.String int
      StackMap stack:
         1: aload 1
            ldc "lambda$0"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 3
            iconst_0
            istore 2
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 1
            ldc "lambda$1"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 3
            iconst_1
            istore 2
      StackMap locals:
      StackMap stack:
         3: iload 2
            lookupswitch { // 2
                    0: 4
                    1: 5
              default: 6
          }
      StackMap locals:
      StackMap stack:
         4: aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getImplMethodKind:()I
            bipush 6
            if_icmpne 6
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getFunctionalInterfaceClass:()Ljava/lang/String;
            ldc "org/eclipse/collections/api/block/function/Function"
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getFunctionalInterfaceMethodName:()Ljava/lang/String;
            ldc "valueOf"
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getFunctionalInterfaceMethodSignature:()Ljava/lang/String;
            ldc "(Ljava/lang/Object;)Ljava/lang/Object;"
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getImplClass:()Ljava/lang/String;
            ldc "org/eclipse/collections/impl/utility/internal/IteratorIterate"
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getImplMethodSignature:()Ljava/lang/String;
            ldc "(Lorg/eclipse/collections/api/block/function/Function;Ljava/lang/Object;Ljava/math/BigDecimal;)Ljava/math/BigDecimal;"
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0
            iconst_0
            invokevirtual java.lang.invoke.SerializedLambda.getCapturedArg:(I)Ljava/lang/Object;
            checkcast org.eclipse.collections.api.block.function.Function
            aload 0
            iconst_1
            invokevirtual java.lang.invoke.SerializedLambda.getCapturedArg:(I)Ljava/lang/Object;
            checkcast java.lang.Object
            invokedynamic valueOf(Lorg/eclipse/collections/api/block/function/Function;Ljava/lang/Object;)Lorg/eclipse/collections/api/block/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.altMetafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/eclipse/collections/impl/utility/internal/IteratorIterate.lambda$0(Lorg/eclipse/collections/api/block/function/Function;Ljava/lang/Object;Ljava/math/BigDecimal;)Ljava/math/BigDecimal; (6)
                  (Ljava/math/BigDecimal;)Ljava/math/BigDecimal;
                  1
            areturn
      StackMap locals:
      StackMap stack:
         5: aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getImplMethodKind:()I
            bipush 6
            if_icmpne 6
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getFunctionalInterfaceClass:()Ljava/lang/String;
            ldc "org/eclipse/collections/api/block/function/Function"
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getFunctionalInterfaceMethodName:()Ljava/lang/String;
            ldc "valueOf"
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getFunctionalInterfaceMethodSignature:()Ljava/lang/String;
            ldc "(Ljava/lang/Object;)Ljava/lang/Object;"
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getImplClass:()Ljava/lang/String;
            ldc "org/eclipse/collections/impl/utility/internal/IteratorIterate"
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getImplMethodSignature:()Ljava/lang/String;
            ldc "(Lorg/eclipse/collections/api/block/function/Function;Ljava/lang/Object;Ljava/math/BigInteger;)Ljava/math/BigInteger;"
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0
            iconst_0
            invokevirtual java.lang.invoke.SerializedLambda.getCapturedArg:(I)Ljava/lang/Object;
            checkcast org.eclipse.collections.api.block.function.Function
            aload 0
            iconst_1
            invokevirtual java.lang.invoke.SerializedLambda.getCapturedArg:(I)Ljava/lang/Object;
            checkcast java.lang.Object
            invokedynamic valueOf(Lorg/eclipse/collections/api/block/function/Function;Ljava/lang/Object;)Lorg/eclipse/collections/api/block/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.altMetafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/eclipse/collections/impl/utility/internal/IteratorIterate.lambda$1(Lorg/eclipse/collections/api/block/function/Function;Ljava/lang/Object;Ljava/math/BigInteger;)Ljava/math/BigInteger; (6)
                  (Ljava/math/BigInteger;)Ljava/math/BigInteger;
                  1
            areturn
      StackMap locals:
      StackMap stack:
         6: new java.lang.IllegalArgumentException
            dup
            ldc "Invalid lambda deserialization"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "IteratorIterate.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles