public class com.sun.javafx.collections.SortHelper
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.javafx.collections.SortHelper
  super_class: java.lang.Object
{
  private int[] permutation;
    descriptor: [I
    flags: (0x0002) ACC_PRIVATE

  private int[] reversePermutation;
    descriptor: [I
    flags: (0x0002) ACC_PRIVATE

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

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.javafx.collections.SortHelper this
         0: .line 38
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.sun.javafx.collections.SortHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/javafx/collections/SortHelper;

  public <T extends java.lang.Comparable<? super T>> int[] sort(java.util.List<T>);
    descriptor: (Ljava/util/List;)[I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.sun.javafx.collections.SortHelper this
        start local 1 // java.util.List list
         0: .line 45
            ldc Ljava/lang/Comparable;
            aload 1 /* list */
            invokeinterface java.util.List.size:()I
            invokestatic java.lang.reflect.Array.newInstance:(Ljava/lang/Class;I)Ljava/lang/Object;
            checkcast java.lang.Comparable[]
            astore 2 /* a */
        start local 2 // java.lang.Comparable[] a
         1: .line 47
            aload 1 /* list */
            aload 2 /* a */
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.Comparable[]
            astore 2 /* a */
         2: .line 48
            goto 5
      StackMap locals: com.sun.javafx.collections.SortHelper java.util.List java.lang.Comparable[]
      StackMap stack: java.lang.ArrayStoreException
         3: pop
         4: .line 50
            new java.lang.ClassCastException
            dup
            invokespecial java.lang.ClassCastException.<init>:()V
            athrow
         5: .line 52
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* a */
            invokevirtual com.sun.javafx.collections.SortHelper.sort:([Ljava/lang/Comparable;)[I
            astore 3 /* result */
        start local 3 // int[] result
         6: .line 53
            aload 1 /* list */
            invokeinterface java.util.List.listIterator:()Ljava/util/ListIterator;
            astore 4 /* i */
        start local 4 // java.util.ListIterator i
         7: .line 54
            iconst_0
            istore 5 /* j */
        start local 5 // int j
         8: goto 12
         9: .line 55
      StackMap locals: int[] java.util.ListIterator int
      StackMap stack:
            aload 4 /* i */
            invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
            pop
        10: .line 56
            aload 4 /* i */
            aload 2 /* a */
            iload 5 /* j */
            aaload
            invokeinterface java.util.ListIterator.set:(Ljava/lang/Object;)V
        11: .line 54
            iinc 5 /* j */ 1
      StackMap locals:
      StackMap stack:
        12: iload 5 /* j */
            aload 2 /* a */
            arraylength
            if_icmplt 9
        end local 5 // int j
        13: .line 58
            aload 3 /* result */
            areturn
        end local 4 // java.util.ListIterator i
        end local 3 // int[] result
        end local 2 // java.lang.Comparable[] a
        end local 1 // java.util.List list
        end local 0 // com.sun.javafx.collections.SortHelper this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   14     0    this  Lcom/sun/javafx/collections/SortHelper;
            0   14     1    list  Ljava/util/List<TT;>;
            1   14     2       a  [Ljava/lang/Comparable;
            6   14     3  result  [I
            7   14     4       i  Ljava/util/ListIterator<TT;>;
            8   13     5       j  I
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.ArrayStoreException
    Signature: <T::Ljava/lang/Comparable<-TT;>;>(Ljava/util/List<TT;>;)[I
    MethodParameters:
      Name  Flags
      list  

  public <T> int[] sort(java.util.List<T>, java.util.Comparator<? super T>);
    descriptor: (Ljava/util/List;Ljava/util/Comparator;)[I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=3
        start local 0 // com.sun.javafx.collections.SortHelper this
        start local 1 // java.util.List list
        start local 2 // java.util.Comparator c
         0: .line 62
            aload 1 /* list */
            invokeinterface java.util.List.toArray:()[Ljava/lang/Object;
            astore 3 /* a */
        start local 3 // java.lang.Object[] a
         1: .line 63
            aload 0 /* this */
            aload 3 /* a */
            aload 2 /* c */
            invokevirtual com.sun.javafx.collections.SortHelper.sort:([Ljava/lang/Object;Ljava/util/Comparator;)[I
            astore 4 /* result */
        start local 4 // int[] result
         2: .line 64
            aload 1 /* list */
            invokeinterface java.util.List.listIterator:()Ljava/util/ListIterator;
            astore 5 /* i */
        start local 5 // java.util.ListIterator i
         3: .line 65
            iconst_0
            istore 6 /* j */
        start local 6 // int j
         4: goto 8
         5: .line 66
      StackMap locals: com.sun.javafx.collections.SortHelper java.util.List java.util.Comparator java.lang.Object[] int[] java.util.ListIterator int
      StackMap stack:
            aload 5 /* i */
            invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
            pop
         6: .line 67
            aload 5 /* i */
            aload 3 /* a */
            iload 6 /* j */
            aaload
            invokeinterface java.util.ListIterator.set:(Ljava/lang/Object;)V
         7: .line 65
            iinc 6 /* j */ 1
      StackMap locals:
      StackMap stack:
         8: iload 6 /* j */
            aload 3 /* a */
            arraylength
            if_icmplt 5
        end local 6 // int j
         9: .line 69
            aload 4 /* result */
            areturn
        end local 5 // java.util.ListIterator i
        end local 4 // int[] result
        end local 3 // java.lang.Object[] a
        end local 2 // java.util.Comparator c
        end local 1 // java.util.List list
        end local 0 // com.sun.javafx.collections.SortHelper this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Lcom/sun/javafx/collections/SortHelper;
            0   10     1    list  Ljava/util/List<TT;>;
            0   10     2       c  Ljava/util/Comparator<-TT;>;
            1   10     3       a  [Ljava/lang/Object;
            2   10     4  result  [I
            3   10     5       i  Ljava/util/ListIterator;
            4    9     6       j  I
    Signature: <T:Ljava/lang/Object;>(Ljava/util/List<TT;>;Ljava/util/Comparator<-TT;>;)[I
    MethodParameters:
      Name  Flags
      list  
      c     

  public <T extends java.lang.Comparable<? super T>> int[] sort();
    descriptor: ([Ljava/lang/Comparable;)[I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.javafx.collections.SortHelper this
        start local 1 // java.lang.Comparable[] a
         0: .line 73
            aload 0 /* this */
            aload 1 /* a */
            aconst_null
            invokevirtual com.sun.javafx.collections.SortHelper.sort:([Ljava/lang/Object;Ljava/util/Comparator;)[I
            areturn
        end local 1 // java.lang.Comparable[] a
        end local 0 // com.sun.javafx.collections.SortHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/javafx/collections/SortHelper;
            0    1     1     a  [Ljava/lang/Comparable;
    Signature: <T::Ljava/lang/Comparable<-TT;>;>([TT;)[I
    MethodParameters:
      Name  Flags
      a     

  public <T> int[] sort(T[], java.util.Comparator<? super T>);
    descriptor: ([Ljava/lang/Object;Ljava/util/Comparator;)[I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=3
        start local 0 // com.sun.javafx.collections.SortHelper this
        start local 1 // java.lang.Object[] a
        start local 2 // java.util.Comparator c
         0: .line 77
            aload 1 /* a */
            invokevirtual java.lang.Object[].clone:()Ljava/lang/Object;
            checkcast java.lang.Object[]
            astore 3 /* aux */
        start local 3 // java.lang.Object[] aux
         1: .line 78
            aload 0 /* this */
            aload 1 /* a */
            arraylength
            invokevirtual com.sun.javafx.collections.SortHelper.initPermutation:(I)[I
            astore 4 /* result */
        start local 4 // int[] result
         2: .line 79
            aload 2 /* c */
            ifnonnull 4
         3: .line 80
            aload 0 /* this */
            aload 3 /* aux */
            aload 1 /* a */
            iconst_0
            aload 1 /* a */
            arraylength
            iconst_0
            invokevirtual com.sun.javafx.collections.SortHelper.mergeSort:([Ljava/lang/Object;[Ljava/lang/Object;III)V
            goto 5
         4: .line 82
      StackMap locals: java.lang.Object[] int[]
      StackMap stack:
            aload 0 /* this */
            aload 3 /* aux */
            aload 1 /* a */
            iconst_0
            aload 1 /* a */
            arraylength
            iconst_0
            aload 2 /* c */
            invokevirtual com.sun.javafx.collections.SortHelper.mergeSort:([Ljava/lang/Object;[Ljava/lang/Object;IIILjava/util/Comparator;)V
         5: .line 83
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
         6: .line 84
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.collections.SortHelper.permutation:[I
         7: .line 85
            aload 4 /* result */
            areturn
        end local 4 // int[] result
        end local 3 // java.lang.Object[] aux
        end local 2 // java.util.Comparator c
        end local 1 // java.lang.Object[] a
        end local 0 // com.sun.javafx.collections.SortHelper this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lcom/sun/javafx/collections/SortHelper;
            0    8     1       a  [Ljava/lang/Object;
            0    8     2       c  Ljava/util/Comparator<-TT;>;
            1    8     3     aux  [Ljava/lang/Object;
            2    8     4  result  [I
    Signature: <T:Ljava/lang/Object;>([TT;Ljava/util/Comparator<-TT;>;)[I
    MethodParameters:
      Name  Flags
      a     
      c     

  public <T> int[] sort(T[], int, int, java.util.Comparator<? super T>);
    descriptor: ([Ljava/lang/Object;IILjava/util/Comparator;)[I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=7, args_size=5
        start local 0 // com.sun.javafx.collections.SortHelper this
        start local 1 // java.lang.Object[] a
        start local 2 // int fromIndex
        start local 3 // int toIndex
        start local 4 // java.util.Comparator c
         0: .line 90
            aload 1 /* a */
            arraylength
            iload 2 /* fromIndex */
            iload 3 /* toIndex */
            invokestatic com.sun.javafx.collections.SortHelper.rangeCheck:(III)V
         1: .line 91
            aload 1 /* a */
            iload 2 /* fromIndex */
            iload 3 /* toIndex */
            invokestatic com.sun.javafx.collections.SortHelper.copyOfRange:([Ljava/lang/Object;II)[Ljava/lang/Object;
            astore 5 /* aux */
        start local 5 // java.lang.Object[] aux
         2: .line 92
            aload 0 /* this */
            aload 1 /* a */
            arraylength
            invokevirtual com.sun.javafx.collections.SortHelper.initPermutation:(I)[I
            astore 6 /* result */
        start local 6 // int[] result
         3: .line 93
            aload 4 /* c */
            ifnonnull 5
         4: .line 94
            aload 0 /* this */
            aload 5 /* aux */
            aload 1 /* a */
            iload 2 /* fromIndex */
            iload 3 /* toIndex */
            iload 2 /* fromIndex */
            ineg
            invokevirtual com.sun.javafx.collections.SortHelper.mergeSort:([Ljava/lang/Object;[Ljava/lang/Object;III)V
            goto 6
         5: .line 96
      StackMap locals: java.lang.Object[] int[]
      StackMap stack:
            aload 0 /* this */
            aload 5 /* aux */
            aload 1 /* a */
            iload 2 /* fromIndex */
            iload 3 /* toIndex */
            iload 2 /* fromIndex */
            ineg
            aload 4 /* c */
            invokevirtual com.sun.javafx.collections.SortHelper.mergeSort:([Ljava/lang/Object;[Ljava/lang/Object;IIILjava/util/Comparator;)V
         6: .line 97
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
         7: .line 98
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.collections.SortHelper.permutation:[I
         8: .line 99
            aload 6 /* result */
            iload 2 /* fromIndex */
            iload 3 /* toIndex */
            invokestatic java.util.Arrays.copyOfRange:([III)[I
            areturn
        end local 6 // int[] result
        end local 5 // java.lang.Object[] aux
        end local 4 // java.util.Comparator c
        end local 3 // int toIndex
        end local 2 // int fromIndex
        end local 1 // java.lang.Object[] a
        end local 0 // com.sun.javafx.collections.SortHelper this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0       this  Lcom/sun/javafx/collections/SortHelper;
            0    9     1          a  [Ljava/lang/Object;
            0    9     2  fromIndex  I
            0    9     3    toIndex  I
            0    9     4          c  Ljava/util/Comparator<-TT;>;
            2    9     5        aux  [Ljava/lang/Object;
            3    9     6     result  [I
    Signature: <T:Ljava/lang/Object;>([TT;IILjava/util/Comparator<-TT;>;)[I
    MethodParameters:
           Name  Flags
      a          
      fromIndex  
      toIndex    
      c          

  public int[] sort(int[], int, int);
    descriptor: ([III)[I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=4
        start local 0 // com.sun.javafx.collections.SortHelper this
        start local 1 // int[] a
        start local 2 // int fromIndex
        start local 3 // int toIndex
         0: .line 103
            aload 1 /* a */
            arraylength
            iload 2 /* fromIndex */
            iload 3 /* toIndex */
            invokestatic com.sun.javafx.collections.SortHelper.rangeCheck:(III)V
         1: .line 104
            aload 1 /* a */
            iload 2 /* fromIndex */
            iload 3 /* toIndex */
            invokestatic com.sun.javafx.collections.SortHelper.copyOfRange:([III)[I
            astore 4 /* aux */
        start local 4 // int[] aux
         2: .line 105
            aload 0 /* this */
            aload 1 /* a */
            arraylength
            invokevirtual com.sun.javafx.collections.SortHelper.initPermutation:(I)[I
            astore 5 /* result */
        start local 5 // int[] result
         3: .line 106
            aload 0 /* this */
            aload 4 /* aux */
            aload 1 /* a */
            iload 2 /* fromIndex */
            iload 3 /* toIndex */
            iload 2 /* fromIndex */
            ineg
            invokevirtual com.sun.javafx.collections.SortHelper.mergeSort:([I[IIII)V
         4: .line 107
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
         5: .line 108
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.collections.SortHelper.permutation:[I
         6: .line 109
            aload 5 /* result */
            iload 2 /* fromIndex */
            iload 3 /* toIndex */
            invokestatic java.util.Arrays.copyOfRange:([III)[I
            areturn
        end local 5 // int[] result
        end local 4 // int[] aux
        end local 3 // int toIndex
        end local 2 // int fromIndex
        end local 1 // int[] a
        end local 0 // com.sun.javafx.collections.SortHelper this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Lcom/sun/javafx/collections/SortHelper;
            0    7     1          a  [I
            0    7     2  fromIndex  I
            0    7     3    toIndex  I
            2    7     4        aux  [I
            3    7     5     result  [I
    MethodParameters:
           Name  Flags
      a          
      fromIndex  
      toIndex    

  private static void rangeCheck(int, int, int);
    descriptor: (III)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // int arrayLen
        start local 1 // int fromIndex
        start local 2 // int toIndex
         0: .line 113
            iload 1 /* fromIndex */
            iload 2 /* toIndex */
            if_icmple 4
         1: .line 114
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "fromIndex("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* fromIndex */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         2: .line 115
            ldc ") > toIndex("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 2 /* toIndex */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 114
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 116
      StackMap locals:
      StackMap stack:
            iload 1 /* fromIndex */
            ifge 6
         5: .line 117
            new java.lang.ArrayIndexOutOfBoundsException
            dup
            iload 1 /* fromIndex */
            invokespecial java.lang.ArrayIndexOutOfBoundsException.<init>:(I)V
            athrow
         6: .line 118
      StackMap locals:
      StackMap stack:
            iload 2 /* toIndex */
            iload 0 /* arrayLen */
            if_icmple 8
         7: .line 119
            new java.lang.ArrayIndexOutOfBoundsException
            dup
            iload 2 /* toIndex */
            invokespecial java.lang.ArrayIndexOutOfBoundsException.<init>:(I)V
            athrow
         8: .line 120
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int toIndex
        end local 1 // int fromIndex
        end local 0 // int arrayLen
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0   arrayLen  I
            0    9     1  fromIndex  I
            0    9     2    toIndex  I
    MethodParameters:
           Name  Flags
      arrayLen   
      fromIndex  
      toIndex    

  private static int[] copyOfRange(int[], int, int);
    descriptor: ([III)[I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // int[] original
        start local 1 // int from
        start local 2 // int to
         0: .line 124
            iload 2 /* to */
            iload 1 /* from */
            isub
            istore 3 /* newLength */
        start local 3 // int newLength
         1: .line 125
            iload 3 /* newLength */
            ifge 3
         2: .line 126
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            iload 1 /* from */
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " > "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 2 /* to */
            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
         3: .line 127
      StackMap locals: int
      StackMap stack:
            iload 3 /* newLength */
            newarray 10
            astore 4 /* copy */
        start local 4 // int[] copy
         4: .line 128
            aload 0 /* original */
            iload 1 /* from */
            aload 4 /* copy */
            iconst_0
         5: .line 129
            aload 0 /* original */
            arraylength
            iload 1 /* from */
            isub
            iload 3 /* newLength */
            invokestatic java.lang.Math.min:(II)I
         6: .line 128
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         7: .line 130
            aload 4 /* copy */
            areturn
        end local 4 // int[] copy
        end local 3 // int newLength
        end local 2 // int to
        end local 1 // int from
        end local 0 // int[] original
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0   original  [I
            0    8     1       from  I
            0    8     2         to  I
            1    8     3  newLength  I
            4    8     4       copy  [I
    MethodParameters:
          Name  Flags
      original  
      from      
      to        

  private static <T> T[] copyOfRange(T[], int, );
    descriptor: ([Ljava/lang/Object;II)[Ljava/lang/Object;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // java.lang.Object[] original
        start local 1 // int from
        start local 2 // int to
         0: .line 134
            aload 0 /* original */
            iload 1 /* from */
            iload 2 /* to */
            aload 0 /* original */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokestatic com.sun.javafx.collections.SortHelper.copyOfRange:([Ljava/lang/Object;IILjava/lang/Class;)[Ljava/lang/Object;
            areturn
        end local 2 // int to
        end local 1 // int from
        end local 0 // java.lang.Object[] original
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  original  [Ljava/lang/Object;
            0    1     1      from  I
            0    1     2        to  I
    Signature: <T:Ljava/lang/Object;>([TT;II)[TT;
    MethodParameters:
          Name  Flags
      original  
      from      
      to        

  private static <T, U> T[] copyOfRange(U[], int, int, java.lang.Class<? extends T[]>);
    descriptor: ([Ljava/lang/Object;IILjava/lang/Class;)[Ljava/lang/Object;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=6, args_size=4
        start local 0 // java.lang.Object[] original
        start local 1 // int from
        start local 2 // int to
        start local 3 // java.lang.Class newType
         0: .line 138
            iload 2 /* to */
            iload 1 /* from */
            isub
            istore 4 /* newLength */
        start local 4 // int newLength
         1: .line 139
            iload 4 /* newLength */
            ifge 3
         2: .line 140
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            iload 1 /* from */
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " > "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 2 /* to */
            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
         3: .line 141
      StackMap locals: int
      StackMap stack:
            aload 3 /* newType */
            ldc [Ljava/lang/Object;
            if_acmpne 5
         4: .line 142
            iload 4 /* newLength */
            anewarray java.lang.Object
            goto 6
         5: .line 143
      StackMap locals:
      StackMap stack:
            aload 3 /* newType */
            invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
            iload 4 /* newLength */
            invokestatic java.lang.reflect.Array.newInstance:(Ljava/lang/Class;I)Ljava/lang/Object;
            checkcast java.lang.Object[]
         6: .line 141
      StackMap locals:
      StackMap stack: java.lang.Object[]
            astore 5 /* copy */
        start local 5 // java.lang.Object[] copy
         7: .line 144
            aload 0 /* original */
            iload 1 /* from */
            aload 5 /* copy */
            iconst_0
         8: .line 145
            aload 0 /* original */
            arraylength
            iload 1 /* from */
            isub
            iload 4 /* newLength */
            invokestatic java.lang.Math.min:(II)I
         9: .line 144
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        10: .line 146
            aload 5 /* copy */
            areturn
        end local 5 // java.lang.Object[] copy
        end local 4 // int newLength
        end local 3 // java.lang.Class newType
        end local 2 // int to
        end local 1 // int from
        end local 0 // java.lang.Object[] original
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0   original  [Ljava/lang/Object;
            0   11     1       from  I
            0   11     2         to  I
            0   11     3    newType  Ljava/lang/Class<+[TT;>;
            1   11     4  newLength  I
            7   11     5       copy  [Ljava/lang/Object;
    Signature: <T:Ljava/lang/Object;U:Ljava/lang/Object;>([TU;IILjava/lang/Class<+[TT;>;)[TT;
    MethodParameters:
          Name  Flags
      original  
      from      
      to        
      newType   

  private void mergeSort(int[], int[], int, int, int);
    descriptor: ([I[IIII)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=13, args_size=6
        start local 0 // com.sun.javafx.collections.SortHelper this
        start local 1 // int[] src
        start local 2 // int[] dest
        start local 3 // int low
        start local 4 // int high
        start local 5 // int off
         0: .line 157
            iload 4 /* high */
            iload 3 /* low */
            isub
            istore 6 /* length */
        start local 6 // int length
         1: .line 160
            iload 6 /* length */
            bipush 7
            if_icmpge 14
         2: .line 161
            iload 3 /* low */
            istore 7 /* i */
        start local 7 // int i
         3: goto 12
         4: .line 162
      StackMap locals: int int
      StackMap stack:
            iload 7 /* i */
            istore 8 /* j */
        start local 8 // int j
         5: goto 8
         6: .line 164
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 2 /* dest */
            iload 8 /* j */
            iload 8 /* j */
            iconst_1
            isub
            invokevirtual com.sun.javafx.collections.SortHelper.swap:([III)V
         7: .line 163
            iinc 8 /* j */ -1
         8: .line 162
      StackMap locals:
      StackMap stack:
            iload 8 /* j */
            iload 3 /* low */
            if_icmple 11
         9: .line 163
            aload 2 /* dest */
            iload 8 /* j */
            iconst_1
            isub
            iaload
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aload 2 /* dest */
            iload 8 /* j */
            iaload
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.lang.Comparable.compareTo:(Ljava/lang/Object;)I
        10: .line 162
            ifgt 6
        end local 8 // int j
        11: .line 161
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 7 /* i */
            iload 4 /* high */
            if_icmplt 4
        end local 7 // int i
        13: .line 165
            return
        14: .line 169
      StackMap locals:
      StackMap stack:
            iload 3 /* low */
            istore 7 /* destLow */
        start local 7 // int destLow
        15: .line 170
            iload 4 /* high */
            istore 8 /* destHigh */
        start local 8 // int destHigh
        16: .line 171
            iload 3 /* low */
            iload 5 /* off */
            iadd
            istore 3 /* low */
        17: .line 172
            iload 4 /* high */
            iload 5 /* off */
            iadd
            istore 4 /* high */
        18: .line 173
            iload 3 /* low */
            iload 4 /* high */
            iadd
            iconst_1
            iushr
            istore 9 /* mid */
        start local 9 // int mid
        19: .line 174
            aload 0 /* this */
            aload 2 /* dest */
            aload 1 /* src */
            iload 3 /* low */
            iload 9 /* mid */
            iload 5 /* off */
            ineg
            invokevirtual com.sun.javafx.collections.SortHelper.mergeSort:([I[IIII)V
        20: .line 175
            aload 0 /* this */
            aload 2 /* dest */
            aload 1 /* src */
            iload 9 /* mid */
            iload 4 /* high */
            iload 5 /* off */
            ineg
            invokevirtual com.sun.javafx.collections.SortHelper.mergeSort:([I[IIII)V
        21: .line 179
            aload 1 /* src */
            iload 9 /* mid */
            iconst_1
            isub
            iaload
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aload 1 /* src */
            iload 9 /* mid */
            iaload
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.lang.Comparable.compareTo:(Ljava/lang/Object;)I
            ifgt 24
        22: .line 180
            aload 1 /* src */
            iload 3 /* low */
            aload 2 /* dest */
            iload 7 /* destLow */
            iload 6 /* length */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        23: .line 181
            return
        24: .line 185
      StackMap locals: int int int
      StackMap stack:
            iload 7 /* destLow */
            istore 10 /* i */
        start local 10 // int i
        25: iload 3 /* low */
            istore 11 /* p */
        start local 11 // int p
        26: iload 9 /* mid */
            istore 12 /* q */
        start local 12 // int q
        27: goto 35
        28: .line 186
      StackMap locals: int int int
      StackMap stack:
            iload 12 /* q */
            iload 4 /* high */
            if_icmpge 29
            iload 11 /* p */
            iload 9 /* mid */
            if_icmpge 32
            aload 1 /* src */
            iload 11 /* p */
            iaload
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aload 1 /* src */
            iload 12 /* q */
            iaload
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.lang.Comparable.compareTo:(Ljava/lang/Object;)I
            ifgt 32
        29: .line 187
      StackMap locals:
      StackMap stack:
            aload 2 /* dest */
            iload 10 /* i */
            aload 1 /* src */
            iload 11 /* p */
            iaload
            iastore
        30: .line 188
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.permutation:[I
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
            iload 11 /* p */
            iinc 11 /* p */ 1
            iaload
            iload 10 /* i */
            iastore
        31: .line 189
            goto 34
        32: .line 190
      StackMap locals:
      StackMap stack:
            aload 2 /* dest */
            iload 10 /* i */
            aload 1 /* src */
            iload 12 /* q */
            iaload
            iastore
        33: .line 191
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.permutation:[I
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
            iload 12 /* q */
            iinc 12 /* q */ 1
            iaload
            iload 10 /* i */
            iastore
        34: .line 185
      StackMap locals:
      StackMap stack:
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        35: iload 10 /* i */
            iload 8 /* destHigh */
            if_icmplt 28
        end local 12 // int q
        end local 11 // int p
        end local 10 // int i
        36: .line 195
            iload 7 /* destLow */
            istore 10 /* i */
        start local 10 // int i
        37: goto 40
        38: .line 196
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.permutation:[I
            iload 10 /* i */
            iaload
            iload 10 /* i */
            iastore
        39: .line 195
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        40: iload 10 /* i */
            iload 8 /* destHigh */
            if_icmplt 38
        end local 10 // int i
        41: .line 198
            return
        end local 9 // int mid
        end local 8 // int destHigh
        end local 7 // int destLow
        end local 6 // int length
        end local 5 // int off
        end local 4 // int high
        end local 3 // int low
        end local 2 // int[] dest
        end local 1 // int[] src
        end local 0 // com.sun.javafx.collections.SortHelper this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   42     0      this  Lcom/sun/javafx/collections/SortHelper;
            0   42     1       src  [I
            0   42     2      dest  [I
            0   42     3       low  I
            0   42     4      high  I
            0   42     5       off  I
            1   42     6    length  I
            3   13     7         i  I
            5   11     8         j  I
           15   42     7   destLow  I
           16   42     8  destHigh  I
           19   42     9       mid  I
           25   36    10         i  I
           26   36    11         p  I
           27   36    12         q  I
           37   41    10         i  I
    MethodParameters:
      Name  Flags
      src   
      dest  
      low   
      high  
      off   

  private void mergeSort(java.lang.Object[], java.lang.Object[], int, int, int);
    descriptor: ([Ljava/lang/Object;[Ljava/lang/Object;III)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=13, args_size=6
        start local 0 // com.sun.javafx.collections.SortHelper this
        start local 1 // java.lang.Object[] src
        start local 2 // java.lang.Object[] dest
        start local 3 // int low
        start local 4 // int high
        start local 5 // int off
         0: .line 208
            iload 4 /* high */
            iload 3 /* low */
            isub
            istore 6 /* length */
        start local 6 // int length
         1: .line 211
            iload 6 /* length */
            bipush 7
            if_icmpge 14
         2: .line 212
            iload 3 /* low */
            istore 7 /* i */
        start local 7 // int i
         3: goto 12
         4: .line 213
      StackMap locals: int int
      StackMap stack:
            iload 7 /* i */
            istore 8 /* j */
        start local 8 // int j
         5: goto 8
         6: .line 215
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 2 /* dest */
            iload 8 /* j */
            iload 8 /* j */
            iconst_1
            isub
            invokevirtual com.sun.javafx.collections.SortHelper.swap:([Ljava/lang/Object;II)V
         7: .line 214
            iinc 8 /* j */ -1
         8: .line 213
      StackMap locals:
      StackMap stack:
            iload 8 /* j */
            iload 3 /* low */
            if_icmple 11
         9: .line 214
            aload 2 /* dest */
            iload 8 /* j */
            iconst_1
            isub
            aaload
            checkcast java.lang.Comparable
            aload 2 /* dest */
            iload 8 /* j */
            aaload
            invokeinterface java.lang.Comparable.compareTo:(Ljava/lang/Object;)I
        10: .line 213
            ifgt 6
        end local 8 // int j
        11: .line 212
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 7 /* i */
            iload 4 /* high */
            if_icmplt 4
        end local 7 // int i
        13: .line 216
            return
        14: .line 220
      StackMap locals:
      StackMap stack:
            iload 3 /* low */
            istore 7 /* destLow */
        start local 7 // int destLow
        15: .line 221
            iload 4 /* high */
            istore 8 /* destHigh */
        start local 8 // int destHigh
        16: .line 222
            iload 3 /* low */
            iload 5 /* off */
            iadd
            istore 3 /* low */
        17: .line 223
            iload 4 /* high */
            iload 5 /* off */
            iadd
            istore 4 /* high */
        18: .line 224
            iload 3 /* low */
            iload 4 /* high */
            iadd
            iconst_1
            iushr
            istore 9 /* mid */
        start local 9 // int mid
        19: .line 225
            aload 0 /* this */
            aload 2 /* dest */
            aload 1 /* src */
            iload 3 /* low */
            iload 9 /* mid */
            iload 5 /* off */
            ineg
            invokevirtual com.sun.javafx.collections.SortHelper.mergeSort:([Ljava/lang/Object;[Ljava/lang/Object;III)V
        20: .line 226
            aload 0 /* this */
            aload 2 /* dest */
            aload 1 /* src */
            iload 9 /* mid */
            iload 4 /* high */
            iload 5 /* off */
            ineg
            invokevirtual com.sun.javafx.collections.SortHelper.mergeSort:([Ljava/lang/Object;[Ljava/lang/Object;III)V
        21: .line 230
            aload 1 /* src */
            iload 9 /* mid */
            iconst_1
            isub
            aaload
            checkcast java.lang.Comparable
            aload 1 /* src */
            iload 9 /* mid */
            aaload
            invokeinterface java.lang.Comparable.compareTo:(Ljava/lang/Object;)I
            ifgt 24
        22: .line 231
            aload 1 /* src */
            iload 3 /* low */
            aload 2 /* dest */
            iload 7 /* destLow */
            iload 6 /* length */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        23: .line 232
            return
        24: .line 236
      StackMap locals: int int int
      StackMap stack:
            iload 7 /* destLow */
            istore 10 /* i */
        start local 10 // int i
        25: iload 3 /* low */
            istore 11 /* p */
        start local 11 // int p
        26: iload 9 /* mid */
            istore 12 /* q */
        start local 12 // int q
        27: goto 35
        28: .line 237
      StackMap locals: int int int
      StackMap stack:
            iload 12 /* q */
            iload 4 /* high */
            if_icmpge 29
            iload 11 /* p */
            iload 9 /* mid */
            if_icmpge 32
            aload 1 /* src */
            iload 11 /* p */
            aaload
            checkcast java.lang.Comparable
            aload 1 /* src */
            iload 12 /* q */
            aaload
            invokeinterface java.lang.Comparable.compareTo:(Ljava/lang/Object;)I
            ifgt 32
        29: .line 238
      StackMap locals:
      StackMap stack:
            aload 2 /* dest */
            iload 10 /* i */
            aload 1 /* src */
            iload 11 /* p */
            aaload
            aastore
        30: .line 239
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.permutation:[I
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
            iload 11 /* p */
            iinc 11 /* p */ 1
            iaload
            iload 10 /* i */
            iastore
        31: .line 240
            goto 34
        32: .line 241
      StackMap locals:
      StackMap stack:
            aload 2 /* dest */
            iload 10 /* i */
            aload 1 /* src */
            iload 12 /* q */
            aaload
            aastore
        33: .line 242
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.permutation:[I
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
            iload 12 /* q */
            iinc 12 /* q */ 1
            iaload
            iload 10 /* i */
            iastore
        34: .line 236
      StackMap locals:
      StackMap stack:
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        35: iload 10 /* i */
            iload 8 /* destHigh */
            if_icmplt 28
        end local 12 // int q
        end local 11 // int p
        end local 10 // int i
        36: .line 246
            iload 7 /* destLow */
            istore 10 /* i */
        start local 10 // int i
        37: goto 40
        38: .line 247
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.permutation:[I
            iload 10 /* i */
            iaload
            iload 10 /* i */
            iastore
        39: .line 246
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        40: iload 10 /* i */
            iload 8 /* destHigh */
            if_icmplt 38
        end local 10 // int i
        41: .line 249
            return
        end local 9 // int mid
        end local 8 // int destHigh
        end local 7 // int destLow
        end local 6 // int length
        end local 5 // int off
        end local 4 // int high
        end local 3 // int low
        end local 2 // java.lang.Object[] dest
        end local 1 // java.lang.Object[] src
        end local 0 // com.sun.javafx.collections.SortHelper this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   42     0      this  Lcom/sun/javafx/collections/SortHelper;
            0   42     1       src  [Ljava/lang/Object;
            0   42     2      dest  [Ljava/lang/Object;
            0   42     3       low  I
            0   42     4      high  I
            0   42     5       off  I
            1   42     6    length  I
            3   13     7         i  I
            5   11     8         j  I
           15   42     7   destLow  I
           16   42     8  destHigh  I
           19   42     9       mid  I
           25   36    10         i  I
           26   36    11         p  I
           27   36    12         q  I
           37   41    10         i  I
    MethodParameters:
      Name  Flags
      src   
      dest  
      low   
      high  
      off   

  private void mergeSort(java.lang.Object[], java.lang.Object[], int, int, int, java.util.Comparator);
    descriptor: ([Ljava/lang/Object;[Ljava/lang/Object;IIILjava/util/Comparator;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=14, args_size=7
        start local 0 // com.sun.javafx.collections.SortHelper this
        start local 1 // java.lang.Object[] src
        start local 2 // java.lang.Object[] dest
        start local 3 // int low
        start local 4 // int high
        start local 5 // int off
        start local 6 // java.util.Comparator c
         0: .line 255
            iload 4 /* high */
            iload 3 /* low */
            isub
            istore 7 /* length */
        start local 7 // int length
         1: .line 258
            iload 7 /* length */
            bipush 7
            if_icmpge 12
         2: .line 259
            iload 3 /* low */
            istore 8 /* i */
        start local 8 // int i
         3: goto 10
         4: .line 260
      StackMap locals: int int
      StackMap stack:
            iload 8 /* i */
            istore 9 /* j */
        start local 9 // int j
         5: goto 8
         6: .line 261
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 2 /* dest */
            iload 9 /* j */
            iload 9 /* j */
            iconst_1
            isub
            invokevirtual com.sun.javafx.collections.SortHelper.swap:([Ljava/lang/Object;II)V
         7: .line 260
            iinc 9 /* j */ -1
      StackMap locals:
      StackMap stack:
         8: iload 9 /* j */
            iload 3 /* low */
            if_icmple 9
            aload 6 /* c */
            aload 2 /* dest */
            iload 9 /* j */
            iconst_1
            isub
            aaload
            aload 2 /* dest */
            iload 9 /* j */
            aaload
            invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
            ifgt 6
        end local 9 // int j
         9: .line 259
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 8 /* i */
            iload 4 /* high */
            if_icmplt 4
        end local 8 // int i
        11: .line 262
            return
        12: .line 266
      StackMap locals:
      StackMap stack:
            iload 3 /* low */
            istore 8 /* destLow */
        start local 8 // int destLow
        13: .line 267
            iload 4 /* high */
            istore 9 /* destHigh */
        start local 9 // int destHigh
        14: .line 268
            iload 3 /* low */
            iload 5 /* off */
            iadd
            istore 3 /* low */
        15: .line 269
            iload 4 /* high */
            iload 5 /* off */
            iadd
            istore 4 /* high */
        16: .line 270
            iload 3 /* low */
            iload 4 /* high */
            iadd
            iconst_1
            iushr
            istore 10 /* mid */
        start local 10 // int mid
        17: .line 271
            aload 0 /* this */
            aload 2 /* dest */
            aload 1 /* src */
            iload 3 /* low */
            iload 10 /* mid */
            iload 5 /* off */
            ineg
            aload 6 /* c */
            invokevirtual com.sun.javafx.collections.SortHelper.mergeSort:([Ljava/lang/Object;[Ljava/lang/Object;IIILjava/util/Comparator;)V
        18: .line 272
            aload 0 /* this */
            aload 2 /* dest */
            aload 1 /* src */
            iload 10 /* mid */
            iload 4 /* high */
            iload 5 /* off */
            ineg
            aload 6 /* c */
            invokevirtual com.sun.javafx.collections.SortHelper.mergeSort:([Ljava/lang/Object;[Ljava/lang/Object;IIILjava/util/Comparator;)V
        19: .line 276
            aload 6 /* c */
            aload 1 /* src */
            iload 10 /* mid */
            iconst_1
            isub
            aaload
            aload 1 /* src */
            iload 10 /* mid */
            aaload
            invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
            ifgt 22
        20: .line 277
            aload 1 /* src */
            iload 3 /* low */
            aload 2 /* dest */
            iload 8 /* destLow */
            iload 7 /* length */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        21: .line 278
            return
        22: .line 282
      StackMap locals: int int int
      StackMap stack:
            iload 8 /* destLow */
            istore 11 /* i */
        start local 11 // int i
        23: iload 3 /* low */
            istore 12 /* p */
        start local 12 // int p
        24: iload 10 /* mid */
            istore 13 /* q */
        start local 13 // int q
        25: goto 33
        26: .line 283
      StackMap locals: int int int
      StackMap stack:
            iload 13 /* q */
            iload 4 /* high */
            if_icmpge 27
            iload 12 /* p */
            iload 10 /* mid */
            if_icmpge 30
            aload 6 /* c */
            aload 1 /* src */
            iload 12 /* p */
            aaload
            aload 1 /* src */
            iload 13 /* q */
            aaload
            invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
            ifgt 30
        27: .line 284
      StackMap locals:
      StackMap stack:
            aload 2 /* dest */
            iload 11 /* i */
            aload 1 /* src */
            iload 12 /* p */
            aaload
            aastore
        28: .line 285
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.permutation:[I
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
            iload 12 /* p */
            iinc 12 /* p */ 1
            iaload
            iload 11 /* i */
            iastore
        29: .line 286
            goto 32
        30: .line 287
      StackMap locals:
      StackMap stack:
            aload 2 /* dest */
            iload 11 /* i */
            aload 1 /* src */
            iload 13 /* q */
            aaload
            aastore
        31: .line 288
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.permutation:[I
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
            iload 13 /* q */
            iinc 13 /* q */ 1
            iaload
            iload 11 /* i */
            iastore
        32: .line 282
      StackMap locals:
      StackMap stack:
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        33: iload 11 /* i */
            iload 9 /* destHigh */
            if_icmplt 26
        end local 13 // int q
        end local 12 // int p
        end local 11 // int i
        34: .line 292
            iload 8 /* destLow */
            istore 11 /* i */
        start local 11 // int i
        35: goto 38
        36: .line 293
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.permutation:[I
            iload 11 /* i */
            iaload
            iload 11 /* i */
            iastore
        37: .line 292
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        38: iload 11 /* i */
            iload 9 /* destHigh */
            if_icmplt 36
        end local 11 // int i
        39: .line 295
            return
        end local 10 // int mid
        end local 9 // int destHigh
        end local 8 // int destLow
        end local 7 // int length
        end local 6 // java.util.Comparator c
        end local 5 // int off
        end local 4 // int high
        end local 3 // int low
        end local 2 // java.lang.Object[] dest
        end local 1 // java.lang.Object[] src
        end local 0 // com.sun.javafx.collections.SortHelper this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   40     0      this  Lcom/sun/javafx/collections/SortHelper;
            0   40     1       src  [Ljava/lang/Object;
            0   40     2      dest  [Ljava/lang/Object;
            0   40     3       low  I
            0   40     4      high  I
            0   40     5       off  I
            0   40     6         c  Ljava/util/Comparator;
            1   40     7    length  I
            3   11     8         i  I
            5    9     9         j  I
           13   40     8   destLow  I
           14   40     9  destHigh  I
           17   40    10       mid  I
           23   34    11         i  I
           24   34    12         p  I
           25   34    13         q  I
           35   39    11         i  I
    MethodParameters:
      Name  Flags
      src   
      dest  
      low   
      high  
      off   
      c     

  private void swap(int[], int, int);
    descriptor: ([III)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // com.sun.javafx.collections.SortHelper this
        start local 1 // int[] x
        start local 2 // int a
        start local 3 // int b
         0: .line 298
            aload 1 /* x */
            iload 2 /* a */
            iaload
            istore 4 /* t */
        start local 4 // int t
         1: .line 299
            aload 1 /* x */
            iload 2 /* a */
            aload 1 /* x */
            iload 3 /* b */
            iaload
            iastore
         2: .line 300
            aload 1 /* x */
            iload 3 /* b */
            iload 4 /* t */
            iastore
         3: .line 301
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.permutation:[I
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
            iload 2 /* a */
            iaload
            iload 3 /* b */
            iastore
         4: .line 302
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.permutation:[I
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
            iload 3 /* b */
            iaload
            iload 2 /* a */
            iastore
         5: .line 303
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
            iload 2 /* a */
            iaload
            istore 5 /* tp */
        start local 5 // int tp
         6: .line 304
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
            iload 2 /* a */
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
            iload 3 /* b */
            iaload
            iastore
         7: .line 305
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
            iload 3 /* b */
            iload 5 /* tp */
            iastore
         8: .line 306
            return
        end local 5 // int tp
        end local 4 // int t
        end local 3 // int b
        end local 2 // int a
        end local 1 // int[] x
        end local 0 // com.sun.javafx.collections.SortHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lcom/sun/javafx/collections/SortHelper;
            0    9     1     x  [I
            0    9     2     a  I
            0    9     3     b  I
            1    9     4     t  I
            6    9     5    tp  I
    MethodParameters:
      Name  Flags
      x     
      a     
      b     

  private void swap(java.lang.Object[], int, int);
    descriptor: ([Ljava/lang/Object;II)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // com.sun.javafx.collections.SortHelper this
        start local 1 // java.lang.Object[] x
        start local 2 // int a
        start local 3 // int b
         0: .line 309
            aload 1 /* x */
            iload 2 /* a */
            aaload
            astore 4 /* t */
        start local 4 // java.lang.Object t
         1: .line 310
            aload 1 /* x */
            iload 2 /* a */
            aload 1 /* x */
            iload 3 /* b */
            aaload
            aastore
         2: .line 311
            aload 1 /* x */
            iload 3 /* b */
            aload 4 /* t */
            aastore
         3: .line 312
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.permutation:[I
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
            iload 2 /* a */
            iaload
            iload 3 /* b */
            iastore
         4: .line 313
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.permutation:[I
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
            iload 3 /* b */
            iaload
            iload 2 /* a */
            iastore
         5: .line 314
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
            iload 2 /* a */
            iaload
            istore 5 /* tp */
        start local 5 // int tp
         6: .line 315
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
            iload 2 /* a */
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
            iload 3 /* b */
            iaload
            iastore
         7: .line 316
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
            iload 3 /* b */
            iload 5 /* tp */
            iastore
         8: .line 317
            return
        end local 5 // int tp
        end local 4 // java.lang.Object t
        end local 3 // int b
        end local 2 // int a
        end local 1 // java.lang.Object[] x
        end local 0 // com.sun.javafx.collections.SortHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lcom/sun/javafx/collections/SortHelper;
            0    9     1     x  [Ljava/lang/Object;
            0    9     2     a  I
            0    9     3     b  I
            1    9     4     t  Ljava/lang/Object;
            6    9     5    tp  I
    MethodParameters:
      Name  Flags
      x     
      a     
      b     

  private int[] initPermutation(int);
    descriptor: (I)[I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // com.sun.javafx.collections.SortHelper this
        start local 1 // int length
         0: .line 320
            aload 0 /* this */
            iload 1 /* length */
            newarray 10
            putfield com.sun.javafx.collections.SortHelper.permutation:[I
         1: .line 321
            aload 0 /* this */
            iload 1 /* length */
            newarray 10
            putfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
         2: .line 322
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: goto 6
         4: .line 323
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.permutation:[I
            iload 2 /* i */
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.reversePermutation:[I
            iload 2 /* i */
            iload 2 /* i */
            dup_x2
            iastore
            iastore
         5: .line 322
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* i */
            iload 1 /* length */
            if_icmplt 4
        end local 2 // int i
         7: .line 325
            aload 0 /* this */
            getfield com.sun.javafx.collections.SortHelper.permutation:[I
            areturn
        end local 1 // int length
        end local 0 // com.sun.javafx.collections.SortHelper this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lcom/sun/javafx/collections/SortHelper;
            0    8     1  length  I
            3    7     2       i  I
    MethodParameters:
        Name  Flags
      length  
}
SourceFile: "SortHelper.java"