final class javafx.collections.ListChangeBuilder<E>
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: javafx.collections.ListChangeBuilder
  super_class: java.lang.Object
{
  private static final int[] EMPTY_PERM;
    descriptor: [I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final javafx.collections.ObservableListBase<E> list;
    descriptor: Ljavafx/collections/ObservableListBase;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljavafx/collections/ObservableListBase<TE;>;

  private int changeLock;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private java.util.List<javafx.collections.ListChangeBuilder$SubChange<E>> addRemoveChanges;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;>;

  private java.util.List<javafx.collections.ListChangeBuilder$SubChange<E>> updateChanges;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;>;

  private javafx.collections.ListChangeBuilder$SubChange<E> permutationChange;
    descriptor: Ljavafx/collections/ListChangeBuilder$SubChange;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 39
            ldc Ljavafx/collections/ListChangeBuilder;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic javafx.collections.ListChangeBuilder.$assertionsDisabled:Z
         3: .line 41
            iconst_0
            newarray 10
            putstatic javafx.collections.ListChangeBuilder.EMPTY_PERM:[I
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void checkAddRemoveList();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // javafx.collections.ListChangeBuilder this
         0: .line 49
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            ifnonnull 2
         1: .line 50
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
         2: .line 52
      StackMap locals:
      StackMap stack:
            return
        end local 0 // javafx.collections.ListChangeBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavafx/collections/ListChangeBuilder<TE;>;

  private void checkState();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // javafx.collections.ListChangeBuilder this
         0: .line 55
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.changeLock:I
            ifne 2
         1: .line 56
            new java.lang.IllegalStateException
            dup
            ldc "beginChange was not called on this builder"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 58
      StackMap locals:
      StackMap stack:
            return
        end local 0 // javafx.collections.ListChangeBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavafx/collections/ListChangeBuilder<TE;>;

  private int findSubChange(int, java.util.List<javafx.collections.ListChangeBuilder$SubChange<E>>);
    descriptor: (ILjava/util/List;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=7, args_size=3
        start local 0 // javafx.collections.ListChangeBuilder this
        start local 1 // int idx
        start local 2 // java.util.List list
         0: .line 61
            iconst_0
            istore 3 /* from */
        start local 3 // int from
         1: .line 62
            aload 2 /* list */
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            istore 4 /* to */
        start local 4 // int to
         2: .line 64
            goto 12
         3: .line 65
      StackMap locals: int int
      StackMap stack:
            iload 3 /* from */
            iload 4 /* to */
            iadd
            iconst_2
            idiv
            istore 5 /* changeIdx */
        start local 5 // int changeIdx
         4: .line 66
            aload 2 /* list */
            iload 5 /* changeIdx */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
            astore 6 /* change */
        start local 6 // javafx.collections.ListChangeBuilder$SubChange change
         5: .line 68
            iload 1 /* idx */
            aload 6 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            if_icmplt 8
         6: .line 69
            iload 5 /* changeIdx */
            iconst_1
            iadd
            istore 3 /* from */
         7: .line 70
            goto 12
      StackMap locals: int javafx.collections.ListChangeBuilder$SubChange
      StackMap stack:
         8: iload 1 /* idx */
            aload 6 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            if_icmpge 11
         9: .line 71
            iload 5 /* changeIdx */
            iconst_1
            isub
            istore 4 /* to */
        10: .line 72
            goto 12
        11: .line 73
      StackMap locals:
      StackMap stack:
            iload 5 /* changeIdx */
            ireturn
        end local 6 // javafx.collections.ListChangeBuilder$SubChange change
        end local 5 // int changeIdx
        12: .line 64
      StackMap locals:
      StackMap stack:
            iload 3 /* from */
            iload 4 /* to */
            if_icmple 3
        13: .line 76
            iload 3 /* from */
            iconst_m1
            ixor
            ireturn
        end local 4 // int to
        end local 3 // int from
        end local 2 // java.util.List list
        end local 1 // int idx
        end local 0 // javafx.collections.ListChangeBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   14     0       this  Ljavafx/collections/ListChangeBuilder<TE;>;
            0   14     1        idx  I
            0   14     2       list  Ljava/util/List<Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;>;
            1   14     3       from  I
            2   14     4         to  I
            4   12     5  changeIdx  I
            5   12     6     change  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
    Signature: (ILjava/util/List<Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;>;)I
    MethodParameters:
      Name  Flags
      idx   
      list  final

  private void insertUpdate(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=4, args_size=2
        start local 0 // javafx.collections.ListChangeBuilder this
        start local 1 // int pos
         0: .line 80
            aload 0 /* this */
            iload 1 /* pos */
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            invokevirtual javafx.collections.ListChangeBuilder.findSubChange:(ILjava/util/List;)I
            istore 2 /* idx */
        start local 2 // int idx
         1: .line 81
            iload 2 /* idx */
            ifge 12
         2: .line 82
            iload 2 /* idx */
            iconst_m1
            ixor
            istore 2 /* idx */
         3: .line 84
            iload 2 /* idx */
            ifle 7
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            iload 2 /* idx */
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
            dup
            astore 3 /* change */
        start local 3 // javafx.collections.ListChangeBuilder$SubChange change
         4: getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            iload 1 /* pos */
            if_icmpne 7
         5: .line 85
            aload 3 /* change */
            iload 1 /* pos */
            iconst_1
            iadd
            putfield javafx.collections.ListChangeBuilder$SubChange.to:I
         6: .line 86
            goto 12
        end local 3 // javafx.collections.ListChangeBuilder$SubChange change
      StackMap locals: int
      StackMap stack:
         7: iload 2 /* idx */
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmpge 11
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            iload 2 /* idx */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
            dup
            astore 3 /* change */
        start local 3 // javafx.collections.ListChangeBuilder$SubChange change
         8: getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            iload 1 /* pos */
            iconst_1
            iadd
            if_icmpne 11
         9: .line 87
            aload 3 /* change */
            iload 1 /* pos */
            putfield javafx.collections.ListChangeBuilder$SubChange.from:I
        10: .line 88
            goto 12
        end local 3 // javafx.collections.ListChangeBuilder$SubChange change
        11: .line 89
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            iload 2 /* idx */
            new javafx.collections.ListChangeBuilder$SubChange
            dup
            iload 1 /* pos */
            iload 1 /* pos */
            iconst_1
            iadd
            aconst_null
            getstatic javafx.collections.ListChangeBuilder.EMPTY_PERM:[I
            iconst_1
            invokespecial javafx.collections.ListChangeBuilder$SubChange.<init>:(IILjava/util/List;[IZ)V
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        12: .line 92
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int idx
        end local 1 // int pos
        end local 0 // javafx.collections.ListChangeBuilder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   13     0    this  Ljavafx/collections/ListChangeBuilder<TE;>;
            0   13     1     pos  I
            1   13     2     idx  I
            4    7     3  change  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
            8   11     3  change  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
    MethodParameters:
      Name  Flags
      pos   

  private void insertRemoved(int, );
    descriptor: (ILjava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=6, args_size=3
        start local 0 // javafx.collections.ListChangeBuilder this
        start local 1 // int pos
        start local 2 // java.lang.Object removed
         0: .line 95
            aload 0 /* this */
            iload 1 /* pos */
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            invokevirtual javafx.collections.ListChangeBuilder.findSubChange:(ILjava/util/List;)I
            istore 3 /* idx */
        start local 3 // int idx
         1: .line 96
            iload 3 /* idx */
            ifge 18
         2: .line 97
            iload 3 /* idx */
            iconst_m1
            ixor
            istore 3 /* idx */
         3: .line 100
            iload 3 /* idx */
            ifle 8
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            iload 3 /* idx */
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
            dup
            astore 4 /* change */
        start local 4 // javafx.collections.ListChangeBuilder$SubChange change
         4: getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            iload 1 /* pos */
            if_icmpne 8
         5: .line 101
            aload 4 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.removed:Ljava/util/List;
            aload 2 /* removed */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         6: .line 102
            iinc 3 /* idx */ -1
         7: .line 103
            goto 22
        end local 4 // javafx.collections.ListChangeBuilder$SubChange change
      StackMap locals: int
      StackMap stack:
         8: iload 3 /* idx */
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmpge 14
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            iload 3 /* idx */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
            dup
            astore 4 /* change */
        start local 4 // javafx.collections.ListChangeBuilder$SubChange change
         9: getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            iload 1 /* pos */
            iconst_1
            iadd
            if_icmpne 14
        10: .line 104
            aload 4 /* change */
            dup
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            iconst_1
            isub
            putfield javafx.collections.ListChangeBuilder$SubChange.from:I
        11: .line 105
            aload 4 /* change */
            dup
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            iconst_1
            isub
            putfield javafx.collections.ListChangeBuilder$SubChange.to:I
        12: .line 106
            aload 4 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.removed:Ljava/util/List;
            iconst_0
            aload 2 /* removed */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        13: .line 107
            goto 22
        end local 4 // javafx.collections.ListChangeBuilder$SubChange change
        14: .line 108
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 5 /* removedList */
        start local 5 // java.util.ArrayList removedList
        15: .line 109
            aload 5 /* removedList */
            aload 2 /* removed */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        16: .line 110
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            iload 3 /* idx */
            new javafx.collections.ListChangeBuilder$SubChange
            dup
            iload 1 /* pos */
            iload 1 /* pos */
            aload 5 /* removedList */
            getstatic javafx.collections.ListChangeBuilder.EMPTY_PERM:[I
            iconst_0
            invokespecial javafx.collections.ListChangeBuilder$SubChange.<init>:(IILjava/util/List;[IZ)V
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        end local 5 // java.util.ArrayList removedList
        17: .line 112
            goto 22
        18: .line 113
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            iload 3 /* idx */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
            astore 4 /* change */
        start local 4 // javafx.collections.ListChangeBuilder$SubChange change
        19: .line 114
            aload 4 /* change */
            dup
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            iconst_1
            isub
            putfield javafx.collections.ListChangeBuilder$SubChange.to:I
        20: .line 115
            aload 4 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            aload 4 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            if_icmpne 22
            aload 4 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.removed:Ljava/util/List;
            ifnull 21
            aload 4 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.removed:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 22
        21: .line 116
      StackMap locals: javafx.collections.ListChangeBuilder$SubChange
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            iload 3 /* idx */
            invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
            pop
        end local 4 // javafx.collections.ListChangeBuilder$SubChange change
        22: .line 119
      StackMap locals:
      StackMap stack:
            iload 3 /* idx */
            iconst_1
            iadd
            istore 4 /* i */
        start local 4 // int i
        23: goto 28
        24: .line 120
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            iload 4 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
            astore 5 /* change */
        start local 5 // javafx.collections.ListChangeBuilder$SubChange change
        25: .line 121
            aload 5 /* change */
            dup
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            iconst_1
            isub
            putfield javafx.collections.ListChangeBuilder$SubChange.from:I
        26: .line 122
            aload 5 /* change */
            dup
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            iconst_1
            isub
            putfield javafx.collections.ListChangeBuilder$SubChange.to:I
        end local 5 // javafx.collections.ListChangeBuilder$SubChange change
        27: .line 119
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        28: iload 4 /* i */
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmplt 24
        end local 4 // int i
        29: .line 124
            return
        end local 3 // int idx
        end local 2 // java.lang.Object removed
        end local 1 // int pos
        end local 0 // javafx.collections.ListChangeBuilder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   30     0         this  Ljavafx/collections/ListChangeBuilder<TE;>;
            0   30     1          pos  I
            0   30     2      removed  TE;
            1   30     3          idx  I
            4    8     4       change  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
            9   14     4       change  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
           15   17     5  removedList  Ljava/util/ArrayList<TE;>;
           19   22     4       change  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
           23   29     4            i  I
           25   27     5       change  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
    Signature: (ITE;)V
    MethodParameters:
         Name  Flags
      pos      
      removed  final

  private void insertAdd(int, int);
    descriptor: (II)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=7, args_size=3
        start local 0 // javafx.collections.ListChangeBuilder this
        start local 1 // int from
        start local 2 // int to
         0: .line 127
            aload 0 /* this */
            iload 1 /* from */
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            invokevirtual javafx.collections.ListChangeBuilder.findSubChange:(ILjava/util/List;)I
            istore 3 /* idx */
        start local 3 // int idx
         1: .line 128
            iload 2 /* to */
            iload 1 /* from */
            isub
            istore 4 /* numberOfAdded */
        start local 4 // int numberOfAdded
         2: .line 130
            iload 3 /* idx */
            ifge 11
         3: .line 131
            iload 3 /* idx */
            iconst_m1
            ixor
            istore 3 /* idx */
         4: .line 134
            iload 3 /* idx */
            ifle 9
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            iload 3 /* idx */
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
            dup
            astore 5 /* change */
        start local 5 // javafx.collections.ListChangeBuilder$SubChange change
         5: getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            iload 1 /* from */
            if_icmpne 9
         6: .line 135
            aload 5 /* change */
            iload 2 /* to */
            putfield javafx.collections.ListChangeBuilder$SubChange.to:I
         7: .line 136
            iinc 3 /* idx */ -1
         8: .line 137
            goto 13
        end local 5 // javafx.collections.ListChangeBuilder$SubChange change
         9: .line 138
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            iload 3 /* idx */
            new javafx.collections.ListChangeBuilder$SubChange
            dup
            iload 1 /* from */
            iload 2 /* to */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            getstatic javafx.collections.ListChangeBuilder.EMPTY_PERM:[I
            iconst_0
            invokespecial javafx.collections.ListChangeBuilder$SubChange.<init>:(IILjava/util/List;[IZ)V
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        10: .line 140
            goto 13
        11: .line 141
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            iload 3 /* idx */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
            astore 5 /* change */
        start local 5 // javafx.collections.ListChangeBuilder$SubChange change
        12: .line 142
            aload 5 /* change */
            dup
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            iload 4 /* numberOfAdded */
            iadd
            putfield javafx.collections.ListChangeBuilder$SubChange.to:I
        end local 5 // javafx.collections.ListChangeBuilder$SubChange change
        13: .line 145
      StackMap locals:
      StackMap stack:
            iload 3 /* idx */
            iconst_1
            iadd
            istore 5 /* i */
        start local 5 // int i
        14: goto 19
        15: .line 146
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            iload 5 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
            astore 6 /* change */
        start local 6 // javafx.collections.ListChangeBuilder$SubChange change
        16: .line 147
            aload 6 /* change */
            dup
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            iload 4 /* numberOfAdded */
            iadd
            putfield javafx.collections.ListChangeBuilder$SubChange.from:I
        17: .line 148
            aload 6 /* change */
            dup
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            iload 4 /* numberOfAdded */
            iadd
            putfield javafx.collections.ListChangeBuilder$SubChange.to:I
        end local 6 // javafx.collections.ListChangeBuilder$SubChange change
        18: .line 145
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        19: iload 5 /* i */
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmplt 15
        end local 5 // int i
        20: .line 150
            return
        end local 4 // int numberOfAdded
        end local 3 // int idx
        end local 2 // int to
        end local 1 // int from
        end local 0 // javafx.collections.ListChangeBuilder this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   21     0           this  Ljavafx/collections/ListChangeBuilder<TE;>;
            0   21     1           from  I
            0   21     2             to  I
            1   21     3            idx  I
            2   21     4  numberOfAdded  I
            5    9     5         change  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
           12   13     5         change  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
           14   20     5              i  I
           16   18     6         change  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
    MethodParameters:
      Name  Flags
      from  
      to    

  private int compress(java.util.List<javafx.collections.ListChangeBuilder$SubChange<E>>);
    descriptor: (Ljava/util/List;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // javafx.collections.ListChangeBuilder this
        start local 1 // java.util.List list
         0: .line 153
            iconst_0
            istore 2 /* removed */
        start local 2 // int removed
         1: .line 155
            aload 1 /* list */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
            astore 3 /* prev */
        start local 3 // javafx.collections.ListChangeBuilder$SubChange prev
         2: .line 156
            iconst_1
            istore 4 /* i */
        start local 4 // int i
         3: aload 1 /* list */
            invokeinterface java.util.List.size:()I
            istore 5 /* sz */
        start local 5 // int sz
         4: goto 17
         5: .line 157
      StackMap locals: javafx.collections.ListChangeBuilder java.util.List int javafx.collections.ListChangeBuilder$SubChange int int
      StackMap stack:
            aload 1 /* list */
            iload 4 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
            astore 6 /* cur */
        start local 6 // javafx.collections.ListChangeBuilder$SubChange cur
         6: .line 158
            aload 3 /* prev */
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            aload 6 /* cur */
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            if_icmpne 15
         7: .line 159
            aload 3 /* prev */
            aload 6 /* cur */
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            putfield javafx.collections.ListChangeBuilder$SubChange.to:I
         8: .line 160
            aload 3 /* prev */
            getfield javafx.collections.ListChangeBuilder$SubChange.removed:Ljava/util/List;
            ifnonnull 9
            aload 6 /* cur */
            getfield javafx.collections.ListChangeBuilder$SubChange.removed:Ljava/util/List;
            ifnull 12
         9: .line 161
      StackMap locals: javafx.collections.ListChangeBuilder$SubChange
      StackMap stack:
            aload 3 /* prev */
            getfield javafx.collections.ListChangeBuilder$SubChange.removed:Ljava/util/List;
            ifnonnull 11
        10: .line 162
            aload 3 /* prev */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield javafx.collections.ListChangeBuilder$SubChange.removed:Ljava/util/List;
        11: .line 164
      StackMap locals:
      StackMap stack:
            aload 3 /* prev */
            getfield javafx.collections.ListChangeBuilder$SubChange.removed:Ljava/util/List;
            aload 6 /* cur */
            getfield javafx.collections.ListChangeBuilder$SubChange.removed:Ljava/util/List;
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
        12: .line 166
      StackMap locals:
      StackMap stack:
            aload 1 /* list */
            iload 4 /* i */
            aconst_null
            invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
        13: .line 167
            iinc 2 /* removed */ 1
        14: .line 168
            goto 16
        15: .line 169
      StackMap locals:
      StackMap stack:
            aload 6 /* cur */
            astore 3 /* prev */
        end local 6 // javafx.collections.ListChangeBuilder$SubChange cur
        16: .line 156
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        17: iload 4 /* i */
            iload 5 /* sz */
            if_icmplt 5
        end local 5 // int sz
        end local 4 // int i
        18: .line 172
            iload 2 /* removed */
            ireturn
        end local 3 // javafx.collections.ListChangeBuilder$SubChange prev
        end local 2 // int removed
        end local 1 // java.util.List list
        end local 0 // javafx.collections.ListChangeBuilder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   19     0     this  Ljavafx/collections/ListChangeBuilder<TE;>;
            0   19     1     list  Ljava/util/List<Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;>;
            1   19     2  removed  I
            2   19     3     prev  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
            3   18     4        i  I
            4   18     5       sz  I
            6   16     6      cur  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
    Signature: (Ljava/util/List<Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;>;)I
    MethodParameters:
      Name  Flags
      list  

  void <init>(javafx.collections.ObservableListBase<E>);
    descriptor: (Ljavafx/collections/ObservableListBase;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javafx.collections.ListChangeBuilder this
        start local 1 // javafx.collections.ObservableListBase list
         0: .line 192
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 193
            aload 0 /* this */
            aload 1 /* list */
            putfield javafx.collections.ListChangeBuilder.list:Ljavafx/collections/ObservableListBase;
         2: .line 194
            return
        end local 1 // javafx.collections.ObservableListBase list
        end local 0 // javafx.collections.ListChangeBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavafx/collections/ListChangeBuilder<TE;>;
            0    3     1  list  Ljavafx/collections/ObservableListBase<TE;>;
    Signature: (Ljavafx/collections/ObservableListBase<TE;>;)V
    MethodParameters:
      Name  Flags
      list  

  public void nextRemove(int, );
    descriptor: (ILjava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // javafx.collections.ListChangeBuilder this
        start local 1 // int idx
        start local 2 // java.lang.Object removed
         0: .line 197
            aload 0 /* this */
            invokevirtual javafx.collections.ListChangeBuilder.checkState:()V
         1: .line 198
            aload 0 /* this */
            invokevirtual javafx.collections.ListChangeBuilder.checkAddRemoveList:()V
         2: .line 200
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 3
            aconst_null
            goto 4
         3: .line 201
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
         4: .line 200
      StackMap locals:
      StackMap stack: javafx.collections.ListChangeBuilder$SubChange
            astore 3 /* last */
        start local 3 // javafx.collections.ListChangeBuilder$SubChange last
         5: .line 203
            aload 3 /* last */
            ifnull 8
            aload 3 /* last */
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            iload 1 /* idx */
            if_icmpne 8
         6: .line 204
            aload 3 /* last */
            getfield javafx.collections.ListChangeBuilder$SubChange.removed:Ljava/util/List;
            aload 2 /* removed */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         7: .line 205
            goto 14
      StackMap locals: javafx.collections.ListChangeBuilder$SubChange
      StackMap stack:
         8: aload 3 /* last */
            ifnull 13
            aload 3 /* last */
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            iload 1 /* idx */
            iconst_1
            iadd
            if_icmpne 13
         9: .line 206
            aload 3 /* last */
            dup
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            iconst_1
            isub
            putfield javafx.collections.ListChangeBuilder$SubChange.from:I
        10: .line 207
            aload 3 /* last */
            dup
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            iconst_1
            isub
            putfield javafx.collections.ListChangeBuilder$SubChange.to:I
        11: .line 208
            aload 3 /* last */
            getfield javafx.collections.ListChangeBuilder$SubChange.removed:Ljava/util/List;
            iconst_0
            aload 2 /* removed */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        12: .line 209
            goto 14
        13: .line 210
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* idx */
            aload 2 /* removed */
            invokevirtual javafx.collections.ListChangeBuilder.insertRemoved:(ILjava/lang/Object;)V
        14: .line 213
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            ifnull 31
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifne 31
        15: .line 214
            aload 0 /* this */
            iload 1 /* idx */
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            invokevirtual javafx.collections.ListChangeBuilder.findSubChange:(ILjava/util/List;)I
            istore 4 /* uPos */
        start local 4 // int uPos
        16: .line 215
            iload 4 /* uPos */
            ifge 19
        17: .line 216
            iload 4 /* uPos */
            iconst_m1
            ixor
            istore 4 /* uPos */
        18: .line 217
            goto 25
        19: .line 218
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            iload 4 /* uPos */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
            astore 5 /* change */
        start local 5 // javafx.collections.ListChangeBuilder$SubChange change
        20: .line 219
            aload 5 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            aload 5 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            iconst_1
            isub
            if_icmpne 23
        21: .line 220
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            iload 4 /* uPos */
            invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
            pop
        22: .line 221
            goto 25
        23: .line 222
      StackMap locals: javafx.collections.ListChangeBuilder$SubChange
      StackMap stack:
            aload 5 /* change */
            dup
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            iconst_1
            isub
            putfield javafx.collections.ListChangeBuilder$SubChange.to:I
        24: .line 223
            iinc 4 /* uPos */ 1
        end local 5 // javafx.collections.ListChangeBuilder$SubChange change
        25: .line 226
      StackMap locals:
      StackMap stack:
            iload 4 /* uPos */
            istore 5 /* i */
        start local 5 // int i
        26: goto 30
        27: .line 227
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            iload 5 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
            dup
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            iconst_1
            isub
            putfield javafx.collections.ListChangeBuilder$SubChange.from:I
        28: .line 228
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            iload 5 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
            dup
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            iconst_1
            isub
            putfield javafx.collections.ListChangeBuilder$SubChange.to:I
        29: .line 226
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        30: iload 5 /* i */
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmplt 27
        end local 5 // int i
        end local 4 // int uPos
        31: .line 232
      StackMap locals:
      StackMap stack:
            return
        end local 3 // javafx.collections.ListChangeBuilder$SubChange last
        end local 2 // java.lang.Object removed
        end local 1 // int idx
        end local 0 // javafx.collections.ListChangeBuilder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   32     0     this  Ljavafx/collections/ListChangeBuilder<TE;>;
            0   32     1      idx  I
            0   32     2  removed  TE;
            5   32     3     last  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
           16   31     4     uPos  I
           20   25     5   change  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
           26   31     5        i  I
    Signature: (ITE;)V
    MethodParameters:
         Name  Flags
      idx      
      removed  

  public void nextRemove(int, java.util.List<? extends E>);
    descriptor: (ILjava/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // javafx.collections.ListChangeBuilder this
        start local 1 // int idx
        start local 2 // java.util.List removed
         0: .line 235
            aload 0 /* this */
            invokevirtual javafx.collections.ListChangeBuilder.checkState:()V
         1: .line 237
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 5
         3: .line 238
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 1 /* idx */
            aload 2 /* removed */
            iload 3 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokevirtual javafx.collections.ListChangeBuilder.nextRemove:(ILjava/lang/Object;)V
         4: .line 237
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 3 /* i */
            aload 2 /* removed */
            invokeinterface java.util.List.size:()I
            if_icmplt 3
        end local 3 // int i
         6: .line 240
            return
        end local 2 // java.util.List removed
        end local 1 // int idx
        end local 0 // javafx.collections.ListChangeBuilder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Ljavafx/collections/ListChangeBuilder<TE;>;
            0    7     1      idx  I
            0    7     2  removed  Ljava/util/List<+TE;>;
            2    6     3        i  I
    Signature: (ILjava/util/List<+TE;>;)V
    MethodParameters:
         Name  Flags
      idx      
      removed  

  public void nextAdd(int, int);
    descriptor: (II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=7, args_size=3
        start local 0 // javafx.collections.ListChangeBuilder this
        start local 1 // int from
        start local 2 // int to
         0: .line 243
            aload 0 /* this */
            invokevirtual javafx.collections.ListChangeBuilder.checkState:()V
         1: .line 244
            aload 0 /* this */
            invokevirtual javafx.collections.ListChangeBuilder.checkAddRemoveList:()V
         2: .line 245
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 3
            aconst_null
            goto 4
         3: .line 246
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
         4: .line 245
      StackMap locals:
      StackMap stack: javafx.collections.ListChangeBuilder$SubChange
            astore 3 /* last */
        start local 3 // javafx.collections.ListChangeBuilder$SubChange last
         5: .line 247
            iload 2 /* to */
            iload 1 /* from */
            isub
            istore 4 /* numberOfAdded */
        start local 4 // int numberOfAdded
         6: .line 249
            aload 3 /* last */
            ifnull 9
            aload 3 /* last */
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            iload 1 /* from */
            if_icmpne 9
         7: .line 250
            aload 3 /* last */
            iload 2 /* to */
            putfield javafx.collections.ListChangeBuilder$SubChange.to:I
         8: .line 251
            goto 13
      StackMap locals: javafx.collections.ListChangeBuilder$SubChange int
      StackMap stack:
         9: aload 3 /* last */
            ifnull 12
            iload 1 /* from */
            aload 3 /* last */
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            if_icmplt 12
            iload 1 /* from */
            aload 3 /* last */
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            if_icmpge 12
        10: .line 252
            aload 3 /* last */
            dup
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            iload 4 /* numberOfAdded */
            iadd
            putfield javafx.collections.ListChangeBuilder$SubChange.to:I
        11: .line 253
            goto 13
        12: .line 254
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* from */
            iload 2 /* to */
            invokevirtual javafx.collections.ListChangeBuilder.insertAdd:(II)V
        13: .line 257
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            ifnull 28
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifne 28
        14: .line 258
            aload 0 /* this */
            iload 1 /* from */
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            invokevirtual javafx.collections.ListChangeBuilder.findSubChange:(ILjava/util/List;)I
            istore 5 /* uPos */
        start local 5 // int uPos
        15: .line 259
            iload 5 /* uPos */
            ifge 18
        16: .line 260
            iload 5 /* uPos */
            iconst_m1
            ixor
            istore 5 /* uPos */
        17: .line 261
            goto 22
        18: .line 263
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            iload 5 /* uPos */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
            astore 6 /* change */
        start local 6 // javafx.collections.ListChangeBuilder$SubChange change
        19: .line 264
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            iload 5 /* uPos */
            iconst_1
            iadd
            new javafx.collections.ListChangeBuilder$SubChange
            dup
            iload 2 /* to */
            aload 6 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            iload 2 /* to */
            iadd
            iload 1 /* from */
            isub
            aconst_null
            getstatic javafx.collections.ListChangeBuilder.EMPTY_PERM:[I
            iconst_1
            invokespecial javafx.collections.ListChangeBuilder$SubChange.<init>:(IILjava/util/List;[IZ)V
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        20: .line 265
            aload 6 /* change */
            iload 1 /* from */
            putfield javafx.collections.ListChangeBuilder$SubChange.to:I
        21: .line 266
            iinc 5 /* uPos */ 2
        end local 6 // javafx.collections.ListChangeBuilder$SubChange change
        22: .line 268
      StackMap locals:
      StackMap stack:
            iload 5 /* uPos */
            istore 6 /* i */
        start local 6 // int i
        23: goto 27
        24: .line 269
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            iload 6 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
            dup
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            iload 4 /* numberOfAdded */
            iadd
            putfield javafx.collections.ListChangeBuilder$SubChange.from:I
        25: .line 270
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            iload 6 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
            dup
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            iload 4 /* numberOfAdded */
            iadd
            putfield javafx.collections.ListChangeBuilder$SubChange.to:I
        26: .line 268
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        27: iload 6 /* i */
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmplt 24
        end local 6 // int i
        end local 5 // int uPos
        28: .line 274
      StackMap locals:
      StackMap stack:
            return
        end local 4 // int numberOfAdded
        end local 3 // javafx.collections.ListChangeBuilder$SubChange last
        end local 2 // int to
        end local 1 // int from
        end local 0 // javafx.collections.ListChangeBuilder this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   29     0           this  Ljavafx/collections/ListChangeBuilder<TE;>;
            0   29     1           from  I
            0   29     2             to  I
            5   29     3           last  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
            6   29     4  numberOfAdded  I
           15   28     5           uPos  I
           19   22     6         change  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
           23   28     6              i  I
    MethodParameters:
      Name  Flags
      from  
      to    

  public void nextPermutation(int, int, int[]);
    descriptor: (II[I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=17, args_size=4
        start local 0 // javafx.collections.ListChangeBuilder this
        start local 1 // int from
        start local 2 // int to
        start local 3 // int[] perm
         0: .line 277
            aload 0 /* this */
            invokevirtual javafx.collections.ListChangeBuilder.checkState:()V
         1: .line 279
            iload 1 /* from */
            istore 4 /* prePermFrom */
        start local 4 // int prePermFrom
         2: .line 280
            iload 2 /* to */
            istore 5 /* prePermTo */
        start local 5 // int prePermTo
         3: .line 281
            aload 3 /* perm */
            astore 6 /* prePerm */
        start local 6 // int[] prePerm
         4: .line 283
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            ifnull 66
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifne 66
         5: .line 294
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.list:Ljavafx/collections/ObservableListBase;
            invokevirtual javafx.collections.ObservableListBase.size:()I
            newarray 10
            astore 7 /* mapToOriginal */
        start local 7 // int[] mapToOriginal
         6: .line 296
            new java.util.TreeSet
            dup
            invokespecial java.util.TreeSet.<init>:()V
            astore 8 /* removed */
        start local 8 // java.util.Set removed
         7: .line 297
            iconst_0
            istore 9 /* last */
        start local 9 // int last
         8: .line 298
            iconst_0
            istore 10 /* offset */
        start local 10 // int offset
         9: .line 299
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        10: aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            istore 12 /* sz */
        start local 12 // int sz
        11: goto 42
        12: .line 300
      StackMap locals: javafx.collections.ListChangeBuilder int int int[] int int int[] int[] java.util.Set int int int int
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            iload 11 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
            astore 13 /* change */
        start local 13 // javafx.collections.ListChangeBuilder$SubChange change
        13: .line 301
            iload 9 /* last */
            istore 14 /* j */
        start local 14 // int j
        14: goto 20
        15: .line 302
      StackMap locals: javafx.collections.ListChangeBuilder$SubChange int
      StackMap stack:
            aload 7 /* mapToOriginal */
            iload 14 /* j */
            iload 1 /* from */
            if_icmplt 16
            iload 14 /* j */
            iload 2 /* to */
            if_icmplt 17
      StackMap locals:
      StackMap stack: int[]
        16: iload 14 /* j */
            goto 18
      StackMap locals:
      StackMap stack: int[]
        17: aload 3 /* perm */
            iload 14 /* j */
            iload 1 /* from */
            isub
            iaload
      StackMap locals: javafx.collections.ListChangeBuilder int int int[] int int int[] int[] java.util.Set int int int int javafx.collections.ListChangeBuilder$SubChange int
      StackMap stack: int[] int
        18: iload 14 /* j */
            iload 10 /* offset */
            iadd
            iastore
        19: .line 301
            iinc 14 /* j */ 1
      StackMap locals:
      StackMap stack:
        20: iload 14 /* j */
            aload 13 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            if_icmplt 15
        end local 14 // int j
        21: .line 304
            aload 13 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            istore 14 /* j */
        start local 14 // int j
        22: goto 28
        23: .line 305
      StackMap locals:
      StackMap stack:
            aload 7 /* mapToOriginal */
            iload 14 /* j */
            iload 1 /* from */
            if_icmplt 24
            iload 14 /* j */
            iload 2 /* to */
            if_icmplt 25
      StackMap locals:
      StackMap stack: int[]
        24: iload 14 /* j */
            goto 26
      StackMap locals:
      StackMap stack: int[]
        25: aload 3 /* perm */
            iload 14 /* j */
            iload 1 /* from */
            isub
            iaload
      StackMap locals: javafx.collections.ListChangeBuilder int int int[] int int int[] int[] java.util.Set int int int int javafx.collections.ListChangeBuilder$SubChange int
      StackMap stack: int[] int
        26: iconst_m1
            iastore
        27: .line 304
            iinc 14 /* j */ 1
      StackMap locals:
      StackMap stack:
        28: iload 14 /* j */
            aload 13 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            if_icmplt 23
        end local 14 // int j
        29: .line 307
            aload 13 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            istore 9 /* last */
        30: .line 308
            aload 13 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.removed:Ljava/util/List;
            ifnull 31
            aload 13 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.removed:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            goto 32
      StackMap locals:
      StackMap stack:
        31: iconst_0
      StackMap locals:
      StackMap stack: int
        32: istore 14 /* removedSize */
        start local 14 // int removedSize
        33: .line 309
            aload 13 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            iload 10 /* offset */
            iadd
            istore 15 /* j */
        start local 15 // int j
        34: aload 13 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            iload 10 /* offset */
            iadd
            iload 14 /* removedSize */
            iadd
            istore 16 /* upTo */
        start local 16 // int upTo
        35: .line 310
            goto 38
        36: .line 311
      StackMap locals: int int int
      StackMap stack:
            aload 8 /* removed */
            iload 15 /* j */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        37: .line 310
            iinc 15 /* j */ 1
      StackMap locals:
      StackMap stack:
        38: iload 15 /* j */
            iload 16 /* upTo */
        39: .line 309
            if_icmplt 36
        end local 16 // int upTo
        end local 15 // int j
        40: .line 313
            iload 10 /* offset */
            iload 14 /* removedSize */
            aload 13 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            aload 13 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            isub
            isub
            iadd
            istore 10 /* offset */
        end local 14 // int removedSize
        end local 13 // javafx.collections.ListChangeBuilder$SubChange change
        41: .line 299
            iinc 11 /* i */ 1
      StackMap locals: javafx.collections.ListChangeBuilder int int int[] int int int[] int[] java.util.Set int int int int
      StackMap stack:
        42: iload 11 /* i */
            iload 12 /* sz */
            if_icmplt 12
        end local 12 // int sz
        end local 11 // int i
        43: .line 317
            iload 9 /* last */
            istore 11 /* i */
        start local 11 // int i
        44: goto 50
        45: .line 318
      StackMap locals:
      StackMap stack:
            aload 7 /* mapToOriginal */
            iload 11 /* i */
            iload 1 /* from */
            if_icmplt 46
            iload 11 /* i */
            iload 2 /* to */
            if_icmplt 47
      StackMap locals:
      StackMap stack: int[]
        46: iload 11 /* i */
            goto 48
      StackMap locals:
      StackMap stack: int[]
        47: aload 3 /* perm */
            iload 11 /* i */
            iload 1 /* from */
            isub
            iaload
      StackMap locals: javafx.collections.ListChangeBuilder int int int[] int int int[] int[] java.util.Set int int int
      StackMap stack: int[] int
        48: iload 11 /* i */
            iload 10 /* offset */
            iadd
            iastore
        49: .line 317
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        50: iload 11 /* i */
            aload 7 /* mapToOriginal */
            arraylength
            if_icmplt 45
        end local 11 // int i
        51: .line 321
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.list:Ljavafx/collections/ObservableListBase;
            invokevirtual javafx.collections.ObservableListBase.size:()I
            iload 10 /* offset */
            iadd
            newarray 10
            astore 11 /* newPerm */
        start local 11 // int[] newPerm
        52: .line 322
            iconst_0
            istore 12 /* mapPtr */
        start local 12 // int mapPtr
        53: .line 323
            iconst_0
            istore 13 /* i */
        start local 13 // int i
        54: goto 62
        55: .line 324
      StackMap locals: javafx.collections.ListChangeBuilder int int int[] int int int[] int[] java.util.Set int int int[] int int
      StackMap stack:
            aload 8 /* removed */
            iload 13 /* i */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 59
        56: .line 325
            aload 11 /* newPerm */
            iload 13 /* i */
            iload 13 /* i */
            iastore
        57: .line 326
            goto 61
        58: .line 328
      StackMap locals:
      StackMap stack:
            iinc 12 /* mapPtr */ 1
        59: .line 327
      StackMap locals:
      StackMap stack:
            aload 7 /* mapToOriginal */
            iload 12 /* mapPtr */
            iaload
            iconst_m1
            if_icmpeq 58
        60: .line 330
            aload 11 /* newPerm */
            aload 7 /* mapToOriginal */
            iload 12 /* mapPtr */
            iinc 12 /* mapPtr */ 1
            iaload
            iload 13 /* i */
            iastore
        61: .line 323
      StackMap locals:
      StackMap stack:
            iinc 13 /* i */ 1
      StackMap locals:
      StackMap stack:
        62: iload 13 /* i */
            aload 11 /* newPerm */
            arraylength
            if_icmplt 55
        end local 13 // int i
        63: .line 336
            iconst_0
            istore 4 /* prePermFrom */
        64: .line 337
            aload 11 /* newPerm */
            arraylength
            istore 5 /* prePermTo */
        65: .line 338
            aload 11 /* newPerm */
            astore 6 /* prePerm */
        end local 12 // int mapPtr
        end local 11 // int[] newPerm
        end local 10 // int offset
        end local 9 // int last
        end local 8 // java.util.Set removed
        end local 7 // int[] mapToOriginal
        66: .line 343
      StackMap locals: javafx.collections.ListChangeBuilder int int int[] int int int[]
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.permutationChange:Ljavafx/collections/ListChangeBuilder$SubChange;
            ifnull 93
        67: .line 344
            iload 4 /* prePermFrom */
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.permutationChange:Ljavafx/collections/ListChangeBuilder$SubChange;
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            if_icmpne 74
            iload 5 /* prePermTo */
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.permutationChange:Ljavafx/collections/ListChangeBuilder$SubChange;
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            if_icmpne 74
        68: .line 345
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        69: goto 72
        70: .line 346
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.permutationChange:Ljavafx/collections/ListChangeBuilder$SubChange;
            getfield javafx.collections.ListChangeBuilder$SubChange.perm:[I
            iload 7 /* i */
            aload 6 /* prePerm */
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.permutationChange:Ljavafx/collections/ListChangeBuilder$SubChange;
            getfield javafx.collections.ListChangeBuilder$SubChange.perm:[I
            iload 7 /* i */
            iaload
            iload 4 /* prePermFrom */
            isub
            iaload
            iastore
        71: .line 345
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        72: iload 7 /* i */
            aload 6 /* prePerm */
            arraylength
            if_icmplt 70
        end local 7 // int i
        73: .line 348
            goto 94
        74: .line 349
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.permutationChange:Ljavafx/collections/ListChangeBuilder$SubChange;
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            iload 5 /* prePermTo */
            invokestatic java.lang.Math.max:(II)I
            istore 7 /* newTo */
        start local 7 // int newTo
        75: .line 350
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.permutationChange:Ljavafx/collections/ListChangeBuilder$SubChange;
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            iload 4 /* prePermFrom */
            invokestatic java.lang.Math.min:(II)I
            istore 8 /* newFrom */
        start local 8 // int newFrom
        76: .line 351
            iload 7 /* newTo */
            iload 8 /* newFrom */
            isub
            newarray 10
            astore 9 /* newPerm */
        start local 9 // int[] newPerm
        77: .line 353
            iload 8 /* newFrom */
            istore 10 /* i */
        start local 10 // int i
        78: goto 88
        79: .line 354
      StackMap locals: javafx.collections.ListChangeBuilder int int int[] int int int[] int int int[] int
      StackMap stack:
            iload 10 /* i */
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.permutationChange:Ljavafx/collections/ListChangeBuilder$SubChange;
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            if_icmplt 80
            iload 10 /* i */
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.permutationChange:Ljavafx/collections/ListChangeBuilder$SubChange;
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            if_icmplt 82
        80: .line 355
      StackMap locals:
      StackMap stack:
            aload 9 /* newPerm */
            iload 10 /* i */
            iload 8 /* newFrom */
            isub
            aload 6 /* prePerm */
            iload 10 /* i */
            iload 4 /* prePermFrom */
            isub
            iaload
            iastore
        81: .line 356
            goto 87
        82: .line 357
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.permutationChange:Ljavafx/collections/ListChangeBuilder$SubChange;
            getfield javafx.collections.ListChangeBuilder$SubChange.perm:[I
            iload 10 /* i */
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.permutationChange:Ljavafx/collections/ListChangeBuilder$SubChange;
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            isub
            iaload
            istore 11 /* p */
        start local 11 // int p
        83: .line 358
            iload 11 /* p */
            iload 4 /* prePermFrom */
            if_icmplt 84
            iload 11 /* p */
            iload 5 /* prePermTo */
            if_icmplt 86
        84: .line 359
      StackMap locals: int
      StackMap stack:
            aload 9 /* newPerm */
            iload 10 /* i */
            iload 8 /* newFrom */
            isub
            iload 11 /* p */
            iastore
        85: .line 360
            goto 87
        86: .line 361
      StackMap locals:
      StackMap stack:
            aload 9 /* newPerm */
            iload 10 /* i */
            iload 8 /* newFrom */
            isub
            aload 6 /* prePerm */
            iload 11 /* p */
            iload 4 /* prePermFrom */
            isub
            iaload
            iastore
        end local 11 // int p
        87: .line 353
      StackMap locals:
      StackMap stack:
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        88: iload 10 /* i */
            iload 7 /* newTo */
            if_icmplt 79
        end local 10 // int i
        89: .line 366
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.permutationChange:Ljavafx/collections/ListChangeBuilder$SubChange;
            iload 8 /* newFrom */
            putfield javafx.collections.ListChangeBuilder$SubChange.from:I
        90: .line 367
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.permutationChange:Ljavafx/collections/ListChangeBuilder$SubChange;
            iload 7 /* newTo */
            putfield javafx.collections.ListChangeBuilder$SubChange.to:I
        91: .line 368
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.permutationChange:Ljavafx/collections/ListChangeBuilder$SubChange;
            aload 9 /* newPerm */
            putfield javafx.collections.ListChangeBuilder$SubChange.perm:[I
        end local 9 // int[] newPerm
        end local 8 // int newFrom
        end local 7 // int newTo
        92: .line 370
            goto 94
        93: .line 371
      StackMap locals: javafx.collections.ListChangeBuilder int int int[] int int int[]
      StackMap stack:
            aload 0 /* this */
            new javafx.collections.ListChangeBuilder$SubChange
            dup
            iload 4 /* prePermFrom */
            iload 5 /* prePermTo */
            aconst_null
            aload 6 /* prePerm */
            iconst_0
            invokespecial javafx.collections.ListChangeBuilder$SubChange.<init>:(IILjava/util/List;[IZ)V
            putfield javafx.collections.ListChangeBuilder.permutationChange:Ljavafx/collections/ListChangeBuilder$SubChange;
        94: .line 374
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            ifnull 139
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifne 139
        95: .line 375
            new java.util.TreeSet
            dup
            invokespecial java.util.TreeSet.<init>:()V
            astore 7 /* newAdded */
        start local 7 // java.util.Set newAdded
        96: .line 376
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 8 /* newRemoved */
        start local 8 // java.util.Map newRemoved
        97: .line 377
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        98: aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            istore 10 /* sz */
        start local 10 // int sz
        99: goto 115
       100: .line 378
      StackMap locals: javafx.collections.ListChangeBuilder int int int[] int int int[] java.util.Set java.util.Map int int
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            iload 9 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
            astore 11 /* change */
        start local 11 // javafx.collections.ListChangeBuilder$SubChange change
       101: .line 379
            aload 11 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            istore 12 /* cIndex */
        start local 12 // int cIndex
       102: goto 108
       103: .line 380
      StackMap locals: javafx.collections.ListChangeBuilder$SubChange int
      StackMap stack:
            iload 12 /* cIndex */
            iload 1 /* from */
            if_icmplt 104
            iload 12 /* cIndex */
            iload 2 /* to */
            if_icmplt 106
       104: .line 381
      StackMap locals:
      StackMap stack:
            aload 7 /* newAdded */
            iload 12 /* cIndex */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
       105: .line 382
            goto 107
       106: .line 383
      StackMap locals:
      StackMap stack:
            aload 7 /* newAdded */
            aload 3 /* perm */
            iload 12 /* cIndex */
            iload 1 /* from */
            isub
            iaload
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
       107: .line 379
      StackMap locals:
      StackMap stack:
            iinc 12 /* cIndex */ 1
      StackMap locals:
      StackMap stack:
       108: iload 12 /* cIndex */
            aload 11 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            if_icmplt 103
        end local 12 // int cIndex
       109: .line 386
            aload 11 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.removed:Ljava/util/List;
            ifnull 114
       110: .line 387
            aload 11 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            iload 1 /* from */
            if_icmplt 111
            aload 11 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            iload 2 /* to */
            if_icmplt 113
       111: .line 388
      StackMap locals:
      StackMap stack:
            aload 8 /* newRemoved */
            aload 11 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aload 11 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.removed:Ljava/util/List;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       112: .line 389
            goto 114
       113: .line 390
      StackMap locals:
      StackMap stack:
            aload 8 /* newRemoved */
            aload 3 /* perm */
            aload 11 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            iload 1 /* from */
            isub
            iaload
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aload 11 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.removed:Ljava/util/List;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 11 // javafx.collections.ListChangeBuilder$SubChange change
       114: .line 377
      StackMap locals:
      StackMap stack:
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
       115: iload 9 /* i */
            iload 10 /* sz */
            if_icmplt 100
        end local 10 // int sz
        end local 9 // int i
       116: .line 394
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            invokeinterface java.util.List.clear:()V
       117: .line 395
            aconst_null
            astore 9 /* lastChange */
        start local 9 // javafx.collections.ListChangeBuilder$SubChange lastChange
       118: .line 396
            aload 7 /* newAdded */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 11
            goto 131
      StackMap locals: javafx.collections.ListChangeBuilder int int int[] int int int[] java.util.Set java.util.Map javafx.collections.ListChangeBuilder$SubChange top java.util.Iterator
      StackMap stack:
       119: aload 11
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Integer
            astore 10 /* i */
        start local 10 // java.lang.Integer i
       120: .line 397
            aload 9 /* lastChange */
            ifnull 121
            aload 9 /* lastChange */
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            aload 10 /* i */
            invokevirtual java.lang.Integer.intValue:()I
            if_icmpeq 124
       121: .line 398
      StackMap locals: javafx.collections.ListChangeBuilder int int int[] int int int[] java.util.Set java.util.Map javafx.collections.ListChangeBuilder$SubChange java.lang.Integer java.util.Iterator
      StackMap stack:
            new javafx.collections.ListChangeBuilder$SubChange
            dup
            aload 10 /* i */
            invokevirtual java.lang.Integer.intValue:()I
            aload 10 /* i */
            invokevirtual java.lang.Integer.intValue:()I
            iconst_1
            iadd
            aconst_null
            getstatic javafx.collections.ListChangeBuilder.EMPTY_PERM:[I
            iconst_0
            invokespecial javafx.collections.ListChangeBuilder$SubChange.<init>:(IILjava/util/List;[IZ)V
            astore 9 /* lastChange */
       122: .line 399
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            aload 9 /* lastChange */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       123: .line 400
            goto 125
       124: .line 401
      StackMap locals:
      StackMap stack:
            aload 9 /* lastChange */
            aload 10 /* i */
            invokevirtual java.lang.Integer.intValue:()I
            iconst_1
            iadd
            putfield javafx.collections.ListChangeBuilder$SubChange.to:I
       125: .line 403
      StackMap locals:
      StackMap stack:
            aload 8 /* newRemoved */
            aload 10 /* i */
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
            astore 12 /* removed */
        start local 12 // java.util.List removed
       126: .line 404
            aload 12 /* removed */
            ifnull 131
       127: .line 405
            aload 9 /* lastChange */
            getfield javafx.collections.ListChangeBuilder$SubChange.removed:Ljava/util/List;
            ifnull 130
       128: .line 406
            aload 9 /* lastChange */
            getfield javafx.collections.ListChangeBuilder$SubChange.removed:Ljava/util/List;
            aload 12 /* removed */
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
       129: .line 407
            goto 131
       130: .line 408
      StackMap locals: java.util.List
      StackMap stack:
            aload 9 /* lastChange */
            aload 12 /* removed */
            putfield javafx.collections.ListChangeBuilder$SubChange.removed:Ljava/util/List;
        end local 12 // java.util.List removed
        end local 10 // java.lang.Integer i
       131: .line 396
      StackMap locals: javafx.collections.ListChangeBuilder int int int[] int int int[] java.util.Set java.util.Map javafx.collections.ListChangeBuilder$SubChange top java.util.Iterator
      StackMap stack:
            aload 11
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 119
       132: .line 413
            aload 8 /* newRemoved */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 11
            goto 138
      StackMap locals:
      StackMap stack:
       133: aload 11
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 10 /* e */
        start local 10 // java.util.Map$Entry e
       134: .line 414
            aload 10 /* e */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.Integer
            astore 12 /* at */
        start local 12 // java.lang.Integer at
       135: .line 415
            aload 0 /* this */
            aload 12 /* at */
            invokevirtual java.lang.Integer.intValue:()I
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            invokevirtual javafx.collections.ListChangeBuilder.findSubChange:(ILjava/util/List;)I
            istore 13 /* idx */
        start local 13 // int idx
       136: .line 416
            getstatic javafx.collections.ListChangeBuilder.$assertionsDisabled:Z
            ifne 137
            iload 13 /* idx */
            iflt 137
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
       137: .line 417
      StackMap locals: javafx.collections.ListChangeBuilder int int int[] int int int[] java.util.Set java.util.Map javafx.collections.ListChangeBuilder$SubChange java.util.Map$Entry java.util.Iterator java.lang.Integer int
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            iload 13 /* idx */
            iconst_m1
            ixor
            new javafx.collections.ListChangeBuilder$SubChange
            dup
            aload 12 /* at */
            invokevirtual java.lang.Integer.intValue:()I
            aload 12 /* at */
            invokevirtual java.lang.Integer.intValue:()I
            aload 10 /* e */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.util.List
            iconst_0
            newarray 10
            iconst_0
            invokespecial javafx.collections.ListChangeBuilder$SubChange.<init>:(IILjava/util/List;[IZ)V
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        end local 13 // int idx
        end local 12 // java.lang.Integer at
        end local 10 // java.util.Map$Entry e
       138: .line 413
      StackMap locals: javafx.collections.ListChangeBuilder int int int[] int int int[] java.util.Set java.util.Map javafx.collections.ListChangeBuilder$SubChange top java.util.Iterator
      StackMap stack:
            aload 11
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 133
        end local 9 // javafx.collections.ListChangeBuilder$SubChange lastChange
        end local 8 // java.util.Map newRemoved
        end local 7 // java.util.Set newAdded
       139: .line 421
      StackMap locals: javafx.collections.ListChangeBuilder int int int[] int int int[]
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            ifnull 165
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifne 165
       140: .line 422
            new java.util.TreeSet
            dup
            invokespecial java.util.TreeSet.<init>:()V
            astore 7 /* newUpdated */
        start local 7 // java.util.Set newUpdated
       141: .line 423
            iconst_0
            istore 8 /* i */
        start local 8 // int i
       142: aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            istore 9 /* sz */
        start local 9 // int sz
       143: goto 154
       144: .line 424
      StackMap locals: java.util.Set int int
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            iload 8 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
            astore 10 /* change */
        start local 10 // javafx.collections.ListChangeBuilder$SubChange change
       145: .line 425
            aload 10 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.from:I
            istore 11 /* cIndex */
        start local 11 // int cIndex
       146: goto 152
       147: .line 426
      StackMap locals: javafx.collections.ListChangeBuilder$SubChange int
      StackMap stack:
            iload 11 /* cIndex */
            iload 1 /* from */
            if_icmplt 148
            iload 11 /* cIndex */
            iload 2 /* to */
            if_icmplt 150
       148: .line 427
      StackMap locals:
      StackMap stack:
            aload 7 /* newUpdated */
            iload 11 /* cIndex */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
       149: .line 428
            goto 151
       150: .line 429
      StackMap locals:
      StackMap stack:
            aload 7 /* newUpdated */
            aload 3 /* perm */
            iload 11 /* cIndex */
            iload 1 /* from */
            isub
            iaload
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
       151: .line 425
      StackMap locals:
      StackMap stack:
            iinc 11 /* cIndex */ 1
      StackMap locals:
      StackMap stack:
       152: iload 11 /* cIndex */
            aload 10 /* change */
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            if_icmplt 147
        end local 11 // int cIndex
        end local 10 // javafx.collections.ListChangeBuilder$SubChange change
       153: .line 423
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
       154: iload 8 /* i */
            iload 9 /* sz */
            if_icmplt 144
        end local 9 // int sz
        end local 8 // int i
       155: .line 433
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            invokeinterface java.util.List.clear:()V
       156: .line 434
            aconst_null
            astore 8 /* lastUpdateChange */
        start local 8 // javafx.collections.ListChangeBuilder$SubChange lastUpdateChange
       157: .line 435
            aload 7 /* newUpdated */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 10
            goto 164
      StackMap locals: javafx.collections.ListChangeBuilder int int int[] int int int[] java.util.Set javafx.collections.ListChangeBuilder$SubChange top java.util.Iterator
      StackMap stack:
       158: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Integer
            astore 9 /* i */
        start local 9 // java.lang.Integer i
       159: .line 436
            aload 8 /* lastUpdateChange */
            ifnull 160
            aload 8 /* lastUpdateChange */
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            aload 9 /* i */
            invokevirtual java.lang.Integer.intValue:()I
            if_icmpeq 163
       160: .line 437
      StackMap locals: javafx.collections.ListChangeBuilder int int int[] int int int[] java.util.Set javafx.collections.ListChangeBuilder$SubChange java.lang.Integer java.util.Iterator
      StackMap stack:
            new javafx.collections.ListChangeBuilder$SubChange
            dup
            aload 9 /* i */
            invokevirtual java.lang.Integer.intValue:()I
            aload 9 /* i */
            invokevirtual java.lang.Integer.intValue:()I
            iconst_1
            iadd
            aconst_null
            getstatic javafx.collections.ListChangeBuilder.EMPTY_PERM:[I
            iconst_1
            invokespecial javafx.collections.ListChangeBuilder$SubChange.<init>:(IILjava/util/List;[IZ)V
            astore 8 /* lastUpdateChange */
       161: .line 438
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            aload 8 /* lastUpdateChange */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       162: .line 439
            goto 164
       163: .line 440
      StackMap locals:
      StackMap stack:
            aload 8 /* lastUpdateChange */
            aload 9 /* i */
            invokevirtual java.lang.Integer.intValue:()I
            iconst_1
            iadd
            putfield javafx.collections.ListChangeBuilder$SubChange.to:I
        end local 9 // java.lang.Integer i
       164: .line 435
      StackMap locals: javafx.collections.ListChangeBuilder int int int[] int int int[] java.util.Set javafx.collections.ListChangeBuilder$SubChange top java.util.Iterator
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 158
        end local 8 // javafx.collections.ListChangeBuilder$SubChange lastUpdateChange
        end local 7 // java.util.Set newUpdated
       165: .line 444
      StackMap locals: javafx.collections.ListChangeBuilder int int int[] int int int[]
      StackMap stack:
            return
        end local 6 // int[] prePerm
        end local 5 // int prePermTo
        end local 4 // int prePermFrom
        end local 3 // int[] perm
        end local 2 // int to
        end local 1 // int from
        end local 0 // javafx.collections.ListChangeBuilder this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0  166     0              this  Ljavafx/collections/ListChangeBuilder<TE;>;
            0  166     1              from  I
            0  166     2                to  I
            0  166     3              perm  [I
            2  166     4       prePermFrom  I
            3  166     5         prePermTo  I
            4  166     6           prePerm  [I
            6   66     7     mapToOriginal  [I
            7   66     8           removed  Ljava/util/Set<Ljava/lang/Integer;>;
            8   66     9              last  I
            9   66    10            offset  I
           10   43    11                 i  I
           11   43    12                sz  I
           13   41    13            change  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
           14   21    14                 j  I
           22   29    14                 j  I
           33   41    14       removedSize  I
           34   40    15                 j  I
           35   40    16              upTo  I
           44   51    11                 i  I
           52   66    11           newPerm  [I
           53   66    12            mapPtr  I
           54   63    13                 i  I
           69   73     7                 i  I
           75   92     7             newTo  I
           76   92     8           newFrom  I
           77   92     9           newPerm  [I
           78   89    10                 i  I
           83   87    11                 p  I
           96  139     7          newAdded  Ljava/util/Set<Ljava/lang/Integer;>;
           97  139     8        newRemoved  Ljava/util/Map<Ljava/lang/Integer;Ljava/util/List<TE;>;>;
           98  116     9                 i  I
           99  116    10                sz  I
          101  114    11            change  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
          102  109    12            cIndex  I
          118  139     9        lastChange  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
          120  131    10                 i  Ljava/lang/Integer;
          126  131    12           removed  Ljava/util/List<TE;>;
          134  138    10                 e  Ljava/util/Map$Entry<Ljava/lang/Integer;Ljava/util/List<TE;>;>;
          135  138    12                at  Ljava/lang/Integer;
          136  138    13               idx  I
          141  165     7        newUpdated  Ljava/util/Set<Ljava/lang/Integer;>;
          142  155     8                 i  I
          143  155     9                sz  I
          145  153    10            change  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
          146  153    11            cIndex  I
          157  165     8  lastUpdateChange  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
          159  164     9                 i  Ljava/lang/Integer;
    MethodParameters:
      Name  Flags
      from  
      to    
      perm  

  public void nextReplace(int, int, java.util.List<? extends E>);
    descriptor: (IILjava/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // javafx.collections.ListChangeBuilder this
        start local 1 // int from
        start local 2 // int to
        start local 3 // java.util.List removed
         0: .line 448
            aload 0 /* this */
            iload 1 /* from */
            aload 3 /* removed */
            invokevirtual javafx.collections.ListChangeBuilder.nextRemove:(ILjava/util/List;)V
         1: .line 449
            aload 0 /* this */
            iload 1 /* from */
            iload 2 /* to */
            invokevirtual javafx.collections.ListChangeBuilder.nextAdd:(II)V
         2: .line 450
            return
        end local 3 // java.util.List removed
        end local 2 // int to
        end local 1 // int from
        end local 0 // javafx.collections.ListChangeBuilder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Ljavafx/collections/ListChangeBuilder<TE;>;
            0    3     1     from  I
            0    3     2       to  I
            0    3     3  removed  Ljava/util/List<+TE;>;
    Signature: (IILjava/util/List<+TE;>;)V
    MethodParameters:
         Name  Flags
      from     
      to       
      removed  

  public void nextSet(int, );
    descriptor: (ILjava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // javafx.collections.ListChangeBuilder this
        start local 1 // int idx
        start local 2 // java.lang.Object old
         0: .line 453
            aload 0 /* this */
            iload 1 /* idx */
            aload 2 /* old */
            invokevirtual javafx.collections.ListChangeBuilder.nextRemove:(ILjava/lang/Object;)V
         1: .line 454
            aload 0 /* this */
            iload 1 /* idx */
            iload 1 /* idx */
            iconst_1
            iadd
            invokevirtual javafx.collections.ListChangeBuilder.nextAdd:(II)V
         2: .line 456
            return
        end local 2 // java.lang.Object old
        end local 1 // int idx
        end local 0 // javafx.collections.ListChangeBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavafx/collections/ListChangeBuilder<TE;>;
            0    3     1   idx  I
            0    3     2   old  TE;
    Signature: (ITE;)V
    MethodParameters:
      Name  Flags
      idx   
      old   

  public void nextUpdate(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // javafx.collections.ListChangeBuilder this
        start local 1 // int idx
         0: .line 459
            aload 0 /* this */
            invokevirtual javafx.collections.ListChangeBuilder.checkState:()V
         1: .line 460
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            ifnonnull 3
         2: .line 461
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
         3: .line 463
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 4
            aconst_null
            goto 5
      StackMap locals:
      StackMap stack:
         4: aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
      StackMap locals:
      StackMap stack: javafx.collections.ListChangeBuilder$SubChange
         5: astore 2 /* last */
        start local 2 // javafx.collections.ListChangeBuilder$SubChange last
         6: .line 464
            aload 2 /* last */
            ifnull 9
            aload 2 /* last */
            getfield javafx.collections.ListChangeBuilder$SubChange.to:I
            iload 1 /* idx */
            if_icmpne 9
         7: .line 465
            aload 2 /* last */
            iload 1 /* idx */
            iconst_1
            iadd
            putfield javafx.collections.ListChangeBuilder$SubChange.to:I
         8: .line 466
            goto 10
         9: .line 467
      StackMap locals: javafx.collections.ListChangeBuilder$SubChange
      StackMap stack:
            aload 0 /* this */
            iload 1 /* idx */
            invokevirtual javafx.collections.ListChangeBuilder.insertUpdate:(I)V
        10: .line 469
      StackMap locals:
      StackMap stack:
            return
        end local 2 // javafx.collections.ListChangeBuilder$SubChange last
        end local 1 // int idx
        end local 0 // javafx.collections.ListChangeBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Ljavafx/collections/ListChangeBuilder<TE;>;
            0   11     1   idx  I
            6   11     2  last  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
    MethodParameters:
      Name  Flags
      idx   

  private void commit();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=9, args_size=1
        start local 0 // javafx.collections.ListChangeBuilder this
         0: .line 472
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            ifnull 1
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: istore 1 /* addRemoveNotEmpty */
        start local 1 // boolean addRemoveNotEmpty
         3: .line 473
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            ifnull 4
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifne 4
            iconst_1
            goto 5
      StackMap locals: int
      StackMap stack:
         4: iconst_0
      StackMap locals:
      StackMap stack: int
         5: istore 2 /* updateNotEmpty */
        start local 2 // boolean updateNotEmpty
         6: .line 474
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.changeLock:I
            ifne 62
         7: .line 475
            iload 1 /* addRemoveNotEmpty */
            ifne 10
         8: .line 476
            iload 2 /* updateNotEmpty */
            ifne 10
         9: .line 477
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.permutationChange:Ljavafx/collections/ListChangeBuilder$SubChange;
            ifnull 62
        10: .line 478
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            ifnull 11
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            goto 12
      StackMap locals:
      StackMap stack:
        11: iconst_0
        12: .line 479
      StackMap locals:
      StackMap stack: int
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            ifnull 13
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            goto 14
      StackMap locals:
      StackMap stack: int
        13: iconst_0
        14: .line 478
      StackMap locals: javafx.collections.ListChangeBuilder int int
      StackMap stack: int int
            iadd
        15: .line 479
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.permutationChange:Ljavafx/collections/ListChangeBuilder$SubChange;
            ifnull 16
            iconst_1
            goto 17
      StackMap locals:
      StackMap stack: int
        16: iconst_0
        17: .line 478
      StackMap locals: javafx.collections.ListChangeBuilder int int
      StackMap stack: int int
            iadd
            istore 3 /* totalSize */
        start local 3 // int totalSize
        18: .line 480
            iload 3 /* totalSize */
            iconst_1
            if_icmpne 30
        19: .line 481
            iload 1 /* addRemoveNotEmpty */
            ifeq 23
        20: .line 482
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.list:Ljavafx/collections/ObservableListBase;
            new javafx.collections.ListChangeBuilder$SingleChange
            dup
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
            invokestatic javafx.collections.ListChangeBuilder.finalizeSubChange:(Ljavafx/collections/ListChangeBuilder$SubChange;)Ljavafx/collections/ListChangeBuilder$SubChange;
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.list:Ljavafx/collections/ObservableListBase;
            invokespecial javafx.collections.ListChangeBuilder$SingleChange.<init>:(Ljavafx/collections/ListChangeBuilder$SubChange;Ljavafx/collections/ObservableListBase;)V
            invokevirtual javafx.collections.ObservableListBase.fireChange:(Ljavafx/collections/ListChangeListener$Change;)V
        21: .line 483
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            invokeinterface java.util.List.clear:()V
        22: .line 484
            goto 62
      StackMap locals: int
      StackMap stack:
        23: iload 2 /* updateNotEmpty */
            ifeq 27
        24: .line 485
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.list:Ljavafx/collections/ObservableListBase;
            new javafx.collections.ListChangeBuilder$SingleChange
            dup
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
            invokestatic javafx.collections.ListChangeBuilder.finalizeSubChange:(Ljavafx/collections/ListChangeBuilder$SubChange;)Ljavafx/collections/ListChangeBuilder$SubChange;
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.list:Ljavafx/collections/ObservableListBase;
            invokespecial javafx.collections.ListChangeBuilder$SingleChange.<init>:(Ljavafx/collections/ListChangeBuilder$SubChange;Ljavafx/collections/ObservableListBase;)V
            invokevirtual javafx.collections.ObservableListBase.fireChange:(Ljavafx/collections/ListChangeListener$Change;)V
        25: .line 486
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            invokeinterface java.util.List.clear:()V
        26: .line 487
            goto 62
        27: .line 488
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.list:Ljavafx/collections/ObservableListBase;
            new javafx.collections.ListChangeBuilder$SingleChange
            dup
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.permutationChange:Ljavafx/collections/ListChangeBuilder$SubChange;
            invokestatic javafx.collections.ListChangeBuilder.finalizeSubChange:(Ljavafx/collections/ListChangeBuilder$SubChange;)Ljavafx/collections/ListChangeBuilder$SubChange;
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.list:Ljavafx/collections/ObservableListBase;
            invokespecial javafx.collections.ListChangeBuilder$SingleChange.<init>:(Ljavafx/collections/ListChangeBuilder$SubChange;Ljavafx/collections/ObservableListBase;)V
            invokevirtual javafx.collections.ObservableListBase.fireChange:(Ljavafx/collections/ListChangeListener$Change;)V
        28: .line 489
            aload 0 /* this */
            aconst_null
            putfield javafx.collections.ListChangeBuilder.permutationChange:Ljavafx/collections/ListChangeBuilder$SubChange;
        29: .line 491
            goto 62
        30: .line 492
      StackMap locals:
      StackMap stack:
            iload 2 /* updateNotEmpty */
            ifeq 33
        31: .line 493
            aload 0 /* this */
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            invokevirtual javafx.collections.ListChangeBuilder.compress:(Ljava/util/List;)I
            istore 4 /* removed */
        start local 4 // int removed
        32: .line 494
            iload 3 /* totalSize */
            iload 4 /* removed */
            isub
            istore 3 /* totalSize */
        end local 4 // int removed
        33: .line 496
      StackMap locals:
      StackMap stack:
            iload 1 /* addRemoveNotEmpty */
            ifeq 36
        34: .line 497
            aload 0 /* this */
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            invokevirtual javafx.collections.ListChangeBuilder.compress:(Ljava/util/List;)I
            istore 4 /* removed */
        start local 4 // int removed
        35: .line 498
            iload 3 /* totalSize */
            iload 4 /* removed */
            isub
            istore 3 /* totalSize */
        end local 4 // int removed
        36: .line 501
      StackMap locals:
      StackMap stack:
            iload 3 /* totalSize */
            anewarray javafx.collections.ListChangeBuilder$SubChange
            astore 4 /* array */
        start local 4 // javafx.collections.ListChangeBuilder$SubChange[] array
        37: .line 502
            iconst_0
            istore 5 /* ptr */
        start local 5 // int ptr
        38: .line 503
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.permutationChange:Ljavafx/collections/ListChangeBuilder$SubChange;
            ifnull 40
        39: .line 504
            aload 4 /* array */
            iload 5 /* ptr */
            iinc 5 /* ptr */ 1
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.permutationChange:Ljavafx/collections/ListChangeBuilder$SubChange;
            aastore
        40: .line 506
      StackMap locals: javafx.collections.ListChangeBuilder$SubChange[] int
      StackMap stack:
            iload 1 /* addRemoveNotEmpty */
            ifeq 49
        41: .line 507
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            istore 6 /* sz */
        start local 6 // int sz
        42: .line 508
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        43: goto 48
        44: .line 509
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            iload 7 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
            astore 8 /* change */
        start local 8 // javafx.collections.ListChangeBuilder$SubChange change
        45: .line 510
            aload 8 /* change */
            ifnull 47
        46: .line 511
            aload 4 /* array */
            iload 5 /* ptr */
            iinc 5 /* ptr */ 1
            aload 8 /* change */
            aastore
        end local 8 // javafx.collections.ListChangeBuilder$SubChange change
        47: .line 508
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        48: iload 7 /* i */
            iload 6 /* sz */
            if_icmplt 44
        end local 7 // int i
        end local 6 // int sz
        49: .line 515
      StackMap locals:
      StackMap stack:
            iload 2 /* updateNotEmpty */
            ifeq 58
        50: .line 516
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            istore 6 /* sz */
        start local 6 // int sz
        51: .line 517
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        52: goto 57
        53: .line 518
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            iload 7 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.collections.ListChangeBuilder$SubChange
            astore 8 /* change */
        start local 8 // javafx.collections.ListChangeBuilder$SubChange change
        54: .line 519
            aload 8 /* change */
            ifnull 56
        55: .line 520
            aload 4 /* array */
            iload 5 /* ptr */
            iinc 5 /* ptr */ 1
            aload 8 /* change */
            aastore
        end local 8 // javafx.collections.ListChangeBuilder$SubChange change
        56: .line 517
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        57: iload 7 /* i */
            iload 6 /* sz */
            if_icmplt 53
        end local 7 // int i
        end local 6 // int sz
        58: .line 524
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.list:Ljavafx/collections/ObservableListBase;
            new javafx.collections.ListChangeBuilder$IterableChange
            dup
            aload 4 /* array */
            invokestatic javafx.collections.ListChangeBuilder.finalizeSubChangeArray:([Ljavafx/collections/ListChangeBuilder$SubChange;)[Ljavafx/collections/ListChangeBuilder$SubChange;
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.list:Ljavafx/collections/ObservableListBase;
            invokespecial javafx.collections.ListChangeBuilder$IterableChange.<init>:([Ljavafx/collections/ListChangeBuilder$SubChange;Ljavafx/collections/ObservableList;)V
            invokevirtual javafx.collections.ObservableListBase.fireChange:(Ljavafx/collections/ListChangeListener$Change;)V
        59: .line 525
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            ifnull 60
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.addRemoveChanges:Ljava/util/List;
            invokeinterface java.util.List.clear:()V
        60: .line 526
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            ifnull 61
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.updateChanges:Ljava/util/List;
            invokeinterface java.util.List.clear:()V
        61: .line 527
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield javafx.collections.ListChangeBuilder.permutationChange:Ljavafx/collections/ListChangeBuilder$SubChange;
        end local 5 // int ptr
        end local 4 // javafx.collections.ListChangeBuilder$SubChange[] array
        end local 3 // int totalSize
        62: .line 530
      StackMap locals:
      StackMap stack:
            return
        end local 2 // boolean updateNotEmpty
        end local 1 // boolean addRemoveNotEmpty
        end local 0 // javafx.collections.ListChangeBuilder this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   63     0               this  Ljavafx/collections/ListChangeBuilder<TE;>;
            3   63     1  addRemoveNotEmpty  Z
            6   63     2     updateNotEmpty  Z
           18   62     3          totalSize  I
           32   33     4            removed  I
           35   36     4            removed  I
           37   62     4              array  [Ljavafx/collections/ListChangeBuilder$SubChange;
           38   62     5                ptr  I
           42   49     6                 sz  I
           43   49     7                  i  I
           45   47     8             change  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
           51   58     6                 sz  I
           52   58     7                  i  I
           54   56     8             change  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;

  public void beginChange();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // javafx.collections.ListChangeBuilder this
         0: .line 533
            aload 0 /* this */
            dup
            getfield javafx.collections.ListChangeBuilder.changeLock:I
            iconst_1
            iadd
            putfield javafx.collections.ListChangeBuilder.changeLock:I
         1: .line 534
            return
        end local 0 // javafx.collections.ListChangeBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavafx/collections/ListChangeBuilder<TE;>;

  public void endChange();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // javafx.collections.ListChangeBuilder this
         0: .line 537
            aload 0 /* this */
            getfield javafx.collections.ListChangeBuilder.changeLock:I
            ifgt 2
         1: .line 538
            new java.lang.IllegalStateException
            dup
            ldc "Called endChange before beginChange"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 540
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield javafx.collections.ListChangeBuilder.changeLock:I
            iconst_1
            isub
            putfield javafx.collections.ListChangeBuilder.changeLock:I
         3: .line 541
            aload 0 /* this */
            invokevirtual javafx.collections.ListChangeBuilder.commit:()V
         4: .line 542
            return
        end local 0 // javafx.collections.ListChangeBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljavafx/collections/ListChangeBuilder<TE;>;

  private static <E> javafx.collections.ListChangeBuilder$SubChange<E>[] finalizeSubChangeArray(javafx.collections.ListChangeBuilder$SubChange<E>[]);
    descriptor: ([Ljavafx/collections/ListChangeBuilder$SubChange;)[Ljavafx/collections/ListChangeBuilder$SubChange;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // javafx.collections.ListChangeBuilder$SubChange[] changes
         0: .line 545
            aload 0 /* changes */
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 4
      StackMap locals: javafx.collections.ListChangeBuilder$SubChange[] top int int javafx.collections.ListChangeBuilder$SubChange[]
      StackMap stack:
         1: aload 4
            iload 2
            aaload
            astore 1 /* c */
        start local 1 // javafx.collections.ListChangeBuilder$SubChange c
         2: .line 546
            aload 1 /* c */
            invokestatic javafx.collections.ListChangeBuilder.finalizeSubChange:(Ljavafx/collections/ListChangeBuilder$SubChange;)Ljavafx/collections/ListChangeBuilder$SubChange;
            pop
        end local 1 // javafx.collections.ListChangeBuilder$SubChange c
         3: .line 545
            iinc 2 1
      StackMap locals:
      StackMap stack:
         4: iload 2
            iload 3
            if_icmplt 1
         5: .line 548
            aload 0 /* changes */
            areturn
        end local 0 // javafx.collections.ListChangeBuilder$SubChange[] changes
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0  changes  [Ljavafx/collections/ListChangeBuilder$SubChange;
            2    3     1        c  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
    Signature: <E:Ljava/lang/Object;>([Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;)[Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
    MethodParameters:
         Name  Flags
      changes  final

  private static <E> javafx.collections.ListChangeBuilder$SubChange<E> finalizeSubChange(javafx.collections.ListChangeBuilder$SubChange<E>);
    descriptor: (Ljavafx/collections/ListChangeBuilder$SubChange;)Ljavafx/collections/ListChangeBuilder$SubChange;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javafx.collections.ListChangeBuilder$SubChange c
         0: .line 552
            aload 0 /* c */
            getfield javafx.collections.ListChangeBuilder$SubChange.perm:[I
            ifnonnull 2
         1: .line 553
            aload 0 /* c */
            getstatic javafx.collections.ListChangeBuilder.EMPTY_PERM:[I
            putfield javafx.collections.ListChangeBuilder$SubChange.perm:[I
         2: .line 555
      StackMap locals:
      StackMap stack:
            aload 0 /* c */
            getfield javafx.collections.ListChangeBuilder$SubChange.removed:Ljava/util/List;
            ifnonnull 5
         3: .line 556
            aload 0 /* c */
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            putfield javafx.collections.ListChangeBuilder$SubChange.removed:Ljava/util/List;
         4: .line 557
            goto 6
         5: .line 558
      StackMap locals:
      StackMap stack:
            aload 0 /* c */
            aload 0 /* c */
            getfield javafx.collections.ListChangeBuilder$SubChange.removed:Ljava/util/List;
            invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
            putfield javafx.collections.ListChangeBuilder$SubChange.removed:Ljava/util/List;
         6: .line 560
      StackMap locals:
      StackMap stack:
            aload 0 /* c */
            areturn
        end local 0 // javafx.collections.ListChangeBuilder$SubChange c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0     c  Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
    Signature: <E:Ljava/lang/Object;>(Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;)Ljavafx/collections/ListChangeBuilder$SubChange<TE;>;
    MethodParameters:
      Name  Flags
      c     final
}
Signature: <E:Ljava/lang/Object;>Ljava/lang/Object;
SourceFile: "ListChangeBuilder.java"
NestMembers:
  javafx.collections.ListChangeBuilder$IterableChange  javafx.collections.ListChangeBuilder$SingleChange  javafx.collections.ListChangeBuilder$SubChange
InnerClasses:
  public abstract Entry = java.util.Map$Entry of java.util.Map
  private IterableChange = javafx.collections.ListChangeBuilder$IterableChange of javafx.collections.ListChangeBuilder
  private SingleChange = javafx.collections.ListChangeBuilder$SingleChange of javafx.collections.ListChangeBuilder
  private SubChange = javafx.collections.ListChangeBuilder$SubChange of javafx.collections.ListChangeBuilder
  public abstract Change = javafx.collections.ListChangeListener$Change of javafx.collections.ListChangeListener