public abstract class org.eclipse.collections.impl.AbstractRichIterable<T> implements org.eclipse.collections.api.RichIterable<T>
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.eclipse.collections.impl.AbstractRichIterable
  super_class: java.lang.Object
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
         0: .line 116
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;

  public boolean contains(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // java.lang.Object object
         0: .line 121
            aload 0 /* this */
            invokestatic org.eclipse.collections.impl.block.factory.Predicates2.equal:()Lorg/eclipse/collections/impl/block/factory/Predicates2;
            aload 1 /* object */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.anySatisfyWith:(Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Z
            ireturn
        end local 1 // java.lang.Object object
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1  object  Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      object  

  public boolean containsAllIterable(java.lang.Iterable<?>);
    descriptor: (Ljava/lang/Iterable;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // java.lang.Iterable source
         0: .line 127
            aload 1 /* source */
            invokestatic org.eclipse.collections.impl.block.factory.Predicates2.in:()Lorg/eclipse/collections/impl/block/factory/Predicates2;
            aload 0 /* this */
            invokestatic org.eclipse.collections.impl.utility.Iterate.allSatisfyWith:(Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Z
            ireturn
        end local 1 // java.lang.Iterable source
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1  source  Ljava/lang/Iterable<*>;
    Signature: (Ljava/lang/Iterable<*>;)Z
    MethodParameters:
        Name  Flags
      source  

  public boolean containsAllArguments(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)Z
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // java.lang.Object[] elements
         0: .line 133
            aload 1 /* elements */
            invokestatic org.eclipse.collections.impl.block.factory.Predicates2.in:()Lorg/eclipse/collections/impl/block/factory/Predicates2;
            aload 0 /* this */
            invokestatic org.eclipse.collections.impl.utility.ArrayIterate.allSatisfyWith:([Ljava/lang/Object;Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Z
            ireturn
        end local 1 // java.lang.Object[] elements
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1  elements  [Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      elements  

  public java.lang.Object[] toArray();
    descriptor: ()[Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
         0: .line 139
            aload 0 /* this */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.size:()I
            anewarray java.lang.Object
            astore 1 /* result */
        start local 1 // java.lang.Object[] result
         1: .line 140
            aload 0 /* this */
            aload 1 /* result */
            invokedynamic value([Ljava/lang/Object;)Lorg/eclipse/collections/api/block/procedure/primitive/ObjectIntProcedure;
              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;I)V
                  org/eclipse/collections/impl/AbstractRichIterable.lambda$0([Ljava/lang/Object;Ljava/lang/Object;I)V (6)
                  (Ljava/lang/Object;I)V
                  1
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEachWithIndex:(Lorg/eclipse/collections/api/block/procedure/primitive/ObjectIntProcedure;)V
         2: .line 141
            aload 1 /* result */
            areturn
        end local 1 // java.lang.Object[] result
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            1    3     1  result  [Ljava/lang/Object;

  public <E> E[] toArray();
    descriptor: ([Ljava/lang/Object;)[Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // java.lang.Object[] array
         0: .line 147
            aload 0 /* this */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.size:()I
            istore 2 /* size */
        start local 2 // int size
         1: .line 148
            aload 1 /* array */
            arraylength
            iload 2 /* size */
            if_icmpge 3
         2: .line 149
            aload 1 /* array */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
            iload 2 /* size */
            invokestatic java.lang.reflect.Array.newInstance:(Ljava/lang/Class;I)Ljava/lang/Object;
            checkcast java.lang.Object[]
            goto 4
         3: .line 150
      StackMap locals: int
      StackMap stack:
            aload 1 /* array */
         4: .line 148
      StackMap locals:
      StackMap stack: java.lang.Object[]
            astore 3 /* result */
        start local 3 // java.lang.Object[] result
         5: .line 152
            aload 0 /* this */
            aload 3 /* result */
            invokedynamic value([Ljava/lang/Object;)Lorg/eclipse/collections/api/block/procedure/primitive/ObjectIntProcedure;
              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;I)V
                  org/eclipse/collections/impl/AbstractRichIterable.lambda$1([Ljava/lang/Object;Ljava/lang/Object;I)V (6)
                  (Ljava/lang/Object;I)V
                  1
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEachWithIndex:(Lorg/eclipse/collections/api/block/procedure/primitive/ObjectIntProcedure;)V
         6: .line 153
            aload 3 /* result */
            arraylength
            iload 2 /* size */
            if_icmple 8
         7: .line 155
            aload 3 /* result */
            iload 2 /* size */
            aconst_null
            aastore
         8: .line 157
      StackMap locals: java.lang.Object[]
      StackMap stack:
            aload 3 /* result */
            areturn
        end local 3 // java.lang.Object[] result
        end local 2 // int size
        end local 1 // java.lang.Object[] array
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    9     1   array  [Ljava/lang/Object;
            1    9     2    size  I
            5    9     3  result  [Ljava/lang/Object;
    Signature: <E:Ljava/lang/Object;>([TE;)[TE;
    MethodParameters:
       Name  Flags
      array  

  public boolean isEmpty();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
         0: .line 163
            aload 0 /* this */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.size:()I
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;

  public org.eclipse.collections.api.list.MutableList<T> toList();
    descriptor: ()Lorg/eclipse/collections/api/list/MutableList;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
         0: .line 169
            getstatic org.eclipse.collections.impl.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 1 /* list */
        start local 1 // org.eclipse.collections.api.list.MutableList list
         1: .line 170
            aload 0 /* this */
            invokestatic org.eclipse.collections.impl.block.factory.Procedures2.addToCollection:()Lorg/eclipse/collections/api/block/procedure/Procedure2;
            aload 1 /* list */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEachWith:(Lorg/eclipse/collections/api/block/procedure/Procedure2;Ljava/lang/Object;)V
         2: .line 171
            aload 1 /* list */
            areturn
        end local 1 // org.eclipse.collections.api.list.MutableList list
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            1    3     1  list  Lorg/eclipse/collections/api/list/MutableList<TT;>;
    Signature: ()Lorg/eclipse/collections/api/list/MutableList<TT;>;

  public <V extends java.lang.Comparable<? super V>> org.eclipse.collections.api.list.MutableList<T> toSortedListBy(org.eclipse.collections.api.block.function.Function<? super T, ? extends V>);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/list/MutableList;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.function.Function function
         0: .line 177
            aload 0 /* this */
            aload 1 /* function */
            invokestatic org.eclipse.collections.impl.block.factory.Comparators.byFunction:(Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/block/SerializableComparator;
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.toSortedList:(Ljava/util/Comparator;)Lorg/eclipse/collections/api/list/MutableList;
            areturn
        end local 1 // org.eclipse.collections.api.block.function.Function function
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1  function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
    Signature: <V::Ljava/lang/Comparable<-TV;>;>(Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;)Lorg/eclipse/collections/api/list/MutableList<TT;>;
    MethodParameters:
          Name  Flags
      function  

  public org.eclipse.collections.api.set.sorted.MutableSortedSet<T> toSortedSet();
    descriptor: ()Lorg/eclipse/collections/api/set/sorted/MutableSortedSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
         0: .line 183
            getstatic org.eclipse.collections.impl.factory.SortedSets.mutable:Lorg/eclipse/collections/api/factory/set/sorted/MutableSortedSetFactory;
            invokeinterface org.eclipse.collections.api.factory.set.sorted.MutableSortedSetFactory.empty:()Lorg/eclipse/collections/api/set/sorted/MutableSortedSet;
            astore 1 /* treeSet */
        start local 1 // org.eclipse.collections.api.set.sorted.MutableSortedSet treeSet
         1: .line 184
            aload 0 /* this */
            invokestatic org.eclipse.collections.impl.block.factory.Procedures2.addToCollection:()Lorg/eclipse/collections/api/block/procedure/Procedure2;
            aload 1 /* treeSet */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEachWith:(Lorg/eclipse/collections/api/block/procedure/Procedure2;Ljava/lang/Object;)V
         2: .line 185
            aload 1 /* treeSet */
            areturn
        end local 1 // org.eclipse.collections.api.set.sorted.MutableSortedSet treeSet
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            1    3     1  treeSet  Lorg/eclipse/collections/api/set/sorted/MutableSortedSet<TT;>;
    Signature: ()Lorg/eclipse/collections/api/set/sorted/MutableSortedSet<TT;>;

  public org.eclipse.collections.api.set.sorted.MutableSortedSet<T> toSortedSet(java.util.Comparator<? super T>);
    descriptor: (Ljava/util/Comparator;)Lorg/eclipse/collections/api/set/sorted/MutableSortedSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // java.util.Comparator comparator
         0: .line 191
            getstatic org.eclipse.collections.impl.factory.SortedSets.mutable:Lorg/eclipse/collections/api/factory/set/sorted/MutableSortedSetFactory;
            aload 1 /* comparator */
            invokeinterface org.eclipse.collections.api.factory.set.sorted.MutableSortedSetFactory.with:(Ljava/util/Comparator;)Lorg/eclipse/collections/api/set/sorted/MutableSortedSet;
            astore 2 /* treeSet */
        start local 2 // org.eclipse.collections.api.set.sorted.MutableSortedSet treeSet
         1: .line 192
            aload 0 /* this */
            invokestatic org.eclipse.collections.impl.block.factory.Procedures2.addToCollection:()Lorg/eclipse/collections/api/block/procedure/Procedure2;
            aload 2 /* treeSet */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEachWith:(Lorg/eclipse/collections/api/block/procedure/Procedure2;Ljava/lang/Object;)V
         2: .line 193
            aload 2 /* treeSet */
            areturn
        end local 2 // org.eclipse.collections.api.set.sorted.MutableSortedSet treeSet
        end local 1 // java.util.Comparator comparator
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    3     1  comparator  Ljava/util/Comparator<-TT;>;
            1    3     2     treeSet  Lorg/eclipse/collections/api/set/sorted/MutableSortedSet<TT;>;
    Signature: (Ljava/util/Comparator<-TT;>;)Lorg/eclipse/collections/api/set/sorted/MutableSortedSet<TT;>;
    MethodParameters:
            Name  Flags
      comparator  

  public <V extends java.lang.Comparable<? super V>> org.eclipse.collections.api.set.sorted.MutableSortedSet<T> toSortedSetBy(org.eclipse.collections.api.block.function.Function<? super T, ? extends V>);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/set/sorted/MutableSortedSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.function.Function function
         0: .line 199
            aload 0 /* this */
            aload 1 /* function */
            invokestatic org.eclipse.collections.impl.block.factory.Comparators.byFunction:(Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/block/SerializableComparator;
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.toSortedSet:(Ljava/util/Comparator;)Lorg/eclipse/collections/api/set/sorted/MutableSortedSet;
            areturn
        end local 1 // org.eclipse.collections.api.block.function.Function function
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1  function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
    Signature: <V::Ljava/lang/Comparable<-TV;>;>(Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;)Lorg/eclipse/collections/api/set/sorted/MutableSortedSet<TT;>;
    MethodParameters:
          Name  Flags
      function  

  public org.eclipse.collections.api.set.MutableSet<T> toSet();
    descriptor: ()Lorg/eclipse/collections/api/set/MutableSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
         0: .line 205
            getstatic org.eclipse.collections.impl.factory.Sets.mutable:Lorg/eclipse/collections/api/factory/set/MutableSetFactory;
            invokeinterface org.eclipse.collections.api.factory.set.MutableSetFactory.empty:()Lorg/eclipse/collections/api/set/MutableSet;
            astore 1 /* set */
        start local 1 // org.eclipse.collections.api.set.MutableSet set
         1: .line 206
            aload 0 /* this */
            invokestatic org.eclipse.collections.impl.block.factory.Procedures2.addToCollection:()Lorg/eclipse/collections/api/block/procedure/Procedure2;
            aload 1 /* set */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEachWith:(Lorg/eclipse/collections/api/block/procedure/Procedure2;Ljava/lang/Object;)V
         2: .line 207
            aload 1 /* set */
            areturn
        end local 1 // org.eclipse.collections.api.set.MutableSet set
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            1    3     1   set  Lorg/eclipse/collections/api/set/MutableSet<TT;>;
    Signature: ()Lorg/eclipse/collections/api/set/MutableSet<TT;>;

  public org.eclipse.collections.api.bag.MutableBag<T> toBag();
    descriptor: ()Lorg/eclipse/collections/api/bag/MutableBag;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
         0: .line 213
            getstatic org.eclipse.collections.impl.factory.Bags.mutable:Lorg/eclipse/collections/api/factory/bag/MutableBagFactory;
            invokeinterface org.eclipse.collections.api.factory.bag.MutableBagFactory.empty:()Lorg/eclipse/collections/api/bag/MutableBag;
            astore 1 /* bag */
        start local 1 // org.eclipse.collections.api.bag.MutableBag bag
         1: .line 214
            aload 0 /* this */
            invokestatic org.eclipse.collections.impl.block.factory.Procedures2.addToCollection:()Lorg/eclipse/collections/api/block/procedure/Procedure2;
            aload 1 /* bag */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEachWith:(Lorg/eclipse/collections/api/block/procedure/Procedure2;Ljava/lang/Object;)V
         2: .line 215
            aload 1 /* bag */
            areturn
        end local 1 // org.eclipse.collections.api.bag.MutableBag bag
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            1    3     1   bag  Lorg/eclipse/collections/api/bag/MutableBag<TT;>;
    Signature: ()Lorg/eclipse/collections/api/bag/MutableBag<TT;>;

  public org.eclipse.collections.api.bag.sorted.MutableSortedBag<T> toSortedBag();
    descriptor: ()Lorg/eclipse/collections/api/bag/sorted/MutableSortedBag;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
         0: .line 221
            invokestatic org.eclipse.collections.impl.bag.sorted.mutable.TreeBag.newBag:()Lorg/eclipse/collections/impl/bag/sorted/mutable/TreeBag;
            astore 1 /* sortedBag */
        start local 1 // org.eclipse.collections.api.bag.sorted.MutableSortedBag sortedBag
         1: .line 222
            aload 0 /* this */
            invokestatic org.eclipse.collections.impl.block.factory.Procedures2.addToCollection:()Lorg/eclipse/collections/api/block/procedure/Procedure2;
            aload 1 /* sortedBag */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEachWith:(Lorg/eclipse/collections/api/block/procedure/Procedure2;Ljava/lang/Object;)V
         2: .line 223
            aload 1 /* sortedBag */
            areturn
        end local 1 // org.eclipse.collections.api.bag.sorted.MutableSortedBag sortedBag
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            1    3     1  sortedBag  Lorg/eclipse/collections/api/bag/sorted/MutableSortedBag<TT;>;
    Signature: ()Lorg/eclipse/collections/api/bag/sorted/MutableSortedBag<TT;>;

  public org.eclipse.collections.api.bag.sorted.MutableSortedBag<T> toSortedBag(java.util.Comparator<? super T>);
    descriptor: (Ljava/util/Comparator;)Lorg/eclipse/collections/api/bag/sorted/MutableSortedBag;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // java.util.Comparator comparator
         0: .line 229
            aload 1 /* comparator */
            invokestatic org.eclipse.collections.impl.bag.sorted.mutable.TreeBag.newBag:(Ljava/util/Comparator;)Lorg/eclipse/collections/impl/bag/sorted/mutable/TreeBag;
            astore 2 /* sortedBag */
        start local 2 // org.eclipse.collections.api.bag.sorted.MutableSortedBag sortedBag
         1: .line 230
            aload 0 /* this */
            invokestatic org.eclipse.collections.impl.block.factory.Procedures2.addToCollection:()Lorg/eclipse/collections/api/block/procedure/Procedure2;
            aload 2 /* sortedBag */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEachWith:(Lorg/eclipse/collections/api/block/procedure/Procedure2;Ljava/lang/Object;)V
         2: .line 231
            aload 2 /* sortedBag */
            areturn
        end local 2 // org.eclipse.collections.api.bag.sorted.MutableSortedBag sortedBag
        end local 1 // java.util.Comparator comparator
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    3     1  comparator  Ljava/util/Comparator<-TT;>;
            1    3     2   sortedBag  Lorg/eclipse/collections/api/bag/sorted/MutableSortedBag<TT;>;
    Signature: (Ljava/util/Comparator<-TT;>;)Lorg/eclipse/collections/api/bag/sorted/MutableSortedBag<TT;>;
    MethodParameters:
            Name  Flags
      comparator  

  public <V extends java.lang.Comparable<? super V>> org.eclipse.collections.api.bag.sorted.MutableSortedBag<T> toSortedBagBy(org.eclipse.collections.api.block.function.Function<? super T, ? extends V>);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/bag/sorted/MutableSortedBag;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.function.Function function
         0: .line 237
            aload 0 /* this */
            aload 1 /* function */
            invokestatic org.eclipse.collections.impl.block.factory.Comparators.byFunction:(Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/block/SerializableComparator;
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.toSortedBag:(Ljava/util/Comparator;)Lorg/eclipse/collections/api/bag/sorted/MutableSortedBag;
            areturn
        end local 1 // org.eclipse.collections.api.block.function.Function function
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1  function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
    Signature: <V::Ljava/lang/Comparable<-TV;>;>(Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;)Lorg/eclipse/collections/api/bag/sorted/MutableSortedBag<TT;>;
    MethodParameters:
          Name  Flags
      function  

  public <K, V> org.eclipse.collections.api.map.MutableMap<K, V> toMap(org.eclipse.collections.api.block.function.Function<? super T, ? extends K>, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/map/MutableMap;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.function.Function keyFunction
        start local 2 // org.eclipse.collections.api.block.function.Function valueFunction
         0: .line 245
            getstatic org.eclipse.collections.impl.factory.Maps.mutable:Lorg/eclipse/collections/api/factory/map/MutableMapFactory;
            invokeinterface org.eclipse.collections.api.factory.map.MutableMapFactory.empty:()Lorg/eclipse/collections/api/map/MutableMap;
            astore 3 /* map */
        start local 3 // org.eclipse.collections.api.map.MutableMap map
         1: .line 246
            aload 0 /* this */
            new org.eclipse.collections.impl.block.procedure.MapCollectProcedure
            dup
            aload 3 /* map */
            aload 1 /* keyFunction */
            aload 2 /* valueFunction */
            invokespecial org.eclipse.collections.impl.block.procedure.MapCollectProcedure.<init>:(Ljava/util/Map;Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function;)V
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         2: .line 247
            aload 3 /* map */
            areturn
        end local 3 // org.eclipse.collections.api.map.MutableMap map
        end local 2 // org.eclipse.collections.api.block.function.Function valueFunction
        end local 1 // org.eclipse.collections.api.block.function.Function keyFunction
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    3     1    keyFunction  Lorg/eclipse/collections/api/block/function/Function<-TT;+TK;>;
            0    3     2  valueFunction  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            1    3     3            map  Lorg/eclipse/collections/api/map/MutableMap<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/Function<-TT;+TK;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;)Lorg/eclipse/collections/api/map/MutableMap<TK;TV;>;
    MethodParameters:
               Name  Flags
      keyFunction    
      valueFunction  

  public <K, V> org.eclipse.collections.api.map.sorted.MutableSortedMap<K, V> toSortedMap(org.eclipse.collections.api.block.function.Function<? super T, ? extends K>, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/map/sorted/MutableSortedMap;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.function.Function keyFunction
        start local 2 // org.eclipse.collections.api.block.function.Function valueFunction
         0: .line 255
            getstatic org.eclipse.collections.impl.factory.SortedMaps.mutable:Lorg/eclipse/collections/api/factory/map/sorted/MutableSortedMapFactory;
            invokeinterface org.eclipse.collections.api.factory.map.sorted.MutableSortedMapFactory.empty:()Lorg/eclipse/collections/api/map/sorted/MutableSortedMap;
            astore 3 /* sortedMap */
        start local 3 // org.eclipse.collections.api.map.sorted.MutableSortedMap sortedMap
         1: .line 256
            aload 0 /* this */
            new org.eclipse.collections.impl.block.procedure.MapCollectProcedure
            dup
            aload 3 /* sortedMap */
            aload 1 /* keyFunction */
            aload 2 /* valueFunction */
            invokespecial org.eclipse.collections.impl.block.procedure.MapCollectProcedure.<init>:(Ljava/util/Map;Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function;)V
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         2: .line 257
            aload 3 /* sortedMap */
            areturn
        end local 3 // org.eclipse.collections.api.map.sorted.MutableSortedMap sortedMap
        end local 2 // org.eclipse.collections.api.block.function.Function valueFunction
        end local 1 // org.eclipse.collections.api.block.function.Function keyFunction
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    3     1    keyFunction  Lorg/eclipse/collections/api/block/function/Function<-TT;+TK;>;
            0    3     2  valueFunction  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            1    3     3      sortedMap  Lorg/eclipse/collections/api/map/sorted/MutableSortedMap<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/Function<-TT;+TK;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;)Lorg/eclipse/collections/api/map/sorted/MutableSortedMap<TK;TV;>;
    MethodParameters:
               Name  Flags
      keyFunction    
      valueFunction  

  public <K, V> org.eclipse.collections.api.map.sorted.MutableSortedMap<K, V> toSortedMap(java.util.Comparator<? super K>, org.eclipse.collections.api.block.function.Function<? super T, ? extends K>, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>);
    descriptor: (Ljava/util/Comparator;Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/map/sorted/MutableSortedMap;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // java.util.Comparator comparator
        start local 2 // org.eclipse.collections.api.block.function.Function keyFunction
        start local 3 // org.eclipse.collections.api.block.function.Function valueFunction
         0: .line 266
            getstatic org.eclipse.collections.impl.factory.SortedMaps.mutable:Lorg/eclipse/collections/api/factory/map/sorted/MutableSortedMapFactory;
            aload 1 /* comparator */
            invokeinterface org.eclipse.collections.api.factory.map.sorted.MutableSortedMapFactory.with:(Ljava/util/Comparator;)Lorg/eclipse/collections/api/map/sorted/MutableSortedMap;
            astore 4 /* sortedMap */
        start local 4 // org.eclipse.collections.api.map.sorted.MutableSortedMap sortedMap
         1: .line 267
            aload 0 /* this */
            new org.eclipse.collections.impl.block.procedure.MapCollectProcedure
            dup
            aload 4 /* sortedMap */
            aload 2 /* keyFunction */
            aload 3 /* valueFunction */
            invokespecial org.eclipse.collections.impl.block.procedure.MapCollectProcedure.<init>:(Ljava/util/Map;Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function;)V
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         2: .line 268
            aload 4 /* sortedMap */
            areturn
        end local 4 // org.eclipse.collections.api.map.sorted.MutableSortedMap sortedMap
        end local 3 // org.eclipse.collections.api.block.function.Function valueFunction
        end local 2 // org.eclipse.collections.api.block.function.Function keyFunction
        end local 1 // java.util.Comparator comparator
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    3     1     comparator  Ljava/util/Comparator<-TK;>;
            0    3     2    keyFunction  Lorg/eclipse/collections/api/block/function/Function<-TT;+TK;>;
            0    3     3  valueFunction  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            1    3     4      sortedMap  Lorg/eclipse/collections/api/map/sorted/MutableSortedMap<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/Comparator<-TK;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TK;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;)Lorg/eclipse/collections/api/map/sorted/MutableSortedMap<TK;TV;>;
    MethodParameters:
               Name  Flags
      comparator     
      keyFunction    
      valueFunction  

  public <KK extends java.lang.Comparable<? super KK>, K, V> org.eclipse.collections.api.map.sorted.MutableSortedMap<K, V> toSortedMapBy(org.eclipse.collections.api.block.function.Function<? super K, KK>, org.eclipse.collections.api.block.function.Function<? super T, ? extends K>, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/map/sorted/MutableSortedMap;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.function.Function sortBy
        start local 2 // org.eclipse.collections.api.block.function.Function keyFunction
        start local 3 // org.eclipse.collections.api.block.function.Function valueFunction
         0: .line 277
            aload 0 /* this */
            aload 1 /* sortBy */
            invokestatic org.eclipse.collections.impl.block.factory.Comparators.byFunction:(Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/block/SerializableComparator;
            aload 2 /* keyFunction */
            aload 3 /* valueFunction */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.toSortedMap:(Ljava/util/Comparator;Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/map/sorted/MutableSortedMap;
            areturn
        end local 3 // org.eclipse.collections.api.block.function.Function valueFunction
        end local 2 // org.eclipse.collections.api.block.function.Function keyFunction
        end local 1 // org.eclipse.collections.api.block.function.Function sortBy
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0           this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1         sortBy  Lorg/eclipse/collections/api/block/function/Function<-TK;TKK;>;
            0    1     2    keyFunction  Lorg/eclipse/collections/api/block/function/Function<-TT;+TK;>;
            0    1     3  valueFunction  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
    Signature: <KK::Ljava/lang/Comparable<-TKK;>;K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/Function<-TK;TKK;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TK;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;)Lorg/eclipse/collections/api/map/sorted/MutableSortedMap<TK;TV;>;
    MethodParameters:
               Name  Flags
      sortBy         
      keyFunction    
      valueFunction  

  public <K, V> org.eclipse.collections.api.bimap.MutableBiMap<K, V> toBiMap(org.eclipse.collections.api.block.function.Function<? super T, ? extends K>, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/bimap/MutableBiMap;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.function.Function keyFunction
        start local 2 // org.eclipse.collections.api.block.function.Function valueFunction
         0: .line 285
            getstatic org.eclipse.collections.impl.factory.BiMaps.mutable:Lorg/eclipse/collections/api/factory/bimap/MutableBiMapFactory;
            invokeinterface org.eclipse.collections.api.factory.bimap.MutableBiMapFactory.empty:()Lorg/eclipse/collections/api/bimap/MutableBiMap;
            astore 3 /* biMap */
        start local 3 // org.eclipse.collections.api.bimap.MutableBiMap biMap
         1: .line 286
            aload 0 /* this */
            new org.eclipse.collections.impl.block.procedure.BiMapCollectProcedure
            dup
            aload 3 /* biMap */
            aload 1 /* keyFunction */
            aload 2 /* valueFunction */
            invokespecial org.eclipse.collections.impl.block.procedure.BiMapCollectProcedure.<init>:(Lorg/eclipse/collections/api/bimap/MutableBiMap;Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/function/Function;)V
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         2: .line 287
            aload 3 /* biMap */
            areturn
        end local 3 // org.eclipse.collections.api.bimap.MutableBiMap biMap
        end local 2 // org.eclipse.collections.api.block.function.Function valueFunction
        end local 1 // org.eclipse.collections.api.block.function.Function keyFunction
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    3     1    keyFunction  Lorg/eclipse/collections/api/block/function/Function<-TT;+TK;>;
            0    3     2  valueFunction  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            1    3     3          biMap  Lorg/eclipse/collections/api/bimap/MutableBiMap<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/Function<-TT;+TK;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;)Lorg/eclipse/collections/api/bimap/MutableBiMap<TK;TV;>;
    MethodParameters:
               Name  Flags
      keyFunction    
      valueFunction  

  public <R extends java.util.Collection<T>> R select(org.eclipse.collections.api.block.predicate.Predicate<? super T>, );
    descriptor: (Lorg/eclipse/collections/api/block/predicate/Predicate;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        start local 2 // java.util.Collection target
         0: .line 293
            aload 0 /* this */
            new org.eclipse.collections.impl.block.procedure.SelectProcedure
            dup
            aload 1 /* predicate */
            aload 2 /* target */
            invokespecial org.eclipse.collections.impl.block.procedure.SelectProcedure.<init>:(Lorg/eclipse/collections/api/block/predicate/Predicate;Ljava/util/Collection;)V
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         1: .line 294
            aload 2 /* target */
            areturn
        end local 2 // java.util.Collection target
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    2     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            0    2     2     target  TR;
    Signature: <R::Ljava/util/Collection<TT;>;>(Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;TR;)TR;
    MethodParameters:
           Name  Flags
      predicate  
      target     

  public <P, R extends java.util.Collection<T>> R selectWith(org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, P, );
    descriptor: (Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 2 // java.lang.Object parameter
        start local 3 // java.util.Collection target
         0: .line 303
            aload 0 /* this */
            aload 1 /* predicate */
            aload 2 /* parameter */
            invokestatic org.eclipse.collections.impl.block.factory.Predicates.bind:(Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Lorg/eclipse/collections/api/block/predicate/Predicate;
            aload 3 /* target */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.select:(Lorg/eclipse/collections/api/block/predicate/Predicate;Ljava/util/Collection;)Ljava/util/Collection;
            areturn
        end local 3 // java.util.Collection target
        end local 2 // java.lang.Object parameter
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    1     2  parameter  TP;
            0    1     3     target  TR;
    Signature: <P:Ljava/lang/Object;R::Ljava/util/Collection<TT;>;>(Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;TR;)TR;
    MethodParameters:
           Name  Flags
      predicate  
      parameter  
      target     

  public <R extends java.util.Collection<T>> R reject(org.eclipse.collections.api.block.predicate.Predicate<? super T>, );
    descriptor: (Lorg/eclipse/collections/api/block/predicate/Predicate;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        start local 2 // java.util.Collection target
         0: .line 309
            aload 0 /* this */
            new org.eclipse.collections.impl.block.procedure.RejectProcedure
            dup
            aload 1 /* predicate */
            aload 2 /* target */
            invokespecial org.eclipse.collections.impl.block.procedure.RejectProcedure.<init>:(Lorg/eclipse/collections/api/block/predicate/Predicate;Ljava/util/Collection;)V
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         1: .line 310
            aload 2 /* target */
            areturn
        end local 2 // java.util.Collection target
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    2     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            0    2     2     target  TR;
    Signature: <R::Ljava/util/Collection<TT;>;>(Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;TR;)TR;
    MethodParameters:
           Name  Flags
      predicate  
      target     

  public <P, R extends java.util.Collection<T>> R rejectWith(org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, P, );
    descriptor: (Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 2 // java.lang.Object parameter
        start local 3 // java.util.Collection target
         0: .line 319
            aload 0 /* this */
            aload 1 /* predicate */
            aload 2 /* parameter */
            invokestatic org.eclipse.collections.impl.block.factory.Predicates.bind:(Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Lorg/eclipse/collections/api/block/predicate/Predicate;
            aload 3 /* target */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.reject:(Lorg/eclipse/collections/api/block/predicate/Predicate;Ljava/util/Collection;)Ljava/util/Collection;
            areturn
        end local 3 // java.util.Collection target
        end local 2 // java.lang.Object parameter
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    1     2  parameter  TP;
            0    1     3     target  TR;
    Signature: <P:Ljava/lang/Object;R::Ljava/util/Collection<TT;>;>(Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;TR;)TR;
    MethodParameters:
           Name  Flags
      predicate  
      parameter  
      target     

  public <V, R extends java.util.Collection<V>> R collect(org.eclipse.collections.api.block.function.Function<? super T, ? extends V>, );
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.function.Function function
        start local 2 // java.util.Collection target
         0: .line 325
            aload 0 /* this */
            new org.eclipse.collections.impl.block.procedure.CollectProcedure
            dup
            aload 1 /* function */
            aload 2 /* target */
            invokespecial org.eclipse.collections.impl.block.procedure.CollectProcedure.<init>:(Lorg/eclipse/collections/api/block/function/Function;Ljava/util/Collection;)V
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         1: .line 326
            aload 2 /* target */
            areturn
        end local 2 // java.util.Collection target
        end local 1 // org.eclipse.collections.api.block.function.Function function
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    2     1  function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            0    2     2    target  TR;
    Signature: <V:Ljava/lang/Object;R::Ljava/util/Collection<TV;>;>(Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;TR;)TR;
    MethodParameters:
          Name  Flags
      function  
      target    

  public <P, V, R extends java.util.Collection<V>> R collectWith(org.eclipse.collections.api.block.function.Function2<? super T, ? super P, ? extends V>, P, );
    descriptor: (Lorg/eclipse/collections/api/block/function/Function2;Ljava/lang/Object;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.function.Function2 function
        start local 2 // java.lang.Object parameter
        start local 3 // java.util.Collection target
         0: .line 335
            aload 0 /* this */
            aload 1 /* function */
            aload 2 /* parameter */
            invokestatic org.eclipse.collections.impl.block.factory.Functions.bind:(Lorg/eclipse/collections/api/block/function/Function2;Ljava/lang/Object;)Lorg/eclipse/collections/api/block/function/Function;
            aload 3 /* target */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.collect:(Lorg/eclipse/collections/api/block/function/Function;Ljava/util/Collection;)Ljava/util/Collection;
            areturn
        end local 3 // java.util.Collection target
        end local 2 // java.lang.Object parameter
        end local 1 // org.eclipse.collections.api.block.function.Function2 function
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1   function  Lorg/eclipse/collections/api/block/function/Function2<-TT;-TP;+TV;>;
            0    1     2  parameter  TP;
            0    1     3     target  TR;
    Signature: <P:Ljava/lang/Object;V:Ljava/lang/Object;R::Ljava/util/Collection<TV;>;>(Lorg/eclipse/collections/api/block/function/Function2<-TT;-TP;+TV;>;TP;TR;)TR;
    MethodParameters:
           Name  Flags
      function   
      parameter  
      target     

  public <V, R extends java.util.Collection<V>> R collectIf(org.eclipse.collections.api.block.predicate.Predicate<? super T>, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>, );
    descriptor: (Lorg/eclipse/collections/api/block/predicate/Predicate;Lorg/eclipse/collections/api/block/function/Function;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        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 target
         0: .line 344
            aload 0 /* this */
            new org.eclipse.collections.impl.block.procedure.CollectIfProcedure
            dup
            aload 3 /* target */
            aload 2 /* function */
            aload 1 /* predicate */
            invokespecial org.eclipse.collections.impl.block.procedure.CollectIfProcedure.<init>:(Ljava/util/Collection;Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/block/predicate/Predicate;)V
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         1: .line 345
            aload 3 /* target */
            areturn
        end local 3 // java.util.Collection target
        end local 2 // org.eclipse.collections.api.block.function.Function function
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    2     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            0    2     2   function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            0    2     3     target  TR;
    Signature: <V:Ljava/lang/Object;R::Ljava/util/Collection<TV;>;>(Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;TR;)TR;
    MethodParameters:
           Name  Flags
      predicate  
      function   
      target     

  public <P> T detectWithIfNone(org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, P, org.eclipse.collections.api.block.function.Function0<? extends T>);
    descriptor: (Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;Lorg/eclipse/collections/api/block/function/Function0;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        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.function.Function0 function
         0: .line 354
            aload 0 /* this */
            aload 1 /* predicate */
            aload 2 /* parameter */
            invokestatic org.eclipse.collections.impl.block.factory.Predicates.bind:(Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Lorg/eclipse/collections/api/block/predicate/Predicate;
            aload 3 /* function */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.detectIfNone:(Lorg/eclipse/collections/api/block/predicate/Predicate;Lorg/eclipse/collections/api/block/function/Function0;)Ljava/lang/Object;
            areturn
        end local 3 // org.eclipse.collections.api.block.function.Function0 function
        end local 2 // java.lang.Object parameter
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    1     2  parameter  TP;
            0    1     3   function  Lorg/eclipse/collections/api/block/function/Function0<+TT;>;
    Signature: <P:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;Lorg/eclipse/collections/api/block/function/Function0<+TT;>;)TT;
    MethodParameters:
           Name  Flags
      predicate  
      parameter  
      function   

  public T min(java.util.Comparator<? super T>);
    descriptor: (Ljava/util/Comparator;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // java.util.Comparator comparator
         0: .line 360
            new org.eclipse.collections.impl.block.procedure.MinComparatorProcedure
            dup
            aload 1 /* comparator */
            invokespecial org.eclipse.collections.impl.block.procedure.MinComparatorProcedure.<init>:(Ljava/util/Comparator;)V
            astore 2 /* procedure */
        start local 2 // org.eclipse.collections.impl.block.procedure.MinComparatorProcedure procedure
         1: .line 361
            aload 0 /* this */
            aload 2 /* procedure */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         2: .line 362
            aload 2 /* procedure */
            invokevirtual org.eclipse.collections.impl.block.procedure.MinComparatorProcedure.getResult:()Ljava/lang/Object;
            areturn
        end local 2 // org.eclipse.collections.impl.block.procedure.MinComparatorProcedure procedure
        end local 1 // java.util.Comparator comparator
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    3     1  comparator  Ljava/util/Comparator<-TT;>;
            1    3     2   procedure  Lorg/eclipse/collections/impl/block/procedure/MinComparatorProcedure<TT;>;
    Signature: (Ljava/util/Comparator<-TT;>;)TT;
    MethodParameters:
            Name  Flags
      comparator  

  public T max(java.util.Comparator<? super T>);
    descriptor: (Ljava/util/Comparator;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // java.util.Comparator comparator
         0: .line 368
            new org.eclipse.collections.impl.block.procedure.MaxComparatorProcedure
            dup
            aload 1 /* comparator */
            invokespecial org.eclipse.collections.impl.block.procedure.MaxComparatorProcedure.<init>:(Ljava/util/Comparator;)V
            astore 2 /* procedure */
        start local 2 // org.eclipse.collections.impl.block.procedure.MaxComparatorProcedure procedure
         1: .line 369
            aload 0 /* this */
            aload 2 /* procedure */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         2: .line 370
            aload 2 /* procedure */
            invokevirtual org.eclipse.collections.impl.block.procedure.MaxComparatorProcedure.getResult:()Ljava/lang/Object;
            areturn
        end local 2 // org.eclipse.collections.impl.block.procedure.MaxComparatorProcedure procedure
        end local 1 // java.util.Comparator comparator
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    3     1  comparator  Ljava/util/Comparator<-TT;>;
            1    3     2   procedure  Lorg/eclipse/collections/impl/block/procedure/MaxComparatorProcedure<TT;>;
    Signature: (Ljava/util/Comparator<-TT;>;)TT;
    MethodParameters:
            Name  Flags
      comparator  

  public T min();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
         0: .line 376
            new org.eclipse.collections.impl.block.procedure.MinProcedure
            dup
            invokespecial org.eclipse.collections.impl.block.procedure.MinProcedure.<init>:()V
            astore 1 /* procedure */
        start local 1 // org.eclipse.collections.impl.block.procedure.MinProcedure procedure
         1: .line 377
            aload 0 /* this */
            aload 1 /* procedure */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         2: .line 378
            aload 1 /* procedure */
            invokevirtual org.eclipse.collections.impl.block.procedure.MinProcedure.getResult:()Ljava/lang/Object;
            areturn
        end local 1 // org.eclipse.collections.impl.block.procedure.MinProcedure procedure
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            1    3     1  procedure  Lorg/eclipse/collections/impl/block/procedure/MinProcedure<TT;>;
    Signature: ()TT;

  public T max();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
         0: .line 384
            new org.eclipse.collections.impl.block.procedure.MaxProcedure
            dup
            invokespecial org.eclipse.collections.impl.block.procedure.MaxProcedure.<init>:()V
            astore 1 /* procedure */
        start local 1 // org.eclipse.collections.impl.block.procedure.MaxProcedure procedure
         1: .line 385
            aload 0 /* this */
            aload 1 /* procedure */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         2: .line 386
            aload 1 /* procedure */
            invokevirtual org.eclipse.collections.impl.block.procedure.MaxProcedure.getResult:()Ljava/lang/Object;
            areturn
        end local 1 // org.eclipse.collections.impl.block.procedure.MaxProcedure procedure
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            1    3     1  procedure  Lorg/eclipse/collections/impl/block/procedure/MaxProcedure<TT;>;
    Signature: ()TT;

  public <V extends java.lang.Comparable<? super V>> T minBy(org.eclipse.collections.api.block.function.Function<? super T, ? extends V>);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.function.Function function
         0: .line 392
            new org.eclipse.collections.impl.block.procedure.MinByProcedure
            dup
            aload 1 /* function */
            invokespecial org.eclipse.collections.impl.block.procedure.MinByProcedure.<init>:(Lorg/eclipse/collections/api/block/function/Function;)V
            astore 2 /* minByProcedure */
        start local 2 // org.eclipse.collections.impl.block.procedure.MinByProcedure minByProcedure
         1: .line 393
            aload 0 /* this */
            aload 2 /* minByProcedure */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         2: .line 394
            aload 2 /* minByProcedure */
            invokevirtual org.eclipse.collections.impl.block.procedure.MinByProcedure.getResult:()Ljava/lang/Object;
            areturn
        end local 2 // org.eclipse.collections.impl.block.procedure.MinByProcedure minByProcedure
        end local 1 // org.eclipse.collections.api.block.function.Function function
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0            this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    3     1        function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            1    3     2  minByProcedure  Lorg/eclipse/collections/impl/block/procedure/MinByProcedure<TT;TV;>;
    Signature: <V::Ljava/lang/Comparable<-TV;>;>(Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;)TT;
    MethodParameters:
          Name  Flags
      function  

  public <V extends java.lang.Comparable<? super V>> T maxBy(org.eclipse.collections.api.block.function.Function<? super T, ? extends V>);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.function.Function function
         0: .line 400
            new org.eclipse.collections.impl.block.procedure.MaxByProcedure
            dup
            aload 1 /* function */
            invokespecial org.eclipse.collections.impl.block.procedure.MaxByProcedure.<init>:(Lorg/eclipse/collections/api/block/function/Function;)V
            astore 2 /* maxByProcedure */
        start local 2 // org.eclipse.collections.impl.block.procedure.MaxByProcedure maxByProcedure
         1: .line 401
            aload 0 /* this */
            aload 2 /* maxByProcedure */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         2: .line 402
            aload 2 /* maxByProcedure */
            invokevirtual org.eclipse.collections.impl.block.procedure.MaxByProcedure.getResult:()Ljava/lang/Object;
            areturn
        end local 2 // org.eclipse.collections.impl.block.procedure.MaxByProcedure maxByProcedure
        end local 1 // org.eclipse.collections.api.block.function.Function function
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0            this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    3     1        function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            1    3     2  maxByProcedure  Lorg/eclipse/collections/impl/block/procedure/MaxByProcedure<TT;TV;>;
    Signature: <V::Ljava/lang/Comparable<-TV;>;>(Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;)TT;
    MethodParameters:
          Name  Flags
      function  

  public org.eclipse.collections.api.LazyIterable<T> asLazy();
    descriptor: ()Lorg/eclipse/collections/api/LazyIterable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
         0: .line 408
            aload 0 /* this */
            invokestatic org.eclipse.collections.impl.utility.LazyIterate.adapt:(Ljava/lang/Iterable;)Lorg/eclipse/collections/api/LazyIterable;
            areturn
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
    Signature: ()Lorg/eclipse/collections/api/LazyIterable<TT;>;

  public <V, R extends java.util.Collection<V>> R flatCollect(org.eclipse.collections.api.block.function.Function<? super T, ? extends java.lang.Iterable<V>>, );
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.function.Function function
        start local 2 // java.util.Collection target
         0: .line 416
            aload 0 /* this */
            new org.eclipse.collections.impl.block.procedure.FlatCollectProcedure
            dup
            aload 1 /* function */
            aload 2 /* target */
            invokespecial org.eclipse.collections.impl.block.procedure.FlatCollectProcedure.<init>:(Lorg/eclipse/collections/api/block/function/Function;Ljava/util/Collection;)V
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         1: .line 417
            aload 2 /* target */
            areturn
        end local 2 // java.util.Collection target
        end local 1 // org.eclipse.collections.api.block.function.Function function
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    2     1  function  Lorg/eclipse/collections/api/block/function/Function<-TT;+Ljava/lang/Iterable<TV;>;>;
            0    2     2    target  TR;
    Signature: <V:Ljava/lang/Object;R::Ljava/util/Collection<TV;>;>(Lorg/eclipse/collections/api/block/function/Function<-TT;+Ljava/lang/Iterable<TV;>;>;TR;)TR;
    MethodParameters:
          Name  Flags
      function  
      target    

  public T detect(org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: (Lorg/eclipse/collections/api/block/predicate/Predicate;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 423
            aload 0 /* this */
            aload 1 /* predicate */
            invokestatic org.eclipse.collections.impl.utility.internal.IterableIterate.detect:(Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/predicate/Predicate;)Ljava/lang/Object;
            areturn
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
    Signature: (Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)TT;
    MethodParameters:
           Name  Flags
      predicate  

  public <P> T detectWith(org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, );
    descriptor: (Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 2 // java.lang.Object parameter
         0: .line 429
            aload 0 /* this */
            aload 1 /* predicate */
            aload 2 /* parameter */
            invokestatic org.eclipse.collections.impl.block.factory.Predicates.bind:(Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Lorg/eclipse/collections/api/block/predicate/Predicate;
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.detect:(Lorg/eclipse/collections/api/block/predicate/Predicate;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object parameter
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    1     2  parameter  TP;
    Signature: <P:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;)TT;
    MethodParameters:
           Name  Flags
      predicate  
      parameter  

  public java.util.Optional<T> detectOptional(org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: (Lorg/eclipse/collections/api/block/predicate/Predicate;)Ljava/util/Optional;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 435
            aload 0 /* this */
            aload 1 /* predicate */
            invokestatic org.eclipse.collections.impl.utility.internal.IterableIterate.detectOptional:(Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/predicate/Predicate;)Ljava/util/Optional;
            areturn
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
    Signature: (Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)Ljava/util/Optional<TT;>;
    MethodParameters:
           Name  Flags
      predicate  

  public <P> java.util.Optional<T> detectWithOptional(org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, P);
    descriptor: (Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Ljava/util/Optional;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 2 // java.lang.Object parameter
         0: .line 441
            aload 0 /* this */
            aload 1 /* predicate */
            aload 2 /* parameter */
            invokestatic org.eclipse.collections.impl.block.factory.Predicates.bind:(Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Lorg/eclipse/collections/api/block/predicate/Predicate;
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.detectOptional:(Lorg/eclipse/collections/api/block/predicate/Predicate;)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 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    1     2  parameter  TP;
    Signature: <P:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;)Ljava/util/Optional<TT;>;
    MethodParameters:
           Name  Flags
      predicate  
      parameter  

  public boolean anySatisfy(org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: (Lorg/eclipse/collections/api/block/predicate/Predicate;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 447
            aload 0 /* this */
            aload 1 /* predicate */
            invokestatic org.eclipse.collections.impl.utility.internal.IterableIterate.anySatisfy:(Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/predicate/Predicate;)Z
            ireturn
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
    Signature: (Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)Z
    MethodParameters:
           Name  Flags
      predicate  

  public boolean allSatisfy(org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: (Lorg/eclipse/collections/api/block/predicate/Predicate;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 453
            aload 0 /* this */
            aload 1 /* predicate */
            invokestatic org.eclipse.collections.impl.utility.internal.IterableIterate.allSatisfy:(Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/predicate/Predicate;)Z
            ireturn
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
    Signature: (Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)Z
    MethodParameters:
           Name  Flags
      predicate  

  public boolean noneSatisfy(org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: (Lorg/eclipse/collections/api/block/predicate/Predicate;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 459
            aload 0 /* this */
            aload 1 /* predicate */
            invokestatic org.eclipse.collections.impl.utility.internal.IterableIterate.noneSatisfy:(Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/predicate/Predicate;)Z
            ireturn
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
    Signature: (Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)Z
    MethodParameters:
           Name  Flags
      predicate  

  public <P> boolean anySatisfyWith(org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, );
    descriptor: (Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 2 // java.lang.Object parameter
         0: .line 465
            aload 0 /* this */
            aload 1 /* predicate */
            aload 2 /* parameter */
            invokestatic org.eclipse.collections.impl.block.factory.Predicates.bind:(Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Lorg/eclipse/collections/api/block/predicate/Predicate;
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.anySatisfy:(Lorg/eclipse/collections/api/block/predicate/Predicate;)Z
            ireturn
        end local 2 // java.lang.Object parameter
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    1     2  parameter  TP;
    Signature: <P:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;)Z
    MethodParameters:
           Name  Flags
      predicate  
      parameter  

  public <P> boolean allSatisfyWith(org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, );
    descriptor: (Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 2 // java.lang.Object parameter
         0: .line 471
            aload 0 /* this */
            aload 1 /* predicate */
            aload 2 /* parameter */
            invokestatic org.eclipse.collections.impl.block.factory.Predicates.bind:(Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Lorg/eclipse/collections/api/block/predicate/Predicate;
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.allSatisfy:(Lorg/eclipse/collections/api/block/predicate/Predicate;)Z
            ireturn
        end local 2 // java.lang.Object parameter
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    1     2  parameter  TP;
    Signature: <P:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;)Z
    MethodParameters:
           Name  Flags
      predicate  
      parameter  

  public <P> boolean noneSatisfyWith(org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, );
    descriptor: (Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 2 // java.lang.Object parameter
         0: .line 477
            aload 0 /* this */
            aload 1 /* predicate */
            aload 2 /* parameter */
            invokestatic org.eclipse.collections.impl.block.factory.Predicates.bind:(Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Lorg/eclipse/collections/api/block/predicate/Predicate;
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.noneSatisfy:(Lorg/eclipse/collections/api/block/predicate/Predicate;)Z
            ireturn
        end local 2 // java.lang.Object parameter
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    1     2  parameter  TP;
    Signature: <P:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;)Z
    MethodParameters:
           Name  Flags
      predicate  
      parameter  

  public int count(org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: (Lorg/eclipse/collections/api/block/predicate/Predicate;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 483
            new org.eclipse.collections.impl.block.procedure.CountProcedure
            dup
            aload 1 /* predicate */
            invokespecial org.eclipse.collections.impl.block.procedure.CountProcedure.<init>:(Lorg/eclipse/collections/api/block/predicate/Predicate;)V
            astore 2 /* procedure */
        start local 2 // org.eclipse.collections.impl.block.procedure.CountProcedure procedure
         1: .line 484
            aload 0 /* this */
            aload 2 /* procedure */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         2: .line 485
            aload 2 /* procedure */
            invokevirtual org.eclipse.collections.impl.block.procedure.CountProcedure.getCount:()I
            ireturn
        end local 2 // org.eclipse.collections.impl.block.procedure.CountProcedure procedure
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    3     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            1    3     2  procedure  Lorg/eclipse/collections/impl/block/procedure/CountProcedure<TT;>;
    Signature: (Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)I
    MethodParameters:
           Name  Flags
      predicate  

  public <P> int countWith(org.eclipse.collections.api.block.predicate.Predicate2<? super T, ? super P>, );
    descriptor: (Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        start local 2 // java.lang.Object parameter
         0: .line 491
            aload 0 /* this */
            aload 1 /* predicate */
            aload 2 /* parameter */
            invokestatic org.eclipse.collections.impl.block.factory.Predicates.bind:(Lorg/eclipse/collections/api/block/predicate/Predicate2;Ljava/lang/Object;)Lorg/eclipse/collections/api/block/predicate/Predicate;
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.count:(Lorg/eclipse/collections/api/block/predicate/Predicate;)I
            ireturn
        end local 2 // java.lang.Object parameter
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate2 predicate
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;
            0    1     2  parameter  TP;
    Signature: <P:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/predicate/Predicate2<-TT;-TP;>;TP;)I
    MethodParameters:
           Name  Flags
      predicate  
      parameter  

  public <IV> IV injectInto(IV, org.eclipse.collections.api.block.function.Function2<? super IV, ? super T, ? extends IV>);
    descriptor: (Ljava/lang/Object;Lorg/eclipse/collections/api/block/function/Function2;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // java.lang.Object injectedValue
        start local 2 // org.eclipse.collections.api.block.function.Function2 function
         0: .line 497
            new org.eclipse.collections.impl.block.procedure.InjectIntoProcedure
            dup
            aload 1 /* injectedValue */
            aload 2 /* function */
            invokespecial org.eclipse.collections.impl.block.procedure.InjectIntoProcedure.<init>:(Ljava/lang/Object;Lorg/eclipse/collections/api/block/function/Function2;)V
            astore 3 /* procedure */
        start local 3 // org.eclipse.collections.impl.block.procedure.InjectIntoProcedure procedure
         1: .line 498
            aload 0 /* this */
            aload 3 /* procedure */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         2: .line 499
            aload 3 /* procedure */
            invokevirtual org.eclipse.collections.impl.block.procedure.InjectIntoProcedure.getResult:()Ljava/lang/Object;
            areturn
        end local 3 // org.eclipse.collections.impl.block.procedure.InjectIntoProcedure procedure
        end local 2 // org.eclipse.collections.api.block.function.Function2 function
        end local 1 // java.lang.Object injectedValue
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    3     1  injectedValue  TIV;
            0    3     2       function  Lorg/eclipse/collections/api/block/function/Function2<-TIV;-TT;+TIV;>;
            1    3     3      procedure  Lorg/eclipse/collections/impl/block/procedure/InjectIntoProcedure<TIV;TT;>;
    Signature: <IV:Ljava/lang/Object;>(TIV;Lorg/eclipse/collections/api/block/function/Function2<-TIV;-TT;+TIV;>;)TIV;
    MethodParameters:
               Name  Flags
      injectedValue  
      function       

  public int injectInto(int, org.eclipse.collections.api.block.function.primitive.IntObjectToIntFunction<? super T>);
    descriptor: (ILorg/eclipse/collections/api/block/function/primitive/IntObjectToIntFunction;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // int injectedValue
        start local 2 // org.eclipse.collections.api.block.function.primitive.IntObjectToIntFunction function
         0: .line 505
            new org.eclipse.collections.impl.block.procedure.primitive.InjectIntoIntProcedure
            dup
            iload 1 /* injectedValue */
            aload 2 /* function */
            invokespecial org.eclipse.collections.impl.block.procedure.primitive.InjectIntoIntProcedure.<init>:(ILorg/eclipse/collections/api/block/function/primitive/IntObjectToIntFunction;)V
            astore 3 /* procedure */
        start local 3 // org.eclipse.collections.impl.block.procedure.primitive.InjectIntoIntProcedure procedure
         1: .line 506
            aload 0 /* this */
            aload 3 /* procedure */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         2: .line 507
            aload 3 /* procedure */
            invokevirtual org.eclipse.collections.impl.block.procedure.primitive.InjectIntoIntProcedure.getResult:()I
            ireturn
        end local 3 // org.eclipse.collections.impl.block.procedure.primitive.InjectIntoIntProcedure procedure
        end local 2 // org.eclipse.collections.api.block.function.primitive.IntObjectToIntFunction function
        end local 1 // int injectedValue
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    3     1  injectedValue  I
            0    3     2       function  Lorg/eclipse/collections/api/block/function/primitive/IntObjectToIntFunction<-TT;>;
            1    3     3      procedure  Lorg/eclipse/collections/impl/block/procedure/primitive/InjectIntoIntProcedure<TT;>;
    Signature: (ILorg/eclipse/collections/api/block/function/primitive/IntObjectToIntFunction<-TT;>;)I
    MethodParameters:
               Name  Flags
      injectedValue  
      function       

  public long injectInto(long, org.eclipse.collections.api.block.function.primitive.LongObjectToLongFunction<? super T>);
    descriptor: (JLorg/eclipse/collections/api/block/function/primitive/LongObjectToLongFunction;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // long injectedValue
        start local 3 // org.eclipse.collections.api.block.function.primitive.LongObjectToLongFunction function
         0: .line 513
            new org.eclipse.collections.impl.block.procedure.primitive.InjectIntoLongProcedure
            dup
            lload 1 /* injectedValue */
            aload 3 /* function */
            invokespecial org.eclipse.collections.impl.block.procedure.primitive.InjectIntoLongProcedure.<init>:(JLorg/eclipse/collections/api/block/function/primitive/LongObjectToLongFunction;)V
            astore 4 /* procedure */
        start local 4 // org.eclipse.collections.impl.block.procedure.primitive.InjectIntoLongProcedure procedure
         1: .line 514
            aload 0 /* this */
            aload 4 /* procedure */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         2: .line 515
            aload 4 /* procedure */
            invokevirtual org.eclipse.collections.impl.block.procedure.primitive.InjectIntoLongProcedure.getResult:()J
            lreturn
        end local 4 // org.eclipse.collections.impl.block.procedure.primitive.InjectIntoLongProcedure procedure
        end local 3 // org.eclipse.collections.api.block.function.primitive.LongObjectToLongFunction function
        end local 1 // long injectedValue
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    3     1  injectedValue  J
            0    3     3       function  Lorg/eclipse/collections/api/block/function/primitive/LongObjectToLongFunction<-TT;>;
            1    3     4      procedure  Lorg/eclipse/collections/impl/block/procedure/primitive/InjectIntoLongProcedure<TT;>;
    Signature: (JLorg/eclipse/collections/api/block/function/primitive/LongObjectToLongFunction<-TT;>;)J
    MethodParameters:
               Name  Flags
      injectedValue  
      function       

  public double injectInto(double, org.eclipse.collections.api.block.function.primitive.DoubleObjectToDoubleFunction<? super T>);
    descriptor: (DLorg/eclipse/collections/api/block/function/primitive/DoubleObjectToDoubleFunction;)D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // double injectedValue
        start local 3 // org.eclipse.collections.api.block.function.primitive.DoubleObjectToDoubleFunction function
         0: .line 521
            new org.eclipse.collections.impl.block.procedure.primitive.InjectIntoDoubleProcedure
            dup
            dload 1 /* injectedValue */
            aload 3 /* function */
            invokespecial org.eclipse.collections.impl.block.procedure.primitive.InjectIntoDoubleProcedure.<init>:(DLorg/eclipse/collections/api/block/function/primitive/DoubleObjectToDoubleFunction;)V
            astore 4 /* procedure */
        start local 4 // org.eclipse.collections.impl.block.procedure.primitive.InjectIntoDoubleProcedure procedure
         1: .line 522
            aload 0 /* this */
            aload 4 /* procedure */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         2: .line 523
            aload 4 /* procedure */
            invokevirtual org.eclipse.collections.impl.block.procedure.primitive.InjectIntoDoubleProcedure.getResult:()D
            dreturn
        end local 4 // org.eclipse.collections.impl.block.procedure.primitive.InjectIntoDoubleProcedure procedure
        end local 3 // org.eclipse.collections.api.block.function.primitive.DoubleObjectToDoubleFunction function
        end local 1 // double injectedValue
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    3     1  injectedValue  D
            0    3     3       function  Lorg/eclipse/collections/api/block/function/primitive/DoubleObjectToDoubleFunction<-TT;>;
            1    3     4      procedure  Lorg/eclipse/collections/impl/block/procedure/primitive/InjectIntoDoubleProcedure<TT;>;
    Signature: (DLorg/eclipse/collections/api/block/function/primitive/DoubleObjectToDoubleFunction<-TT;>;)D
    MethodParameters:
               Name  Flags
      injectedValue  
      function       

  public <R extends java.util.Collection<T>> R into();
    descriptor: (Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // java.util.Collection target
         0: .line 529
            aload 0 /* this */
            aload 1 /* target */
            invokestatic org.eclipse.collections.impl.utility.Iterate.addAllTo:(Ljava/lang/Iterable;Ljava/util/Collection;)Ljava/util/Collection;
            areturn
        end local 1 // java.util.Collection target
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1  target  TR;
    Signature: <R::Ljava/util/Collection<TT;>;>(TR;)TR;
    MethodParameters:
        Name  Flags
      target  

  public float injectInto(float, org.eclipse.collections.api.block.function.primitive.FloatObjectToFloatFunction<? super T>);
    descriptor: (FLorg/eclipse/collections/api/block/function/primitive/FloatObjectToFloatFunction;)F
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // float injectedValue
        start local 2 // org.eclipse.collections.api.block.function.primitive.FloatObjectToFloatFunction function
         0: .line 535
            new org.eclipse.collections.impl.block.procedure.primitive.InjectIntoFloatProcedure
            dup
            fload 1 /* injectedValue */
            aload 2 /* function */
            invokespecial org.eclipse.collections.impl.block.procedure.primitive.InjectIntoFloatProcedure.<init>:(FLorg/eclipse/collections/api/block/function/primitive/FloatObjectToFloatFunction;)V
            astore 3 /* procedure */
        start local 3 // org.eclipse.collections.impl.block.procedure.primitive.InjectIntoFloatProcedure procedure
         1: .line 536
            aload 0 /* this */
            aload 3 /* procedure */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         2: .line 537
            aload 3 /* procedure */
            invokevirtual org.eclipse.collections.impl.block.procedure.primitive.InjectIntoFloatProcedure.getResult:()F
            freturn
        end local 3 // org.eclipse.collections.impl.block.procedure.primitive.InjectIntoFloatProcedure procedure
        end local 2 // org.eclipse.collections.api.block.function.primitive.FloatObjectToFloatFunction function
        end local 1 // float injectedValue
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    3     1  injectedValue  F
            0    3     2       function  Lorg/eclipse/collections/api/block/function/primitive/FloatObjectToFloatFunction<-TT;>;
            1    3     3      procedure  Lorg/eclipse/collections/impl/block/procedure/primitive/InjectIntoFloatProcedure<TT;>;
    Signature: (FLorg/eclipse/collections/api/block/function/primitive/FloatObjectToFloatFunction<-TT;>;)F
    MethodParameters:
               Name  Flags
      injectedValue  
      function       

  public long sumOfInt(org.eclipse.collections.api.block.function.primitive.IntFunction<? super T>);
    descriptor: (Lorg/eclipse/collections/api/block/function/primitive/IntFunction;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.function.primitive.IntFunction function
         0: .line 543
            new org.eclipse.collections.impl.block.procedure.SumOfIntProcedure
            dup
            aload 1 /* function */
            invokespecial org.eclipse.collections.impl.block.procedure.SumOfIntProcedure.<init>:(Lorg/eclipse/collections/api/block/function/primitive/IntFunction;)V
            astore 2 /* procedure */
        start local 2 // org.eclipse.collections.impl.block.procedure.SumOfIntProcedure procedure
         1: .line 544
            aload 0 /* this */
            aload 2 /* procedure */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         2: .line 545
            aload 2 /* procedure */
            invokevirtual org.eclipse.collections.impl.block.procedure.SumOfIntProcedure.getResult:()I
            i2l
            lreturn
        end local 2 // org.eclipse.collections.impl.block.procedure.SumOfIntProcedure procedure
        end local 1 // org.eclipse.collections.api.block.function.primitive.IntFunction function
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    3     1   function  Lorg/eclipse/collections/api/block/function/primitive/IntFunction<-TT;>;
            1    3     2  procedure  Lorg/eclipse/collections/impl/block/procedure/SumOfIntProcedure<TT;>;
    Signature: (Lorg/eclipse/collections/api/block/function/primitive/IntFunction<-TT;>;)J
    MethodParameters:
          Name  Flags
      function  

  public double sumOfFloat(org.eclipse.collections.api.block.function.primitive.FloatFunction<? super T>);
    descriptor: (Lorg/eclipse/collections/api/block/function/primitive/FloatFunction;)D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.function.primitive.FloatFunction function
         0: .line 551
            new org.eclipse.collections.impl.block.procedure.SumOfFloatProcedure
            dup
            aload 1 /* function */
            invokespecial org.eclipse.collections.impl.block.procedure.SumOfFloatProcedure.<init>:(Lorg/eclipse/collections/api/block/function/primitive/FloatFunction;)V
            astore 2 /* procedure */
        start local 2 // org.eclipse.collections.impl.block.procedure.SumOfFloatProcedure procedure
         1: .line 552
            aload 0 /* this */
            aload 2 /* procedure */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         2: .line 553
            aload 2 /* procedure */
            invokevirtual org.eclipse.collections.impl.block.procedure.SumOfFloatProcedure.getResult:()D
            dreturn
        end local 2 // org.eclipse.collections.impl.block.procedure.SumOfFloatProcedure procedure
        end local 1 // org.eclipse.collections.api.block.function.primitive.FloatFunction function
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    3     1   function  Lorg/eclipse/collections/api/block/function/primitive/FloatFunction<-TT;>;
            1    3     2  procedure  Lorg/eclipse/collections/impl/block/procedure/SumOfFloatProcedure<TT;>;
    Signature: (Lorg/eclipse/collections/api/block/function/primitive/FloatFunction<-TT;>;)D
    MethodParameters:
          Name  Flags
      function  

  public long sumOfLong(org.eclipse.collections.api.block.function.primitive.LongFunction<? super T>);
    descriptor: (Lorg/eclipse/collections/api/block/function/primitive/LongFunction;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.function.primitive.LongFunction function
         0: .line 559
            new org.eclipse.collections.impl.block.procedure.SumOfLongProcedure
            dup
            aload 1 /* function */
            invokespecial org.eclipse.collections.impl.block.procedure.SumOfLongProcedure.<init>:(Lorg/eclipse/collections/api/block/function/primitive/LongFunction;)V
            astore 2 /* procedure */
        start local 2 // org.eclipse.collections.impl.block.procedure.SumOfLongProcedure procedure
         1: .line 560
            aload 0 /* this */
            aload 2 /* procedure */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         2: .line 561
            aload 2 /* procedure */
            invokevirtual org.eclipse.collections.impl.block.procedure.SumOfLongProcedure.getResult:()J
            lreturn
        end local 2 // org.eclipse.collections.impl.block.procedure.SumOfLongProcedure procedure
        end local 1 // org.eclipse.collections.api.block.function.primitive.LongFunction function
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    3     1   function  Lorg/eclipse/collections/api/block/function/primitive/LongFunction<-TT;>;
            1    3     2  procedure  Lorg/eclipse/collections/impl/block/procedure/SumOfLongProcedure<TT;>;
    Signature: (Lorg/eclipse/collections/api/block/function/primitive/LongFunction<-TT;>;)J
    MethodParameters:
          Name  Flags
      function  

  public double sumOfDouble(org.eclipse.collections.api.block.function.primitive.DoubleFunction<? super T>);
    descriptor: (Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction;)D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.function.primitive.DoubleFunction function
         0: .line 567
            new org.eclipse.collections.impl.block.procedure.SumOfDoubleProcedure
            dup
            aload 1 /* function */
            invokespecial org.eclipse.collections.impl.block.procedure.SumOfDoubleProcedure.<init>:(Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction;)V
            astore 2 /* procedure */
        start local 2 // org.eclipse.collections.impl.block.procedure.SumOfDoubleProcedure procedure
         1: .line 568
            aload 0 /* this */
            aload 2 /* procedure */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         2: .line 569
            aload 2 /* procedure */
            invokevirtual org.eclipse.collections.impl.block.procedure.SumOfDoubleProcedure.getResult:()D
            dreturn
        end local 2 // org.eclipse.collections.impl.block.procedure.SumOfDoubleProcedure procedure
        end local 1 // org.eclipse.collections.api.block.function.primitive.DoubleFunction function
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    3     1   function  Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction<-TT;>;
            1    3     2  procedure  Lorg/eclipse/collections/impl/block/procedure/SumOfDoubleProcedure<TT;>;
    Signature: (Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction<-TT;>;)D
    MethodParameters:
          Name  Flags
      function  

  public void forEachWithIndex(org.eclipse.collections.api.block.procedure.primitive.ObjectIntProcedure<? super T>);
    descriptor: (Lorg/eclipse/collections/api/block/procedure/primitive/ObjectIntProcedure;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.procedure.primitive.ObjectIntProcedure objectIntProcedure
         0: .line 575
            aload 0 /* this */
            aload 1 /* objectIntProcedure */
            invokestatic org.eclipse.collections.impl.utility.internal.IterableIterate.forEachWithIndex:(Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/procedure/primitive/ObjectIntProcedure;)V
         1: .line 576
            return
        end local 1 // org.eclipse.collections.api.block.procedure.primitive.ObjectIntProcedure objectIntProcedure
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    2     0                this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    2     1  objectIntProcedure  Lorg/eclipse/collections/api/block/procedure/primitive/ObjectIntProcedure<-TT;>;
    Signature: (Lorg/eclipse/collections/api/block/procedure/primitive/ObjectIntProcedure<-TT;>;)V
    MethodParameters:
                    Name  Flags
      objectIntProcedure  

  public final void forEach(org.eclipse.collections.api.block.procedure.Procedure<? super T>);
    descriptor: (Lorg/eclipse/collections/api/block/procedure/Procedure;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.procedure.Procedure procedure
         0: .line 581
            aload 0 /* this */
            aload 1 /* procedure */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.each:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         1: .line 582
            return
        end local 1 // org.eclipse.collections.api.block.procedure.Procedure procedure
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    2     1  procedure  Lorg/eclipse/collections/api/block/procedure/Procedure<-TT;>;
    Signature: (Lorg/eclipse/collections/api/block/procedure/Procedure<-TT;>;)V
    MethodParameters:
           Name  Flags
      procedure  

  public <P> void forEachWith(org.eclipse.collections.api.block.procedure.Procedure2<? super T, ? super P>, );
    descriptor: (Lorg/eclipse/collections/api/block/procedure/Procedure2;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.procedure.Procedure2 procedure
        start local 2 // java.lang.Object parameter
         0: .line 587
            aload 0 /* this */
            aload 1 /* procedure */
            aload 2 /* parameter */
            invokestatic org.eclipse.collections.impl.block.factory.Procedures.bind:(Lorg/eclipse/collections/api/block/procedure/Procedure2;Ljava/lang/Object;)Lorg/eclipse/collections/api/block/procedure/Procedure;
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         1: .line 588
            return
        end local 2 // java.lang.Object parameter
        end local 1 // org.eclipse.collections.api.block.procedure.Procedure2 procedure
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    2     1  procedure  Lorg/eclipse/collections/api/block/procedure/Procedure2<-TT;-TP;>;
            0    2     2  parameter  TP;
    Signature: <P:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/procedure/Procedure2<-TT;-TP;>;TP;)V
    MethodParameters:
           Name  Flags
      procedure  
      parameter  

  public <S, R extends java.util.Collection<org.eclipse.collections.api.tuple.Pair<T, S>>> R zip(java.lang.Iterable<S>, );
    descriptor: (Ljava/lang/Iterable;Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // java.lang.Iterable that
        start local 2 // java.util.Collection target
         0: .line 593
            aload 0 /* this */
            aload 1 /* that */
            aload 2 /* target */
            invokestatic org.eclipse.collections.impl.utility.internal.IterableIterate.zip:(Ljava/lang/Iterable;Ljava/lang/Iterable;Ljava/util/Collection;)Ljava/util/Collection;
            areturn
        end local 2 // java.util.Collection target
        end local 1 // java.lang.Iterable that
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1    that  Ljava/lang/Iterable<TS;>;
            0    1     2  target  TR;
    Signature: <S:Ljava/lang/Object;R::Ljava/util/Collection<Lorg/eclipse/collections/api/tuple/Pair<TT;TS;>;>;>(Ljava/lang/Iterable<TS;>;TR;)TR;
    MethodParameters:
        Name  Flags
      that    
      target  

  public <R extends java.util.Collection<org.eclipse.collections.api.tuple.Pair<T, java.lang.Integer>>> R zipWithIndex();
    descriptor: (Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // java.util.Collection target
         0: .line 599
            aload 0 /* this */
            aload 1 /* target */
            invokestatic org.eclipse.collections.impl.block.procedure.ZipWithIndexProcedure.create:(Ljava/util/Collection;)Lorg/eclipse/collections/impl/block/procedure/ZipWithIndexProcedure;
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         1: .line 600
            aload 1 /* target */
            areturn
        end local 1 // java.util.Collection target
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    2     1  target  TR;
    Signature: <R::Ljava/util/Collection<Lorg/eclipse/collections/api/tuple/Pair<TT;Ljava/lang/Integer;>;>;>(TR;)TR;
    MethodParameters:
        Name  Flags
      target  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
         0: .line 619
            aload 0 /* this */
            ldc "["
            ldc ", "
            ldc "]"
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.makeString:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;

  public void appendString(java.lang.Appendable, java.lang.String);
    descriptor: (Ljava/lang/Appendable;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // java.lang.Appendable appendable
        start local 2 // java.lang.String separator
         0: .line 625
            new org.eclipse.collections.impl.block.procedure.AppendStringProcedure
            dup
            aload 1 /* appendable */
            aload 2 /* separator */
            invokespecial org.eclipse.collections.impl.block.procedure.AppendStringProcedure.<init>:(Ljava/lang/Appendable;Ljava/lang/String;)V
            astore 3 /* appendStringProcedure */
        start local 3 // org.eclipse.collections.impl.block.procedure.AppendStringProcedure appendStringProcedure
         1: .line 626
            aload 0 /* this */
            aload 3 /* appendStringProcedure */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         2: .line 627
            return
        end local 3 // org.eclipse.collections.impl.block.procedure.AppendStringProcedure appendStringProcedure
        end local 2 // java.lang.String separator
        end local 1 // java.lang.Appendable appendable
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    3     0                   this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    3     1             appendable  Ljava/lang/Appendable;
            0    3     2              separator  Ljava/lang/String;
            1    3     3  appendStringProcedure  Lorg/eclipse/collections/impl/block/procedure/AppendStringProcedure<TT;>;
    MethodParameters:
            Name  Flags
      appendable  
      separator   

  public void appendString(java.lang.Appendable, java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/Appendable;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=5
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // java.lang.Appendable appendable
        start local 2 // java.lang.String start
        start local 3 // java.lang.String separator
        start local 4 // java.lang.String end
         0: .line 632
            new org.eclipse.collections.impl.block.procedure.AppendStringProcedure
            dup
            aload 1 /* appendable */
            aload 3 /* separator */
            invokespecial org.eclipse.collections.impl.block.procedure.AppendStringProcedure.<init>:(Ljava/lang/Appendable;Ljava/lang/String;)V
            astore 5 /* appendStringProcedure */
        start local 5 // org.eclipse.collections.impl.block.procedure.AppendStringProcedure appendStringProcedure
         1: .line 635
            aload 1 /* appendable */
            aload 2 /* start */
            invokeinterface java.lang.Appendable.append:(Ljava/lang/CharSequence;)Ljava/lang/Appendable;
            pop
         2: .line 636
            aload 0 /* this */
            aload 5 /* appendStringProcedure */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         3: .line 637
            aload 1 /* appendable */
            aload 4 /* end */
            invokeinterface java.lang.Appendable.append:(Ljava/lang/CharSequence;)Ljava/lang/Appendable;
            pop
         4: .line 638
            goto 7
         5: .line 639
      StackMap locals: org.eclipse.collections.impl.AbstractRichIterable java.lang.Appendable java.lang.String java.lang.String java.lang.String org.eclipse.collections.impl.block.procedure.AppendStringProcedure
      StackMap stack: java.io.IOException
            astore 6 /* e */
        start local 6 // java.io.IOException e
         6: .line 641
            new java.lang.RuntimeException
            dup
            aload 6 /* e */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 6 // java.io.IOException e
         7: .line 643
      StackMap locals:
      StackMap stack:
            return
        end local 5 // org.eclipse.collections.impl.block.procedure.AppendStringProcedure appendStringProcedure
        end local 4 // java.lang.String end
        end local 3 // java.lang.String separator
        end local 2 // java.lang.String start
        end local 1 // java.lang.Appendable appendable
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    8     0                   this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    8     1             appendable  Ljava/lang/Appendable;
            0    8     2                  start  Ljava/lang/String;
            0    8     3              separator  Ljava/lang/String;
            0    8     4                    end  Ljava/lang/String;
            1    8     5  appendStringProcedure  Lorg/eclipse/collections/impl/block/procedure/AppendStringProcedure<TT;>;
            6    7     6                      e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           1     4       5  Class java.io.IOException
    MethodParameters:
            Name  Flags
      appendable  
      start       
      separator   
      end         

  public boolean containsAll(java.util.Collection<?>);
    descriptor: (Ljava/util/Collection;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // java.util.Collection collection
         0: .line 648
            aload 0 /* this */
            aload 1 /* collection */
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.containsAllIterable:(Ljava/lang/Iterable;)Z
            ireturn
        end local 1 // java.util.Collection collection
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1  collection  Ljava/util/Collection<*>;
    Signature: (Ljava/util/Collection<*>;)Z
    MethodParameters:
            Name  Flags
      collection  

  public <R extends org.eclipse.collections.api.collection.primitive.MutableBooleanCollection> R collectBoolean(org.eclipse.collections.api.block.function.primitive.BooleanFunction<? super T>, );
    descriptor: (Lorg/eclipse/collections/api/block/function/primitive/BooleanFunction;Lorg/eclipse/collections/api/collection/primitive/MutableBooleanCollection;)Lorg/eclipse/collections/api/collection/primitive/MutableBooleanCollection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        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 654
            aload 0 /* this */
            new org.eclipse.collections.impl.block.procedure.primitive.CollectBooleanProcedure
            dup
            aload 1 /* booleanFunction */
            aload 2 /* target */
            invokespecial org.eclipse.collections.impl.block.procedure.primitive.CollectBooleanProcedure.<init>:(Lorg/eclipse/collections/api/block/function/primitive/BooleanFunction;Lorg/eclipse/collections/api/collection/primitive/MutableBooleanCollection;)V
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         1: .line 655
            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 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    2     1  booleanFunction  Lorg/eclipse/collections/api/block/function/primitive/BooleanFunction<-TT;>;
            0    2     2           target  TR;
    Signature: <R::Lorg/eclipse/collections/api/collection/primitive/MutableBooleanCollection;>(Lorg/eclipse/collections/api/block/function/primitive/BooleanFunction<-TT;>;TR;)TR;
    MethodParameters:
                 Name  Flags
      booleanFunction  
      target           

  public <R extends org.eclipse.collections.api.collection.primitive.MutableByteCollection> R collectByte(org.eclipse.collections.api.block.function.primitive.ByteFunction<? super T>, );
    descriptor: (Lorg/eclipse/collections/api/block/function/primitive/ByteFunction;Lorg/eclipse/collections/api/collection/primitive/MutableByteCollection;)Lorg/eclipse/collections/api/collection/primitive/MutableByteCollection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        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 661
            aload 0 /* this */
            new org.eclipse.collections.impl.block.procedure.primitive.CollectByteProcedure
            dup
            aload 1 /* byteFunction */
            aload 2 /* target */
            invokespecial org.eclipse.collections.impl.block.procedure.primitive.CollectByteProcedure.<init>:(Lorg/eclipse/collections/api/block/function/primitive/ByteFunction;Lorg/eclipse/collections/api/collection/primitive/MutableByteCollection;)V
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         1: .line 662
            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 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    2     1  byteFunction  Lorg/eclipse/collections/api/block/function/primitive/ByteFunction<-TT;>;
            0    2     2        target  TR;
    Signature: <R::Lorg/eclipse/collections/api/collection/primitive/MutableByteCollection;>(Lorg/eclipse/collections/api/block/function/primitive/ByteFunction<-TT;>;TR;)TR;
    MethodParameters:
              Name  Flags
      byteFunction  
      target        

  public <R extends org.eclipse.collections.api.collection.primitive.MutableCharCollection> R collectChar(org.eclipse.collections.api.block.function.primitive.CharFunction<? super T>, );
    descriptor: (Lorg/eclipse/collections/api/block/function/primitive/CharFunction;Lorg/eclipse/collections/api/collection/primitive/MutableCharCollection;)Lorg/eclipse/collections/api/collection/primitive/MutableCharCollection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        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 668
            aload 0 /* this */
            new org.eclipse.collections.impl.block.procedure.primitive.CollectCharProcedure
            dup
            aload 1 /* charFunction */
            aload 2 /* target */
            invokespecial org.eclipse.collections.impl.block.procedure.primitive.CollectCharProcedure.<init>:(Lorg/eclipse/collections/api/block/function/primitive/CharFunction;Lorg/eclipse/collections/api/collection/primitive/MutableCharCollection;)V
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         1: .line 669
            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 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    2     1  charFunction  Lorg/eclipse/collections/api/block/function/primitive/CharFunction<-TT;>;
            0    2     2        target  TR;
    Signature: <R::Lorg/eclipse/collections/api/collection/primitive/MutableCharCollection;>(Lorg/eclipse/collections/api/block/function/primitive/CharFunction<-TT;>;TR;)TR;
    MethodParameters:
              Name  Flags
      charFunction  
      target        

  public <R extends org.eclipse.collections.api.collection.primitive.MutableDoubleCollection> R collectDouble(org.eclipse.collections.api.block.function.primitive.DoubleFunction<? super T>, );
    descriptor: (Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction;Lorg/eclipse/collections/api/collection/primitive/MutableDoubleCollection;)Lorg/eclipse/collections/api/collection/primitive/MutableDoubleCollection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        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 675
            aload 0 /* this */
            new org.eclipse.collections.impl.block.procedure.primitive.CollectDoubleProcedure
            dup
            aload 1 /* doubleFunction */
            aload 2 /* target */
            invokespecial org.eclipse.collections.impl.block.procedure.primitive.CollectDoubleProcedure.<init>:(Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction;Lorg/eclipse/collections/api/collection/primitive/MutableDoubleCollection;)V
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         1: .line 676
            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 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    2     1  doubleFunction  Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction<-TT;>;
            0    2     2          target  TR;
    Signature: <R::Lorg/eclipse/collections/api/collection/primitive/MutableDoubleCollection;>(Lorg/eclipse/collections/api/block/function/primitive/DoubleFunction<-TT;>;TR;)TR;
    MethodParameters:
                Name  Flags
      doubleFunction  
      target          

  public <R extends org.eclipse.collections.api.collection.primitive.MutableFloatCollection> R collectFloat(org.eclipse.collections.api.block.function.primitive.FloatFunction<? super T>, );
    descriptor: (Lorg/eclipse/collections/api/block/function/primitive/FloatFunction;Lorg/eclipse/collections/api/collection/primitive/MutableFloatCollection;)Lorg/eclipse/collections/api/collection/primitive/MutableFloatCollection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        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 682
            aload 0 /* this */
            new org.eclipse.collections.impl.block.procedure.primitive.CollectFloatProcedure
            dup
            aload 1 /* floatFunction */
            aload 2 /* target */
            invokespecial org.eclipse.collections.impl.block.procedure.primitive.CollectFloatProcedure.<init>:(Lorg/eclipse/collections/api/block/function/primitive/FloatFunction;Lorg/eclipse/collections/api/collection/primitive/MutableFloatCollection;)V
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         1: .line 683
            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 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    2     1  floatFunction  Lorg/eclipse/collections/api/block/function/primitive/FloatFunction<-TT;>;
            0    2     2         target  TR;
    Signature: <R::Lorg/eclipse/collections/api/collection/primitive/MutableFloatCollection;>(Lorg/eclipse/collections/api/block/function/primitive/FloatFunction<-TT;>;TR;)TR;
    MethodParameters:
               Name  Flags
      floatFunction  
      target         

  public <R extends org.eclipse.collections.api.collection.primitive.MutableIntCollection> R collectInt(org.eclipse.collections.api.block.function.primitive.IntFunction<? super T>, );
    descriptor: (Lorg/eclipse/collections/api/block/function/primitive/IntFunction;Lorg/eclipse/collections/api/collection/primitive/MutableIntCollection;)Lorg/eclipse/collections/api/collection/primitive/MutableIntCollection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        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 689
            aload 0 /* this */
            new org.eclipse.collections.impl.block.procedure.primitive.CollectIntProcedure
            dup
            aload 1 /* intFunction */
            aload 2 /* target */
            invokespecial org.eclipse.collections.impl.block.procedure.primitive.CollectIntProcedure.<init>:(Lorg/eclipse/collections/api/block/function/primitive/IntFunction;Lorg/eclipse/collections/api/collection/primitive/MutableIntCollection;)V
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         1: .line 690
            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 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    2     1  intFunction  Lorg/eclipse/collections/api/block/function/primitive/IntFunction<-TT;>;
            0    2     2       target  TR;
    Signature: <R::Lorg/eclipse/collections/api/collection/primitive/MutableIntCollection;>(Lorg/eclipse/collections/api/block/function/primitive/IntFunction<-TT;>;TR;)TR;
    MethodParameters:
             Name  Flags
      intFunction  
      target       

  public <R extends org.eclipse.collections.api.collection.primitive.MutableLongCollection> R collectLong(org.eclipse.collections.api.block.function.primitive.LongFunction<? super T>, );
    descriptor: (Lorg/eclipse/collections/api/block/function/primitive/LongFunction;Lorg/eclipse/collections/api/collection/primitive/MutableLongCollection;)Lorg/eclipse/collections/api/collection/primitive/MutableLongCollection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        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 696
            aload 0 /* this */
            new org.eclipse.collections.impl.block.procedure.primitive.CollectLongProcedure
            dup
            aload 1 /* longFunction */
            aload 2 /* target */
            invokespecial org.eclipse.collections.impl.block.procedure.primitive.CollectLongProcedure.<init>:(Lorg/eclipse/collections/api/block/function/primitive/LongFunction;Lorg/eclipse/collections/api/collection/primitive/MutableLongCollection;)V
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         1: .line 697
            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 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    2     1  longFunction  Lorg/eclipse/collections/api/block/function/primitive/LongFunction<-TT;>;
            0    2     2        target  TR;
    Signature: <R::Lorg/eclipse/collections/api/collection/primitive/MutableLongCollection;>(Lorg/eclipse/collections/api/block/function/primitive/LongFunction<-TT;>;TR;)TR;
    MethodParameters:
              Name  Flags
      longFunction  
      target        

  public <R extends org.eclipse.collections.api.collection.primitive.MutableShortCollection> R collectShort(org.eclipse.collections.api.block.function.primitive.ShortFunction<? super T>, );
    descriptor: (Lorg/eclipse/collections/api/block/function/primitive/ShortFunction;Lorg/eclipse/collections/api/collection/primitive/MutableShortCollection;)Lorg/eclipse/collections/api/collection/primitive/MutableShortCollection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        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 703
            aload 0 /* this */
            new org.eclipse.collections.impl.block.procedure.primitive.CollectShortProcedure
            dup
            aload 1 /* shortFunction */
            aload 2 /* target */
            invokespecial org.eclipse.collections.impl.block.procedure.primitive.CollectShortProcedure.<init>:(Lorg/eclipse/collections/api/block/function/primitive/ShortFunction;Lorg/eclipse/collections/api/collection/primitive/MutableShortCollection;)V
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         1: .line 704
            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 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    2     1  shortFunction  Lorg/eclipse/collections/api/block/function/primitive/ShortFunction<-TT;>;
            0    2     2         target  TR;
    Signature: <R::Lorg/eclipse/collections/api/collection/primitive/MutableShortCollection;>(Lorg/eclipse/collections/api/block/function/primitive/ShortFunction<-TT;>;TR;)TR;
    MethodParameters:
               Name  Flags
      shortFunction  
      target         

  public <V> org.eclipse.collections.api.bag.Bag<V> countByEach(org.eclipse.collections.api.block.function.Function<? super T, ? extends java.lang.Iterable<V>>);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/bag/Bag;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.function.Function function
         0: .line 713
            aload 0 /* this */
            aload 1 /* function */
            getstatic org.eclipse.collections.impl.factory.Bags.mutable:Lorg/eclipse/collections/api/factory/bag/MutableBagFactory;
            invokeinterface org.eclipse.collections.api.factory.bag.MutableBagFactory.empty:()Lorg/eclipse/collections/api/bag/MutableBag;
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.countByEach:(Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/bag/MutableBagIterable;)Lorg/eclipse/collections/api/bag/MutableBagIterable;
            areturn
        end local 1 // org.eclipse.collections.api.block.function.Function function
        end local 0 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    1     1  function  Lorg/eclipse/collections/api/block/function/Function<-TT;+Ljava/lang/Iterable<TV;>;>;
    Signature: <V:Ljava/lang/Object;>(Lorg/eclipse/collections/api/block/function/Function<-TT;+Ljava/lang/Iterable<TV;>;>;)Lorg/eclipse/collections/api/bag/Bag<TV;>;
    MethodParameters:
          Name  Flags
      function  

  public <V, R extends org.eclipse.collections.api.multimap.MutableMultimap<V, T>> R groupBy(org.eclipse.collections.api.block.function.Function<? super T, ? extends V>, );
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/multimap/MutableMultimap;)Lorg/eclipse/collections/api/multimap/MutableMultimap;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.function.Function function
        start local 2 // org.eclipse.collections.api.multimap.MutableMultimap target
         0: .line 721
            aload 0 /* this */
            aload 2 /* target */
            aload 1 /* function */
            invokestatic org.eclipse.collections.impl.block.procedure.MultimapPutProcedure.on:(Lorg/eclipse/collections/api/multimap/MutableMultimap;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/impl/block/procedure/MultimapPutProcedure;
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         1: .line 722
            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 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    2     1  function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            0    2     2    target  TR;
    Signature: <V:Ljava/lang/Object;R::Lorg/eclipse/collections/api/multimap/MutableMultimap<TV;TT;>;>(Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;TR;)TR;
    MethodParameters:
          Name  Flags
      function  
      target    

  public <V, R extends org.eclipse.collections.api.multimap.MutableMultimap<V, T>> R groupByEach(org.eclipse.collections.api.block.function.Function<? super T, ? extends java.lang.Iterable<V>>, );
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/multimap/MutableMultimap;)Lorg/eclipse/collections/api/multimap/MutableMultimap;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.function.Function function
        start local 2 // org.eclipse.collections.api.multimap.MutableMultimap target
         0: .line 730
            aload 0 /* this */
            aload 2 /* target */
            aload 1 /* function */
            invokestatic org.eclipse.collections.impl.block.procedure.MultimapEachPutProcedure.on:(Lorg/eclipse/collections/api/multimap/MutableMultimap;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/impl/block/procedure/MultimapEachPutProcedure;
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         1: .line 731
            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 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    2     1  function  Lorg/eclipse/collections/api/block/function/Function<-TT;+Ljava/lang/Iterable<TV;>;>;
            0    2     2    target  TR;
    Signature: <V:Ljava/lang/Object;R::Lorg/eclipse/collections/api/multimap/MutableMultimap<TV;TT;>;>(Lorg/eclipse/collections/api/block/function/Function<-TT;+Ljava/lang/Iterable<TV;>;>;TR;)TR;
    MethodParameters:
          Name  Flags
      function  
      target    

  public <V, R extends org.eclipse.collections.api.map.MutableMapIterable<V, T>> R groupByUniqueKey(org.eclipse.collections.api.block.function.Function<? super T, ? extends V>, );
    descriptor: (Lorg/eclipse/collections/api/block/function/Function;Lorg/eclipse/collections/api/map/MutableMapIterable;)Lorg/eclipse/collections/api/map/MutableMapIterable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.eclipse.collections.impl.AbstractRichIterable this
        start local 1 // org.eclipse.collections.api.block.function.Function function
        start local 2 // org.eclipse.collections.api.map.MutableMapIterable target
         0: .line 739
            aload 0 /* this */
            new org.eclipse.collections.impl.block.procedure.GroupByUniqueKeyProcedure
            dup
            aload 2 /* target */
            aload 1 /* function */
            invokespecial org.eclipse.collections.impl.block.procedure.GroupByUniqueKeyProcedure.<init>:(Ljava/util/Map;Lorg/eclipse/collections/api/block/function/Function;)V
            invokevirtual org.eclipse.collections.impl.AbstractRichIterable.forEach:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
         1: .line 740
            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 // org.eclipse.collections.impl.AbstractRichIterable this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/eclipse/collections/impl/AbstractRichIterable<TT;>;
            0    2     1  function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
            0    2     2    target  TR;
    Signature: <V:Ljava/lang/Object;R::Lorg/eclipse/collections/api/map/MutableMapIterable<TV;TT;>;>(Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;TR;)TR;
    MethodParameters:
          Name  Flags
      function  
      target    

  private static void lambda$0(java.lang.Object[], java.lang.Object, int);
    descriptor: ([Ljava/lang/Object;Ljava/lang/Object;I)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=3, args_size=3
        start local 1 // java.lang.Object each
        start local 2 // int index
         0: .line 140
            aload 0
            iload 2 /* index */
            aload 1 /* each */
            dup_x2
            aastore
            return
        end local 2 // int index
        end local 1 // java.lang.Object each
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     1   each  TT;
            0    1     2  index  I

  private static void lambda$1(java.lang.Object[], java.lang.Object, int);
    descriptor: ([Ljava/lang/Object;Ljava/lang/Object;I)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=3, args_size=3
        start local 1 // java.lang.Object each
        start local 2 // int index
         0: .line 152
            aload 0
            iload 2 /* index */
            aload 1 /* each */
            dup_x2
            aastore
            return
        end local 2 // int index
        end local 1 // java.lang.Object each
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     1   each  TT;
            0    1     2  index  I

  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=5, 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/procedure/primitive/ObjectIntProcedure"
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getFunctionalInterfaceMethodName:()Ljava/lang/String;
            ldc "value"
            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;I)V"
            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/AbstractRichIterable"
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getImplMethodSignature:()Ljava/lang/String;
            ldc "([Ljava/lang/Object;Ljava/lang/Object;I)V"
            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 java.lang.Object[]
            invokedynamic value([Ljava/lang/Object;)Lorg/eclipse/collections/api/block/procedure/primitive/ObjectIntProcedure;
              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;I)V
                  org/eclipse/collections/impl/AbstractRichIterable.lambda$0([Ljava/lang/Object;Ljava/lang/Object;I)V (6)
                  (Ljava/lang/Object;I)V
                  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/procedure/primitive/ObjectIntProcedure"
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getFunctionalInterfaceMethodName:()Ljava/lang/String;
            ldc "value"
            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;I)V"
            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/AbstractRichIterable"
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0
            invokevirtual java.lang.invoke.SerializedLambda.getImplMethodSignature:()Ljava/lang/String;
            ldc "([Ljava/lang/Object;Ljava/lang/Object;I)V"
            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 java.lang.Object[]
            invokedynamic value([Ljava/lang/Object;)Lorg/eclipse/collections/api/block/procedure/primitive/ObjectIntProcedure;
              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;I)V
                  org/eclipse/collections/impl/AbstractRichIterable.lambda$1([Ljava/lang/Object;Ljava/lang/Object;I)V (6)
                  (Ljava/lang/Object;I)V
                  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
}
Signature: <T:Ljava/lang/Object;>Ljava/lang/Object;Lorg/eclipse/collections/api/RichIterable<TT;>;
SourceFile: "AbstractRichIterable.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles