public class java.util.Collections
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: java.util.Collections
  super_class: java.lang.Object
{
  private static final int BINARYSEARCH_THRESHOLD;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5000

  private static final int REVERSE_THRESHOLD;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 18

  private static final int SHUFFLE_THRESHOLD;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5

  private static final int FILL_THRESHOLD;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 25

  private static final int ROTATE_THRESHOLD;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 100

  private static final int COPY_THRESHOLD;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 10

  private static final int REPLACEALL_THRESHOLD;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 11

  private static final int INDEXOFSUBLIST_THRESHOLD;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 35

  private static java.util.Random r;
    descriptor: Ljava/util/Random;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  public static final java.util.Set EMPTY_SET;
    descriptor: Ljava/util/Set;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final java.util.List EMPTY_LIST;
    descriptor: Ljava/util/List;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final java.util.Map EMPTY_MAP;
    descriptor: Ljava/util/Map;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 4288
            new java.util.Collections$EmptySet
            dup
            invokespecial java.util.Collections$EmptySet.<init>:()V
            putstatic java.util.Collections.EMPTY_SET:Ljava/util/Set;
         1: .line 4412
            new java.util.Collections$EmptyList
            dup
            invokespecial java.util.Collections$EmptyList.<init>:()V
            putstatic java.util.Collections.EMPTY_LIST:Ljava/util/List;
         2: .line 4514
            new java.util.Collections$EmptyMap
            dup
            invokespecial java.util.Collections$EmptyMap.<init>:()V
            putstatic java.util.Collections.EMPTY_MAP:Ljava/util/Map;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.Collections this
         0: .line 82
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 83
            return
        end local 0 // java.util.Collections this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/util/Collections;

  public static <T extends java.lang.Comparable<? super T>> void sort(java.util.List<T>);
    descriptor: (Ljava/util/List;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.List list
         0: .line 141
            aload 0 /* list */
            aconst_null
            invokeinterface java.util.List.sort:(Ljava/util/Comparator;)V
         1: .line 142
            return
        end local 0 // java.util.List list
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  list  Ljava/util/List<TT;>;
    Signature: <T::Ljava/lang/Comparable<-TT;>;>(Ljava/util/List<TT;>;)V
    MethodParameters:
      Name  Flags
      list  

  public static <T> void sort(java.util.List<T>, java.util.Comparator<? super T>);
    descriptor: (Ljava/util/List;Ljava/util/Comparator;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.util.List list
        start local 1 // java.util.Comparator c
         0: .line 175
            aload 0 /* list */
            aload 1 /* c */
            invokeinterface java.util.List.sort:(Ljava/util/Comparator;)V
         1: .line 176
            return
        end local 1 // java.util.Comparator c
        end local 0 // java.util.List list
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  list  Ljava/util/List<TT;>;
            0    2     1     c  Ljava/util/Comparator<-TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/List<TT;>;Ljava/util/Comparator<-TT;>;)V
    MethodParameters:
      Name  Flags
      list  
      c     

  public static <T> int binarySearch(java.util.List<? extends java.lang.Comparable<? super T>>, );
    descriptor: (Ljava/util/List;Ljava/lang/Object;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.util.List list
        start local 1 // java.lang.Object key
         0: .line 212
            aload 0 /* list */
            instanceof java.util.RandomAccess
            ifne 1
            aload 0 /* list */
            invokeinterface java.util.List.size:()I
            sipush 5000
            if_icmpge 2
         1: .line 213
      StackMap locals:
      StackMap stack:
            aload 0 /* list */
            aload 1 /* key */
            invokestatic java.util.Collections.indexedBinarySearch:(Ljava/util/List;Ljava/lang/Object;)I
            ireturn
         2: .line 215
      StackMap locals:
      StackMap stack:
            aload 0 /* list */
            aload 1 /* key */
            invokestatic java.util.Collections.iteratorBinarySearch:(Ljava/util/List;Ljava/lang/Object;)I
            ireturn
        end local 1 // java.lang.Object key
        end local 0 // java.util.List list
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  list  Ljava/util/List<+Ljava/lang/Comparable<-TT;>;>;
            0    3     1   key  TT;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/List<+Ljava/lang/Comparable<-TT;>;>;TT;)I
    MethodParameters:
      Name  Flags
      list  
      key   

  private static <T> int indexedBinarySearch(java.util.List<? extends java.lang.Comparable<? super T>>, );
    descriptor: (Ljava/util/List;Ljava/lang/Object;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=7, args_size=2
        start local 0 // java.util.List list
        start local 1 // java.lang.Object key
         0: .line 220
            iconst_0
            istore 2 /* low */
        start local 2 // int low
         1: .line 221
            aload 0 /* list */
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            istore 3 /* high */
        start local 3 // int high
         2: .line 223
            goto 11
         3: .line 224
      StackMap locals: int int
      StackMap stack:
            iload 2 /* low */
            iload 3 /* high */
            iadd
            iconst_1
            iushr
            istore 4 /* mid */
        start local 4 // int mid
         4: .line 225
            aload 0 /* list */
            iload 4 /* mid */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.Comparable
            astore 5 /* midVal */
        start local 5 // java.lang.Comparable midVal
         5: .line 226
            aload 5 /* midVal */
            aload 1 /* key */
            invokeinterface java.lang.Comparable.compareTo:(Ljava/lang/Object;)I
            istore 6 /* cmp */
        start local 6 // int cmp
         6: .line 228
            iload 6 /* cmp */
            ifge 8
         7: .line 229
            iload 4 /* mid */
            iconst_1
            iadd
            istore 2 /* low */
            goto 11
         8: .line 230
      StackMap locals: int java.lang.Comparable int
      StackMap stack:
            iload 6 /* cmp */
            ifle 10
         9: .line 231
            iload 4 /* mid */
            iconst_1
            isub
            istore 3 /* high */
            goto 11
        10: .line 233
      StackMap locals:
      StackMap stack:
            iload 4 /* mid */
            ireturn
        end local 6 // int cmp
        end local 5 // java.lang.Comparable midVal
        end local 4 // int mid
        11: .line 223
      StackMap locals:
      StackMap stack:
            iload 2 /* low */
            iload 3 /* high */
            if_icmple 3
        12: .line 235
            iload 2 /* low */
            iconst_1
            iadd
            ineg
            ireturn
        end local 3 // int high
        end local 2 // int low
        end local 1 // java.lang.Object key
        end local 0 // java.util.List list
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   13     0    list  Ljava/util/List<+Ljava/lang/Comparable<-TT;>;>;
            0   13     1     key  TT;
            1   13     2     low  I
            2   13     3    high  I
            4   11     4     mid  I
            5   11     5  midVal  Ljava/lang/Comparable<-TT;>;
            6   11     6     cmp  I
    Signature: <T:Ljava/lang/Object;>(Ljava/util/List<+Ljava/lang/Comparable<-TT;>;>;TT;)I
    MethodParameters:
      Name  Flags
      list  
      key   

  private static <T> int iteratorBinarySearch(java.util.List<? extends java.lang.Comparable<? super T>>, );
    descriptor: (Ljava/util/List;Ljava/lang/Object;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=8, args_size=2
        start local 0 // java.util.List list
        start local 1 // java.lang.Object key
         0: .line 241
            iconst_0
            istore 2 /* low */
        start local 2 // int low
         1: .line 242
            aload 0 /* list */
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            istore 3 /* high */
        start local 3 // int high
         2: .line 243
            aload 0 /* list */
            invokeinterface java.util.List.listIterator:()Ljava/util/ListIterator;
            astore 4 /* i */
        start local 4 // java.util.ListIterator i
         3: .line 245
            goto 12
         4: .line 246
      StackMap locals: int int java.util.ListIterator
      StackMap stack:
            iload 2 /* low */
            iload 3 /* high */
            iadd
            iconst_1
            iushr
            istore 5 /* mid */
        start local 5 // int mid
         5: .line 247
            aload 4 /* i */
            iload 5 /* mid */
            invokestatic java.util.Collections.get:(Ljava/util/ListIterator;I)Ljava/lang/Object;
            checkcast java.lang.Comparable
            astore 6 /* midVal */
        start local 6 // java.lang.Comparable midVal
         6: .line 248
            aload 6 /* midVal */
            aload 1 /* key */
            invokeinterface java.lang.Comparable.compareTo:(Ljava/lang/Object;)I
            istore 7 /* cmp */
        start local 7 // int cmp
         7: .line 250
            iload 7 /* cmp */
            ifge 9
         8: .line 251
            iload 5 /* mid */
            iconst_1
            iadd
            istore 2 /* low */
            goto 12
         9: .line 252
      StackMap locals: int java.lang.Comparable int
      StackMap stack:
            iload 7 /* cmp */
            ifle 11
        10: .line 253
            iload 5 /* mid */
            iconst_1
            isub
            istore 3 /* high */
            goto 12
        11: .line 255
      StackMap locals:
      StackMap stack:
            iload 5 /* mid */
            ireturn
        end local 7 // int cmp
        end local 6 // java.lang.Comparable midVal
        end local 5 // int mid
        12: .line 245
      StackMap locals:
      StackMap stack:
            iload 2 /* low */
            iload 3 /* high */
            if_icmple 4
        13: .line 257
            iload 2 /* low */
            iconst_1
            iadd
            ineg
            ireturn
        end local 4 // java.util.ListIterator i
        end local 3 // int high
        end local 2 // int low
        end local 1 // java.lang.Object key
        end local 0 // java.util.List list
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   14     0    list  Ljava/util/List<+Ljava/lang/Comparable<-TT;>;>;
            0   14     1     key  TT;
            1   14     2     low  I
            2   14     3    high  I
            3   14     4       i  Ljava/util/ListIterator<+Ljava/lang/Comparable<-TT;>;>;
            5   12     5     mid  I
            6   12     6  midVal  Ljava/lang/Comparable<-TT;>;
            7   12     7     cmp  I
    Signature: <T:Ljava/lang/Object;>(Ljava/util/List<+Ljava/lang/Comparable<-TT;>;>;TT;)I
    MethodParameters:
      Name  Flags
      list  
      key   

  private static <T> T get(java.util.ListIterator<? extends T>, );
    descriptor: (Ljava/util/ListIterator;I)Ljava/lang/Object;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // java.util.ListIterator i
        start local 1 // int index
         0: .line 265
            aconst_null
            astore 2 /* obj */
        start local 2 // java.lang.Object obj
         1: .line 266
            aload 0 /* i */
            invokeinterface java.util.ListIterator.nextIndex:()I
            istore 3 /* pos */
        start local 3 // int pos
         2: .line 267
            iload 3 /* pos */
            iload 1 /* index */
            if_icmpgt 7
         3: .line 269
      StackMap locals: java.lang.Object int
      StackMap stack:
            aload 0 /* i */
            invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
            astore 2 /* obj */
         4: .line 270
            iload 3 /* pos */
            iinc 3 /* pos */ 1
            iload 1 /* index */
         5: .line 268
            if_icmplt 3
         6: .line 271
            goto 10
         7: .line 273
      StackMap locals:
      StackMap stack:
            aload 0 /* i */
            invokeinterface java.util.ListIterator.previous:()Ljava/lang/Object;
            astore 2 /* obj */
         8: .line 274
            iinc 3 /* pos */ -1
            iload 3 /* pos */
            iload 1 /* index */
         9: .line 272
            if_icmpgt 7
        10: .line 276
      StackMap locals:
      StackMap stack:
            aload 2 /* obj */
            areturn
        end local 3 // int pos
        end local 2 // java.lang.Object obj
        end local 1 // int index
        end local 0 // java.util.ListIterator i
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   11     0      i  Ljava/util/ListIterator<+TT;>;
            0   11     1  index  I
            1   11     2    obj  TT;
            2   11     3    pos  I
    Signature: <T:Ljava/lang/Object;>(Ljava/util/ListIterator<+TT;>;I)TT;
    MethodParameters:
       Name  Flags
      i      
      index  

  public static <T> int binarySearch(java.util.List<? extends T>, T, java.util.Comparator<? super T>);
    descriptor: (Ljava/util/List;Ljava/lang/Object;Ljava/util/Comparator;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.util.List list
        start local 1 // java.lang.Object key
        start local 2 // java.util.Comparator c
         0: .line 316
            aload 2 /* c */
            ifnonnull 2
         1: .line 317
            aload 0 /* list */
            aload 1 /* key */
            invokestatic java.util.Collections.binarySearch:(Ljava/util/List;Ljava/lang/Object;)I
            ireturn
         2: .line 319
      StackMap locals:
      StackMap stack:
            aload 0 /* list */
            instanceof java.util.RandomAccess
            ifne 3
            aload 0 /* list */
            invokeinterface java.util.List.size:()I
            sipush 5000
            if_icmpge 4
         3: .line 320
      StackMap locals:
      StackMap stack:
            aload 0 /* list */
            aload 1 /* key */
            aload 2 /* c */
            invokestatic java.util.Collections.indexedBinarySearch:(Ljava/util/List;Ljava/lang/Object;Ljava/util/Comparator;)I
            ireturn
         4: .line 322
      StackMap locals:
      StackMap stack:
            aload 0 /* list */
            aload 1 /* key */
            aload 2 /* c */
            invokestatic java.util.Collections.iteratorBinarySearch:(Ljava/util/List;Ljava/lang/Object;Ljava/util/Comparator;)I
            ireturn
        end local 2 // java.util.Comparator c
        end local 1 // java.lang.Object key
        end local 0 // java.util.List list
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  list  Ljava/util/List<+TT;>;
            0    5     1   key  TT;
            0    5     2     c  Ljava/util/Comparator<-TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/List<+TT;>;TT;Ljava/util/Comparator<-TT;>;)I
    MethodParameters:
      Name  Flags
      list  
      key   
      c     

  private static <T> int indexedBinarySearch(java.util.List<? extends T>, T, java.util.Comparator<? super T>);
    descriptor: (Ljava/util/List;Ljava/lang/Object;Ljava/util/Comparator;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=8, args_size=3
        start local 0 // java.util.List l
        start local 1 // java.lang.Object key
        start local 2 // java.util.Comparator c
         0: .line 326
            iconst_0
            istore 3 /* low */
        start local 3 // int low
         1: .line 327
            aload 0 /* l */
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            istore 4 /* high */
        start local 4 // int high
         2: .line 329
            goto 11
         3: .line 330
      StackMap locals: int int
      StackMap stack:
            iload 3 /* low */
            iload 4 /* high */
            iadd
            iconst_1
            iushr
            istore 5 /* mid */
        start local 5 // int mid
         4: .line 331
            aload 0 /* l */
            iload 5 /* mid */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            astore 6 /* midVal */
        start local 6 // java.lang.Object midVal
         5: .line 332
            aload 2 /* c */
            aload 6 /* midVal */
            aload 1 /* key */
            invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
            istore 7 /* cmp */
        start local 7 // int cmp
         6: .line 334
            iload 7 /* cmp */
            ifge 8
         7: .line 335
            iload 5 /* mid */
            iconst_1
            iadd
            istore 3 /* low */
            goto 11
         8: .line 336
      StackMap locals: int java.lang.Object int
      StackMap stack:
            iload 7 /* cmp */
            ifle 10
         9: .line 337
            iload 5 /* mid */
            iconst_1
            isub
            istore 4 /* high */
            goto 11
        10: .line 339
      StackMap locals:
      StackMap stack:
            iload 5 /* mid */
            ireturn
        end local 7 // int cmp
        end local 6 // java.lang.Object midVal
        end local 5 // int mid
        11: .line 329
      StackMap locals:
      StackMap stack:
            iload 3 /* low */
            iload 4 /* high */
            if_icmple 3
        12: .line 341
            iload 3 /* low */
            iconst_1
            iadd
            ineg
            ireturn
        end local 4 // int high
        end local 3 // int low
        end local 2 // java.util.Comparator c
        end local 1 // java.lang.Object key
        end local 0 // java.util.List l
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   13     0       l  Ljava/util/List<+TT;>;
            0   13     1     key  TT;
            0   13     2       c  Ljava/util/Comparator<-TT;>;
            1   13     3     low  I
            2   13     4    high  I
            4   11     5     mid  I
            5   11     6  midVal  TT;
            6   11     7     cmp  I
    Signature: <T:Ljava/lang/Object;>(Ljava/util/List<+TT;>;TT;Ljava/util/Comparator<-TT;>;)I
    MethodParameters:
      Name  Flags
      l     
      key   
      c     

  private static <T> int iteratorBinarySearch(java.util.List<? extends T>, T, java.util.Comparator<? super T>);
    descriptor: (Ljava/util/List;Ljava/lang/Object;Ljava/util/Comparator;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=9, args_size=3
        start local 0 // java.util.List l
        start local 1 // java.lang.Object key
        start local 2 // java.util.Comparator c
         0: .line 345
            iconst_0
            istore 3 /* low */
        start local 3 // int low
         1: .line 346
            aload 0 /* l */
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            istore 4 /* high */
        start local 4 // int high
         2: .line 347
            aload 0 /* l */
            invokeinterface java.util.List.listIterator:()Ljava/util/ListIterator;
            astore 5 /* i */
        start local 5 // java.util.ListIterator i
         3: .line 349
            goto 12
         4: .line 350
      StackMap locals: int int java.util.ListIterator
      StackMap stack:
            iload 3 /* low */
            iload 4 /* high */
            iadd
            iconst_1
            iushr
            istore 6 /* mid */
        start local 6 // int mid
         5: .line 351
            aload 5 /* i */
            iload 6 /* mid */
            invokestatic java.util.Collections.get:(Ljava/util/ListIterator;I)Ljava/lang/Object;
            astore 7 /* midVal */
        start local 7 // java.lang.Object midVal
         6: .line 352
            aload 2 /* c */
            aload 7 /* midVal */
            aload 1 /* key */
            invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
            istore 8 /* cmp */
        start local 8 // int cmp
         7: .line 354
            iload 8 /* cmp */
            ifge 9
         8: .line 355
            iload 6 /* mid */
            iconst_1
            iadd
            istore 3 /* low */
            goto 12
         9: .line 356
      StackMap locals: int java.lang.Object int
      StackMap stack:
            iload 8 /* cmp */
            ifle 11
        10: .line 357
            iload 6 /* mid */
            iconst_1
            isub
            istore 4 /* high */
            goto 12
        11: .line 359
      StackMap locals:
      StackMap stack:
            iload 6 /* mid */
            ireturn
        end local 8 // int cmp
        end local 7 // java.lang.Object midVal
        end local 6 // int mid
        12: .line 349
      StackMap locals:
      StackMap stack:
            iload 3 /* low */
            iload 4 /* high */
            if_icmple 4
        13: .line 361
            iload 3 /* low */
            iconst_1
            iadd
            ineg
            ireturn
        end local 5 // java.util.ListIterator i
        end local 4 // int high
        end local 3 // int low
        end local 2 // java.util.Comparator c
        end local 1 // java.lang.Object key
        end local 0 // java.util.List l
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   14     0       l  Ljava/util/List<+TT;>;
            0   14     1     key  TT;
            0   14     2       c  Ljava/util/Comparator<-TT;>;
            1   14     3     low  I
            2   14     4    high  I
            3   14     5       i  Ljava/util/ListIterator<+TT;>;
            5   12     6     mid  I
            6   12     7  midVal  TT;
            7   12     8     cmp  I
    Signature: <T:Ljava/lang/Object;>(Ljava/util/List<+TT;>;TT;Ljava/util/Comparator<-TT;>;)I
    MethodParameters:
      Name  Flags
      l     
      key   
      c     

  public static void reverse(java.util.List<?>);
    descriptor: (Ljava/util/List;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=1
        start local 0 // java.util.List list
         0: .line 375
            aload 0 /* list */
            invokeinterface java.util.List.size:()I
            istore 1 /* size */
        start local 1 // int size
         1: .line 376
            iload 1 /* size */
            bipush 18
            if_icmplt 2
            aload 0 /* list */
            instanceof java.util.RandomAccess
            ifeq 10
         2: .line 377
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: iload 1 /* size */
            iconst_1
            ishr
            istore 3 /* mid */
        start local 3 // int mid
         4: iload 1 /* size */
            iconst_1
            isub
            istore 4 /* j */
        start local 4 // int j
         5: goto 8
         6: .line 378
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* list */
            iload 2 /* i */
            iload 4 /* j */
            invokestatic java.util.Collections.swap:(Ljava/util/List;II)V
         7: .line 377
            iinc 2 /* i */ 1
            iinc 4 /* j */ -1
      StackMap locals:
      StackMap stack:
         8: iload 2 /* i */
            iload 3 /* mid */
            if_icmplt 6
        end local 4 // int j
        end local 3 // int mid
        end local 2 // int i
         9: .line 379
            goto 20
        10: .line 383
      StackMap locals:
      StackMap stack:
            aload 0 /* list */
            invokeinterface java.util.List.listIterator:()Ljava/util/ListIterator;
            astore 2 /* fwd */
        start local 2 // java.util.ListIterator fwd
        11: .line 384
            aload 0 /* list */
            iload 1 /* size */
            invokeinterface java.util.List.listIterator:(I)Ljava/util/ListIterator;
            astore 3 /* rev */
        start local 3 // java.util.ListIterator rev
        12: .line 385
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        13: aload 0 /* list */
            invokeinterface java.util.List.size:()I
            iconst_1
            ishr
            istore 5 /* mid */
        start local 5 // int mid
        14: goto 19
        15: .line 386
      StackMap locals: java.util.List int java.util.ListIterator java.util.ListIterator int int
      StackMap stack:
            aload 2 /* fwd */
            invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
            astore 6 /* tmp */
        start local 6 // java.lang.Object tmp
        16: .line 387
            aload 2 /* fwd */
            aload 3 /* rev */
            invokeinterface java.util.ListIterator.previous:()Ljava/lang/Object;
            invokeinterface java.util.ListIterator.set:(Ljava/lang/Object;)V
        17: .line 388
            aload 3 /* rev */
            aload 6 /* tmp */
            invokeinterface java.util.ListIterator.set:(Ljava/lang/Object;)V
        end local 6 // java.lang.Object tmp
        18: .line 385
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        19: iload 4 /* i */
            iload 5 /* mid */
            if_icmplt 15
        end local 5 // int mid
        end local 4 // int i
        end local 3 // java.util.ListIterator rev
        end local 2 // java.util.ListIterator fwd
        20: .line 391
      StackMap locals: java.util.List int
      StackMap stack:
            return
        end local 1 // int size
        end local 0 // java.util.List list
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   21     0  list  Ljava/util/List<*>;
            1   21     1  size  I
            3    9     2     i  I
            4    9     3   mid  I
            5    9     4     j  I
           11   20     2   fwd  Ljava/util/ListIterator;
           12   20     3   rev  Ljava/util/ListIterator;
           13   20     4     i  I
           14   20     5   mid  I
           16   18     6   tmp  Ljava/lang/Object;
    Signature: (Ljava/util/List<*>;)V
    MethodParameters:
      Name  Flags
      list  

  public static void shuffle(java.util.List<?>);
    descriptor: (Ljava/util/List;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.util.List list
         0: .line 422
            getstatic java.util.Collections.r:Ljava/util/Random;
            astore 1 /* rnd */
        start local 1 // java.util.Random rnd
         1: .line 423
            aload 1 /* rnd */
            ifnonnull 3
         2: .line 424
            new java.util.Random
            dup
            invokespecial java.util.Random.<init>:()V
            dup
            astore 1 /* rnd */
            putstatic java.util.Collections.r:Ljava/util/Random;
         3: .line 425
      StackMap locals: java.util.Random
      StackMap stack:
            aload 0 /* list */
            aload 1 /* rnd */
            invokestatic java.util.Collections.shuffle:(Ljava/util/List;Ljava/util/Random;)V
         4: .line 426
            return
        end local 1 // java.util.Random rnd
        end local 0 // java.util.List list
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  list  Ljava/util/List<*>;
            1    5     1   rnd  Ljava/util/Random;
    Signature: (Ljava/util/List<*>;)V
    MethodParameters:
      Name  Flags
      list  

  public static void shuffle(java.util.List<?>, java.util.Random);
    descriptor: (Ljava/util/List;Ljava/util/Random;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=9, args_size=2
        start local 0 // java.util.List list
        start local 1 // java.util.Random rnd
         0: .line 455
            aload 0 /* list */
            invokeinterface java.util.List.size:()I
            istore 2 /* size */
        start local 2 // int size
         1: .line 456
            iload 2 /* size */
            iconst_5
            if_icmplt 2
            aload 0 /* list */
            instanceof java.util.RandomAccess
            ifeq 8
         2: .line 457
      StackMap locals: int
      StackMap stack:
            iload 2 /* size */
            istore 3 /* i */
        start local 3 // int i
         3: goto 6
         4: .line 458
      StackMap locals: int
      StackMap stack:
            aload 0 /* list */
            iload 3 /* i */
            iconst_1
            isub
            aload 1 /* rnd */
            iload 3 /* i */
            invokevirtual java.util.Random.nextInt:(I)I
            invokestatic java.util.Collections.swap:(Ljava/util/List;II)V
         5: .line 457
            iinc 3 /* i */ -1
      StackMap locals:
      StackMap stack:
         6: iload 3 /* i */
            iconst_1
            if_icmpgt 4
        end local 3 // int i
         7: .line 459
            goto 21
         8: .line 460
      StackMap locals:
      StackMap stack:
            aload 0 /* list */
            invokeinterface java.util.List.toArray:()[Ljava/lang/Object;
            astore 3 /* arr */
        start local 3 // java.lang.Object[] arr
         9: .line 463
            iload 2 /* size */
            istore 4 /* i */
        start local 4 // int i
        10: goto 13
        11: .line 464
      StackMap locals: java.lang.Object[] int
      StackMap stack:
            aload 3 /* arr */
            iload 4 /* i */
            iconst_1
            isub
            aload 1 /* rnd */
            iload 4 /* i */
            invokevirtual java.util.Random.nextInt:(I)I
            invokestatic java.util.Collections.swap:([Ljava/lang/Object;II)V
        12: .line 463
            iinc 4 /* i */ -1
      StackMap locals:
      StackMap stack:
        13: iload 4 /* i */
            iconst_1
            if_icmpgt 11
        end local 4 // int i
        14: .line 470
            aload 0 /* list */
            invokeinterface java.util.List.listIterator:()Ljava/util/ListIterator;
            astore 4 /* it */
        start local 4 // java.util.ListIterator it
        15: .line 471
            aload 3 /* arr */
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 20
      StackMap locals: java.util.List java.util.Random int java.lang.Object[] java.util.ListIterator top int int java.lang.Object[]
      StackMap stack:
        16: aload 8
            iload 6
            aaload
            astore 5 /* e */
        start local 5 // java.lang.Object e
        17: .line 472
            aload 4 /* it */
            invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
            pop
        18: .line 473
            aload 4 /* it */
            aload 5 /* e */
            invokeinterface java.util.ListIterator.set:(Ljava/lang/Object;)V
        end local 5 // java.lang.Object e
        19: .line 471
            iinc 6 1
      StackMap locals:
      StackMap stack:
        20: iload 6
            iload 7
            if_icmplt 16
        end local 4 // java.util.ListIterator it
        end local 3 // java.lang.Object[] arr
        21: .line 476
      StackMap locals: java.util.List java.util.Random int
      StackMap stack:
            return
        end local 2 // int size
        end local 1 // java.util.Random rnd
        end local 0 // java.util.List list
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   22     0  list  Ljava/util/List<*>;
            0   22     1   rnd  Ljava/util/Random;
            1   22     2  size  I
            3    7     3     i  I
            9   21     3   arr  [Ljava/lang/Object;
           10   14     4     i  I
           15   21     4    it  Ljava/util/ListIterator;
           17   19     5     e  Ljava/lang/Object;
    Signature: (Ljava/util/List<*>;Ljava/util/Random;)V
    MethodParameters:
      Name  Flags
      list  
      rnd   

  public static void swap(java.util.List<?>, int, );
    descriptor: (Ljava/util/List;II)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // java.util.List list
        start local 1 // int i
        start local 2 // int j
         0: .line 496
            aload 0 /* list */
            astore 3 /* l */
        start local 3 // java.util.List l
         1: .line 497
            aload 3 /* l */
            iload 1 /* i */
            aload 3 /* l */
            iload 2 /* j */
            aload 3 /* l */
            iload 1 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
            invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 498
            return
        end local 3 // java.util.List l
        end local 2 // int j
        end local 1 // int i
        end local 0 // java.util.List list
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  list  Ljava/util/List<*>;
            0    3     1     i  I
            0    3     2     j  I
            1    3     3     l  Ljava/util/List;
    Signature: (Ljava/util/List<*>;II)V
    MethodParameters:
      Name  Flags
      list  
      i     
      j     

  private static void swap(java.lang.Object[], int, int);
    descriptor: ([Ljava/lang/Object;II)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // java.lang.Object[] arr
        start local 1 // int i
        start local 2 // int j
         0: .line 504
            aload 0 /* arr */
            iload 1 /* i */
            aaload
            astore 3 /* tmp */
        start local 3 // java.lang.Object tmp
         1: .line 505
            aload 0 /* arr */
            iload 1 /* i */
            aload 0 /* arr */
            iload 2 /* j */
            aaload
            aastore
         2: .line 506
            aload 0 /* arr */
            iload 2 /* j */
            aload 3 /* tmp */
            aastore
         3: .line 507
            return
        end local 3 // java.lang.Object tmp
        end local 2 // int j
        end local 1 // int i
        end local 0 // java.lang.Object[] arr
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0   arr  [Ljava/lang/Object;
            0    4     1     i  I
            0    4     2     j  I
            1    4     3   tmp  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      arr   
      i     
      j     

  public static <T> void fill(java.util.List<? super T>, );
    descriptor: (Ljava/util/List;Ljava/lang/Object;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // java.util.List list
        start local 1 // java.lang.Object obj
         0: .line 522
            aload 0 /* list */
            invokeinterface java.util.List.size:()I
            istore 2 /* size */
        start local 2 // int size
         1: .line 524
            iload 2 /* size */
            bipush 25
            if_icmplt 2
            aload 0 /* list */
            instanceof java.util.RandomAccess
            ifeq 8
         2: .line 525
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 6
         4: .line 526
      StackMap locals: int
      StackMap stack:
            aload 0 /* list */
            iload 3 /* i */
            aload 1 /* obj */
            invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 525
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 3 /* i */
            iload 2 /* size */
            if_icmplt 4
        end local 3 // int i
         7: .line 527
            goto 15
         8: .line 528
      StackMap locals:
      StackMap stack:
            aload 0 /* list */
            invokeinterface java.util.List.listIterator:()Ljava/util/ListIterator;
            astore 3 /* itr */
        start local 3 // java.util.ListIterator itr
         9: .line 529
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        10: goto 14
        11: .line 530
      StackMap locals: java.util.ListIterator int
      StackMap stack:
            aload 3 /* itr */
            invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
            pop
        12: .line 531
            aload 3 /* itr */
            aload 1 /* obj */
            invokeinterface java.util.ListIterator.set:(Ljava/lang/Object;)V
        13: .line 529
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 4 /* i */
            iload 2 /* size */
            if_icmplt 11
        end local 4 // int i
        end local 3 // java.util.ListIterator itr
        15: .line 534
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int size
        end local 1 // java.lang.Object obj
        end local 0 // java.util.List list
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   16     0  list  Ljava/util/List<-TT;>;
            0   16     1   obj  TT;
            1   16     2  size  I
            3    7     3     i  I
            9   15     3   itr  Ljava/util/ListIterator<-TT;>;
           10   15     4     i  I
    Signature: <T:Ljava/lang/Object;>(Ljava/util/List<-TT;>;TT;)V
    MethodParameters:
      Name  Flags
      list  
      obj   

  public static <T> void copy(java.util.List<? super T>, java.util.List<? extends T>);
    descriptor: (Ljava/util/List;Ljava/util/List;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // java.util.List dest
        start local 1 // java.util.List src
         0: .line 555
            aload 1 /* src */
            invokeinterface java.util.List.size:()I
            istore 2 /* srcSize */
        start local 2 // int srcSize
         1: .line 556
            iload 2 /* srcSize */
            aload 0 /* dest */
            invokeinterface java.util.List.size:()I
            if_icmple 3
         2: .line 557
            new java.lang.IndexOutOfBoundsException
            dup
            ldc "Source does not fit in dest"
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 559
      StackMap locals: int
      StackMap stack:
            iload 2 /* srcSize */
            bipush 10
            if_icmplt 5
         4: .line 560
            aload 1 /* src */
            instanceof java.util.RandomAccess
            ifeq 11
            aload 0 /* dest */
            instanceof java.util.RandomAccess
            ifeq 11
         5: .line 561
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         6: goto 9
         7: .line 562
      StackMap locals: int
      StackMap stack:
            aload 0 /* dest */
            iload 3 /* i */
            aload 1 /* src */
            iload 3 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 561
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 3 /* i */
            iload 2 /* srcSize */
            if_icmplt 7
        end local 3 // int i
        10: .line 563
            goto 19
        11: .line 564
      StackMap locals:
      StackMap stack:
            aload 0 /* dest */
            invokeinterface java.util.List.listIterator:()Ljava/util/ListIterator;
            astore 3 /* di */
        start local 3 // java.util.ListIterator di
        12: .line 565
            aload 1 /* src */
            invokeinterface java.util.List.listIterator:()Ljava/util/ListIterator;
            astore 4 /* si */
        start local 4 // java.util.ListIterator si
        13: .line 566
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        14: goto 18
        15: .line 567
      StackMap locals: java.util.ListIterator java.util.ListIterator int
      StackMap stack:
            aload 3 /* di */
            invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
            pop
        16: .line 568
            aload 3 /* di */
            aload 4 /* si */
            invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
            invokeinterface java.util.ListIterator.set:(Ljava/lang/Object;)V
        17: .line 566
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        18: iload 5 /* i */
            iload 2 /* srcSize */
            if_icmplt 15
        end local 5 // int i
        end local 4 // java.util.ListIterator si
        end local 3 // java.util.ListIterator di
        19: .line 571
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int srcSize
        end local 1 // java.util.List src
        end local 0 // java.util.List dest
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   20     0     dest  Ljava/util/List<-TT;>;
            0   20     1      src  Ljava/util/List<+TT;>;
            1   20     2  srcSize  I
            6   10     3        i  I
           12   19     3       di  Ljava/util/ListIterator<-TT;>;
           13   19     4       si  Ljava/util/ListIterator<+TT;>;
           14   19     5        i  I
    Signature: <T:Ljava/lang/Object;>(Ljava/util/List<-TT;>;Ljava/util/List<+TT;>;)V
    MethodParameters:
      Name  Flags
      dest  
      src   

  public static <T extends java.lang.Comparable<? super T>> T min(java.util.Collection<? extends T>);
    descriptor: (Ljava/util/Collection;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // java.util.Collection coll
         0: .line 596
            aload 0 /* coll */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 1 /* i */
        start local 1 // java.util.Iterator i
         1: .line 597
            aload 1 /* i */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 2 /* candidate */
        start local 2 // java.lang.Object candidate
         2: .line 599
            goto 6
         3: .line 600
      StackMap locals: java.util.Iterator java.lang.Object
      StackMap stack:
            aload 1 /* i */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 3 /* next */
        start local 3 // java.lang.Object next
         4: .line 601
            aload 3 /* next */
            checkcast java.lang.Comparable
            checkcast java.lang.Comparable
            aload 2 /* candidate */
            invokeinterface java.lang.Comparable.compareTo:(Ljava/lang/Object;)I
            ifge 6
         5: .line 602
            aload 3 /* next */
            astore 2 /* candidate */
        end local 3 // java.lang.Object next
         6: .line 599
      StackMap locals:
      StackMap stack:
            aload 1 /* i */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         7: .line 604
            aload 2 /* candidate */
            areturn
        end local 2 // java.lang.Object candidate
        end local 1 // java.util.Iterator i
        end local 0 // java.util.Collection coll
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       coll  Ljava/util/Collection<+TT;>;
            1    8     1          i  Ljava/util/Iterator<+TT;>;
            2    8     2  candidate  TT;
            4    6     3       next  TT;
    Signature: <T:Ljava/lang/Object;:Ljava/lang/Comparable<-TT;>;>(Ljava/util/Collection<+TT;>;)TT;
    MethodParameters:
      Name  Flags
      coll  

  public static <T> T min(java.util.Collection<? extends T>, java.util.Comparator<? super T>);
    descriptor: (Ljava/util/Collection;Ljava/util/Comparator;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // java.util.Collection coll
        start local 1 // java.util.Comparator comp
         0: .line 632
            aload 1 /* comp */
            ifnonnull 2
         1: .line 633
            aload 0 /* coll */
            invokestatic java.util.Collections.min:(Ljava/util/Collection;)Ljava/lang/Object;
            areturn
         2: .line 635
      StackMap locals:
      StackMap stack:
            aload 0 /* coll */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 2 /* i */
        start local 2 // java.util.Iterator i
         3: .line 636
            aload 2 /* i */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 3 /* candidate */
        start local 3 // java.lang.Object candidate
         4: .line 638
            goto 8
         5: .line 639
      StackMap locals: java.util.Iterator java.lang.Object
      StackMap stack:
            aload 2 /* i */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 4 /* next */
        start local 4 // java.lang.Object next
         6: .line 640
            aload 1 /* comp */
            aload 4 /* next */
            aload 3 /* candidate */
            invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
            ifge 8
         7: .line 641
            aload 4 /* next */
            astore 3 /* candidate */
        end local 4 // java.lang.Object next
         8: .line 638
      StackMap locals:
      StackMap stack:
            aload 2 /* i */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
         9: .line 643
            aload 3 /* candidate */
            areturn
        end local 3 // java.lang.Object candidate
        end local 2 // java.util.Iterator i
        end local 1 // java.util.Comparator comp
        end local 0 // java.util.Collection coll
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       coll  Ljava/util/Collection<+TT;>;
            0   10     1       comp  Ljava/util/Comparator<-TT;>;
            3   10     2          i  Ljava/util/Iterator<+TT;>;
            4   10     3  candidate  TT;
            6    8     4       next  TT;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Collection<+TT;>;Ljava/util/Comparator<-TT;>;)TT;
    MethodParameters:
      Name  Flags
      coll  
      comp  

  public static <T extends java.lang.Comparable<? super T>> T max(java.util.Collection<? extends T>);
    descriptor: (Ljava/util/Collection;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // java.util.Collection coll
         0: .line 669
            aload 0 /* coll */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 1 /* i */
        start local 1 // java.util.Iterator i
         1: .line 670
            aload 1 /* i */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 2 /* candidate */
        start local 2 // java.lang.Object candidate
         2: .line 672
            goto 6
         3: .line 673
      StackMap locals: java.util.Iterator java.lang.Object
      StackMap stack:
            aload 1 /* i */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 3 /* next */
        start local 3 // java.lang.Object next
         4: .line 674
            aload 3 /* next */
            checkcast java.lang.Comparable
            checkcast java.lang.Comparable
            aload 2 /* candidate */
            invokeinterface java.lang.Comparable.compareTo:(Ljava/lang/Object;)I
            ifle 6
         5: .line 675
            aload 3 /* next */
            astore 2 /* candidate */
        end local 3 // java.lang.Object next
         6: .line 672
      StackMap locals:
      StackMap stack:
            aload 1 /* i */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         7: .line 677
            aload 2 /* candidate */
            areturn
        end local 2 // java.lang.Object candidate
        end local 1 // java.util.Iterator i
        end local 0 // java.util.Collection coll
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       coll  Ljava/util/Collection<+TT;>;
            1    8     1          i  Ljava/util/Iterator<+TT;>;
            2    8     2  candidate  TT;
            4    6     3       next  TT;
    Signature: <T:Ljava/lang/Object;:Ljava/lang/Comparable<-TT;>;>(Ljava/util/Collection<+TT;>;)TT;
    MethodParameters:
      Name  Flags
      coll  

  public static <T> T max(java.util.Collection<? extends T>, java.util.Comparator<? super T>);
    descriptor: (Ljava/util/Collection;Ljava/util/Comparator;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // java.util.Collection coll
        start local 1 // java.util.Comparator comp
         0: .line 705
            aload 1 /* comp */
            ifnonnull 2
         1: .line 706
            aload 0 /* coll */
            invokestatic java.util.Collections.max:(Ljava/util/Collection;)Ljava/lang/Object;
            areturn
         2: .line 708
      StackMap locals:
      StackMap stack:
            aload 0 /* coll */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 2 /* i */
        start local 2 // java.util.Iterator i
         3: .line 709
            aload 2 /* i */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 3 /* candidate */
        start local 3 // java.lang.Object candidate
         4: .line 711
            goto 8
         5: .line 712
      StackMap locals: java.util.Iterator java.lang.Object
      StackMap stack:
            aload 2 /* i */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 4 /* next */
        start local 4 // java.lang.Object next
         6: .line 713
            aload 1 /* comp */
            aload 4 /* next */
            aload 3 /* candidate */
            invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
            ifle 8
         7: .line 714
            aload 4 /* next */
            astore 3 /* candidate */
        end local 4 // java.lang.Object next
         8: .line 711
      StackMap locals:
      StackMap stack:
            aload 2 /* i */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
         9: .line 716
            aload 3 /* candidate */
            areturn
        end local 3 // java.lang.Object candidate
        end local 2 // java.util.Iterator i
        end local 1 // java.util.Comparator comp
        end local 0 // java.util.Collection coll
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       coll  Ljava/util/Collection<+TT;>;
            0   10     1       comp  Ljava/util/Comparator<-TT;>;
            3   10     2          i  Ljava/util/Iterator<+TT;>;
            4   10     3  candidate  TT;
            6    8     4       next  TT;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Collection<+TT;>;Ljava/util/Comparator<-TT;>;)TT;
    MethodParameters:
      Name  Flags
      coll  
      comp  

  public static void rotate(java.util.List<?>, );
    descriptor: (Ljava/util/List;I)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.util.List list
        start local 1 // int distance
         0: .line 775
            aload 0 /* list */
            instanceof java.util.RandomAccess
            ifne 1
            aload 0 /* list */
            invokeinterface java.util.List.size:()I
            bipush 100
            if_icmpge 2
         1: .line 776
      StackMap locals:
      StackMap stack:
            aload 0 /* list */
            iload 1 /* distance */
            invokestatic java.util.Collections.rotate1:(Ljava/util/List;I)V
            goto 3
         2: .line 778
      StackMap locals:
      StackMap stack:
            aload 0 /* list */
            iload 1 /* distance */
            invokestatic java.util.Collections.rotate2:(Ljava/util/List;I)V
         3: .line 779
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int distance
        end local 0 // java.util.List list
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      list  Ljava/util/List<*>;
            0    4     1  distance  I
    Signature: (Ljava/util/List<*>;I)V
    MethodParameters:
          Name  Flags
      list      
      distance  

  private static <T> void rotate1(java.util.List<T>, );
    descriptor: (Ljava/util/List;I)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // java.util.List list
        start local 1 // int distance
         0: .line 782
            aload 0 /* list */
            invokeinterface java.util.List.size:()I
            istore 2 /* size */
        start local 2 // int size
         1: .line 783
            iload 2 /* size */
            ifne 3
         2: .line 784
            return
         3: .line 785
      StackMap locals: int
      StackMap stack:
            iload 1 /* distance */
            iload 2 /* size */
            irem
            istore 1 /* distance */
         4: .line 786
            iload 1 /* distance */
            ifge 6
         5: .line 787
            iload 1 /* distance */
            iload 2 /* size */
            iadd
            istore 1 /* distance */
         6: .line 788
      StackMap locals:
      StackMap stack:
            iload 1 /* distance */
            ifne 8
         7: .line 789
            return
         8: .line 791
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* cycleStart */
        start local 3 // int cycleStart
         9: iconst_0
            istore 4 /* nMoved */
        start local 4 // int nMoved
        10: goto 20
        11: .line 792
      StackMap locals: int int
      StackMap stack:
            aload 0 /* list */
            iload 3 /* cycleStart */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            astore 5 /* displaced */
        start local 5 // java.lang.Object displaced
        12: .line 793
            iload 3 /* cycleStart */
            istore 6 /* i */
        start local 6 // int i
        13: .line 795
      StackMap locals: java.lang.Object int
      StackMap stack:
            iload 6 /* i */
            iload 1 /* distance */
            iadd
            istore 6 /* i */
        14: .line 796
            iload 6 /* i */
            iload 2 /* size */
            if_icmplt 16
        15: .line 797
            iload 6 /* i */
            iload 2 /* size */
            isub
            istore 6 /* i */
        16: .line 798
      StackMap locals:
      StackMap stack:
            aload 0 /* list */
            iload 6 /* i */
            aload 5 /* displaced */
            invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
            astore 5 /* displaced */
        17: .line 799
            iinc 4 /* nMoved */ 1
        18: .line 800
            iload 6 /* i */
            iload 3 /* cycleStart */
            if_icmpne 13
        end local 6 // int i
        end local 5 // java.lang.Object displaced
        19: .line 791
            iinc 3 /* cycleStart */ 1
      StackMap locals:
      StackMap stack:
        20: iload 4 /* nMoved */
            iload 2 /* size */
            if_icmpne 11
        end local 4 // int nMoved
        end local 3 // int cycleStart
        21: .line 802
            return
        end local 2 // int size
        end local 1 // int distance
        end local 0 // java.util.List list
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   22     0        list  Ljava/util/List<TT;>;
            0   22     1    distance  I
            1   22     2        size  I
            9   21     3  cycleStart  I
           10   21     4      nMoved  I
           12   19     5   displaced  TT;
           13   19     6           i  I
    Signature: <T:Ljava/lang/Object;>(Ljava/util/List<TT;>;I)V
    MethodParameters:
          Name  Flags
      list      
      distance  

  private static void rotate2(java.util.List<?>, );
    descriptor: (Ljava/util/List;I)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // java.util.List list
        start local 1 // int distance
         0: .line 805
            aload 0 /* list */
            invokeinterface java.util.List.size:()I
            istore 2 /* size */
        start local 2 // int size
         1: .line 806
            iload 2 /* size */
            ifne 3
         2: .line 807
            return
         3: .line 808
      StackMap locals: int
      StackMap stack:
            iload 1 /* distance */
            ineg
            iload 2 /* size */
            irem
            istore 3 /* mid */
        start local 3 // int mid
         4: .line 809
            iload 3 /* mid */
            ifge 6
         5: .line 810
            iload 3 /* mid */
            iload 2 /* size */
            iadd
            istore 3 /* mid */
         6: .line 811
      StackMap locals: int
      StackMap stack:
            iload 3 /* mid */
            ifne 8
         7: .line 812
            return
         8: .line 814
      StackMap locals:
      StackMap stack:
            aload 0 /* list */
            iconst_0
            iload 3 /* mid */
            invokeinterface java.util.List.subList:(II)Ljava/util/List;
            invokestatic java.util.Collections.reverse:(Ljava/util/List;)V
         9: .line 815
            aload 0 /* list */
            iload 3 /* mid */
            iload 2 /* size */
            invokeinterface java.util.List.subList:(II)Ljava/util/List;
            invokestatic java.util.Collections.reverse:(Ljava/util/List;)V
        10: .line 816
            aload 0 /* list */
            invokestatic java.util.Collections.reverse:(Ljava/util/List;)V
        11: .line 817
            return
        end local 3 // int mid
        end local 2 // int size
        end local 1 // int distance
        end local 0 // java.util.List list
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0      list  Ljava/util/List<*>;
            0   12     1  distance  I
            1   12     2      size  I
            4   12     3       mid  I
    Signature: (Ljava/util/List<*>;I)V
    MethodParameters:
          Name  Flags
      list      
      distance  

  public static <T> boolean replaceAll(java.util.List<T>, T, );
    descriptor: (Ljava/util/List;Ljava/lang/Object;Ljava/lang/Object;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=3
        start local 0 // java.util.List list
        start local 1 // java.lang.Object oldVal
        start local 2 // java.lang.Object newVal
         0: .line 839
            iconst_0
            istore 3 /* result */
        start local 3 // boolean result
         1: .line 840
            aload 0 /* list */
            invokeinterface java.util.List.size:()I
            istore 4 /* size */
        start local 4 // int size
         2: .line 841
            iload 4 /* size */
            bipush 11
            if_icmplt 3
            aload 0 /* list */
            instanceof java.util.RandomAccess
            ifeq 20
         3: .line 842
      StackMap locals: int int
      StackMap stack:
            aload 1 /* oldVal */
            ifnonnull 12
         4: .line 843
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         5: goto 10
         6: .line 844
      StackMap locals: int
      StackMap stack:
            aload 0 /* list */
            iload 5 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            ifnonnull 9
         7: .line 845
            aload 0 /* list */
            iload 5 /* i */
            aload 2 /* newVal */
            invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 846
            iconst_1
            istore 3 /* result */
         9: .line 843
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 5 /* i */
            iload 4 /* size */
            if_icmplt 6
        end local 5 // int i
        11: .line 849
            goto 37
        12: .line 850
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        13: goto 18
        14: .line 851
      StackMap locals: int
      StackMap stack:
            aload 1 /* oldVal */
            aload 0 /* list */
            iload 5 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 17
        15: .line 852
            aload 0 /* list */
            iload 5 /* i */
            aload 2 /* newVal */
            invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
        16: .line 853
            iconst_1
            istore 3 /* result */
        17: .line 850
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        18: iload 5 /* i */
            iload 4 /* size */
            if_icmplt 14
        end local 5 // int i
        19: .line 857
            goto 37
        20: .line 858
      StackMap locals:
      StackMap stack:
            aload 0 /* list */
            invokeinterface java.util.List.listIterator:()Ljava/util/ListIterator;
            astore 5 /* itr */
        start local 5 // java.util.ListIterator itr
        21: .line 859
            aload 1 /* oldVal */
            ifnonnull 30
        22: .line 860
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        23: goto 28
        24: .line 861
      StackMap locals: java.util.ListIterator int
      StackMap stack:
            aload 5 /* itr */
            invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
            ifnonnull 27
        25: .line 862
            aload 5 /* itr */
            aload 2 /* newVal */
            invokeinterface java.util.ListIterator.set:(Ljava/lang/Object;)V
        26: .line 863
            iconst_1
            istore 3 /* result */
        27: .line 860
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        28: iload 6 /* i */
            iload 4 /* size */
            if_icmplt 24
        end local 6 // int i
        29: .line 866
            goto 37
        30: .line 867
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        31: goto 36
        32: .line 868
      StackMap locals: int
      StackMap stack:
            aload 1 /* oldVal */
            aload 5 /* itr */
            invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 35
        33: .line 869
            aload 5 /* itr */
            aload 2 /* newVal */
            invokeinterface java.util.ListIterator.set:(Ljava/lang/Object;)V
        34: .line 870
            iconst_1
            istore 3 /* result */
        35: .line 867
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        36: iload 6 /* i */
            iload 4 /* size */
            if_icmplt 32
        end local 6 // int i
        end local 5 // java.util.ListIterator itr
        37: .line 875
      StackMap locals:
      StackMap stack:
            iload 3 /* result */
            ireturn
        end local 4 // int size
        end local 3 // boolean result
        end local 2 // java.lang.Object newVal
        end local 1 // java.lang.Object oldVal
        end local 0 // java.util.List list
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   38     0    list  Ljava/util/List<TT;>;
            0   38     1  oldVal  TT;
            0   38     2  newVal  TT;
            1   38     3  result  Z
            2   38     4    size  I
            5   11     5       i  I
           13   19     5       i  I
           21   37     5     itr  Ljava/util/ListIterator<TT;>;
           23   29     6       i  I
           31   37     6       i  I
    Signature: <T:Ljava/lang/Object;>(Ljava/util/List<TT;>;TT;TT;)Z
    MethodParameters:
        Name  Flags
      list    
      oldVal  
      newVal  

  public static int indexOfSubList(java.util.List<?>, java.util.List<?>);
    descriptor: (Ljava/util/List;Ljava/util/List;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=10, args_size=2
        start local 0 // java.util.List source
        start local 1 // java.util.List target
         0: .line 899
            aload 0 /* source */
            invokeinterface java.util.List.size:()I
            istore 2 /* sourceSize */
        start local 2 // int sourceSize
         1: .line 900
            aload 1 /* target */
            invokeinterface java.util.List.size:()I
            istore 3 /* targetSize */
        start local 3 // int targetSize
         2: .line 901
            iload 2 /* sourceSize */
            iload 3 /* targetSize */
            isub
            istore 4 /* maxCandidate */
        start local 4 // int maxCandidate
         3: .line 903
            iload 2 /* sourceSize */
            bipush 35
            if_icmplt 5
         4: .line 904
            aload 0 /* source */
            instanceof java.util.RandomAccess
            ifeq 18
            aload 1 /* target */
            instanceof java.util.RandomAccess
            ifeq 18
         5: .line 906
      StackMap locals: int int int
      StackMap stack:
            iconst_0
            istore 5 /* candidate */
        start local 5 // int candidate
         6: goto 16
         7: .line 907
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         8: iload 5 /* candidate */
            istore 7 /* j */
        start local 7 // int j
         9: goto 13
        10: .line 908
      StackMap locals: int int
      StackMap stack:
            aload 1 /* target */
            iload 6 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            aload 0 /* source */
            iload 7 /* j */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokestatic java.util.Collections.eq:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifne 12
        11: .line 909
            goto 15
        12: .line 907
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
            iinc 7 /* j */ 1
      StackMap locals:
      StackMap stack:
        13: iload 6 /* i */
            iload 3 /* targetSize */
            if_icmplt 10
        end local 7 // int j
        end local 6 // int i
        14: .line 910
            iload 5 /* candidate */
            ireturn
        15: .line 906
      StackMap locals:
      StackMap stack:
            iinc 5 /* candidate */ 1
      StackMap locals:
      StackMap stack:
        16: iload 5 /* candidate */
            iload 4 /* maxCandidate */
            if_icmple 7
        end local 5 // int candidate
        17: .line 912
            goto 36
        18: .line 913
      StackMap locals:
      StackMap stack:
            aload 0 /* source */
            invokeinterface java.util.List.listIterator:()Ljava/util/ListIterator;
            astore 5 /* si */
        start local 5 // java.util.ListIterator si
        19: .line 915
            iconst_0
            istore 6 /* candidate */
        start local 6 // int candidate
        20: goto 35
        21: .line 916
      StackMap locals: java.util.ListIterator int
      StackMap stack:
            aload 1 /* target */
            invokeinterface java.util.List.listIterator:()Ljava/util/ListIterator;
            astore 7 /* ti */
        start local 7 // java.util.ListIterator ti
        22: .line 917
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        23: goto 32
        24: .line 918
      StackMap locals: java.util.ListIterator int
      StackMap stack:
            aload 7 /* ti */
            invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
            aload 5 /* si */
            invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
            invokestatic java.util.Collections.eq:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifne 31
        25: .line 920
            iconst_0
            istore 9 /* j */
        start local 9 // int j
        26: goto 29
        27: .line 921
      StackMap locals: int
      StackMap stack:
            aload 5 /* si */
            invokeinterface java.util.ListIterator.previous:()Ljava/lang/Object;
            pop
        28: .line 920
            iinc 9 /* j */ 1
      StackMap locals:
      StackMap stack:
        29: iload 9 /* j */
            iload 8 /* i */
            if_icmplt 27
        end local 9 // int j
        30: .line 922
            goto 34
        31: .line 917
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        32: iload 8 /* i */
            iload 3 /* targetSize */
            if_icmplt 24
        end local 8 // int i
        33: .line 925
            iload 6 /* candidate */
            ireturn
        end local 7 // java.util.ListIterator ti
        34: .line 915
      StackMap locals:
      StackMap stack:
            iinc 6 /* candidate */ 1
      StackMap locals:
      StackMap stack:
        35: iload 6 /* candidate */
            iload 4 /* maxCandidate */
            if_icmple 21
        end local 6 // int candidate
        end local 5 // java.util.ListIterator si
        36: .line 928
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
        end local 4 // int maxCandidate
        end local 3 // int targetSize
        end local 2 // int sourceSize
        end local 1 // java.util.List target
        end local 0 // java.util.List source
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   37     0        source  Ljava/util/List<*>;
            0   37     1        target  Ljava/util/List<*>;
            1   37     2    sourceSize  I
            2   37     3    targetSize  I
            3   37     4  maxCandidate  I
            6   17     5     candidate  I
            8   14     6             i  I
            9   14     7             j  I
           19   36     5            si  Ljava/util/ListIterator<*>;
           20   36     6     candidate  I
           22   34     7            ti  Ljava/util/ListIterator<*>;
           23   33     8             i  I
           26   30     9             j  I
    Signature: (Ljava/util/List<*>;Ljava/util/List<*>;)I
    MethodParameters:
        Name  Flags
      source  
      target  

  public static int lastIndexOfSubList(java.util.List<?>, java.util.List<?>);
    descriptor: (Ljava/util/List;Ljava/util/List;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=10, args_size=2
        start local 0 // java.util.List source
        start local 1 // java.util.List target
         0: .line 952
            aload 0 /* source */
            invokeinterface java.util.List.size:()I
            istore 2 /* sourceSize */
        start local 2 // int sourceSize
         1: .line 953
            aload 1 /* target */
            invokeinterface java.util.List.size:()I
            istore 3 /* targetSize */
        start local 3 // int targetSize
         2: .line 954
            iload 2 /* sourceSize */
            iload 3 /* targetSize */
            isub
            istore 4 /* maxCandidate */
        start local 4 // int maxCandidate
         3: .line 956
            iload 2 /* sourceSize */
            bipush 35
            if_icmplt 5
         4: .line 957
            aload 0 /* source */
            instanceof java.util.RandomAccess
            ifeq 18
         5: .line 959
      StackMap locals: int int int
      StackMap stack:
            iload 4 /* maxCandidate */
            istore 5 /* candidate */
        start local 5 // int candidate
         6: goto 16
         7: .line 960
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         8: iload 5 /* candidate */
            istore 7 /* j */
        start local 7 // int j
         9: goto 13
        10: .line 961
      StackMap locals: int int
      StackMap stack:
            aload 1 /* target */
            iload 6 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            aload 0 /* source */
            iload 7 /* j */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokestatic java.util.Collections.eq:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifne 12
        11: .line 962
            goto 15
        12: .line 960
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
            iinc 7 /* j */ 1
      StackMap locals:
      StackMap stack:
        13: iload 6 /* i */
            iload 3 /* targetSize */
            if_icmplt 10
        end local 7 // int j
        end local 6 // int i
        14: .line 963
            iload 5 /* candidate */
            ireturn
        15: .line 959
      StackMap locals:
      StackMap stack:
            iinc 5 /* candidate */ -1
      StackMap locals:
      StackMap stack:
        16: iload 5 /* candidate */
            ifge 7
        end local 5 // int candidate
        17: .line 965
            goto 39
        18: .line 966
      StackMap locals:
      StackMap stack:
            iload 4 /* maxCandidate */
            ifge 20
        19: .line 967
            iconst_m1
            ireturn
        20: .line 968
      StackMap locals:
      StackMap stack:
            aload 0 /* source */
            iload 4 /* maxCandidate */
            invokeinterface java.util.List.listIterator:(I)Ljava/util/ListIterator;
            astore 5 /* si */
        start local 5 // java.util.ListIterator si
        21: .line 970
            iload 4 /* maxCandidate */
            istore 6 /* candidate */
        start local 6 // int candidate
        22: goto 38
        23: .line 971
      StackMap locals: java.util.ListIterator int
      StackMap stack:
            aload 1 /* target */
            invokeinterface java.util.List.listIterator:()Ljava/util/ListIterator;
            astore 7 /* ti */
        start local 7 // java.util.ListIterator ti
        24: .line 972
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        25: goto 35
        26: .line 973
      StackMap locals: java.util.ListIterator int
      StackMap stack:
            aload 7 /* ti */
            invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
            aload 5 /* si */
            invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
            invokestatic java.util.Collections.eq:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifne 34
        27: .line 974
            iload 6 /* candidate */
            ifeq 37
        28: .line 976
            iconst_0
            istore 9 /* j */
        start local 9 // int j
        29: goto 32
        30: .line 977
      StackMap locals: int
      StackMap stack:
            aload 5 /* si */
            invokeinterface java.util.ListIterator.previous:()Ljava/lang/Object;
            pop
        31: .line 976
            iinc 9 /* j */ 1
      StackMap locals:
      StackMap stack:
        32: iload 9 /* j */
            iload 8 /* i */
            iconst_1
            iadd
            if_icmple 30
        end local 9 // int j
        33: .line 979
            goto 37
        34: .line 972
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        35: iload 8 /* i */
            iload 3 /* targetSize */
            if_icmplt 26
        end local 8 // int i
        36: .line 982
            iload 6 /* candidate */
            ireturn
        end local 7 // java.util.ListIterator ti
        37: .line 970
      StackMap locals:
      StackMap stack:
            iinc 6 /* candidate */ -1
      StackMap locals:
      StackMap stack:
        38: iload 6 /* candidate */
            ifge 23
        end local 6 // int candidate
        end local 5 // java.util.ListIterator si
        39: .line 985
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
        end local 4 // int maxCandidate
        end local 3 // int targetSize
        end local 2 // int sourceSize
        end local 1 // java.util.List target
        end local 0 // java.util.List source
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   40     0        source  Ljava/util/List<*>;
            0   40     1        target  Ljava/util/List<*>;
            1   40     2    sourceSize  I
            2   40     3    targetSize  I
            3   40     4  maxCandidate  I
            6   17     5     candidate  I
            8   14     6             i  I
            9   14     7             j  I
           21   39     5            si  Ljava/util/ListIterator<*>;
           22   39     6     candidate  I
           24   37     7            ti  Ljava/util/ListIterator<*>;
           25   36     8             i  I
           29   33     9             j  I
    Signature: (Ljava/util/List<*>;Ljava/util/List<*>;)I
    MethodParameters:
        Name  Flags
      source  
      target  

  public static <T> java.util.Collection<T> unmodifiableCollection(java.util.Collection<? extends T>);
    descriptor: (Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.Collection c
         0: .line 1014
            new java.util.Collections$UnmodifiableCollection
            dup
            aload 0 /* c */
            invokespecial java.util.Collections$UnmodifiableCollection.<init>:(Ljava/util/Collection;)V
            areturn
        end local 0 // java.util.Collection c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     c  Ljava/util/Collection<+TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Collection<+TT;>;)Ljava/util/Collection<TT;>;
    MethodParameters:
      Name  Flags
      c     

  public static <T> java.util.Set<T> unmodifiableSet(java.util.Set<? extends T>);
    descriptor: (Ljava/util/Set;)Ljava/util/Set;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.Set s
         0: .line 1119
            new java.util.Collections$UnmodifiableSet
            dup
            aload 0 /* s */
            invokespecial java.util.Collections$UnmodifiableSet.<init>:(Ljava/util/Set;)V
            areturn
        end local 0 // java.util.Set s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/util/Set<+TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Set<+TT;>;)Ljava/util/Set<TT;>;
    MethodParameters:
      Name  Flags
      s     

  public static <T> java.util.SortedSet<T> unmodifiableSortedSet(java.util.SortedSet<T>);
    descriptor: (Ljava/util/SortedSet;)Ljava/util/SortedSet;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.SortedSet s
         0: .line 1152
            new java.util.Collections$UnmodifiableSortedSet
            dup
            aload 0 /* s */
            invokespecial java.util.Collections$UnmodifiableSortedSet.<init>:(Ljava/util/SortedSet;)V
            areturn
        end local 0 // java.util.SortedSet s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/util/SortedSet<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/SortedSet<TT;>;)Ljava/util/SortedSet<TT;>;
    MethodParameters:
      Name  Flags
      s     

  public static <T> java.util.NavigableSet<T> unmodifiableNavigableSet(java.util.NavigableSet<T>);
    descriptor: (Ljava/util/NavigableSet;)Ljava/util/NavigableSet;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.NavigableSet s
         0: .line 1201
            new java.util.Collections$UnmodifiableNavigableSet
            dup
            aload 0 /* s */
            invokespecial java.util.Collections$UnmodifiableNavigableSet.<init>:(Ljava/util/NavigableSet;)V
            areturn
        end local 0 // java.util.NavigableSet s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/util/NavigableSet<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/NavigableSet<TT;>;)Ljava/util/NavigableSet<TT;>;
    MethodParameters:
      Name  Flags
      s     

  public static <T> java.util.List<T> unmodifiableList(java.util.List<? extends T>);
    descriptor: (Ljava/util/List;)Ljava/util/List;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.List list
         0: .line 1288
            aload 0 /* list */
            instanceof java.util.RandomAccess
            ifeq 2
         1: .line 1289
            new java.util.Collections$UnmodifiableRandomAccessList
            dup
            aload 0 /* list */
            invokespecial java.util.Collections$UnmodifiableRandomAccessList.<init>:(Ljava/util/List;)V
            goto 3
         2: .line 1290
      StackMap locals:
      StackMap stack:
            new java.util.Collections$UnmodifiableList
            dup
            aload 0 /* list */
            invokespecial java.util.Collections$UnmodifiableList.<init>:(Ljava/util/List;)V
         3: .line 1288
      StackMap locals:
      StackMap stack: java.util.Collections$UnmodifiableList
            areturn
        end local 0 // java.util.List list
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  list  Ljava/util/List<+TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/List<+TT;>;)Ljava/util/List<TT;>;
    MethodParameters:
      Name  Flags
      list  

  public static <K, V> java.util.Map<K, V> unmodifiableMap(java.util.Map<? extends K, ? extends V>);
    descriptor: (Ljava/util/Map;)Ljava/util/Map;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.Map m
         0: .line 1434
            new java.util.Collections$UnmodifiableMap
            dup
            aload 0 /* m */
            invokespecial java.util.Collections$UnmodifiableMap.<init>:(Ljava/util/Map;)V
            areturn
        end local 0 // java.util.Map m
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     m  Ljava/util/Map<+TK;+TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/Map<+TK;+TV;>;)Ljava/util/Map<TK;TV;>;
    MethodParameters:
      Name  Flags
      m     

  public static <K, V> java.util.SortedMap<K, V> unmodifiableSortedMap(java.util.SortedMap<K, ? extends V>);
    descriptor: (Ljava/util/SortedMap;)Ljava/util/SortedMap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.SortedMap m
         0: .line 1786
            new java.util.Collections$UnmodifiableSortedMap
            dup
            aload 0 /* m */
            invokespecial java.util.Collections$UnmodifiableSortedMap.<init>:(Ljava/util/SortedMap;)V
            areturn
        end local 0 // java.util.SortedMap m
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     m  Ljava/util/SortedMap<TK;+TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/SortedMap<TK;+TV;>;)Ljava/util/SortedMap<TK;TV;>;
    MethodParameters:
      Name  Flags
      m     

  public static <K, V> java.util.NavigableMap<K, V> unmodifiableNavigableMap(java.util.NavigableMap<K, ? extends V>);
    descriptor: (Ljava/util/NavigableMap;)Ljava/util/NavigableMap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.NavigableMap m
         0: .line 1831
            new java.util.Collections$UnmodifiableNavigableMap
            dup
            aload 0 /* m */
            invokespecial java.util.Collections$UnmodifiableNavigableMap.<init>:(Ljava/util/NavigableMap;)V
            areturn
        end local 0 // java.util.NavigableMap m
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     m  Ljava/util/NavigableMap<TK;+TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/NavigableMap<TK;+TV;>;)Ljava/util/NavigableMap<TK;TV;>;
    MethodParameters:
      Name  Flags
      m     

  public static <T> java.util.Collection<T> synchronizedCollection(java.util.Collection<T>);
    descriptor: (Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.Collection c
         0: .line 1989
            new java.util.Collections$SynchronizedCollection
            dup
            aload 0 /* c */
            invokespecial java.util.Collections$SynchronizedCollection.<init>:(Ljava/util/Collection;)V
            areturn
        end local 0 // java.util.Collection c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     c  Ljava/util/Collection<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Collection<TT;>;)Ljava/util/Collection<TT;>;
    MethodParameters:
      Name  Flags
      c     

  static <T> java.util.Collection<T> synchronizedCollection(java.util.Collection<T>, );
    descriptor: (Ljava/util/Collection;Ljava/lang/Object;)Ljava/util/Collection;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.Collection c
        start local 1 // java.lang.Object mutex
         0: .line 1993
            new java.util.Collections$SynchronizedCollection
            dup
            aload 0 /* c */
            aload 1 /* mutex */
            invokespecial java.util.Collections$SynchronizedCollection.<init>:(Ljava/util/Collection;Ljava/lang/Object;)V
            areturn
        end local 1 // java.lang.Object mutex
        end local 0 // java.util.Collection c
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0      c  Ljava/util/Collection<TT;>;
            0    1     1  mutex  Ljava/lang/Object;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Collection<TT;>;Ljava/lang/Object;)Ljava/util/Collection<TT;>;
    MethodParameters:
       Name  Flags
      c      
      mutex  

  public static <T> java.util.Set<T> synchronizedSet(java.util.Set<T>);
    descriptor: (Ljava/util/Set;)Ljava/util/Set;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.Set s
         0: .line 2114
            new java.util.Collections$SynchronizedSet
            dup
            aload 0 /* s */
            invokespecial java.util.Collections$SynchronizedSet.<init>:(Ljava/util/Set;)V
            areturn
        end local 0 // java.util.Set s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/util/Set<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Set<TT;>;)Ljava/util/Set<TT;>;
    MethodParameters:
      Name  Flags
      s     

  static <T> java.util.Set<T> synchronizedSet(java.util.Set<T>, );
    descriptor: (Ljava/util/Set;Ljava/lang/Object;)Ljava/util/Set;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.Set s
        start local 1 // java.lang.Object mutex
         0: .line 2118
            new java.util.Collections$SynchronizedSet
            dup
            aload 0 /* s */
            aload 1 /* mutex */
            invokespecial java.util.Collections$SynchronizedSet.<init>:(Ljava/util/Set;Ljava/lang/Object;)V
            areturn
        end local 1 // java.lang.Object mutex
        end local 0 // java.util.Set s
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0      s  Ljava/util/Set<TT;>;
            0    1     1  mutex  Ljava/lang/Object;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Set<TT;>;Ljava/lang/Object;)Ljava/util/Set<TT;>;
    MethodParameters:
       Name  Flags
      s      
      mutex  

  public static <T> java.util.SortedSet<T> synchronizedSortedSet(java.util.SortedSet<T>);
    descriptor: (Ljava/util/SortedSet;)Ljava/util/SortedSet;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.SortedSet s
         0: .line 2186
            new java.util.Collections$SynchronizedSortedSet
            dup
            aload 0 /* s */
            invokespecial java.util.Collections$SynchronizedSortedSet.<init>:(Ljava/util/SortedSet;)V
            areturn
        end local 0 // java.util.SortedSet s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/util/SortedSet<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/SortedSet<TT;>;)Ljava/util/SortedSet<TT;>;
    MethodParameters:
      Name  Flags
      s     

  public static <T> java.util.NavigableSet<T> synchronizedNavigableSet(java.util.NavigableSet<T>);
    descriptor: (Ljava/util/NavigableSet;)Ljava/util/NavigableSet;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.NavigableSet s
         0: .line 2280
            new java.util.Collections$SynchronizedNavigableSet
            dup
            aload 0 /* s */
            invokespecial java.util.Collections$SynchronizedNavigableSet.<init>:(Ljava/util/NavigableSet;)V
            areturn
        end local 0 // java.util.NavigableSet s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/util/NavigableSet<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/NavigableSet<TT;>;)Ljava/util/NavigableSet<TT;>;
    MethodParameters:
      Name  Flags
      s     

  public static <T> java.util.List<T> synchronizedList(java.util.List<T>);
    descriptor: (Ljava/util/List;)Ljava/util/List;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.List list
         0: .line 2382
            aload 0 /* list */
            instanceof java.util.RandomAccess
            ifeq 2
         1: .line 2383
            new java.util.Collections$SynchronizedRandomAccessList
            dup
            aload 0 /* list */
            invokespecial java.util.Collections$SynchronizedRandomAccessList.<init>:(Ljava/util/List;)V
            goto 3
         2: .line 2384
      StackMap locals:
      StackMap stack:
            new java.util.Collections$SynchronizedList
            dup
            aload 0 /* list */
            invokespecial java.util.Collections$SynchronizedList.<init>:(Ljava/util/List;)V
         3: .line 2382
      StackMap locals:
      StackMap stack: java.util.Collections$SynchronizedList
            areturn
        end local 0 // java.util.List list
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  list  Ljava/util/List<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/List<TT;>;)Ljava/util/List<TT;>;
    MethodParameters:
      Name  Flags
      list  

  static <T> java.util.List<T> synchronizedList(java.util.List<T>, );
    descriptor: (Ljava/util/List;Ljava/lang/Object;)Ljava/util/List;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.List list
        start local 1 // java.lang.Object mutex
         0: .line 2388
            aload 0 /* list */
            instanceof java.util.RandomAccess
            ifeq 2
         1: .line 2389
            new java.util.Collections$SynchronizedRandomAccessList
            dup
            aload 0 /* list */
            aload 1 /* mutex */
            invokespecial java.util.Collections$SynchronizedRandomAccessList.<init>:(Ljava/util/List;Ljava/lang/Object;)V
            goto 3
         2: .line 2390
      StackMap locals:
      StackMap stack:
            new java.util.Collections$SynchronizedList
            dup
            aload 0 /* list */
            aload 1 /* mutex */
            invokespecial java.util.Collections$SynchronizedList.<init>:(Ljava/util/List;Ljava/lang/Object;)V
         3: .line 2388
      StackMap locals:
      StackMap stack: java.util.Collections$SynchronizedList
            areturn
        end local 1 // java.lang.Object mutex
        end local 0 // java.util.List list
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   list  Ljava/util/List<TT;>;
            0    4     1  mutex  Ljava/lang/Object;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/List<TT;>;Ljava/lang/Object;)Ljava/util/List<TT;>;
    MethodParameters:
       Name  Flags
      list   
      mutex  

  public static <K, V> java.util.Map<K, V> synchronizedMap(java.util.Map<K, V>);
    descriptor: (Ljava/util/Map;)Ljava/util/Map;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.Map m
         0: .line 2554
            new java.util.Collections$SynchronizedMap
            dup
            aload 0 /* m */
            invokespecial java.util.Collections$SynchronizedMap.<init>:(Ljava/util/Map;)V
            areturn
        end local 0 // java.util.Map m
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     m  Ljava/util/Map<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/Map<TK;TV;>;)Ljava/util/Map<TK;TV;>;
    MethodParameters:
      Name  Flags
      m     

  public static <K, V> java.util.SortedMap<K, V> synchronizedSortedMap(java.util.SortedMap<K, V>);
    descriptor: (Ljava/util/SortedMap;)Ljava/util/SortedMap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.SortedMap m
         0: .line 2747
            new java.util.Collections$SynchronizedSortedMap
            dup
            aload 0 /* m */
            invokespecial java.util.Collections$SynchronizedSortedMap.<init>:(Ljava/util/SortedMap;)V
            areturn
        end local 0 // java.util.SortedMap m
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     m  Ljava/util/SortedMap<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/SortedMap<TK;TV;>;)Ljava/util/SortedMap<TK;TV;>;
    MethodParameters:
      Name  Flags
      m     

  public static <K, V> java.util.NavigableMap<K, V> synchronizedNavigableMap(java.util.NavigableMap<K, V>);
    descriptor: (Ljava/util/NavigableMap;)Ljava/util/NavigableMap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.NavigableMap m
         0: .line 2847
            new java.util.Collections$SynchronizedNavigableMap
            dup
            aload 0 /* m */
            invokespecial java.util.Collections$SynchronizedNavigableMap.<init>:(Ljava/util/NavigableMap;)V
            areturn
        end local 0 // java.util.NavigableMap m
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     m  Ljava/util/NavigableMap<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/NavigableMap<TK;TV;>;)Ljava/util/NavigableMap<TK;TV;>;
    MethodParameters:
      Name  Flags
      m     

  public static <E> java.util.Collection<E> checkedCollection(java.util.Collection<E>, java.lang.Class<E>);
    descriptor: (Ljava/util/Collection;Ljava/lang/Class;)Ljava/util/Collection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.Collection c
        start local 1 // java.lang.Class type
         0: .line 3025
            new java.util.Collections$CheckedCollection
            dup
            aload 0 /* c */
            aload 1 /* type */
            invokespecial java.util.Collections$CheckedCollection.<init>:(Ljava/util/Collection;Ljava/lang/Class;)V
            areturn
        end local 1 // java.lang.Class type
        end local 0 // java.util.Collection c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     c  Ljava/util/Collection<TE;>;
            0    1     1  type  Ljava/lang/Class<TE;>;
    Signature: <E:Ljava/lang/Object;>(Ljava/util/Collection<TE;>;Ljava/lang/Class<TE;>;)Ljava/util/Collection<TE;>;
    MethodParameters:
      Name  Flags
      c     
      type  

  static <T> T[] zeroLengthArray(java.lang.Class<T>);
    descriptor: (Ljava/lang/Class;)[Ljava/lang/Object;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.Class type
         0: .line 3030
            aload 0 /* type */
            iconst_0
            invokestatic java.lang.reflect.Array.newInstance:(Ljava/lang/Class;I)Ljava/lang/Object;
            checkcast java.lang.Object[]
            areturn
        end local 0 // java.lang.Class type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  type  Ljava/lang/Class<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)[TT;
    MethodParameters:
      Name  Flags
      type  

  public static <E> java.util.Queue<E> checkedQueue(java.util.Queue<E>, java.lang.Class<E>);
    descriptor: (Ljava/util/Queue;Ljava/lang/Class;)Ljava/util/Queue;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.Queue queue
        start local 1 // java.lang.Class type
         0: .line 3171
            new java.util.Collections$CheckedQueue
            dup
            aload 0 /* queue */
            aload 1 /* type */
            invokespecial java.util.Collections$CheckedQueue.<init>:(Ljava/util/Queue;Ljava/lang/Class;)V
            areturn
        end local 1 // java.lang.Class type
        end local 0 // java.util.Queue queue
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  queue  Ljava/util/Queue<TE;>;
            0    1     1   type  Ljava/lang/Class<TE;>;
    Signature: <E:Ljava/lang/Object;>(Ljava/util/Queue<TE;>;Ljava/lang/Class<TE;>;)Ljava/util/Queue<TE;>;
    MethodParameters:
       Name  Flags
      queue  
      type   

  public static <E> java.util.Set<E> checkedSet(java.util.Set<E>, java.lang.Class<E>);
    descriptor: (Ljava/util/Set;Ljava/lang/Class;)Ljava/util/Set;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.Set s
        start local 1 // java.lang.Class type
         0: .line 3226
            new java.util.Collections$CheckedSet
            dup
            aload 0 /* s */
            aload 1 /* type */
            invokespecial java.util.Collections$CheckedSet.<init>:(Ljava/util/Set;Ljava/lang/Class;)V
            areturn
        end local 1 // java.lang.Class type
        end local 0 // java.util.Set s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/util/Set<TE;>;
            0    1     1  type  Ljava/lang/Class<TE;>;
    Signature: <E:Ljava/lang/Object;>(Ljava/util/Set<TE;>;Ljava/lang/Class<TE;>;)Ljava/util/Set<TE;>;
    MethodParameters:
      Name  Flags
      s     
      type  

  public static <E> java.util.SortedSet<E> checkedSortedSet(java.util.SortedSet<E>, java.lang.Class<E>);
    descriptor: (Ljava/util/SortedSet;Ljava/lang/Class;)Ljava/util/SortedSet;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.SortedSet s
        start local 1 // java.lang.Class type
         0: .line 3273
            new java.util.Collections$CheckedSortedSet
            dup
            aload 0 /* s */
            aload 1 /* type */
            invokespecial java.util.Collections$CheckedSortedSet.<init>:(Ljava/util/SortedSet;Ljava/lang/Class;)V
            areturn
        end local 1 // java.lang.Class type
        end local 0 // java.util.SortedSet s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/util/SortedSet<TE;>;
            0    1     1  type  Ljava/lang/Class<TE;>;
    Signature: <E:Ljava/lang/Object;>(Ljava/util/SortedSet<TE;>;Ljava/lang/Class<TE;>;)Ljava/util/SortedSet<TE;>;
    MethodParameters:
      Name  Flags
      s     
      type  

  public static <E> java.util.NavigableSet<E> checkedNavigableSet(java.util.NavigableSet<E>, java.lang.Class<E>);
    descriptor: (Ljava/util/NavigableSet;Ljava/lang/Class;)Ljava/util/NavigableSet;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.NavigableSet s
        start local 1 // java.lang.Class type
         0: .line 3336
            new java.util.Collections$CheckedNavigableSet
            dup
            aload 0 /* s */
            aload 1 /* type */
            invokespecial java.util.Collections$CheckedNavigableSet.<init>:(Ljava/util/NavigableSet;Ljava/lang/Class;)V
            areturn
        end local 1 // java.lang.Class type
        end local 0 // java.util.NavigableSet s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/util/NavigableSet<TE;>;
            0    1     1  type  Ljava/lang/Class<TE;>;
    Signature: <E:Ljava/lang/Object;>(Ljava/util/NavigableSet<TE;>;Ljava/lang/Class<TE;>;)Ljava/util/NavigableSet<TE;>;
    MethodParameters:
      Name  Flags
      s     
      type  

  public static <E> java.util.List<E> checkedList(java.util.List<E>, java.lang.Class<E>);
    descriptor: (Ljava/util/List;Ljava/lang/Class;)Ljava/util/List;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.List list
        start local 1 // java.lang.Class type
         0: .line 3416
            aload 0 /* list */
            instanceof java.util.RandomAccess
            ifeq 2
         1: .line 3417
            new java.util.Collections$CheckedRandomAccessList
            dup
            aload 0 /* list */
            aload 1 /* type */
            invokespecial java.util.Collections$CheckedRandomAccessList.<init>:(Ljava/util/List;Ljava/lang/Class;)V
            goto 3
         2: .line 3418
      StackMap locals:
      StackMap stack:
            new java.util.Collections$CheckedList
            dup
            aload 0 /* list */
            aload 1 /* type */
            invokespecial java.util.Collections$CheckedList.<init>:(Ljava/util/List;Ljava/lang/Class;)V
         3: .line 3416
      StackMap locals:
      StackMap stack: java.util.Collections$CheckedList
            areturn
        end local 1 // java.lang.Class type
        end local 0 // java.util.List list
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  list  Ljava/util/List<TE;>;
            0    4     1  type  Ljava/lang/Class<TE;>;
    Signature: <E:Ljava/lang/Object;>(Ljava/util/List<TE;>;Ljava/lang/Class<TE;>;)Ljava/util/List<TE;>;
    MethodParameters:
      Name  Flags
      list  
      type  

  public static <K, V> java.util.Map<K, V> checkedMap(java.util.Map<K, V>, java.lang.Class<K>, java.lang.Class<V>);
    descriptor: (Ljava/util/Map;Ljava/lang/Class;Ljava/lang/Class;)Ljava/util/Map;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // java.util.Map m
        start local 1 // java.lang.Class keyType
        start local 2 // java.lang.Class valueType
         0: .line 3564
            new java.util.Collections$CheckedMap
            dup
            aload 0 /* m */
            aload 1 /* keyType */
            aload 2 /* valueType */
            invokespecial java.util.Collections$CheckedMap.<init>:(Ljava/util/Map;Ljava/lang/Class;Ljava/lang/Class;)V
            areturn
        end local 2 // java.lang.Class valueType
        end local 1 // java.lang.Class keyType
        end local 0 // java.util.Map m
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0          m  Ljava/util/Map<TK;TV;>;
            0    1     1    keyType  Ljava/lang/Class<TK;>;
            0    1     2  valueType  Ljava/lang/Class<TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/Map<TK;TV;>;Ljava/lang/Class<TK;>;Ljava/lang/Class<TV;>;)Ljava/util/Map<TK;TV;>;
    MethodParameters:
           Name  Flags
      m          
      keyType    
      valueType  

  public static <K, V> java.util.SortedMap<K, V> checkedSortedMap(java.util.SortedMap<K, V>, java.lang.Class<K>, java.lang.Class<V>);
    descriptor: (Ljava/util/SortedMap;Ljava/lang/Class;Ljava/lang/Class;)Ljava/util/SortedMap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // java.util.SortedMap m
        start local 1 // java.lang.Class keyType
        start local 2 // java.lang.Class valueType
         0: .line 3960
            new java.util.Collections$CheckedSortedMap
            dup
            aload 0 /* m */
            aload 1 /* keyType */
            aload 2 /* valueType */
            invokespecial java.util.Collections$CheckedSortedMap.<init>:(Ljava/util/SortedMap;Ljava/lang/Class;Ljava/lang/Class;)V
            areturn
        end local 2 // java.lang.Class valueType
        end local 1 // java.lang.Class keyType
        end local 0 // java.util.SortedMap m
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0          m  Ljava/util/SortedMap<TK;TV;>;
            0    1     1    keyType  Ljava/lang/Class<TK;>;
            0    1     2  valueType  Ljava/lang/Class<TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/SortedMap<TK;TV;>;Ljava/lang/Class<TK;>;Ljava/lang/Class<TV;>;)Ljava/util/SortedMap<TK;TV;>;
    MethodParameters:
           Name  Flags
      m          
      keyType    
      valueType  

  public static <K, V> java.util.NavigableMap<K, V> checkedNavigableMap(java.util.NavigableMap<K, V>, java.lang.Class<K>, java.lang.Class<V>);
    descriptor: (Ljava/util/NavigableMap;Ljava/lang/Class;Ljava/lang/Class;)Ljava/util/NavigableMap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // java.util.NavigableMap m
        start local 1 // java.lang.Class keyType
        start local 2 // java.lang.Class valueType
         0: .line 4034
            new java.util.Collections$CheckedNavigableMap
            dup
            aload 0 /* m */
            aload 1 /* keyType */
            aload 2 /* valueType */
            invokespecial java.util.Collections$CheckedNavigableMap.<init>:(Ljava/util/NavigableMap;Ljava/lang/Class;Ljava/lang/Class;)V
            areturn
        end local 2 // java.lang.Class valueType
        end local 1 // java.lang.Class keyType
        end local 0 // java.util.NavigableMap m
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0          m  Ljava/util/NavigableMap<TK;TV;>;
            0    1     1    keyType  Ljava/lang/Class<TK;>;
            0    1     2  valueType  Ljava/lang/Class<TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/NavigableMap<TK;TV;>;Ljava/lang/Class<TK;>;Ljava/lang/Class<TV;>;)Ljava/util/NavigableMap<TK;TV;>;
    MethodParameters:
           Name  Flags
      m          
      keyType    
      valueType  

  public static <T> java.util.Iterator<T> emptyIterator();
    descriptor: ()Ljava/util/Iterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 4189
            getstatic java.util.Collections$EmptyIterator.EMPTY_ITERATOR:Ljava/util/Collections$EmptyIterator;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <T:Ljava/lang/Object;>()Ljava/util/Iterator<TT;>;

  public static <T> java.util.ListIterator<T> emptyListIterator();
    descriptor: ()Ljava/util/ListIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 4233
            getstatic java.util.Collections$EmptyListIterator.EMPTY_ITERATOR:Ljava/util/Collections$EmptyListIterator;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <T:Ljava/lang/Object;>()Ljava/util/ListIterator<TT;>;

  public static <T> java.util.Enumeration<T> emptyEnumeration();
    descriptor: ()Ljava/util/Enumeration;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 4270
            getstatic java.util.Collections$EmptyEnumeration.EMPTY_ENUMERATION:Ljava/util/Collections$EmptyEnumeration;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <T:Ljava/lang/Object;>()Ljava/util/Enumeration<TT;>;

  public static final <T> java.util.Set<T> emptySet();
    descriptor: ()Ljava/util/Set;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=1, locals=0, args_size=0
         0: .line 4311
            getstatic java.util.Collections.EMPTY_SET:Ljava/util/Set;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <T:Ljava/lang/Object;>()Ljava/util/Set<TT;>;

  public static <E> java.util.SortedSet<E> emptySortedSet();
    descriptor: ()Ljava/util/SortedSet;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 4382
            getstatic java.util.Collections$UnmodifiableNavigableSet.EMPTY_NAVIGABLE_SET:Ljava/util/NavigableSet;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <E:Ljava/lang/Object;>()Ljava/util/SortedSet<TE;>;

  public static <E> java.util.NavigableSet<E> emptyNavigableSet();
    descriptor: ()Ljava/util/NavigableSet;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 4403
            getstatic java.util.Collections$UnmodifiableNavigableSet.EMPTY_NAVIGABLE_SET:Ljava/util/NavigableSet;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <E:Ljava/lang/Object;>()Ljava/util/NavigableSet<TE;>;

  public static final <T> java.util.List<T> emptyList();
    descriptor: ()Ljava/util/List;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=1, locals=0, args_size=0
         0: .line 4436
            getstatic java.util.Collections.EMPTY_LIST:Ljava/util/List;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <T:Ljava/lang/Object;>()Ljava/util/List<TT;>;

  public static final <K, V> java.util.Map<K, V> emptyMap();
    descriptor: ()Ljava/util/Map;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=1, locals=0, args_size=0
         0: .line 4536
            getstatic java.util.Collections.EMPTY_MAP:Ljava/util/Map;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>()Ljava/util/Map<TK;TV;>;

  public static final <K, V> java.util.SortedMap<K, V> emptySortedMap();
    descriptor: ()Ljava/util/SortedMap;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=1, locals=0, args_size=0
         0: .line 4557
            getstatic java.util.Collections$UnmodifiableNavigableMap.EMPTY_NAVIGABLE_MAP:Ljava/util/Collections$UnmodifiableNavigableMap$EmptyNavigableMap;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>()Ljava/util/SortedMap<TK;TV;>;

  public static final <K, V> java.util.NavigableMap<K, V> emptyNavigableMap();
    descriptor: ()Ljava/util/NavigableMap;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=1, locals=0, args_size=0
         0: .line 4578
            getstatic java.util.Collections$UnmodifiableNavigableMap.EMPTY_NAVIGABLE_MAP:Ljava/util/Collections$UnmodifiableNavigableMap$EmptyNavigableMap;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>()Ljava/util/NavigableMap<TK;TV;>;

  public static <T> java.util.Set<T> singleton(T);
    descriptor: (Ljava/lang/Object;)Ljava/util/Set;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.Object o
         0: .line 4684
            new java.util.Collections$SingletonSet
            dup
            aload 0 /* o */
            invokespecial java.util.Collections$SingletonSet.<init>:(Ljava/lang/Object;)V
            areturn
        end local 0 // java.lang.Object o
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     o  TT;
    Signature: <T:Ljava/lang/Object;>(TT;)Ljava/util/Set<TT;>;
    MethodParameters:
      Name  Flags
      o     

  static <E> java.util.Iterator<E> singletonIterator(E);
    descriptor: (Ljava/lang/Object;)Ljava/util/Iterator;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.Object e
         0: .line 4688
            new java.util.Collections$1
            dup
            aload 0 /* e */
            invokespecial java.util.Collections$1.<init>:(Ljava/lang/Object;)V
            areturn
        end local 0 // java.lang.Object e
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     e  TE;
    Signature: <E:Ljava/lang/Object;>(TE;)Ljava/util/Iterator<TE;>;
    MethodParameters:
      Name  Flags
      e     final

  static <T> java.util.Spliterator<T> singletonSpliterator(T);
    descriptor: (Ljava/lang/Object;)Ljava/util/Spliterator;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.Object element
         0: .line 4721
            new java.util.Collections$2
            dup
            aload 0 /* element */
            invokespecial java.util.Collections$2.<init>:(Ljava/lang/Object;)V
            areturn
        end local 0 // java.lang.Object element
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  element  TT;
    Signature: <T:Ljava/lang/Object;>(TT;)Ljava/util/Spliterator<TT;>;
    MethodParameters:
         Name  Flags
      element  final

  public static <T> java.util.List<T> singletonList(T);
    descriptor: (Ljava/lang/Object;)Ljava/util/List;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.Object o
         0: .line 4810
            new java.util.Collections$SingletonList
            dup
            aload 0 /* o */
            invokespecial java.util.Collections$SingletonList.<init>:(Ljava/lang/Object;)V
            areturn
        end local 0 // java.lang.Object o
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     o  TT;
    Signature: <T:Ljava/lang/Object;>(TT;)Ljava/util/List<TT;>;
    MethodParameters:
      Name  Flags
      o     

  public static <K, V> java.util.Map<K, V> singletonMap(K, V);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Map;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.Object key
        start local 1 // java.lang.Object value
         0: .line 4879
            new java.util.Collections$SingletonMap
            dup
            aload 0 /* key */
            aload 1 /* value */
            invokespecial java.util.Collections$SingletonMap.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            areturn
        end local 1 // java.lang.Object value
        end local 0 // java.lang.Object key
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0    key  TK;
            0    1     1  value  TV;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(TK;TV;)Ljava/util/Map<TK;TV;>;
    MethodParameters:
       Name  Flags
      key    
      value  

  public static <T> java.util.List<T> nCopies(int, T);
    descriptor: (ILjava/lang/Object;)Ljava/util/List;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // int n
        start local 1 // java.lang.Object o
         0: .line 5013
            iload 0 /* n */
            ifge 2
         1: .line 5014
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "List length = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 0 /* n */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 5015
      StackMap locals:
      StackMap stack:
            new java.util.Collections$CopiesList
            dup
            iload 0 /* n */
            aload 1 /* o */
            invokespecial java.util.Collections$CopiesList.<init>:(ILjava/lang/Object;)V
            areturn
        end local 1 // java.lang.Object o
        end local 0 // int n
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     n  I
            0    3     1     o  TT;
    Signature: <T:Ljava/lang/Object;>(ITT;)Ljava/util/List<TT;>;
    MethodParameters:
      Name  Flags
      n     
      o     

  public static <T> java.util.Comparator<T> reverseOrder();
    descriptor: ()Ljava/util/Comparator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 5132
            getstatic java.util.Collections$ReverseComparator.REVERSE_ORDER:Ljava/util/Collections$ReverseComparator;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <T:Ljava/lang/Object;>()Ljava/util/Comparator<TT;>;

  public static <T> java.util.Comparator<T> reverseOrder(java.util.Comparator<T>);
    descriptor: (Ljava/util/Comparator;)Ljava/util/Comparator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.Comparator cmp
         0: .line 5176
            aload 0 /* cmp */
            ifnonnull 2
         1: .line 5177
            invokestatic java.util.Collections.reverseOrder:()Ljava/util/Comparator;
            areturn
         2: .line 5179
      StackMap locals:
      StackMap stack:
            aload 0 /* cmp */
            instanceof java.util.Collections$ReverseComparator2
            ifeq 4
         3: .line 5180
            aload 0 /* cmp */
            checkcast java.util.Collections$ReverseComparator2
            getfield java.util.Collections$ReverseComparator2.cmp:Ljava/util/Comparator;
            areturn
         4: .line 5182
      StackMap locals:
      StackMap stack:
            new java.util.Collections$ReverseComparator2
            dup
            aload 0 /* cmp */
            invokespecial java.util.Collections$ReverseComparator2.<init>:(Ljava/util/Comparator;)V
            areturn
        end local 0 // java.util.Comparator cmp
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0   cmp  Ljava/util/Comparator<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Comparator<TT;>;)Ljava/util/Comparator<TT;>;
    MethodParameters:
      Name  Flags
      cmp   

  public static <T> java.util.Enumeration<T> enumeration(java.util.Collection<T>);
    descriptor: (Ljava/util/Collection;)Ljava/util/Enumeration;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.Collection c
         0: .line 5243
            new java.util.Collections$3
            dup
            aload 0 /* c */
            invokespecial java.util.Collections$3.<init>:(Ljava/util/Collection;)V
            areturn
        end local 0 // java.util.Collection c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     c  Ljava/util/Collection<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Collection<TT;>;)Ljava/util/Enumeration<TT;>;
    MethodParameters:
      Name  Flags
      c     final

  public static <T> java.util.ArrayList<T> list(java.util.Enumeration<T>);
    descriptor: (Ljava/util/Enumeration;)Ljava/util/ArrayList;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.util.Enumeration e
         0: .line 5273
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* l */
        start local 1 // java.util.ArrayList l
         1: .line 5274
            goto 3
         2: .line 5275
      StackMap locals: java.util.ArrayList
      StackMap stack:
            aload 1 /* l */
            aload 0 /* e */
            invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         3: .line 5274
      StackMap locals:
      StackMap stack:
            aload 0 /* e */
            invokeinterface java.util.Enumeration.hasMoreElements:()Z
            ifne 2
         4: .line 5276
            aload 1 /* l */
            areturn
        end local 1 // java.util.ArrayList l
        end local 0 // java.util.Enumeration e
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0     e  Ljava/util/Enumeration<TT;>;
            1    5     1     l  Ljava/util/ArrayList<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Enumeration<TT;>;)Ljava/util/ArrayList<TT;>;
    MethodParameters:
      Name  Flags
      e     

  static boolean eq(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.Object o1
        start local 1 // java.lang.Object o2
         0: .line 5285
            aload 0 /* o1 */
            ifnonnull 2
            aload 1 /* o2 */
            ifnonnull 1
            iconst_1
            goto 3
      StackMap locals:
      StackMap stack:
         1: iconst_0
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 0 /* o1 */
            aload 1 /* o2 */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
      StackMap locals:
      StackMap stack: int
         3: ireturn
        end local 1 // java.lang.Object o2
        end local 0 // java.lang.Object o1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0    o1  Ljava/lang/Object;
            0    4     1    o2  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      o1    
      o2    

  public static int frequency(java.util.Collection<?>, );
    descriptor: (Ljava/util/Collection;Ljava/lang/Object;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // java.util.Collection c
        start local 1 // java.lang.Object o
         0: .line 5302
            iconst_0
            istore 2 /* result */
        start local 2 // int result
         1: .line 5303
            aload 1 /* o */
            ifnonnull 8
         2: .line 5304
            aload 0 /* c */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 4
            goto 6
      StackMap locals: java.util.Collection java.lang.Object int top java.util.Iterator
      StackMap stack:
         3: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 3 /* e */
        start local 3 // java.lang.Object e
         4: .line 5305
            aload 3 /* e */
            ifnonnull 6
         5: .line 5306
            iinc 2 /* result */ 1
        end local 3 // java.lang.Object e
         6: .line 5304
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         7: .line 5307
            goto 13
         8: .line 5308
      StackMap locals: java.util.Collection java.lang.Object int
      StackMap stack:
            aload 0 /* c */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 4
            goto 12
      StackMap locals: java.util.Collection java.lang.Object int top java.util.Iterator
      StackMap stack:
         9: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 3 /* e */
        start local 3 // java.lang.Object e
        10: .line 5309
            aload 1 /* o */
            aload 3 /* e */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 12
        11: .line 5310
            iinc 2 /* result */ 1
        end local 3 // java.lang.Object e
        12: .line 5308
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        13: .line 5312
      StackMap locals: java.util.Collection java.lang.Object int
      StackMap stack:
            iload 2 /* result */
            ireturn
        end local 2 // int result
        end local 1 // java.lang.Object o
        end local 0 // java.util.Collection c
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   14     0       c  Ljava/util/Collection<*>;
            0   14     1       o  Ljava/lang/Object;
            1   14     2  result  I
            4    6     3       e  Ljava/lang/Object;
           10   12     3       e  Ljava/lang/Object;
    Signature: (Ljava/util/Collection<*>;Ljava/lang/Object;)I
    MethodParameters:
      Name  Flags
      c     
      o     

  public static boolean disjoint(java.util.Collection<?>, java.util.Collection<?>);
    descriptor: (Ljava/util/Collection;Ljava/util/Collection;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // java.util.Collection c1
        start local 1 // java.util.Collection c2
         0: .line 5356
            aload 1 /* c2 */
            astore 2 /* contains */
        start local 2 // java.util.Collection contains
         1: .line 5362
            aload 0 /* c1 */
            astore 3 /* iterate */
        start local 3 // java.util.Collection iterate
         2: .line 5369
            aload 0 /* c1 */
            instanceof java.util.Set
            ifeq 6
         3: .line 5372
            aload 1 /* c2 */
            astore 3 /* iterate */
         4: .line 5373
            aload 0 /* c1 */
            astore 2 /* contains */
         5: .line 5374
            goto 14
      StackMap locals: java.util.Collection java.util.Collection
      StackMap stack:
         6: aload 1 /* c2 */
            instanceof java.util.Set
            ifne 14
         7: .line 5381
            aload 0 /* c1 */
            invokeinterface java.util.Collection.size:()I
            istore 4 /* c1size */
        start local 4 // int c1size
         8: .line 5382
            aload 1 /* c2 */
            invokeinterface java.util.Collection.size:()I
            istore 5 /* c2size */
        start local 5 // int c2size
         9: .line 5383
            iload 4 /* c1size */
            ifeq 10
            iload 5 /* c2size */
            ifne 11
        10: .line 5385
      StackMap locals: int int
      StackMap stack:
            iconst_1
            ireturn
        11: .line 5388
      StackMap locals:
      StackMap stack:
            iload 4 /* c1size */
            iload 5 /* c2size */
            if_icmple 14
        12: .line 5389
            aload 1 /* c2 */
            astore 3 /* iterate */
        13: .line 5390
            aload 0 /* c1 */
            astore 2 /* contains */
        end local 5 // int c2size
        end local 4 // int c1size
        14: .line 5394
      StackMap locals:
      StackMap stack:
            aload 3 /* iterate */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 5
            goto 18
      StackMap locals: java.util.Collection java.util.Collection java.util.Collection java.util.Collection top java.util.Iterator
      StackMap stack:
        15: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 4 /* e */
        start local 4 // java.lang.Object e
        16: .line 5395
            aload 2 /* contains */
            aload 4 /* e */
            invokeinterface java.util.Collection.contains:(Ljava/lang/Object;)Z
            ifeq 18
        17: .line 5397
            iconst_0
            ireturn
        end local 4 // java.lang.Object e
        18: .line 5394
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 15
        19: .line 5402
            iconst_1
            ireturn
        end local 3 // java.util.Collection iterate
        end local 2 // java.util.Collection contains
        end local 1 // java.util.Collection c2
        end local 0 // java.util.Collection c1
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   20     0        c1  Ljava/util/Collection<*>;
            0   20     1        c2  Ljava/util/Collection<*>;
            1   20     2  contains  Ljava/util/Collection<*>;
            2   20     3   iterate  Ljava/util/Collection<*>;
            8   14     4    c1size  I
            9   14     5    c2size  I
           16   18     4         e  Ljava/lang/Object;
    Signature: (Ljava/util/Collection<*>;Ljava/util/Collection<*>;)Z
    MethodParameters:
      Name  Flags
      c1    
      c2    

  public static <T> boolean addAll(java.util.Collection<? super T>, );
    descriptor: (Ljava/util/Collection;[Ljava/lang/Object;)Z
    flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // java.util.Collection c
        start local 1 // java.lang.Object[] elements
         0: .line 5434
            iconst_0
            istore 2 /* result */
        start local 2 // boolean result
         1: .line 5435
            aload 1 /* elements */
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 5
      StackMap locals: java.util.Collection java.lang.Object[] int top int int java.lang.Object[]
      StackMap stack:
         2: aload 6
            iload 4
            aaload
            astore 3 /* element */
        start local 3 // java.lang.Object element
         3: .line 5436
            iload 2 /* result */
            aload 0 /* c */
            aload 3 /* element */
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            ior
            istore 2 /* result */
        end local 3 // java.lang.Object element
         4: .line 5435
            iinc 4 1
      StackMap locals:
      StackMap stack:
         5: iload 4
            iload 5
            if_icmplt 2
         6: .line 5437
            iload 2 /* result */
            ireturn
        end local 2 // boolean result
        end local 1 // java.lang.Object[] elements
        end local 0 // java.util.Collection c
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0         c  Ljava/util/Collection<-TT;>;
            0    7     1  elements  [Ljava/lang/Object;
            1    7     2    result  Z
            3    4     3   element  TT;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Collection<-TT;>;[TT;)Z
    RuntimeVisibleAnnotations: 
      java.lang.SafeVarargs()
    MethodParameters:
          Name  Flags
      c         
      elements  

  public static <E> java.util.Set<E> newSetFromMap(java.util.Map<E, java.lang.Boolean>);
    descriptor: (Ljava/util/Map;)Ljava/util/Set;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.Map map
         0: .line 5472
            new java.util.Collections$SetFromMap
            dup
            aload 0 /* map */
            invokespecial java.util.Collections$SetFromMap.<init>:(Ljava/util/Map;)V
            areturn
        end local 0 // java.util.Map map
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   map  Ljava/util/Map<TE;Ljava/lang/Boolean;>;
    Signature: <E:Ljava/lang/Object;>(Ljava/util/Map<TE;Ljava/lang/Boolean;>;)Ljava/util/Set<TE;>;
    MethodParameters:
      Name  Flags
      map   

  public static <T> java.util.Queue<T> asLifoQueue(java.util.Deque<T>);
    descriptor: (Ljava/util/Deque;)Ljava/util/Queue;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.Deque deque
         0: .line 5554
            new java.util.Collections$AsLIFOQueue
            dup
            aload 0 /* deque */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Deque
            invokespecial java.util.Collections$AsLIFOQueue.<init>:(Ljava/util/Deque;)V
            areturn
        end local 0 // java.util.Deque deque
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  deque  Ljava/util/Deque<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Deque<TT;>;)Ljava/util/Queue<TT;>;
    MethodParameters:
       Name  Flags
      deque  
}
SourceFile: "Collections.java"
NestMembers:
  java.util.Collections$1  java.util.Collections$2  java.util.Collections$3  java.util.Collections$AsLIFOQueue  java.util.Collections$CheckedCollection  java.util.Collections$CheckedCollection$1  java.util.Collections$CheckedList  java.util.Collections$CheckedList$1  java.util.Collections$CheckedMap  java.util.Collections$CheckedMap$CheckedEntrySet  java.util.Collections$CheckedMap$CheckedEntrySet$1  java.util.Collections$CheckedMap$CheckedEntrySet$CheckedEntry  java.util.Collections$CheckedNavigableMap  java.util.Collections$CheckedNavigableSet  java.util.Collections$CheckedQueue  java.util.Collections$CheckedRandomAccessList  java.util.Collections$CheckedSet  java.util.Collections$CheckedSortedMap  java.util.Collections$CheckedSortedSet  java.util.Collections$CopiesList  java.util.Collections$EmptyEnumeration  java.util.Collections$EmptyIterator  java.util.Collections$EmptyList  java.util.Collections$EmptyListIterator  java.util.Collections$EmptyMap  java.util.Collections$EmptySet  java.util.Collections$ReverseComparator  java.util.Collections$ReverseComparator2  java.util.Collections$SetFromMap  java.util.Collections$SingletonList  java.util.Collections$SingletonMap  java.util.Collections$SingletonSet  java.util.Collections$SynchronizedCollection  java.util.Collections$SynchronizedList  java.util.Collections$SynchronizedMap  java.util.Collections$SynchronizedNavigableMap  java.util.Collections$SynchronizedNavigableSet  java.util.Collections$SynchronizedRandomAccessList  java.util.Collections$SynchronizedSet  java.util.Collections$SynchronizedSortedMap  java.util.Collections$SynchronizedSortedSet  java.util.Collections$UnmodifiableCollection  java.util.Collections$UnmodifiableCollection$1  java.util.Collections$UnmodifiableList  java.util.Collections$UnmodifiableList$1  java.util.Collections$UnmodifiableMap  java.util.Collections$UnmodifiableMap$UnmodifiableEntrySet  java.util.Collections$UnmodifiableMap$UnmodifiableEntrySet$1  java.util.Collections$UnmodifiableMap$UnmodifiableEntrySet$UnmodifiableEntry  java.util.Collections$UnmodifiableMap$UnmodifiableEntrySet$UnmodifiableEntrySetSpliterator  java.util.Collections$UnmodifiableNavigableMap  java.util.Collections$UnmodifiableNavigableMap$EmptyNavigableMap  java.util.Collections$UnmodifiableNavigableSet  java.util.Collections$UnmodifiableNavigableSet$EmptyNavigableSet  java.util.Collections$UnmodifiableRandomAccessList  java.util.Collections$UnmodifiableSet  java.util.Collections$UnmodifiableSortedMap  java.util.Collections$UnmodifiableSortedSet
InnerClasses:
  java.util.Collections$1
  java.util.Collections$2
  java.util.Collections$3
  AsLIFOQueue = java.util.Collections$AsLIFOQueue of java.util.Collections
  CheckedCollection = java.util.Collections$CheckedCollection of java.util.Collections
  CheckedList = java.util.Collections$CheckedList of java.util.Collections
  private CheckedMap = java.util.Collections$CheckedMap of java.util.Collections
  CheckedNavigableMap = java.util.Collections$CheckedNavigableMap of java.util.Collections
  CheckedNavigableSet = java.util.Collections$CheckedNavigableSet of java.util.Collections
  CheckedQueue = java.util.Collections$CheckedQueue of java.util.Collections
  CheckedRandomAccessList = java.util.Collections$CheckedRandomAccessList of java.util.Collections
  CheckedSet = java.util.Collections$CheckedSet of java.util.Collections
  CheckedSortedMap = java.util.Collections$CheckedSortedMap of java.util.Collections
  CheckedSortedSet = java.util.Collections$CheckedSortedSet of java.util.Collections
  private CopiesList = java.util.Collections$CopiesList of java.util.Collections
  private EmptyEnumeration = java.util.Collections$EmptyEnumeration of java.util.Collections
  private EmptyIterator = java.util.Collections$EmptyIterator of java.util.Collections
  private EmptyList = java.util.Collections$EmptyList of java.util.Collections
  private EmptyListIterator = java.util.Collections$EmptyListIterator of java.util.Collections
  private EmptyMap = java.util.Collections$EmptyMap of java.util.Collections
  private EmptySet = java.util.Collections$EmptySet of java.util.Collections
  private ReverseComparator = java.util.Collections$ReverseComparator of java.util.Collections
  private ReverseComparator2 = java.util.Collections$ReverseComparator2 of java.util.Collections
  private SetFromMap = java.util.Collections$SetFromMap of java.util.Collections
  private SingletonList = java.util.Collections$SingletonList of java.util.Collections
  private SingletonMap = java.util.Collections$SingletonMap of java.util.Collections
  private SingletonSet = java.util.Collections$SingletonSet of java.util.Collections
  SynchronizedCollection = java.util.Collections$SynchronizedCollection of java.util.Collections
  SynchronizedList = java.util.Collections$SynchronizedList of java.util.Collections
  private SynchronizedMap = java.util.Collections$SynchronizedMap of java.util.Collections
  SynchronizedNavigableMap = java.util.Collections$SynchronizedNavigableMap of java.util.Collections
  SynchronizedNavigableSet = java.util.Collections$SynchronizedNavigableSet of java.util.Collections
  SynchronizedRandomAccessList = java.util.Collections$SynchronizedRandomAccessList of java.util.Collections
  SynchronizedSet = java.util.Collections$SynchronizedSet of java.util.Collections
  SynchronizedSortedMap = java.util.Collections$SynchronizedSortedMap of java.util.Collections
  SynchronizedSortedSet = java.util.Collections$SynchronizedSortedSet of java.util.Collections
  UnmodifiableCollection = java.util.Collections$UnmodifiableCollection of java.util.Collections
  UnmodifiableList = java.util.Collections$UnmodifiableList of java.util.Collections
  private UnmodifiableMap = java.util.Collections$UnmodifiableMap of java.util.Collections
  UnmodifiableNavigableMap = java.util.Collections$UnmodifiableNavigableMap of java.util.Collections
  UnmodifiableNavigableSet = java.util.Collections$UnmodifiableNavigableSet of java.util.Collections
  UnmodifiableRandomAccessList = java.util.Collections$UnmodifiableRandomAccessList of java.util.Collections
  UnmodifiableSet = java.util.Collections$UnmodifiableSet of java.util.Collections
  UnmodifiableSortedMap = java.util.Collections$UnmodifiableSortedMap of java.util.Collections
  UnmodifiableSortedSet = java.util.Collections$UnmodifiableSortedSet of java.util.Collections