public class org.apache.commons.collections.IteratorUtils
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.commons.collections.IteratorUtils
  super_class: java.lang.Object
{
  public static final org.apache.commons.collections.ResettableIterator EMPTY_ITERATOR;
    descriptor: Lorg/apache/commons/collections/ResettableIterator;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.apache.commons.collections.ResettableListIterator EMPTY_LIST_ITERATOR;
    descriptor: Lorg/apache/commons/collections/ResettableListIterator;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.apache.commons.collections.OrderedIterator EMPTY_ORDERED_ITERATOR;
    descriptor: Lorg/apache/commons/collections/OrderedIterator;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.apache.commons.collections.MapIterator EMPTY_MAP_ITERATOR;
    descriptor: Lorg/apache/commons/collections/MapIterator;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.apache.commons.collections.OrderedMapIterator EMPTY_ORDERED_MAP_ITERATOR;
    descriptor: Lorg/apache/commons/collections/OrderedMapIterator;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 84
            getstatic org.apache.commons.collections.iterators.EmptyIterator.RESETTABLE_INSTANCE:Lorg/apache/commons/collections/ResettableIterator;
            putstatic org.apache.commons.collections.IteratorUtils.EMPTY_ITERATOR:Lorg/apache/commons/collections/ResettableIterator;
         1: .line 91
            getstatic org.apache.commons.collections.iterators.EmptyListIterator.RESETTABLE_INSTANCE:Lorg/apache/commons/collections/ResettableListIterator;
            putstatic org.apache.commons.collections.IteratorUtils.EMPTY_LIST_ITERATOR:Lorg/apache/commons/collections/ResettableListIterator;
         2: .line 95
            getstatic org.apache.commons.collections.iterators.EmptyOrderedIterator.INSTANCE:Lorg/apache/commons/collections/OrderedIterator;
            putstatic org.apache.commons.collections.IteratorUtils.EMPTY_ORDERED_ITERATOR:Lorg/apache/commons/collections/OrderedIterator;
         3: .line 99
            getstatic org.apache.commons.collections.iterators.EmptyMapIterator.INSTANCE:Lorg/apache/commons/collections/MapIterator;
            putstatic org.apache.commons.collections.IteratorUtils.EMPTY_MAP_ITERATOR:Lorg/apache/commons/collections/MapIterator;
         4: .line 103
            getstatic org.apache.commons.collections.iterators.EmptyOrderedMapIterator.INSTANCE:Lorg/apache/commons/collections/OrderedMapIterator;
            putstatic org.apache.commons.collections.IteratorUtils.EMPTY_ORDERED_MAP_ITERATOR:Lorg/apache/commons/collections/OrderedMapIterator;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.collections.IteratorUtils this
         0: .line 108
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 109
            return
        end local 0 // org.apache.commons.collections.IteratorUtils this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/collections/IteratorUtils;

  public static org.apache.commons.collections.ResettableIterator emptyIterator();
    descriptor: ()Lorg/apache/commons/collections/ResettableIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 125
            getstatic org.apache.commons.collections.IteratorUtils.EMPTY_ITERATOR:Lorg/apache/commons/collections/ResettableIterator;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.apache.commons.collections.ResettableListIterator emptyListIterator();
    descriptor: ()Lorg/apache/commons/collections/ResettableListIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 140
            getstatic org.apache.commons.collections.IteratorUtils.EMPTY_LIST_ITERATOR:Lorg/apache/commons/collections/ResettableListIterator;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.apache.commons.collections.OrderedIterator emptyOrderedIterator();
    descriptor: ()Lorg/apache/commons/collections/OrderedIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 152
            getstatic org.apache.commons.collections.IteratorUtils.EMPTY_ORDERED_ITERATOR:Lorg/apache/commons/collections/OrderedIterator;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.apache.commons.collections.MapIterator emptyMapIterator();
    descriptor: ()Lorg/apache/commons/collections/MapIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 164
            getstatic org.apache.commons.collections.IteratorUtils.EMPTY_MAP_ITERATOR:Lorg/apache/commons/collections/MapIterator;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.apache.commons.collections.OrderedMapIterator emptyOrderedMapIterator();
    descriptor: ()Lorg/apache/commons/collections/OrderedMapIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 176
            getstatic org.apache.commons.collections.IteratorUtils.EMPTY_ORDERED_MAP_ITERATOR:Lorg/apache/commons/collections/OrderedMapIterator;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.apache.commons.collections.ResettableIterator singletonIterator(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Lorg/apache/commons/collections/ResettableIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.Object object
         0: .line 194
            new org.apache.commons.collections.iterators.SingletonIterator
            dup
            aload 0 /* object */
            invokespecial org.apache.commons.collections.iterators.SingletonIterator.<init>:(Ljava/lang/Object;)V
            areturn
        end local 0 // java.lang.Object object
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  object  Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      object  

  public static java.util.ListIterator singletonListIterator(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/util/ListIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.Object object
         0: .line 207
            new org.apache.commons.collections.iterators.SingletonListIterator
            dup
            aload 0 /* object */
            invokespecial org.apache.commons.collections.iterators.SingletonListIterator.<init>:(Ljava/lang/Object;)V
            areturn
        end local 0 // java.lang.Object object
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  object  Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      object  

  public static org.apache.commons.collections.ResettableIterator arrayIterator(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)Lorg/apache/commons/collections/ResettableIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.Object[] array
         0: .line 223
            new org.apache.commons.collections.iterators.ObjectArrayIterator
            dup
            aload 0 /* array */
            invokespecial org.apache.commons.collections.iterators.ObjectArrayIterator.<init>:([Ljava/lang/Object;)V
            areturn
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  array  [Ljava/lang/Object;
    MethodParameters:
       Name  Flags
      array  

  public static org.apache.commons.collections.ResettableIterator arrayIterator(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Lorg/apache/commons/collections/ResettableIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.Object array
         0: .line 238
            new org.apache.commons.collections.iterators.ArrayIterator
            dup
            aload 0 /* array */
            invokespecial org.apache.commons.collections.iterators.ArrayIterator.<init>:(Ljava/lang/Object;)V
            areturn
        end local 0 // java.lang.Object array
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  array  Ljava/lang/Object;
    MethodParameters:
       Name  Flags
      array  

  public static org.apache.commons.collections.ResettableIterator arrayIterator(java.lang.Object[], int);
    descriptor: ([Ljava/lang/Object;I)Lorg/apache/commons/collections/ResettableIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.Object[] array
        start local 1 // int start
         0: .line 255
            new org.apache.commons.collections.iterators.ObjectArrayIterator
            dup
            aload 0 /* array */
            iload 1 /* start */
            invokespecial org.apache.commons.collections.iterators.ObjectArrayIterator.<init>:([Ljava/lang/Object;I)V
            areturn
        end local 1 // int start
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  array  [Ljava/lang/Object;
            0    1     1  start  I
    MethodParameters:
       Name  Flags
      array  
      start  

  public static org.apache.commons.collections.ResettableIterator arrayIterator(java.lang.Object, int);
    descriptor: (Ljava/lang/Object;I)Lorg/apache/commons/collections/ResettableIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.Object array
        start local 1 // int start
         0: .line 273
            new org.apache.commons.collections.iterators.ArrayIterator
            dup
            aload 0 /* array */
            iload 1 /* start */
            invokespecial org.apache.commons.collections.iterators.ArrayIterator.<init>:(Ljava/lang/Object;I)V
            areturn
        end local 1 // int start
        end local 0 // java.lang.Object array
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  array  Ljava/lang/Object;
            0    1     1  start  I
    MethodParameters:
       Name  Flags
      array  
      start  

  public static org.apache.commons.collections.ResettableIterator arrayIterator(java.lang.Object[], int, int);
    descriptor: ([Ljava/lang/Object;II)Lorg/apache/commons/collections/ResettableIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // java.lang.Object[] array
        start local 1 // int start
        start local 2 // int end
         0: .line 291
            new org.apache.commons.collections.iterators.ObjectArrayIterator
            dup
            aload 0 /* array */
            iload 1 /* start */
            iload 2 /* end */
            invokespecial org.apache.commons.collections.iterators.ObjectArrayIterator.<init>:([Ljava/lang/Object;II)V
            areturn
        end local 2 // int end
        end local 1 // int start
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  array  [Ljava/lang/Object;
            0    1     1  start  I
            0    1     2    end  I
    MethodParameters:
       Name  Flags
      array  
      start  
      end    

  public static org.apache.commons.collections.ResettableIterator arrayIterator(java.lang.Object, int, int);
    descriptor: (Ljava/lang/Object;II)Lorg/apache/commons/collections/ResettableIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // java.lang.Object array
        start local 1 // int start
        start local 2 // int end
         0: .line 310
            new org.apache.commons.collections.iterators.ArrayIterator
            dup
            aload 0 /* array */
            iload 1 /* start */
            iload 2 /* end */
            invokespecial org.apache.commons.collections.iterators.ArrayIterator.<init>:(Ljava/lang/Object;II)V
            areturn
        end local 2 // int end
        end local 1 // int start
        end local 0 // java.lang.Object array
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  array  Ljava/lang/Object;
            0    1     1  start  I
            0    1     2    end  I
    MethodParameters:
       Name  Flags
      array  
      start  
      end    

  public static org.apache.commons.collections.ResettableListIterator arrayListIterator(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)Lorg/apache/commons/collections/ResettableListIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.Object[] array
         0: .line 322
            new org.apache.commons.collections.iterators.ObjectArrayListIterator
            dup
            aload 0 /* array */
            invokespecial org.apache.commons.collections.iterators.ObjectArrayListIterator.<init>:([Ljava/lang/Object;)V
            areturn
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  array  [Ljava/lang/Object;
    MethodParameters:
       Name  Flags
      array  

  public static org.apache.commons.collections.ResettableListIterator arrayListIterator(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Lorg/apache/commons/collections/ResettableListIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.Object array
         0: .line 337
            new org.apache.commons.collections.iterators.ArrayListIterator
            dup
            aload 0 /* array */
            invokespecial org.apache.commons.collections.iterators.ArrayListIterator.<init>:(Ljava/lang/Object;)V
            areturn
        end local 0 // java.lang.Object array
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  array  Ljava/lang/Object;
    MethodParameters:
       Name  Flags
      array  

  public static org.apache.commons.collections.ResettableListIterator arrayListIterator(java.lang.Object[], int);
    descriptor: ([Ljava/lang/Object;I)Lorg/apache/commons/collections/ResettableListIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.Object[] array
        start local 1 // int start
         0: .line 350
            new org.apache.commons.collections.iterators.ObjectArrayListIterator
            dup
            aload 0 /* array */
            iload 1 /* start */
            invokespecial org.apache.commons.collections.iterators.ObjectArrayListIterator.<init>:([Ljava/lang/Object;I)V
            areturn
        end local 1 // int start
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  array  [Ljava/lang/Object;
            0    1     1  start  I
    MethodParameters:
       Name  Flags
      array  
      start  

  public static org.apache.commons.collections.ResettableListIterator arrayListIterator(java.lang.Object, int);
    descriptor: (Ljava/lang/Object;I)Lorg/apache/commons/collections/ResettableListIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.Object array
        start local 1 // int start
         0: .line 367
            new org.apache.commons.collections.iterators.ArrayListIterator
            dup
            aload 0 /* array */
            iload 1 /* start */
            invokespecial org.apache.commons.collections.iterators.ArrayListIterator.<init>:(Ljava/lang/Object;I)V
            areturn
        end local 1 // int start
        end local 0 // java.lang.Object array
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  array  Ljava/lang/Object;
            0    1     1  start  I
    MethodParameters:
       Name  Flags
      array  
      start  

  public static org.apache.commons.collections.ResettableListIterator arrayListIterator(java.lang.Object[], int, int);
    descriptor: ([Ljava/lang/Object;II)Lorg/apache/commons/collections/ResettableListIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // java.lang.Object[] array
        start local 1 // int start
        start local 2 // int end
         0: .line 382
            new org.apache.commons.collections.iterators.ObjectArrayListIterator
            dup
            aload 0 /* array */
            iload 1 /* start */
            iload 2 /* end */
            invokespecial org.apache.commons.collections.iterators.ObjectArrayListIterator.<init>:([Ljava/lang/Object;II)V
            areturn
        end local 2 // int end
        end local 1 // int start
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  array  [Ljava/lang/Object;
            0    1     1  start  I
            0    1     2    end  I
    MethodParameters:
       Name  Flags
      array  
      start  
      end    

  public static org.apache.commons.collections.ResettableListIterator arrayListIterator(java.lang.Object, int, int);
    descriptor: (Ljava/lang/Object;II)Lorg/apache/commons/collections/ResettableListIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // java.lang.Object array
        start local 1 // int start
        start local 2 // int end
         0: .line 401
            new org.apache.commons.collections.iterators.ArrayListIterator
            dup
            aload 0 /* array */
            iload 1 /* start */
            iload 2 /* end */
            invokespecial org.apache.commons.collections.iterators.ArrayListIterator.<init>:(Ljava/lang/Object;II)V
            areturn
        end local 2 // int end
        end local 1 // int start
        end local 0 // java.lang.Object array
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  array  Ljava/lang/Object;
            0    1     1  start  I
            0    1     2    end  I
    MethodParameters:
       Name  Flags
      array  
      start  
      end    

  public static java.util.Iterator unmodifiableIterator(java.util.Iterator);
    descriptor: (Ljava/util/Iterator;)Ljava/util/Iterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.Iterator iterator
         0: .line 415
            aload 0 /* iterator */
            invokestatic org.apache.commons.collections.iterators.UnmodifiableIterator.decorate:(Ljava/util/Iterator;)Ljava/util/Iterator;
            areturn
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  iterator  Ljava/util/Iterator;
    MethodParameters:
          Name  Flags
      iterator  

  public static java.util.ListIterator unmodifiableListIterator(java.util.ListIterator);
    descriptor: (Ljava/util/ListIterator;)Ljava/util/ListIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.ListIterator listIterator
         0: .line 428
            aload 0 /* listIterator */
            invokestatic org.apache.commons.collections.iterators.UnmodifiableListIterator.decorate:(Ljava/util/ListIterator;)Ljava/util/ListIterator;
            areturn
        end local 0 // java.util.ListIterator listIterator
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0  listIterator  Ljava/util/ListIterator;
    MethodParameters:
              Name  Flags
      listIterator  

  public static org.apache.commons.collections.MapIterator unmodifiableMapIterator(org.apache.commons.collections.MapIterator);
    descriptor: (Lorg/apache/commons/collections/MapIterator;)Lorg/apache/commons/collections/MapIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.collections.MapIterator mapIterator
         0: .line 440
            aload 0 /* mapIterator */
            invokestatic org.apache.commons.collections.iterators.UnmodifiableMapIterator.decorate:(Lorg/apache/commons/collections/MapIterator;)Lorg/apache/commons/collections/MapIterator;
            areturn
        end local 0 // org.apache.commons.collections.MapIterator mapIterator
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0  mapIterator  Lorg/apache/commons/collections/MapIterator;
    MethodParameters:
             Name  Flags
      mapIterator  

  public static java.util.Iterator chainedIterator(java.util.Iterator, java.util.Iterator);
    descriptor: (Ljava/util/Iterator;Ljava/util/Iterator;)Ljava/util/Iterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.Iterator iterator1
        start local 1 // java.util.Iterator iterator2
         0: .line 455
            new org.apache.commons.collections.iterators.IteratorChain
            dup
            aload 0 /* iterator1 */
            aload 1 /* iterator2 */
            invokespecial org.apache.commons.collections.iterators.IteratorChain.<init>:(Ljava/util/Iterator;Ljava/util/Iterator;)V
            areturn
        end local 1 // java.util.Iterator iterator2
        end local 0 // java.util.Iterator iterator1
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  iterator1  Ljava/util/Iterator;
            0    1     1  iterator2  Ljava/util/Iterator;
    MethodParameters:
           Name  Flags
      iterator1  
      iterator2  

  public static java.util.Iterator chainedIterator(java.util.Iterator[]);
    descriptor: ([Ljava/util/Iterator;)Ljava/util/Iterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.Iterator[] iterators
         0: .line 467
            new org.apache.commons.collections.iterators.IteratorChain
            dup
            aload 0 /* iterators */
            invokespecial org.apache.commons.collections.iterators.IteratorChain.<init>:([Ljava/util/Iterator;)V
            areturn
        end local 0 // java.util.Iterator[] iterators
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  iterators  [Ljava/util/Iterator;
    MethodParameters:
           Name  Flags
      iterators  

  public static java.util.Iterator chainedIterator(java.util.Collection);
    descriptor: (Ljava/util/Collection;)Ljava/util/Iterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.Collection iterators
         0: .line 480
            new org.apache.commons.collections.iterators.IteratorChain
            dup
            aload 0 /* iterators */
            invokespecial org.apache.commons.collections.iterators.IteratorChain.<init>:(Ljava/util/Collection;)V
            areturn
        end local 0 // java.util.Collection iterators
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  iterators  Ljava/util/Collection;
    MethodParameters:
           Name  Flags
      iterators  

  public static java.util.Iterator collatedIterator(java.util.Comparator, java.util.Iterator, java.util.Iterator);
    descriptor: (Ljava/util/Comparator;Ljava/util/Iterator;Ljava/util/Iterator;)Ljava/util/Iterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // java.util.Comparator comparator
        start local 1 // java.util.Iterator iterator1
        start local 2 // java.util.Iterator iterator2
         0: .line 502
            new org.apache.commons.collections.iterators.CollatingIterator
            dup
            aload 0 /* comparator */
            aload 1 /* iterator1 */
            aload 2 /* iterator2 */
            invokespecial org.apache.commons.collections.iterators.CollatingIterator.<init>:(Ljava/util/Comparator;Ljava/util/Iterator;Ljava/util/Iterator;)V
            areturn
        end local 2 // java.util.Iterator iterator2
        end local 1 // java.util.Iterator iterator1
        end local 0 // java.util.Comparator comparator
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0  comparator  Ljava/util/Comparator;
            0    1     1   iterator1  Ljava/util/Iterator;
            0    1     2   iterator2  Ljava/util/Iterator;
    MethodParameters:
            Name  Flags
      comparator  
      iterator1   
      iterator2   

  public static java.util.Iterator collatedIterator(java.util.Comparator, java.util.Iterator[]);
    descriptor: (Ljava/util/Comparator;[Ljava/util/Iterator;)Ljava/util/Iterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.Comparator comparator
        start local 1 // java.util.Iterator[] iterators
         0: .line 521
            new org.apache.commons.collections.iterators.CollatingIterator
            dup
            aload 0 /* comparator */
            aload 1 /* iterators */
            invokespecial org.apache.commons.collections.iterators.CollatingIterator.<init>:(Ljava/util/Comparator;[Ljava/util/Iterator;)V
            areturn
        end local 1 // java.util.Iterator[] iterators
        end local 0 // java.util.Comparator comparator
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0  comparator  Ljava/util/Comparator;
            0    1     1   iterators  [Ljava/util/Iterator;
    MethodParameters:
            Name  Flags
      comparator  
      iterators   

  public static java.util.Iterator collatedIterator(java.util.Comparator, java.util.Collection);
    descriptor: (Ljava/util/Comparator;Ljava/util/Collection;)Ljava/util/Iterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.Comparator comparator
        start local 1 // java.util.Collection iterators
         0: .line 541
            new org.apache.commons.collections.iterators.CollatingIterator
            dup
            aload 0 /* comparator */
            aload 1 /* iterators */
            invokespecial org.apache.commons.collections.iterators.CollatingIterator.<init>:(Ljava/util/Comparator;Ljava/util/Collection;)V
            areturn
        end local 1 // java.util.Collection iterators
        end local 0 // java.util.Comparator comparator
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0  comparator  Ljava/util/Comparator;
            0    1     1   iterators  Ljava/util/Collection;
    MethodParameters:
            Name  Flags
      comparator  
      iterators   

  public static java.util.Iterator objectGraphIterator(java.lang.Object, org.apache.commons.collections.Transformer);
    descriptor: (Ljava/lang/Object;Lorg/apache/commons/collections/Transformer;)Ljava/util/Iterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.Object root
        start local 1 // org.apache.commons.collections.Transformer transformer
         0: .line 600
            new org.apache.commons.collections.iterators.ObjectGraphIterator
            dup
            aload 0 /* root */
            aload 1 /* transformer */
            invokespecial org.apache.commons.collections.iterators.ObjectGraphIterator.<init>:(Ljava/lang/Object;Lorg/apache/commons/collections/Transformer;)V
            areturn
        end local 1 // org.apache.commons.collections.Transformer transformer
        end local 0 // java.lang.Object root
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         root  Ljava/lang/Object;
            0    1     1  transformer  Lorg/apache/commons/collections/Transformer;
    MethodParameters:
             Name  Flags
      root         
      transformer  

  public static java.util.Iterator transformedIterator(java.util.Iterator, org.apache.commons.collections.Transformer);
    descriptor: (Ljava/util/Iterator;Lorg/apache/commons/collections/Transformer;)Ljava/util/Iterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.apache.commons.collections.Transformer transform
         0: .line 617
            aload 0 /* iterator */
            ifnonnull 2
         1: .line 618
            new java.lang.NullPointerException
            dup
            ldc "Iterator must not be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 620
      StackMap locals:
      StackMap stack:
            aload 1 /* transform */
            ifnonnull 4
         3: .line 621
            new java.lang.NullPointerException
            dup
            ldc "Transformer must not be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 623
      StackMap locals:
      StackMap stack:
            new org.apache.commons.collections.iterators.TransformIterator
            dup
            aload 0 /* iterator */
            aload 1 /* transform */
            invokespecial org.apache.commons.collections.iterators.TransformIterator.<init>:(Ljava/util/Iterator;Lorg/apache/commons/collections/Transformer;)V
            areturn
        end local 1 // org.apache.commons.collections.Transformer transform
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0   iterator  Ljava/util/Iterator;
            0    5     1  transform  Lorg/apache/commons/collections/Transformer;
    MethodParameters:
           Name  Flags
      iterator   
      transform  

  public static java.util.Iterator filteredIterator(java.util.Iterator, org.apache.commons.collections.Predicate);
    descriptor: (Ljava/util/Iterator;Lorg/apache/commons/collections/Predicate;)Ljava/util/Iterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // org.apache.commons.collections.Predicate predicate
         0: .line 640
            aload 0 /* iterator */
            ifnonnull 2
         1: .line 641
            new java.lang.NullPointerException
            dup
            ldc "Iterator must not be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 643
      StackMap locals:
      StackMap stack:
            aload 1 /* predicate */
            ifnonnull 4
         3: .line 644
            new java.lang.NullPointerException
            dup
            ldc "Predicate must not be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 646
      StackMap locals:
      StackMap stack:
            new org.apache.commons.collections.iterators.FilterIterator
            dup
            aload 0 /* iterator */
            aload 1 /* predicate */
            invokespecial org.apache.commons.collections.iterators.FilterIterator.<init>:(Ljava/util/Iterator;Lorg/apache/commons/collections/Predicate;)V
            areturn
        end local 1 // org.apache.commons.collections.Predicate predicate
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0   iterator  Ljava/util/Iterator;
            0    5     1  predicate  Lorg/apache/commons/collections/Predicate;
    MethodParameters:
           Name  Flags
      iterator   
      predicate  

  public static java.util.ListIterator filteredListIterator(java.util.ListIterator, org.apache.commons.collections.Predicate);
    descriptor: (Ljava/util/ListIterator;Lorg/apache/commons/collections/Predicate;)Ljava/util/ListIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.ListIterator listIterator
        start local 1 // org.apache.commons.collections.Predicate predicate
         0: .line 661
            aload 0 /* listIterator */
            ifnonnull 2
         1: .line 662
            new java.lang.NullPointerException
            dup
            ldc "ListIterator must not be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 664
      StackMap locals:
      StackMap stack:
            aload 1 /* predicate */
            ifnonnull 4
         3: .line 665
            new java.lang.NullPointerException
            dup
            ldc "Predicate must not be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 667
      StackMap locals:
      StackMap stack:
            new org.apache.commons.collections.iterators.FilterListIterator
            dup
            aload 0 /* listIterator */
            aload 1 /* predicate */
            invokespecial org.apache.commons.collections.iterators.FilterListIterator.<init>:(Ljava/util/ListIterator;Lorg/apache/commons/collections/Predicate;)V
            areturn
        end local 1 // org.apache.commons.collections.Predicate predicate
        end local 0 // java.util.ListIterator listIterator
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0  listIterator  Ljava/util/ListIterator;
            0    5     1     predicate  Lorg/apache/commons/collections/Predicate;
    MethodParameters:
              Name  Flags
      listIterator  
      predicate     

  public static org.apache.commons.collections.ResettableIterator loopingIterator(java.util.Collection);
    descriptor: (Ljava/util/Collection;)Lorg/apache/commons/collections/ResettableIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.Collection coll
         0: .line 684
            aload 0 /* coll */
            ifnonnull 2
         1: .line 685
            new java.lang.NullPointerException
            dup
            ldc "Collection must not be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 687
      StackMap locals:
      StackMap stack:
            new org.apache.commons.collections.iterators.LoopingIterator
            dup
            aload 0 /* coll */
            invokespecial org.apache.commons.collections.iterators.LoopingIterator.<init>:(Ljava/util/Collection;)V
            areturn
        end local 0 // java.util.Collection coll
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  coll  Ljava/util/Collection;
    MethodParameters:
      Name  Flags
      coll  

  public static org.apache.commons.collections.ResettableListIterator loopingListIterator(java.util.List);
    descriptor: (Ljava/util/List;)Lorg/apache/commons/collections/ResettableListIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.List list
         0: .line 702
            aload 0 /* list */
            ifnonnull 2
         1: .line 703
            new java.lang.NullPointerException
            dup
            ldc "List must not be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 705
      StackMap locals:
      StackMap stack:
            new org.apache.commons.collections.iterators.LoopingListIterator
            dup
            aload 0 /* list */
            invokespecial org.apache.commons.collections.iterators.LoopingListIterator.<init>:(Ljava/util/List;)V
            areturn
        end local 0 // java.util.List list
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  list  Ljava/util/List;
    MethodParameters:
      Name  Flags
      list  

  public static java.util.Iterator asIterator(java.util.Enumeration);
    descriptor: (Ljava/util/Enumeration;)Ljava/util/Iterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.Enumeration enumeration
         0: .line 717
            aload 0 /* enumeration */
            ifnonnull 2
         1: .line 718
            new java.lang.NullPointerException
            dup
            ldc "Enumeration must not be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 720
      StackMap locals:
      StackMap stack:
            new org.apache.commons.collections.iterators.EnumerationIterator
            dup
            aload 0 /* enumeration */
            invokespecial org.apache.commons.collections.iterators.EnumerationIterator.<init>:(Ljava/util/Enumeration;)V
            areturn
        end local 0 // java.util.Enumeration enumeration
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0  enumeration  Ljava/util/Enumeration;
    MethodParameters:
             Name  Flags
      enumeration  

  public static java.util.Iterator asIterator(java.util.Enumeration, java.util.Collection);
    descriptor: (Ljava/util/Enumeration;Ljava/util/Collection;)Ljava/util/Iterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.Enumeration enumeration
        start local 1 // java.util.Collection removeCollection
         0: .line 732
            aload 0 /* enumeration */
            ifnonnull 2
         1: .line 733
            new java.lang.NullPointerException
            dup
            ldc "Enumeration must not be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 735
      StackMap locals:
      StackMap stack:
            aload 1 /* removeCollection */
            ifnonnull 4
         3: .line 736
            new java.lang.NullPointerException
            dup
            ldc "Collection must not be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 738
      StackMap locals:
      StackMap stack:
            new org.apache.commons.collections.iterators.EnumerationIterator
            dup
            aload 0 /* enumeration */
            aload 1 /* removeCollection */
            invokespecial org.apache.commons.collections.iterators.EnumerationIterator.<init>:(Ljava/util/Enumeration;Ljava/util/Collection;)V
            areturn
        end local 1 // java.util.Collection removeCollection
        end local 0 // java.util.Enumeration enumeration
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    5     0       enumeration  Ljava/util/Enumeration;
            0    5     1  removeCollection  Ljava/util/Collection;
    MethodParameters:
                  Name  Flags
      enumeration       
      removeCollection  

  public static java.util.Enumeration asEnumeration(java.util.Iterator);
    descriptor: (Ljava/util/Iterator;)Ljava/util/Enumeration;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.Iterator iterator
         0: .line 749
            aload 0 /* iterator */
            ifnonnull 2
         1: .line 750
            new java.lang.NullPointerException
            dup
            ldc "Iterator must not be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 752
      StackMap locals:
      StackMap stack:
            new org.apache.commons.collections.iterators.IteratorEnumeration
            dup
            aload 0 /* iterator */
            invokespecial org.apache.commons.collections.iterators.IteratorEnumeration.<init>:(Ljava/util/Iterator;)V
            areturn
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0  iterator  Ljava/util/Iterator;
    MethodParameters:
          Name  Flags
      iterator  

  public static java.util.ListIterator toListIterator(java.util.Iterator);
    descriptor: (Ljava/util/Iterator;)Ljava/util/ListIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.Iterator iterator
         0: .line 766
            aload 0 /* iterator */
            ifnonnull 2
         1: .line 767
            new java.lang.NullPointerException
            dup
            ldc "Iterator must not be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 769
      StackMap locals:
      StackMap stack:
            new org.apache.commons.collections.iterators.ListIteratorWrapper
            dup
            aload 0 /* iterator */
            invokespecial org.apache.commons.collections.iterators.ListIteratorWrapper.<init>:(Ljava/util/Iterator;)V
            areturn
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0  iterator  Ljava/util/Iterator;
    MethodParameters:
          Name  Flags
      iterator  

  public static java.lang.Object[] toArray(java.util.Iterator);
    descriptor: (Ljava/util/Iterator;)[Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.util.Iterator iterator
         0: .line 783
            aload 0 /* iterator */
            ifnonnull 2
         1: .line 784
            new java.lang.NullPointerException
            dup
            ldc "Iterator must not be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 786
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            bipush 100
            invokestatic org.apache.commons.collections.IteratorUtils.toList:(Ljava/util/Iterator;I)Ljava/util/List;
            astore 1 /* list */
        start local 1 // java.util.List list
         3: .line 787
            aload 1 /* list */
            invokeinterface java.util.List.toArray:()[Ljava/lang/Object;
            areturn
        end local 1 // java.util.List list
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0  iterator  Ljava/util/Iterator;
            3    4     1      list  Ljava/util/List;
    MethodParameters:
          Name  Flags
      iterator  

  public static java.lang.Object[] toArray(java.util.Iterator, java.lang.Class);
    descriptor: (Ljava/util/Iterator;Ljava/lang/Class;)[Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // java.lang.Class arrayClass
         0: .line 804
            aload 0 /* iterator */
            ifnonnull 2
         1: .line 805
            new java.lang.NullPointerException
            dup
            ldc "Iterator must not be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 807
      StackMap locals:
      StackMap stack:
            aload 1 /* arrayClass */
            ifnonnull 4
         3: .line 808
            new java.lang.NullPointerException
            dup
            ldc "Array class must not be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 810
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            bipush 100
            invokestatic org.apache.commons.collections.IteratorUtils.toList:(Ljava/util/Iterator;I)Ljava/util/List;
            astore 2 /* list */
        start local 2 // java.util.List list
         5: .line 811
            aload 2 /* list */
            aload 1 /* arrayClass */
            aload 2 /* list */
            invokeinterface java.util.List.size:()I
            invokestatic java.lang.reflect.Array.newInstance:(Ljava/lang/Class;I)Ljava/lang/Object;
            checkcast java.lang.Object[]
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            areturn
        end local 2 // java.util.List list
        end local 1 // java.lang.Class arrayClass
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0    iterator  Ljava/util/Iterator;
            0    6     1  arrayClass  Ljava/lang/Class;
            5    6     2        list  Ljava/util/List;
    MethodParameters:
            Name  Flags
      iterator    
      arrayClass  

  public static java.util.List toList(java.util.Iterator);
    descriptor: (Ljava/util/Iterator;)Ljava/util/List;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.Iterator iterator
         0: .line 825
            aload 0 /* iterator */
            bipush 10
            invokestatic org.apache.commons.collections.IteratorUtils.toList:(Ljava/util/Iterator;I)Ljava/util/List;
            areturn
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  iterator  Ljava/util/Iterator;
    MethodParameters:
          Name  Flags
      iterator  

  public static java.util.List toList(java.util.Iterator, int);
    descriptor: (Ljava/util/Iterator;I)Ljava/util/List;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.util.Iterator iterator
        start local 1 // int estimatedSize
         0: .line 841
            aload 0 /* iterator */
            ifnonnull 2
         1: .line 842
            new java.lang.NullPointerException
            dup
            ldc "Iterator must not be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 844
      StackMap locals:
      StackMap stack:
            iload 1 /* estimatedSize */
            iconst_1
            if_icmpge 4
         3: .line 845
            new java.lang.IllegalArgumentException
            dup
            ldc "Estimated size must be greater than 0"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 847
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            iload 1 /* estimatedSize */
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 2 /* list */
        start local 2 // java.util.List list
         5: .line 848
            goto 7
         6: .line 849
      StackMap locals: java.util.List
      StackMap stack:
            aload 2 /* list */
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         7: .line 848
      StackMap locals:
      StackMap stack:
            aload 0 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
         8: .line 851
            aload 2 /* list */
            areturn
        end local 2 // java.util.List list
        end local 1 // int estimatedSize
        end local 0 // java.util.Iterator iterator
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    9     0       iterator  Ljava/util/Iterator;
            0    9     1  estimatedSize  I
            5    9     2           list  Ljava/util/List;
    MethodParameters:
               Name  Flags
      iterator       
      estimatedSize  

  public static java.util.Iterator getIterator(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/util/Iterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // java.lang.Object obj
         0: .line 874
            aload 0 /* obj */
            ifnonnull 2
         1: .line 875
            invokestatic org.apache.commons.collections.IteratorUtils.emptyIterator:()Lorg/apache/commons/collections/ResettableIterator;
            areturn
         2: .line 877
      StackMap locals:
      StackMap stack:
            aload 0 /* obj */
            instanceof java.util.Iterator
            ifeq 4
         3: .line 878
            aload 0 /* obj */
            checkcast java.util.Iterator
            areturn
         4: .line 880
      StackMap locals:
      StackMap stack:
            aload 0 /* obj */
            instanceof java.util.Collection
            ifeq 6
         5: .line 881
            aload 0 /* obj */
            checkcast java.util.Collection
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            areturn
         6: .line 883
      StackMap locals:
      StackMap stack:
            aload 0 /* obj */
            instanceof java.lang.Object[]
            ifeq 8
         7: .line 884
            new org.apache.commons.collections.iterators.ObjectArrayIterator
            dup
            aload 0 /* obj */
            checkcast java.lang.Object[]
            invokespecial org.apache.commons.collections.iterators.ObjectArrayIterator.<init>:([Ljava/lang/Object;)V
            areturn
         8: .line 886
      StackMap locals:
      StackMap stack:
            aload 0 /* obj */
            instanceof java.util.Enumeration
            ifeq 10
         9: .line 887
            new org.apache.commons.collections.iterators.EnumerationIterator
            dup
            aload 0 /* obj */
            checkcast java.util.Enumeration
            invokespecial org.apache.commons.collections.iterators.EnumerationIterator.<init>:(Ljava/util/Enumeration;)V
            areturn
        10: .line 889
      StackMap locals:
      StackMap stack:
            aload 0 /* obj */
            instanceof java.util.Map
            ifeq 12
        11: .line 890
            aload 0 /* obj */
            checkcast java.util.Map
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            areturn
        12: .line 892
      StackMap locals:
      StackMap stack:
            aload 0 /* obj */
            instanceof java.util.Dictionary
            ifeq 14
        13: .line 893
            new org.apache.commons.collections.iterators.EnumerationIterator
            dup
            aload 0 /* obj */
            checkcast java.util.Dictionary
            invokevirtual java.util.Dictionary.elements:()Ljava/util/Enumeration;
            invokespecial org.apache.commons.collections.iterators.EnumerationIterator.<init>:(Ljava/util/Enumeration;)V
            areturn
        14: .line 895
      StackMap locals:
      StackMap stack:
            aload 0 /* obj */
            ifnull 16
            aload 0 /* obj */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.isArray:()Z
            ifeq 16
        15: .line 896
            new org.apache.commons.collections.iterators.ArrayIterator
            dup
            aload 0 /* obj */
            invokespecial org.apache.commons.collections.iterators.ArrayIterator.<init>:(Ljava/lang/Object;)V
            areturn
        16: .line 900
      StackMap locals:
      StackMap stack:
            aload 0 /* obj */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            ldc "iterator"
            aconst_null
            invokevirtual java.lang.Class.getMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
            astore 1 /* method */
        start local 1 // java.lang.reflect.Method method
        17: .line 901
            ldc Ljava/util/Iterator;
            aload 1 /* method */
            invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 23
        18: .line 902
            aload 1 /* method */
            aload 0 /* obj */
            aconst_null
            invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Iterator
            astore 2 /* it */
        start local 2 // java.util.Iterator it
        19: .line 903
            aload 2 /* it */
            ifnull 23
        20: .line 904
            aload 2 /* it */
        21: areturn
        end local 2 // java.util.Iterator it
        end local 1 // java.lang.reflect.Method method
        22: .line 907
      StackMap locals:
      StackMap stack: java.lang.Exception
            pop
        23: .line 910
      StackMap locals:
      StackMap stack:
            aload 0 /* obj */
            invokestatic org.apache.commons.collections.IteratorUtils.singletonIterator:(Ljava/lang/Object;)Lorg/apache/commons/collections/ResettableIterator;
            areturn
        end local 0 // java.lang.Object obj
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   24     0     obj  Ljava/lang/Object;
           17   22     1  method  Ljava/lang/reflect/Method;
           19   22     2      it  Ljava/util/Iterator;
      Exception table:
        from    to  target  type
          16    21      22  Class java.lang.Exception
    MethodParameters:
      Name  Flags
      obj   
}
SourceFile: "IteratorUtils.java"