public final class org.eclipse.collections.impl.utility.LazyIterate
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.eclipse.collections.impl.utility.LazyIterate
  super_class: java.lang.Object
{
  private static final org.eclipse.collections.api.LazyIterable<?> EMPTY_ITERABLE;
    descriptor: Lorg/eclipse/collections/api/LazyIterable;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/eclipse/collections/api/LazyIterable<*>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 49
            getstatic org.eclipse.collections.impl.factory.Lists.immutable:Lorg/eclipse/collections/api/factory/list/ImmutableListFactory;
            invokeinterface org.eclipse.collections.api.factory.list.ImmutableListFactory.empty:()Lorg/eclipse/collections/api/list/ImmutableList;
            invokeinterface org.eclipse.collections.api.list.ImmutableList.asLazy:()Lorg/eclipse/collections/api/LazyIterable;
            putstatic org.eclipse.collections.impl.utility.LazyIterate.EMPTY_ITERABLE:Lorg/eclipse/collections/api/LazyIterable;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.eclipse.collections.impl.utility.LazyIterate this
         0: .line 51
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 53
            new java.lang.AssertionError
            dup
            ldc "Suppress default constructor for noninstantiability"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        end local 0 // org.eclipse.collections.impl.utility.LazyIterate this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/eclipse/collections/impl/utility/LazyIterate;

  public static <T> org.eclipse.collections.api.LazyIterable<T> adapt(java.lang.Iterable<T>);
    descriptor: (Ljava/lang/Iterable;)Lorg/eclipse/collections/api/LazyIterable;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.Iterable iterable
         0: .line 61
            new org.eclipse.collections.impl.lazy.LazyIterableAdapter
            dup
            aload 0 /* iterable */
            invokespecial org.eclipse.collections.impl.lazy.LazyIterableAdapter.<init>:(Ljava/lang/Iterable;)V
            areturn
        end local 0 // java.lang.Iterable iterable
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  iterable  Ljava/lang/Iterable<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Iterable<TT;>;)Lorg/eclipse/collections/api/LazyIterable<TT;>;
    MethodParameters:
          Name  Flags
      iterable  

  public static <T> org.eclipse.collections.api.LazyIterable<T> select(java.lang.Iterable<T>, org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: (Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/predicate/Predicate;)Lorg/eclipse/collections/api/LazyIterable;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.Iterable iterable
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 69
            new org.eclipse.collections.impl.lazy.SelectIterable
            dup
            aload 0 /* iterable */
            aload 1 /* predicate */
            invokespecial org.eclipse.collections.impl.lazy.SelectIterable.<init>:(Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/predicate/Predicate;)V
            areturn
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // java.lang.Iterable iterable
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0   iterable  Ljava/lang/Iterable<TT;>;
            0    1     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Iterable<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)Lorg/eclipse/collections/api/LazyIterable<TT;>;
    MethodParameters:
           Name  Flags
      iterable   
      predicate  

  public static <T> org.eclipse.collections.api.LazyIterable<T> reject(java.lang.Iterable<T>, org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: (Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/predicate/Predicate;)Lorg/eclipse/collections/api/LazyIterable;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.Iterable iterable
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 77
            new org.eclipse.collections.impl.lazy.RejectIterable
            dup
            aload 0 /* iterable */
            aload 1 /* predicate */
            invokespecial org.eclipse.collections.impl.lazy.RejectIterable.<init>:(Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/predicate/Predicate;)V
            areturn
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // java.lang.Iterable iterable
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0   iterable  Ljava/lang/Iterable<TT;>;
            0    1     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Iterable<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)Lorg/eclipse/collections/api/LazyIterable<TT;>;
    MethodParameters:
           Name  Flags
      iterable   
      predicate  

  public static <T> org.eclipse.collections.api.LazyIterable<T> selectInstancesOf(java.lang.Iterable<?>, java.lang.Class<T>);
    descriptor: (Ljava/lang/Iterable;Ljava/lang/Class;)Lorg/eclipse/collections/api/LazyIterable;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.Iterable iterable
        start local 1 // java.lang.Class clazz
         0: .line 82
            new org.eclipse.collections.impl.lazy.SelectInstancesOfIterable
            dup
            aload 0 /* iterable */
            aload 1 /* clazz */
            invokespecial org.eclipse.collections.impl.lazy.SelectInstancesOfIterable.<init>:(Ljava/lang/Iterable;Ljava/lang/Class;)V
            areturn
        end local 1 // java.lang.Class clazz
        end local 0 // java.lang.Iterable iterable
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  iterable  Ljava/lang/Iterable<*>;
            0    1     1     clazz  Ljava/lang/Class<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Iterable<*>;Ljava/lang/Class<TT;>;)Lorg/eclipse/collections/api/LazyIterable<TT;>;
    MethodParameters:
          Name  Flags
      iterable  
      clazz     

  public static <T, V> org.eclipse.collections.api.LazyIterable<V> collect(java.lang.Iterable<T>, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>);
    descriptor: (Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/LazyIterable;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.Iterable iterable
        start local 1 // org.eclipse.collections.api.block.function.Function function
         0: .line 92
            new org.eclipse.collections.impl.lazy.CollectIterable
            dup
            aload 0 /* iterable */
            aload 1 /* function */
            invokespecial org.eclipse.collections.impl.lazy.CollectIterable.<init>:(Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/function/Function;)V
            areturn
        end local 1 // org.eclipse.collections.api.block.function.Function function
        end local 0 // java.lang.Iterable iterable
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  iterable  Ljava/lang/Iterable<TT;>;
            0    1     1  function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/lang/Iterable<TT;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;)Lorg/eclipse/collections/api/LazyIterable<TV;>;
    MethodParameters:
          Name  Flags
      iterable  
      function  

  public static <T, V> org.eclipse.collections.api.LazyIterable<V> flatCollect(java.lang.Iterable<T>, org.eclipse.collections.api.block.function.Function<? super T, ? extends java.lang.Iterable<V>>);
    descriptor: (Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/LazyIterable;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.Iterable iterable
        start local 1 // org.eclipse.collections.api.block.function.Function function
         0: .line 102
            new org.eclipse.collections.impl.lazy.FlatCollectIterable
            dup
            aload 0 /* iterable */
            aload 1 /* function */
            invokespecial org.eclipse.collections.impl.lazy.FlatCollectIterable.<init>:(Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/function/Function;)V
            areturn
        end local 1 // org.eclipse.collections.api.block.function.Function function
        end local 0 // java.lang.Iterable iterable
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  iterable  Ljava/lang/Iterable<TT;>;
            0    1     1  function  Lorg/eclipse/collections/api/block/function/Function<-TT;+Ljava/lang/Iterable<TV;>;>;
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/lang/Iterable<TT;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+Ljava/lang/Iterable<TV;>;>;)Lorg/eclipse/collections/api/LazyIterable<TV;>;
    MethodParameters:
          Name  Flags
      iterable  
      function  

  public static <T, V> org.eclipse.collections.api.LazyIterable<V> collectIf(java.lang.Iterable<T>, org.eclipse.collections.api.block.predicate.Predicate<? super T>, org.eclipse.collections.api.block.function.Function<? super T, ? extends V>);
    descriptor: (Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/predicate/Predicate;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/LazyIterable;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // java.lang.Iterable iterable
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        start local 2 // org.eclipse.collections.api.block.function.Function function
         0: .line 113
            aload 0 /* iterable */
            aload 1 /* predicate */
            invokestatic org.eclipse.collections.impl.utility.LazyIterate.select:(Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/predicate/Predicate;)Lorg/eclipse/collections/api/LazyIterable;
            aload 2 /* function */
            invokeinterface org.eclipse.collections.api.LazyIterable.collect:(Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/LazyIterable;
            areturn
        end local 2 // org.eclipse.collections.api.block.function.Function function
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // java.lang.Iterable iterable
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0   iterable  Ljava/lang/Iterable<TT;>;
            0    1     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
            0    1     2   function  Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;
    Signature: <T:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/lang/Iterable<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;Lorg/eclipse/collections/api/block/function/Function<-TT;+TV;>;)Lorg/eclipse/collections/api/LazyIterable<TV;>;
    MethodParameters:
           Name  Flags
      iterable   
      predicate  
      function   

  public static <T> org.eclipse.collections.api.LazyIterable<T> take(java.lang.Iterable<T>, int);
    descriptor: (Ljava/lang/Iterable;I)Lorg/eclipse/collections/api/LazyIterable;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.Iterable iterable
        start local 1 // int count
         0: .line 121
            new org.eclipse.collections.impl.lazy.TakeIterable
            dup
            aload 0 /* iterable */
            iload 1 /* count */
            invokespecial org.eclipse.collections.impl.lazy.TakeIterable.<init>:(Ljava/lang/Iterable;I)V
            areturn
        end local 1 // int count
        end local 0 // java.lang.Iterable iterable
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  iterable  Ljava/lang/Iterable<TT;>;
            0    1     1     count  I
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Iterable<TT;>;I)Lorg/eclipse/collections/api/LazyIterable<TT;>;
    MethodParameters:
          Name  Flags
      iterable  
      count     

  public static <T> org.eclipse.collections.api.LazyIterable<T> drop(java.lang.Iterable<T>, int);
    descriptor: (Ljava/lang/Iterable;I)Lorg/eclipse/collections/api/LazyIterable;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.Iterable iterable
        start local 1 // int count
         0: .line 129
            new org.eclipse.collections.impl.lazy.DropIterable
            dup
            aload 0 /* iterable */
            iload 1 /* count */
            invokespecial org.eclipse.collections.impl.lazy.DropIterable.<init>:(Ljava/lang/Iterable;I)V
            areturn
        end local 1 // int count
        end local 0 // java.lang.Iterable iterable
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  iterable  Ljava/lang/Iterable<TT;>;
            0    1     1     count  I
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Iterable<TT;>;I)Lorg/eclipse/collections/api/LazyIterable<TT;>;
    MethodParameters:
          Name  Flags
      iterable  
      count     

  public static <T> org.eclipse.collections.api.LazyIterable<T> takeWhile(java.lang.Iterable<T>, org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: (Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/predicate/Predicate;)Lorg/eclipse/collections/api/LazyIterable;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.Iterable iterable
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 140
            new org.eclipse.collections.impl.lazy.TakeWhileIterable
            dup
            aload 0 /* iterable */
            aload 1 /* predicate */
            invokespecial org.eclipse.collections.impl.lazy.TakeWhileIterable.<init>:(Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/predicate/Predicate;)V
            areturn
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // java.lang.Iterable iterable
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0   iterable  Ljava/lang/Iterable<TT;>;
            0    1     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Iterable<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)Lorg/eclipse/collections/api/LazyIterable<TT;>;
    MethodParameters:
           Name  Flags
      iterable   
      predicate  

  public static <T> org.eclipse.collections.api.LazyIterable<T> dropWhile(java.lang.Iterable<T>, org.eclipse.collections.api.block.predicate.Predicate<? super T>);
    descriptor: (Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/predicate/Predicate;)Lorg/eclipse/collections/api/LazyIterable;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.Iterable iterable
        start local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
         0: .line 151
            new org.eclipse.collections.impl.lazy.DropWhileIterable
            dup
            aload 0 /* iterable */
            aload 1 /* predicate */
            invokespecial org.eclipse.collections.impl.lazy.DropWhileIterable.<init>:(Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/predicate/Predicate;)V
            areturn
        end local 1 // org.eclipse.collections.api.block.predicate.Predicate predicate
        end local 0 // java.lang.Iterable iterable
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0   iterable  Ljava/lang/Iterable<TT;>;
            0    1     1  predicate  Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Iterable<TT;>;Lorg/eclipse/collections/api/block/predicate/Predicate<-TT;>;)Lorg/eclipse/collections/api/LazyIterable<TT;>;
    MethodParameters:
           Name  Flags
      iterable   
      predicate  

  public static <T> org.eclipse.collections.api.LazyIterable<T> distinct(java.lang.Iterable<T>);
    descriptor: (Ljava/lang/Iterable;)Lorg/eclipse/collections/api/LazyIterable;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.Iterable iterable
         0: .line 161
            new org.eclipse.collections.impl.lazy.DistinctIterable
            dup
            aload 0 /* iterable */
            invokespecial org.eclipse.collections.impl.lazy.DistinctIterable.<init>:(Ljava/lang/Iterable;)V
            areturn
        end local 0 // java.lang.Iterable iterable
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  iterable  Ljava/lang/Iterable<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Iterable<TT;>;)Lorg/eclipse/collections/api/LazyIterable<TT;>;
    MethodParameters:
          Name  Flags
      iterable  

  public static <T> org.eclipse.collections.api.LazyIterable<T> concatenate(java.lang.Iterable<T>[]);
    descriptor: ([Ljava/lang/Iterable;)Lorg/eclipse/collections/api/LazyIterable;
    flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.Iterable[] iterables
         0: .line 169
            aload 0 /* iterables */
            invokestatic org.eclipse.collections.impl.lazy.CompositeIterable.with:([Ljava/lang/Iterable;)Lorg/eclipse/collections/impl/lazy/CompositeIterable;
            areturn
        end local 0 // java.lang.Iterable[] iterables
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  iterables  [Ljava/lang/Iterable;
    Signature: <T:Ljava/lang/Object;>([Ljava/lang/Iterable<TT;>;)Lorg/eclipse/collections/api/LazyIterable<TT;>;
    MethodParameters:
           Name  Flags
      iterables  

  public static <T> org.eclipse.collections.api.LazyIterable<T> empty();
    descriptor: ()Lorg/eclipse/collections/api/LazyIterable;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 174
            getstatic org.eclipse.collections.impl.utility.LazyIterate.EMPTY_ITERABLE:Lorg/eclipse/collections/api/LazyIterable;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <T:Ljava/lang/Object;>()Lorg/eclipse/collections/api/LazyIterable<TT;>;

  public static <A, B> org.eclipse.collections.api.LazyIterable<org.eclipse.collections.api.tuple.Pair<A, B>> zip(java.lang.Iterable<A>, java.lang.Iterable<B>);
    descriptor: (Ljava/lang/Iterable;Ljava/lang/Iterable;)Lorg/eclipse/collections/api/LazyIterable;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.Iterable as
        start local 1 // java.lang.Iterable bs
         0: .line 179
            new org.eclipse.collections.impl.lazy.ZipIterable
            dup
            aload 0 /* as */
            aload 1 /* bs */
            invokespecial org.eclipse.collections.impl.lazy.ZipIterable.<init>:(Ljava/lang/Iterable;Ljava/lang/Iterable;)V
            areturn
        end local 1 // java.lang.Iterable bs
        end local 0 // java.lang.Iterable as
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    as  Ljava/lang/Iterable<TA;>;
            0    1     1    bs  Ljava/lang/Iterable<TB;>;
    Signature: <A:Ljava/lang/Object;B:Ljava/lang/Object;>(Ljava/lang/Iterable<TA;>;Ljava/lang/Iterable<TB;>;)Lorg/eclipse/collections/api/LazyIterable<Lorg/eclipse/collections/api/tuple/Pair<TA;TB;>;>;
    MethodParameters:
      Name  Flags
      as    
      bs    

  public static <T> org.eclipse.collections.api.LazyIterable<org.eclipse.collections.api.tuple.Pair<T, java.lang.Integer>> zipWithIndex(java.lang.Iterable<T>);
    descriptor: (Ljava/lang/Iterable;)Lorg/eclipse/collections/api/LazyIterable;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.Iterable iterable
         0: .line 184
            new org.eclipse.collections.impl.lazy.ZipWithIndexIterable
            dup
            aload 0 /* iterable */
            invokespecial org.eclipse.collections.impl.lazy.ZipWithIndexIterable.<init>:(Ljava/lang/Iterable;)V
            areturn
        end local 0 // java.lang.Iterable iterable
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  iterable  Ljava/lang/Iterable<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Iterable<TT;>;)Lorg/eclipse/collections/api/LazyIterable<Lorg/eclipse/collections/api/tuple/Pair<TT;Ljava/lang/Integer;>;>;
    MethodParameters:
          Name  Flags
      iterable  

  public static <T> org.eclipse.collections.api.LazyIterable<org.eclipse.collections.api.RichIterable<T>> chunk(java.lang.Iterable<T>, int);
    descriptor: (Ljava/lang/Iterable;I)Lorg/eclipse/collections/api/LazyIterable;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.Iterable iterable
        start local 1 // int size
         0: .line 189
            new org.eclipse.collections.impl.lazy.ChunkIterable
            dup
            aload 0 /* iterable */
            iload 1 /* size */
            invokespecial org.eclipse.collections.impl.lazy.ChunkIterable.<init>:(Ljava/lang/Iterable;I)V
            areturn
        end local 1 // int size
        end local 0 // java.lang.Iterable iterable
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  iterable  Ljava/lang/Iterable<TT;>;
            0    1     1      size  I
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Iterable<TT;>;I)Lorg/eclipse/collections/api/LazyIterable<Lorg/eclipse/collections/api/RichIterable<TT;>;>;
    MethodParameters:
          Name  Flags
      iterable  
      size      

  public static <T> org.eclipse.collections.api.LazyIterable<T> tap(java.lang.Iterable<T>, org.eclipse.collections.api.block.procedure.Procedure<? super T>);
    descriptor: (Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/procedure/Procedure;)Lorg/eclipse/collections/api/LazyIterable;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.Iterable iterable
        start local 1 // org.eclipse.collections.api.block.procedure.Procedure procedure
         0: .line 199
            new org.eclipse.collections.impl.lazy.TapIterable
            dup
            aload 0 /* iterable */
            aload 1 /* procedure */
            invokespecial org.eclipse.collections.impl.lazy.TapIterable.<init>:(Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/procedure/Procedure;)V
            areturn
        end local 1 // org.eclipse.collections.api.block.procedure.Procedure procedure
        end local 0 // java.lang.Iterable iterable
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0   iterable  Ljava/lang/Iterable<TT;>;
            0    1     1  procedure  Lorg/eclipse/collections/api/block/procedure/Procedure<-TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Iterable<TT;>;Lorg/eclipse/collections/api/block/procedure/Procedure<-TT;>;)Lorg/eclipse/collections/api/LazyIterable<TT;>;
    MethodParameters:
           Name  Flags
      iterable   
      procedure  

  public static <A, B> org.eclipse.collections.api.LazyIterable<org.eclipse.collections.api.tuple.Pair<A, B>> cartesianProduct(java.lang.Iterable<A>, java.lang.Iterable<B>);
    descriptor: (Ljava/lang/Iterable;Ljava/lang/Iterable;)Lorg/eclipse/collections/api/LazyIterable;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.Iterable iterable1
        start local 1 // java.lang.Iterable iterable2
         0: .line 211
            aload 0 /* iterable1 */
            aload 1 /* iterable2 */
            invokedynamic value()Lorg/eclipse/collections/api/block/function/Function2;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.altMetafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
                  org/eclipse/collections/impl/tuple/Tuples.pair(Ljava/lang/Object;Ljava/lang/Object;)Lorg/eclipse/collections/api/tuple/Pair; (6)
                  (Ljava/lang/Object;Ljava/lang/Object;)Lorg/eclipse/collections/api/tuple/Pair;
                  1
            invokestatic org.eclipse.collections.impl.utility.LazyIterate.cartesianProduct:(Ljava/lang/Iterable;Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/function/Function2;)Lorg/eclipse/collections/api/LazyIterable;
            areturn
        end local 1 // java.lang.Iterable iterable2
        end local 0 // java.lang.Iterable iterable1
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  iterable1  Ljava/lang/Iterable<TA;>;
            0    1     1  iterable2  Ljava/lang/Iterable<TB;>;
    Signature: <A:Ljava/lang/Object;B:Ljava/lang/Object;>(Ljava/lang/Iterable<TA;>;Ljava/lang/Iterable<TB;>;)Lorg/eclipse/collections/api/LazyIterable<Lorg/eclipse/collections/api/tuple/Pair<TA;TB;>;>;
    MethodParameters:
           Name  Flags
      iterable1  
      iterable2  

  public static <A, B, C> org.eclipse.collections.api.LazyIterable<C> cartesianProduct(java.lang.Iterable<A>, java.lang.Iterable<B>, org.eclipse.collections.api.block.function.Function2<? super A, ? super B, ? extends C>);
    descriptor: (Ljava/lang/Iterable;Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/function/Function2;)Lorg/eclipse/collections/api/LazyIterable;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.lang.Iterable iterable1
        start local 1 // java.lang.Iterable iterable2
        start local 2 // org.eclipse.collections.api.block.function.Function2 function
         0: .line 227
            aload 0 /* iterable1 */
            aload 2 /* function */
            aload 1 /* iterable2 */
            invokedynamic valueOf(Lorg/eclipse/collections/api/block/function/Function2;Ljava/lang/Iterable;)Lorg/eclipse/collections/api/block/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.altMetafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/eclipse/collections/impl/utility/LazyIterate.lambda$1(Lorg/eclipse/collections/api/block/function/Function2;Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Iterable; (6)
                  (Ljava/lang/Object;)Ljava/lang/Iterable;
                  1
            invokestatic org.eclipse.collections.impl.utility.LazyIterate.flatCollect:(Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/LazyIterable;
            areturn
        end local 2 // org.eclipse.collections.api.block.function.Function2 function
        end local 1 // java.lang.Iterable iterable2
        end local 0 // java.lang.Iterable iterable1
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  iterable1  Ljava/lang/Iterable<TA;>;
            0    1     1  iterable2  Ljava/lang/Iterable<TB;>;
            0    1     2   function  Lorg/eclipse/collections/api/block/function/Function2<-TA;-TB;+TC;>;
    Signature: <A:Ljava/lang/Object;B:Ljava/lang/Object;C:Ljava/lang/Object;>(Ljava/lang/Iterable<TA;>;Ljava/lang/Iterable<TB;>;Lorg/eclipse/collections/api/block/function/Function2<-TA;-TB;+TC;>;)Lorg/eclipse/collections/api/LazyIterable<TC;>;
    MethodParameters:
           Name  Flags
      iterable1  
      iterable2  
      function   

  private static java.lang.Iterable lambda$1(org.eclipse.collections.api.block.function.Function2, java.lang.Iterable, java.lang.Object);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function2;Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Iterable;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 2 // java.lang.Object first
         0: .line 227
            aload 1
            aload 0
            aload 2 /* first */
            invokedynamic valueOf(Lorg/eclipse/collections/api/block/function/Function2;Ljava/lang/Object;)Lorg/eclipse/collections/api/block/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.altMetafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/eclipse/collections/impl/utility/LazyIterate.lambda$2(Lorg/eclipse/collections/api/block/function/Function2;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; (6)
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  1
            invokestatic org.eclipse.collections.impl.utility.LazyIterate.collect:(Ljava/lang/Iterable;Lorg/eclipse/collections/api/block/function/Function;)Lorg/eclipse/collections/api/LazyIterable;
            areturn
        end local 2 // java.lang.Object first
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     2  first  TA;

  private static java.lang.Object lambda$2(org.eclipse.collections.api.block.function.Function2, java.lang.Object, java.lang.Object);
    descriptor: (Lorg/eclipse/collections/api/block/function/Function2;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 2 // java.lang.Object second
         0: .line 227
            aload 0
            aload 1
            aload 2 /* second */
            invokeinterface org.eclipse.collections.api.block.function.Function2.value:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object second
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     2  second  TB;

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