abstract class javafx.scene.control.MultipleSelectionModelBase<T> extends javafx.scene.control.MultipleSelectionModel<T>
  minor version: 0
  major version: 59
  flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
  this_class: javafx.scene.control.MultipleSelectionModelBase
  super_class: javafx.scene.control.MultipleSelectionModel
{
  final javafx.scene.control.MultipleSelectionModelBase<T>.SelectedIndicesList selectedIndices;
    descriptor: Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
    flags: (0x0010) ACC_FINAL
    Signature: Ljavafx/scene/control/MultipleSelectionModelBase<TT;>.SelectedIndicesList;

  private final javafx.collections.ObservableListBase<T> selectedItems;
    descriptor: Ljavafx/collections/ObservableListBase;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljavafx/collections/ObservableListBase<TT;>;

  javafx.collections.ListChangeListener$Change selectedItemChange;
    descriptor: Ljavafx/collections/ListChangeListener$Change;
    flags: (0x0000) 

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
         0: .line 61
            aload 0 /* this */
            invokespecial javafx.scene.control.MultipleSelectionModel.<init>:()V
         1: .line 62
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.selectedIndexProperty:()Ljavafx/beans/property/ReadOnlyIntegerProperty;
            aload 0 /* this */
            invokedynamic invalidated(Ljavafx/scene/control/MultipleSelectionModelBase;)Ljavafx/beans/InvalidationListener;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljavafx/beans/Observable;)V
                  javafx/scene/control/MultipleSelectionModelBase.lambda$0(Ljavafx/beans/Observable;)V (7)
                  (Ljavafx/beans/Observable;)V
            invokevirtual javafx.beans.property.ReadOnlyIntegerProperty.addListener:(Ljavafx/beans/InvalidationListener;)V
         2: .line 70
            aload 0 /* this */
            new javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList
            dup
            aload 0 /* this */
            invokespecial javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.<init>:(Ljavafx/scene/control/MultipleSelectionModelBase;)V
            putfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
         3: .line 72
            aload 0 /* this */
            new javafx.scene.control.MultipleSelectionModelBase$1
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            aload 0 /* this */
            invokedynamic get(Ljavafx/scene/control/MultipleSelectionModelBase;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  javafx/scene/control/MultipleSelectionModelBase.lambda$1()Ljava/lang/Integer; (7)
                  ()Ljava/lang/Integer;
            invokespecial javafx.scene.control.MultipleSelectionModelBase$1.<init>:(Ljavafx/scene/control/MultipleSelectionModelBase;Ljavafx/collections/ObservableList;Ljava/util/function/Supplier;)V
            putfield javafx.scene.control.MultipleSelectionModelBase.selectedItems:Ljavafx/collections/ObservableListBase;
         4: .line 77
            return
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;

  public javafx.collections.ObservableList<java.lang.Integer> getSelectedIndices();
    descriptor: ()Ljavafx/collections/ObservableList;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
         0: .line 112
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            areturn
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;
    Signature: ()Ljavafx/collections/ObservableList<Ljava/lang/Integer;>;

  public javafx.collections.ObservableList<T> getSelectedItems();
    descriptor: ()Ljavafx/collections/ObservableList;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
         0: .line 117
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedItems:Ljavafx/collections/ObservableListBase;
            areturn
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;
    Signature: ()Ljavafx/collections/ObservableList<TT;>;

  protected abstract int getItemCount();
    descriptor: ()I
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT

  protected abstract T getModelItem();
    descriptor: (I)Ljava/lang/Object;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Signature: (I)TT;
    MethodParameters:
       Name  Flags
      index  

  protected abstract void focus(int);
    descriptor: (I)V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
       Name  Flags
      index  

  protected abstract int getFocusedIndex();
    descriptor: ()I
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT

  void shiftSelection(int, int, javafx.util.Callback<javafx.scene.control.MultipleSelectionModelBase$ShiftParams, java.lang.Void>);
    descriptor: (IILjavafx/util/Callback;)V
    flags: (0x0000) 
    Code:
      stack=8, locals=4, args_size=4
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
        start local 1 // int position
        start local 2 // int shift
        start local 3 // javafx.util.Callback callback
         0: .line 186
            aload 0 /* this */
            iconst_1
            anewarray javafx.util.Pair
            dup
            iconst_0
            new javafx.util.Pair
            dup
            iload 1 /* position */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            iload 2 /* shift */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokespecial javafx.util.Pair.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            aastore
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            aload 3 /* callback */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.shiftSelection:(Ljava/util/List;Ljavafx/util/Callback;)V
         1: .line 187
            return
        end local 3 // javafx.util.Callback callback
        end local 2 // int shift
        end local 1 // int position
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;
            0    2     1  position  I
            0    2     2     shift  I
            0    2     3  callback  Ljavafx/util/Callback<Ljavafx/scene/control/MultipleSelectionModelBase$ShiftParams;Ljava/lang/Void;>;
    Signature: (IILjavafx/util/Callback<Ljavafx/scene/control/MultipleSelectionModelBase$ShiftParams;Ljava/lang/Void;>;)V
    MethodParameters:
          Name  Flags
      position  
      shift     
      callback  final

  void shiftSelection(java.util.List<javafx.util.Pair<java.lang.Integer, java.lang.Integer>>, javafx.util.Callback<javafx.scene.control.MultipleSelectionModelBase$ShiftParams, java.lang.Void>);
    descriptor: (Ljava/util/List;Ljavafx/util/Callback;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=13, args_size=3
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
        start local 1 // java.util.List shifts
        start local 2 // javafx.util.Callback callback
         0: .line 190
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.size:()I
            istore 3 /* selectedIndicesCardinality */
        start local 3 // int selectedIndicesCardinality
         1: .line 191
            iload 3 /* selectedIndicesCardinality */
            ifne 2
            return
         2: .line 193
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.bitsetSize:()I
            istore 4 /* selectedIndicesSize */
        start local 4 // int selectedIndicesSize
         3: .line 195
            iload 4 /* selectedIndicesSize */
            newarray 10
            astore 5 /* perm */
        start local 5 // int[] perm
         4: .line 196
            aload 5 /* perm */
            iconst_m1
            invokestatic java.util.Arrays.fill:([II)V
         5: .line 199
            aload 1 /* shifts */
            invokedynamic compare()Ljava/util/Comparator;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;Ljava/lang/Object;)I
                  javafx/scene/control/MultipleSelectionModelBase.lambda$2(Ljavafx/util/Pair;Ljavafx/util/Pair;)I (6)
                  (Ljavafx/util/Pair;Ljavafx/util/Pair;)I
            invokestatic java.util.Collections.sort:(Ljava/util/List;Ljava/util/Comparator;)V
         6: .line 200
            aload 1 /* shifts */
            aload 1 /* shifts */
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.util.Pair
            invokevirtual javafx.util.Pair.getKey:()Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            istore 6 /* lowestShiftPosition */
        start local 6 // int lowestShiftPosition
         7: .line 203
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            getfield javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.bitset:Ljava/util/BitSet;
            invokevirtual java.util.BitSet.clone:()Ljava/lang/Object;
            checkcast java.util.BitSet
            astore 7 /* selectedIndicesCopy */
        start local 7 // java.util.BitSet selectedIndicesCopy
         8: .line 205
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.startAtomic:()V
         9: .line 206
            aload 1 /* shifts */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9
            goto 12
      StackMap locals: javafx.scene.control.MultipleSelectionModelBase java.util.List javafx.util.Callback int int int[] int java.util.BitSet top java.util.Iterator
      StackMap stack:
        10: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javafx.util.Pair
            astore 8 /* shift */
        start local 8 // javafx.util.Pair shift
        11: .line 207
            aload 0 /* this */
            aload 8 /* shift */
            aload 2 /* callback */
            aload 5 /* perm */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.doShift:(Ljavafx/util/Pair;Ljavafx/util/Callback;[I)V
        end local 8 // javafx.util.Pair shift
        12: .line 206
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 10
        13: .line 209
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.stopAtomic:()V
        14: .line 212
            aload 5 /* perm */
            invokestatic java.util.Arrays.stream:([I)Ljava/util/stream/IntStream;
            invokedynamic test()Ljava/util/function/IntPredicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (I)Z
                  javafx/scene/control/MultipleSelectionModelBase.lambda$3(I)Z (6)
                  (I)Z
            invokeinterface java.util.stream.IntStream.filter:(Ljava/util/function/IntPredicate;)Ljava/util/stream/IntStream;
            invokeinterface java.util.stream.IntStream.toArray:()[I
            astore 8 /* prunedPerm */
        start local 8 // int[] prunedPerm
        15: .line 213
            aload 8 /* prunedPerm */
            arraylength
            ifle 16
            iconst_1
            goto 17
      StackMap locals: javafx.scene.control.MultipleSelectionModelBase java.util.List javafx.util.Callback int int int[] int java.util.BitSet int[]
      StackMap stack:
        16: iconst_0
      StackMap locals:
      StackMap stack: int
        17: istore 9 /* hasSelectionChanged */
        start local 9 // boolean hasSelectionChanged
        18: .line 216
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getSelectedIndex:()I
            istore 10 /* selectedIndex */
        start local 10 // int selectedIndex
        19: .line 217
            iload 10 /* selectedIndex */
            iload 6 /* lowestShiftPosition */
            if_icmplt 31
            iload 10 /* selectedIndex */
            iconst_m1
            if_icmple 31
        20: .line 220
            aload 1 /* shifts */
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
        21: .line 221
            iload 10 /* selectedIndex */
            invokedynamic test(I)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  javafx/scene/control/MultipleSelectionModelBase.lambda$4(ILjavafx/util/Pair;)Z (6)
                  (Ljavafx/util/Pair;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        22: .line 222
            invokedynamic applyAsInt()Ljava/util/function/ToIntFunction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)I
                  javafx/scene/control/MultipleSelectionModelBase.lambda$5(Ljavafx/util/Pair;)I (6)
                  (Ljavafx/util/Pair;)I
            invokeinterface java.util.stream.Stream.mapToInt:(Ljava/util/function/ToIntFunction;)Ljava/util/stream/IntStream;
        23: .line 223
            invokeinterface java.util.stream.IntStream.sum:()I
        24: .line 220
            istore 11 /* totalShift */
        start local 11 // int totalShift
        25: .line 229
            iconst_0
            iload 10 /* selectedIndex */
            iload 11 /* totalShift */
            iadd
            invokestatic java.lang.Math.max:(II)I
            istore 12 /* newSelectionLead */
        start local 12 // int newSelectionLead
        26: .line 231
            aload 0 /* this */
            iload 12 /* newSelectionLead */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.setSelectedIndex:(I)V
        27: .line 237
            iload 9 /* hasSelectionChanged */
            ifeq 30
        28: .line 238
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            iload 12 /* newSelectionLead */
            iconst_1
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.set:(IZ)V
        29: .line 239
            goto 31
        30: .line 240
      StackMap locals: javafx.scene.control.MultipleSelectionModelBase java.util.List javafx.util.Callback int int int[] int java.util.BitSet int[] int int int int
      StackMap stack:
            aload 0 /* this */
            iload 12 /* newSelectionLead */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.select:(I)V
        end local 12 // int newSelectionLead
        end local 11 // int totalShift
        31: .line 247
      StackMap locals:
      StackMap stack:
            iload 9 /* hasSelectionChanged */
            ifeq 42
        32: .line 249
            aload 7 /* selectedIndicesCopy */
            invokevirtual java.util.BitSet.clone:()Ljava/lang/Object;
            checkcast java.util.BitSet
            astore 11 /* removed */
        start local 11 // java.util.BitSet removed
        33: .line 250
            aload 11 /* removed */
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            getfield javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.bitset:Ljava/util/BitSet;
            invokevirtual java.util.BitSet.andNot:(Ljava/util/BitSet;)V
        34: .line 252
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            getfield javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.bitset:Ljava/util/BitSet;
            invokevirtual java.util.BitSet.clone:()Ljava/lang/Object;
            checkcast java.util.BitSet
            astore 12 /* added */
        start local 12 // java.util.BitSet added
        35: .line 253
            aload 12 /* added */
            aload 7 /* selectedIndicesCopy */
            invokevirtual java.util.BitSet.andNot:(Ljava/util/BitSet;)V
        36: .line 255
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.reset:()V
        37: .line 256
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            new com.sun.javafx.scene.control.MultipleAdditionAndRemovedChange
            dup
        38: .line 257
            aload 12 /* added */
            invokevirtual java.util.BitSet.stream:()Ljava/util/stream/IntStream;
            invokeinterface java.util.stream.IntStream.boxed:()Ljava/util/stream/Stream;
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
        39: .line 258
            aload 11 /* removed */
            invokevirtual java.util.BitSet.stream:()Ljava/util/stream/IntStream;
            invokeinterface java.util.stream.IntStream.boxed:()Ljava/util/stream/Stream;
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
        40: .line 259
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            invokespecial com.sun.javafx.scene.control.MultipleAdditionAndRemovedChange.<init>:(Ljava/util/List;Ljava/util/List;Ljavafx/collections/ObservableList;)V
        41: .line 256
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.callObservers:(Ljavafx/collections/ListChangeListener$Change;)V
        end local 12 // java.util.BitSet added
        end local 11 // java.util.BitSet removed
        42: .line 262
      StackMap locals:
      StackMap stack:
            return
        end local 10 // int selectedIndex
        end local 9 // boolean hasSelectionChanged
        end local 8 // int[] prunedPerm
        end local 7 // java.util.BitSet selectedIndicesCopy
        end local 6 // int lowestShiftPosition
        end local 5 // int[] perm
        end local 4 // int selectedIndicesSize
        end local 3 // int selectedIndicesCardinality
        end local 2 // javafx.util.Callback callback
        end local 1 // java.util.List shifts
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0   43     0                        this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;
            0   43     1                      shifts  Ljava/util/List<Ljavafx/util/Pair<Ljava/lang/Integer;Ljava/lang/Integer;>;>;
            0   43     2                    callback  Ljavafx/util/Callback<Ljavafx/scene/control/MultipleSelectionModelBase$ShiftParams;Ljava/lang/Void;>;
            1   43     3  selectedIndicesCardinality  I
            3   43     4         selectedIndicesSize  I
            4   43     5                        perm  [I
            7   43     6         lowestShiftPosition  I
            8   43     7         selectedIndicesCopy  Ljava/util/BitSet;
           11   12     8                       shift  Ljavafx/util/Pair<Ljava/lang/Integer;Ljava/lang/Integer;>;
           15   43     8                  prunedPerm  [I
           18   43     9         hasSelectionChanged  Z
           19   43    10               selectedIndex  I
           25   31    11                  totalShift  I
           26   31    12            newSelectionLead  I
           33   42    11                     removed  Ljava/util/BitSet;
           35   42    12                       added  Ljava/util/BitSet;
    Signature: (Ljava/util/List<Ljavafx/util/Pair<Ljava/lang/Integer;Ljava/lang/Integer;>;>;Ljavafx/util/Callback<Ljavafx/scene/control/MultipleSelectionModelBase$ShiftParams;Ljava/lang/Void;>;)V
    MethodParameters:
          Name  Flags
      shifts    
      callback  final

  private void doShift(javafx.util.Pair<java.lang.Integer, java.lang.Integer>, javafx.util.Callback<javafx.scene.control.MultipleSelectionModelBase$ShiftParams, java.lang.Void>, );
    descriptor: (Ljavafx/util/Pair;Ljavafx/util/Callback;[I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=10, args_size=4
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
        start local 1 // javafx.util.Pair shiftPair
        start local 2 // javafx.util.Callback callback
        start local 3 // int[] perm
         0: .line 265
            aload 1 /* shiftPair */
            invokevirtual javafx.util.Pair.getKey:()Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            istore 4 /* position */
        start local 4 // int position
         1: .line 266
            aload 1 /* shiftPair */
            invokevirtual javafx.util.Pair.getValue:()Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            istore 5 /* shift */
        start local 5 // int shift
         2: .line 269
            iload 4 /* position */
            ifge 3
            return
         3: .line 270
      StackMap locals: int int
      StackMap stack:
            iload 5 /* shift */
            ifne 4
            return
         4: .line 272
      StackMap locals:
      StackMap stack:
            aload 3 /* perm */
            invokestatic java.util.Arrays.stream:([I)Ljava/util/stream/IntStream;
            invokedynamic test()Ljava/util/function/IntPredicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (I)Z
                  javafx/scene/control/MultipleSelectionModelBase.lambda$6(I)Z (6)
                  (I)Z
            invokeinterface java.util.stream.IntStream.filter:(Ljava/util/function/IntPredicate;)Ljava/util/stream/IntStream;
            invokeinterface java.util.stream.IntStream.count:()J
            l2i
            istore 6 /* idx */
        start local 6 // int idx
         5: .line 274
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.bitsetSize:()I
            iload 6 /* idx */
            isub
            istore 7 /* selectedIndicesSize */
        start local 7 // int selectedIndicesSize
         6: .line 276
            iload 5 /* shift */
            ifle 21
         7: .line 277
            iload 7 /* selectedIndicesSize */
            iconst_1
            isub
            istore 8 /* i */
        start local 8 // int i
         8: goto 18
         9: .line 278
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            iload 8 /* i */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.isSelected:(I)Z
            istore 9 /* selected */
        start local 9 // boolean selected
        10: .line 280
            aload 2 /* callback */
            ifnonnull 14
        11: .line 281
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            iload 8 /* i */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.clear:(I)V
        12: .line 282
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            iload 8 /* i */
            iload 5 /* shift */
            iadd
            iload 9 /* selected */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.set:(IZ)V
        13: .line 283
            goto 15
        14: .line 284
      StackMap locals: int
      StackMap stack:
            aload 2 /* callback */
            new javafx.scene.control.MultipleSelectionModelBase$ShiftParams
            dup
            iload 8 /* i */
            iload 8 /* i */
            iload 5 /* shift */
            iadd
            iload 9 /* selected */
            invokespecial javafx.scene.control.MultipleSelectionModelBase$ShiftParams.<init>:(IIZ)V
            invokeinterface javafx.util.Callback.call:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        15: .line 287
      StackMap locals:
      StackMap stack:
            iload 9 /* selected */
            ifeq 17
        16: .line 288
            aload 3 /* perm */
            iload 6 /* idx */
            iinc 6 /* idx */ 1
            iload 8 /* i */
            iconst_1
            iadd
            iastore
        end local 9 // boolean selected
        17: .line 277
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ -1
      StackMap locals:
      StackMap stack:
        18: iload 8 /* i */
            iload 4 /* position */
            if_icmplt 19
            iload 8 /* i */
            ifge 9
        end local 8 // int i
        19: .line 291
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            iload 4 /* position */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.clear:(I)V
        20: .line 292
            goto 36
      StackMap locals:
      StackMap stack:
        21: iload 5 /* shift */
            ifge 36
        22: .line 293
            iload 4 /* position */
            istore 8 /* i */
        start local 8 // int i
        23: goto 35
        24: .line 294
      StackMap locals: int
      StackMap stack:
            iload 8 /* i */
            iload 5 /* shift */
            iadd
            ifge 25
            goto 34
        25: .line 295
      StackMap locals:
      StackMap stack:
            iload 8 /* i */
            iconst_1
            iadd
            iload 5 /* shift */
            iadd
            iload 4 /* position */
            if_icmpge 26
            goto 34
        26: .line 296
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            iload 8 /* i */
            iconst_1
            iadd
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.isSelected:(I)Z
            istore 9 /* selected */
        start local 9 // boolean selected
        27: .line 298
            aload 2 /* callback */
            ifnonnull 31
        28: .line 299
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            iload 8 /* i */
            iconst_1
            iadd
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.clear:(I)V
        29: .line 300
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            iload 8 /* i */
            iconst_1
            iadd
            iload 5 /* shift */
            iadd
            iload 9 /* selected */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.set:(IZ)V
        30: .line 301
            goto 32
        31: .line 302
      StackMap locals: int
      StackMap stack:
            aload 2 /* callback */
            new javafx.scene.control.MultipleSelectionModelBase$ShiftParams
            dup
            iload 8 /* i */
            iconst_1
            iadd
            iload 8 /* i */
            iconst_1
            iadd
            iload 5 /* shift */
            iadd
            iload 9 /* selected */
            invokespecial javafx.scene.control.MultipleSelectionModelBase$ShiftParams.<init>:(IIZ)V
            invokeinterface javafx.util.Callback.call:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        32: .line 305
      StackMap locals:
      StackMap stack:
            iload 9 /* selected */
            ifeq 34
        33: .line 306
            aload 3 /* perm */
            iload 6 /* idx */
            iinc 6 /* idx */ 1
            iload 8 /* i */
            iastore
        end local 9 // boolean selected
        34: .line 293
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        35: iload 8 /* i */
            iload 7 /* selectedIndicesSize */
            if_icmplt 24
        end local 8 // int i
        36: .line 310
      StackMap locals:
      StackMap stack:
            return
        end local 7 // int selectedIndicesSize
        end local 6 // int idx
        end local 5 // int shift
        end local 4 // int position
        end local 3 // int[] perm
        end local 2 // javafx.util.Callback callback
        end local 1 // javafx.util.Pair shiftPair
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   37     0                 this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;
            0   37     1            shiftPair  Ljavafx/util/Pair<Ljava/lang/Integer;Ljava/lang/Integer;>;
            0   37     2             callback  Ljavafx/util/Callback<Ljavafx/scene/control/MultipleSelectionModelBase$ShiftParams;Ljava/lang/Void;>;
            0   37     3                 perm  [I
            1   37     4             position  I
            2   37     5                shift  I
            5   37     6                  idx  I
            6   37     7  selectedIndicesSize  I
            8   19     8                    i  I
           10   17     9             selected  Z
           23   36     8                    i  I
           27   34     9             selected  Z
    Signature: (Ljavafx/util/Pair<Ljava/lang/Integer;Ljava/lang/Integer;>;Ljavafx/util/Callback<Ljavafx/scene/control/MultipleSelectionModelBase$ShiftParams;Ljava/lang/Void;>;[I)V
    MethodParameters:
           Name  Flags
      shiftPair  
      callback   final
      perm       

  void startAtomic();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
         0: .line 313
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.startAtomic:()V
         1: .line 314
            return
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;

  void stopAtomic();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
         0: .line 317
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.stopAtomic:()V
         1: .line 318
            return
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;

  boolean isAtomic();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
         0: .line 321
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.isAtomic:()Z
            ireturn
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;

  public void clearAndSelect(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=7, args_size=2
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
        start local 1 // int row
         0: .line 325
            iload 1 /* row */
            iflt 1
            iload 1 /* row */
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getItemCount:()I
            if_icmplt 3
         1: .line 326
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.clearSelection:()V
         2: .line 327
            return
         3: .line 330
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* row */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.isSelected:(I)Z
            istore 2 /* wasSelected */
        start local 2 // boolean wasSelected
         4: .line 334
            iload 2 /* wasSelected */
            ifeq 7
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getSelectedIndices:()Ljavafx/collections/ObservableList;
            invokeinterface javafx.collections.ObservableList.size:()I
            iconst_1
            if_icmpne 7
         5: .line 337
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getSelectedItem:()Ljava/lang/Object;
            aload 0 /* this */
            iload 1 /* row */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getModelItem:(I)Ljava/lang/Object;
            if_acmpne 7
         6: .line 338
            return
         7: .line 345
      StackMap locals: int
      StackMap stack:
            new java.util.BitSet
            dup
            invokespecial java.util.BitSet.<init>:()V
            astore 3 /* selectedIndicesCopy */
        start local 3 // java.util.BitSet selectedIndicesCopy
         8: .line 346
            aload 3 /* selectedIndicesCopy */
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            getfield javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.bitset:Ljava/util/BitSet;
            invokevirtual java.util.BitSet.or:(Ljava/util/BitSet;)V
         9: .line 347
            aload 3 /* selectedIndicesCopy */
            iload 1 /* row */
            invokevirtual java.util.BitSet.clear:(I)V
        10: .line 348
            new javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList
            dup
            aload 0 /* this */
            aload 3 /* selectedIndicesCopy */
            invokespecial javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.<init>:(Ljavafx/scene/control/MultipleSelectionModelBase;Ljava/util/BitSet;)V
            astore 4 /* previousSelectedIndices */
        start local 4 // java.util.List previousSelectedIndices
        11: .line 354
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.startAtomic:()V
        12: .line 357
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.clearSelection:()V
        13: .line 360
            aload 0 /* this */
            iload 1 /* row */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.select:(I)V
        14: .line 361
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.stopAtomic:()V
        15: .line 374
            iload 2 /* wasSelected */
            ifeq 18
        16: .line 375
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            aload 4 /* previousSelectedIndices */
            iload 1 /* row */
            invokestatic javafx.scene.control.ControlUtils.buildClearAndSelectChange:(Ljavafx/collections/ObservableList;Ljava/util/List;I)Ljavafx/collections/ListChangeListener$Change;
            astore 5 /* change */
        start local 5 // javafx.collections.ListChangeListener$Change change
        17: .line 376
            goto 22
        end local 5 // javafx.collections.ListChangeListener$Change change
        18: .line 377
      StackMap locals: java.util.BitSet java.util.List
      StackMap stack:
            iconst_0
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            iload 1 /* row */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.indexOf:(Ljava/lang/Object;)I
            invokestatic java.lang.Math.max:(II)I
            istore 6 /* changeIndex */
        start local 6 // int changeIndex
        19: .line 378
            new com.sun.javafx.collections.NonIterableChange$GenericAddRemoveChange
            dup
        20: .line 379
            iload 6 /* changeIndex */
            iload 6 /* changeIndex */
            iconst_1
            iadd
            aload 4 /* previousSelectedIndices */
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
        21: .line 378
            invokespecial com.sun.javafx.collections.NonIterableChange$GenericAddRemoveChange.<init>:(IILjava/util/List;Ljavafx/collections/ObservableList;)V
            astore 5 /* change */
        end local 6 // int changeIndex
        start local 5 // javafx.collections.ListChangeListener$Change change
        22: .line 382
      StackMap locals: javafx.collections.ListChangeListener$Change
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            aload 5 /* change */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.callObservers:(Ljavafx/collections/ListChangeListener$Change;)V
        23: .line 383
            return
        end local 5 // javafx.collections.ListChangeListener$Change change
        end local 4 // java.util.List previousSelectedIndices
        end local 3 // java.util.BitSet selectedIndicesCopy
        end local 2 // boolean wasSelected
        end local 1 // int row
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   24     0                     this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;
            0   24     1                      row  I
            4   24     2              wasSelected  Z
            8   24     3      selectedIndicesCopy  Ljava/util/BitSet;
           11   24     4  previousSelectedIndices  Ljava/util/List<Ljava/lang/Integer;>;
           17   18     5                   change  Ljavafx/collections/ListChangeListener$Change<Ljava/lang/Integer;>;
           22   24     5                   change  Ljavafx/collections/ListChangeListener$Change<Ljava/lang/Integer;>;
           19   22     6              changeIndex  I
    MethodParameters:
      Name  Flags
      row   

  public void select(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=7, args_size=2
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
        start local 1 // int row
         0: .line 386
            iload 1 /* row */
            iconst_m1
            if_icmpne 3
         1: .line 387
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.clearSelection:()V
         2: .line 388
            return
         3: .line 390
      StackMap locals:
      StackMap stack:
            iload 1 /* row */
            iflt 4
            iload 1 /* row */
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getItemCount:()I
            if_icmplt 5
         4: .line 391
      StackMap locals:
      StackMap stack:
            return
         5: .line 394
      StackMap locals:
      StackMap stack:
            iload 1 /* row */
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getSelectedIndex:()I
            if_icmpne 6
            iconst_1
            goto 7
      StackMap locals:
      StackMap stack:
         6: iconst_0
      StackMap locals:
      StackMap stack: int
         7: istore 2 /* isSameRow */
        start local 2 // boolean isSameRow
         8: .line 395
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getSelectedItem:()Ljava/lang/Object;
            astore 3 /* currentItem */
        start local 3 // java.lang.Object currentItem
         9: .line 396
            aload 0 /* this */
            iload 1 /* row */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getModelItem:(I)Ljava/lang/Object;
            astore 4 /* newItem */
        start local 4 // java.lang.Object newItem
        10: .line 397
            aload 4 /* newItem */
            ifnull 11
            aload 4 /* newItem */
            aload 3 /* currentItem */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 11
            iconst_1
            goto 12
      StackMap locals: int java.lang.Object java.lang.Object
      StackMap stack:
        11: iconst_0
      StackMap locals:
      StackMap stack: int
        12: istore 5 /* isSameItem */
        start local 5 // boolean isSameItem
        13: .line 398
            iload 2 /* isSameRow */
            ifeq 14
            iload 5 /* isSameItem */
            ifne 14
            iconst_1
            goto 15
      StackMap locals: int
      StackMap stack:
        14: iconst_0
      StackMap locals:
      StackMap stack: int
        15: istore 6 /* fireUpdatedItemEvent */
        start local 6 // boolean fireUpdatedItemEvent
        16: .line 401
            aload 0 /* this */
            iload 1 /* row */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.focus:(I)V
        17: .line 403
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            iload 1 /* row */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.isSelected:(I)Z
            ifne 23
        18: .line 404
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getSelectionMode:()Ljavafx/scene/control/SelectionMode;
            getstatic javafx.scene.control.SelectionMode.SINGLE:Ljavafx/scene/control/SelectionMode;
            if_acmpne 22
        19: .line 405
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.startAtomic:()V
        20: .line 406
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.quietClearSelection:()V
        21: .line 407
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.stopAtomic:()V
        22: .line 409
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            iload 1 /* row */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.set:(I)V
        23: .line 412
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* row */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.setSelectedIndex:(I)V
        24: .line 414
            iload 6 /* fireUpdatedItemEvent */
            ifeq 26
        25: .line 415
            aload 0 /* this */
            aload 4 /* newItem */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.setSelectedItem:(Ljava/lang/Object;)V
        26: .line 417
      StackMap locals:
      StackMap stack:
            return
        end local 6 // boolean fireUpdatedItemEvent
        end local 5 // boolean isSameItem
        end local 4 // java.lang.Object newItem
        end local 3 // java.lang.Object currentItem
        end local 2 // boolean isSameRow
        end local 1 // int row
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   27     0                  this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;
            0   27     1                   row  I
            8   27     2             isSameRow  Z
            9   27     3           currentItem  TT;
           10   27     4               newItem  TT;
           13   27     5            isSameItem  Z
           16   27     6  fireUpdatedItemEvent  Z
    MethodParameters:
      Name  Flags
      row   

  public void select();
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
        start local 1 // java.lang.Object obj
         0: .line 422
            aload 1 /* obj */
            ifnonnull 3
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getSelectionMode:()Ljavafx/scene/control/SelectionMode;
            getstatic javafx.scene.control.SelectionMode.SINGLE:Ljavafx/scene/control/SelectionMode;
            if_acmpne 3
         1: .line 423
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.clearSelection:()V
         2: .line 424
            return
         3: .line 430
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 2 /* rowObj */
        start local 2 // java.lang.Object rowObj
         4: .line 431
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         5: aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getItemCount:()I
            istore 4 /* max */
        start local 4 // int max
         6: goto 17
         7: .line 432
      StackMap locals: java.lang.Object int int
      StackMap stack:
            aload 0 /* this */
            iload 3 /* i */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getModelItem:(I)Ljava/lang/Object;
            astore 2 /* rowObj */
         8: .line 433
            aload 2 /* rowObj */
            ifnonnull 9
            goto 16
         9: .line 435
      StackMap locals:
      StackMap stack:
            aload 2 /* rowObj */
            aload 1 /* obj */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 16
        10: .line 436
            aload 0 /* this */
            iload 3 /* i */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.isSelected:(I)Z
            ifeq 12
        11: .line 437
            return
        12: .line 440
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getSelectionMode:()Ljavafx/scene/control/SelectionMode;
            getstatic javafx.scene.control.SelectionMode.SINGLE:Ljavafx/scene/control/SelectionMode;
            if_acmpne 14
        13: .line 441
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.quietClearSelection:()V
        14: .line 444
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 3 /* i */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.select:(I)V
        15: .line 445
            return
        16: .line 431
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        17: iload 3 /* i */
            iload 4 /* max */
            if_icmplt 7
        end local 4 // int max
        end local 3 // int i
        18: .line 454
            aload 0 /* this */
            iconst_m1
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.setSelectedIndex:(I)V
        19: .line 455
            aload 0 /* this */
            aload 1 /* obj */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.setSelectedItem:(Ljava/lang/Object;)V
        20: .line 456
            return
        end local 2 // java.lang.Object rowObj
        end local 1 // java.lang.Object obj
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   21     0    this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;
            0   21     1     obj  TT;
            4   21     2  rowObj  Ljava/lang/Object;
            5   18     3       i  I
            6   18     4     max  I
    Signature: (TT;)V
    MethodParameters:
      Name  Flags
      obj   

  public void selectIndices(int, int[]);
    descriptor: (I[I)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
        start local 1 // int row
        start local 2 // int[] rows
         0: .line 459
            aload 2 /* rows */
            ifnull 1
            aload 2 /* rows */
            arraylength
            ifne 3
         1: .line 460
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* row */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.select:(I)V
         2: .line 461
            return
         3: .line 469
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getItemCount:()I
            istore 3 /* rowCount */
        start local 3 // int rowCount
         4: .line 471
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getSelectionMode:()Ljavafx/scene/control/SelectionMode;
            getstatic javafx.scene.control.SelectionMode.SINGLE:Ljavafx/scene/control/SelectionMode;
            if_acmpne 20
         5: .line 472
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.quietClearSelection:()V
         6: .line 474
            aload 2 /* rows */
            arraylength
            iconst_1
            isub
            istore 4 /* i */
        start local 4 // int i
         7: goto 14
         8: .line 475
      StackMap locals: int int
      StackMap stack:
            aload 2 /* rows */
            iload 4 /* i */
            iaload
            istore 5 /* index */
        start local 5 // int index
         9: .line 476
            iload 5 /* index */
            iflt 13
            iload 5 /* index */
            iload 3 /* rowCount */
            if_icmpge 13
        10: .line 477
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            iload 5 /* index */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.set:(I)V
        11: .line 478
            aload 0 /* this */
            iload 5 /* index */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.select:(I)V
        12: .line 479
            goto 15
        end local 5 // int index
        13: .line 474
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ -1
      StackMap locals:
      StackMap stack:
        14: iload 4 /* i */
            ifge 8
        end local 4 // int i
        15: .line 483
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.isEmpty:()Z
            ifeq 25
        16: .line 484
            iload 1 /* row */
            ifle 25
            iload 1 /* row */
            iload 3 /* rowCount */
            if_icmpge 25
        17: .line 485
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            iload 1 /* row */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.set:(I)V
        18: .line 486
            aload 0 /* this */
            iload 1 /* row */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.select:(I)V
        19: .line 489
            goto 25
        20: .line 490
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            iload 1 /* row */
            aload 2 /* rows */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.set:(I[I)V
        21: .line 492
            iload 1 /* row */
            invokestatic java.util.stream.IntStream.of:(I)Ljava/util/stream/IntStream;
            aload 2 /* rows */
            invokestatic java.util.stream.IntStream.of:([I)Ljava/util/stream/IntStream;
            invokestatic java.util.stream.IntStream.concat:(Ljava/util/stream/IntStream;Ljava/util/stream/IntStream;)Ljava/util/stream/IntStream;
        22: .line 493
            iload 3 /* rowCount */
            invokedynamic test(I)Ljava/util/function/IntPredicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (I)Z
                  javafx/scene/control/MultipleSelectionModelBase.lambda$7(II)Z (6)
                  (I)Z
            invokeinterface java.util.stream.IntStream.filter:(Ljava/util/function/IntPredicate;)Ljava/util/stream/IntStream;
        23: .line 494
            invokedynamic applyAsInt()Ljava/util/function/IntBinaryOperator;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (II)I
                  javafx/scene/control/MultipleSelectionModelBase.lambda$8(II)I (6)
                  (II)I
            invokeinterface java.util.stream.IntStream.reduce:(Ljava/util/function/IntBinaryOperator;)Ljava/util/OptionalInt;
        24: .line 495
            aload 0 /* this */
            invokedynamic accept(Ljavafx/scene/control/MultipleSelectionModelBase;)Ljava/util/function/IntConsumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (I)V
                  javafx/scene/control/MultipleSelectionModelBase.lambda$9(I)V (7)
                  (I)V
            invokevirtual java.util.OptionalInt.ifPresent:(Ljava/util/function/IntConsumer;)V
        25: .line 501
      StackMap locals:
      StackMap stack:
            return
        end local 3 // int rowCount
        end local 2 // int[] rows
        end local 1 // int row
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   26     0      this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;
            0   26     1       row  I
            0   26     2      rows  [I
            4   26     3  rowCount  I
            7   15     4         i  I
            9   13     5     index  I
    MethodParameters:
      Name  Flags
      row   
      rows  

  public void selectAll();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
         0: .line 504
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getSelectionMode:()Ljavafx/scene/control/SelectionMode;
            getstatic javafx.scene.control.SelectionMode.SINGLE:Ljavafx/scene/control/SelectionMode;
            if_acmpne 1
            return
         1: .line 506
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getItemCount:()I
            ifgt 2
            return
         2: .line 508
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getItemCount:()I
            istore 1 /* rowCount */
        start local 1 // int rowCount
         3: .line 509
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getFocusedIndex:()I
            istore 2 /* focusedIndex */
        start local 2 // int focusedIndex
         4: .line 512
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.clearSelection:()V
         5: .line 513
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            iconst_0
            iload 1 /* rowCount */
            iconst_1
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.set:(IIZ)V
         6: .line 515
            iload 2 /* focusedIndex */
            iconst_m1
            if_icmpne 10
         7: .line 516
            aload 0 /* this */
            iload 1 /* rowCount */
            iconst_1
            isub
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.setSelectedIndex:(I)V
         8: .line 517
            aload 0 /* this */
            iload 1 /* rowCount */
            iconst_1
            isub
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.focus:(I)V
         9: .line 518
            goto 12
        10: .line 519
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            iload 2 /* focusedIndex */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.setSelectedIndex:(I)V
        11: .line 520
            aload 0 /* this */
            iload 2 /* focusedIndex */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.focus:(I)V
        12: .line 522
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int focusedIndex
        end local 1 // int rowCount
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   13     0          this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;
            3   13     1      rowCount  I
            4   13     2  focusedIndex  I

  public void selectFirst();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
         0: .line 525
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getSelectionMode:()Ljavafx/scene/control/SelectionMode;
            getstatic javafx.scene.control.SelectionMode.SINGLE:Ljavafx/scene/control/SelectionMode;
            if_acmpne 2
         1: .line 526
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.quietClearSelection:()V
         2: .line 529
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getItemCount:()I
            ifle 4
         3: .line 530
            aload 0 /* this */
            iconst_0
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.select:(I)V
         4: .line 532
      StackMap locals:
      StackMap stack:
            return
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;

  public void selectLast();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
         0: .line 535
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getSelectionMode:()Ljavafx/scene/control/SelectionMode;
            getstatic javafx.scene.control.SelectionMode.SINGLE:Ljavafx/scene/control/SelectionMode;
            if_acmpne 2
         1: .line 536
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.quietClearSelection:()V
         2: .line 539
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getItemCount:()I
            istore 1 /* numItems */
        start local 1 // int numItems
         3: .line 540
            iload 1 /* numItems */
            ifle 5
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getSelectedIndex:()I
            iload 1 /* numItems */
            iconst_1
            isub
            if_icmpge 5
         4: .line 541
            aload 0 /* this */
            iload 1 /* numItems */
            iconst_1
            isub
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.select:(I)V
         5: .line 543
      StackMap locals: int
      StackMap stack:
            return
        end local 1 // int numItems
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;
            3    6     1  numItems  I

  public void clearSelection(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
        start local 1 // int index
         0: .line 546
            iload 1 /* index */
            ifge 1
            return
         1: .line 550
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.isEmpty:()Z
            istore 2 /* wasEmpty */
        start local 2 // boolean wasEmpty
         2: .line 551
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            iload 1 /* index */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.clear:(I)V
         3: .line 553
            iload 2 /* wasEmpty */
            ifne 5
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.isEmpty:()Z
            ifeq 5
         4: .line 554
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.clearSelection:()V
         5: .line 556
      StackMap locals: int
      StackMap stack:
            return
        end local 2 // boolean wasEmpty
        end local 1 // int index
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;
            0    6     1     index  I
            2    6     2  wasEmpty  Z
    MethodParameters:
       Name  Flags
      index  

  public void clearSelection();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
         0: .line 559
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.quietClearSelection:()V
         1: .line 561
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.isAtomic:()Z
            ifne 4
         2: .line 562
            aload 0 /* this */
            iconst_m1
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.setSelectedIndex:(I)V
         3: .line 563
            aload 0 /* this */
            iconst_m1
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.focus:(I)V
         4: .line 565
      StackMap locals:
      StackMap stack:
            return
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;

  private void quietClearSelection();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
         0: .line 568
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.clear:()V
         1: .line 569
            return
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;

  public boolean isSelected(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
        start local 1 // int index
         0: .line 579
            iload 1 /* index */
            iflt 2
            iload 1 /* index */
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.bitsetSize:()I
            if_icmpge 2
         1: .line 580
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            iload 1 /* index */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.isSelected:(I)Z
            ireturn
         2: .line 583
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // int index
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;
            0    3     1  index  I
    MethodParameters:
       Name  Flags
      index  

  public boolean isEmpty();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
         0: .line 587
            aload 0 /* this */
            getfield javafx.scene.control.MultipleSelectionModelBase.selectedIndices:Ljavafx/scene/control/MultipleSelectionModelBase$SelectedIndicesList;
            invokevirtual javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList.isEmpty:()Z
            ireturn
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;

  public void selectPrevious();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
         0: .line 591
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getFocusedIndex:()I
            istore 1 /* focusIndex */
        start local 1 // int focusIndex
         1: .line 593
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getSelectionMode:()Ljavafx/scene/control/SelectionMode;
            getstatic javafx.scene.control.SelectionMode.SINGLE:Ljavafx/scene/control/SelectionMode;
            if_acmpne 3
         2: .line 594
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.quietClearSelection:()V
         3: .line 597
      StackMap locals: int
      StackMap stack:
            iload 1 /* focusIndex */
            iconst_m1
            if_icmpne 6
         4: .line 598
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getItemCount:()I
            iconst_1
            isub
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.select:(I)V
         5: .line 599
            goto 8
      StackMap locals:
      StackMap stack:
         6: iload 1 /* focusIndex */
            ifle 8
         7: .line 600
            aload 0 /* this */
            iload 1 /* focusIndex */
            iconst_1
            isub
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.select:(I)V
         8: .line 602
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int focusIndex
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0        this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;
            1    9     1  focusIndex  I

  public void selectNext();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
         0: .line 605
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getFocusedIndex:()I
            istore 1 /* focusIndex */
        start local 1 // int focusIndex
         1: .line 607
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getSelectionMode:()Ljavafx/scene/control/SelectionMode;
            getstatic javafx.scene.control.SelectionMode.SINGLE:Ljavafx/scene/control/SelectionMode;
            if_acmpne 3
         2: .line 608
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.quietClearSelection:()V
         3: .line 611
      StackMap locals: int
      StackMap stack:
            iload 1 /* focusIndex */
            iconst_m1
            if_icmpne 6
         4: .line 612
            aload 0 /* this */
            iconst_0
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.select:(I)V
         5: .line 613
            goto 8
      StackMap locals:
      StackMap stack:
         6: iload 1 /* focusIndex */
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getItemCount:()I
            iconst_1
            isub
            if_icmpeq 8
         7: .line 614
            aload 0 /* this */
            iload 1 /* focusIndex */
            iconst_1
            iadd
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.select:(I)V
         8: .line 616
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int focusIndex
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0        this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;
            1    9     1  focusIndex  I

  private void lambda$0(javafx.beans.Observable);
    descriptor: (Ljavafx/beans/Observable;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
        start local 1 // javafx.beans.Observable valueModel
         0: .line 67
            aload 0 /* this */
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getSelectedIndex:()I
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getModelItem:(I)Ljava/lang/Object;
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.setSelectedItem:(Ljava/lang/Object;)V
         1: .line 68
            return
        end local 1 // javafx.beans.Observable valueModel
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;
            0    2     1  valueModel  Ljavafx/beans/Observable;

  private java.lang.Integer lambda$1();
    descriptor: ()Ljava/lang/Integer;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
         0: .line 72
            aload 0 /* this */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getItemCount:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            areturn
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;

  private static int lambda$2(javafx.util.Pair, javafx.util.Pair);
    descriptor: (Ljavafx/util/Pair;Ljavafx/util/Pair;)I
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javafx.util.Pair s1
        start local 1 // javafx.util.Pair s2
         0: .line 199
            aload 1 /* s2 */
            invokevirtual javafx.util.Pair.getKey:()Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            aload 0 /* s1 */
            invokevirtual javafx.util.Pair.getKey:()Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            invokestatic java.lang.Integer.compare:(II)I
            ireturn
        end local 1 // javafx.util.Pair s2
        end local 0 // javafx.util.Pair s1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    s1  Ljavafx/util/Pair<Ljava/lang/Integer;Ljava/lang/Integer;>;
            0    1     1    s2  Ljavafx/util/Pair<Ljava/lang/Integer;Ljava/lang/Integer;>;

  private static boolean lambda$3(int);
    descriptor: (I)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int value
         0: .line 212
            iload 0 /* value */
            iconst_m1
            if_icmple 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // int value
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0  value  I

  private static boolean lambda$4(int, javafx.util.Pair);
    descriptor: (ILjavafx/util/Pair;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // javafx.util.Pair shift
         0: .line 221
            aload 1 /* shift */
            invokevirtual javafx.util.Pair.getKey:()Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            iload 0
            if_icmpgt 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 1 // javafx.util.Pair shift
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     1  shift  Ljavafx/util/Pair<Ljava/lang/Integer;Ljava/lang/Integer;>;

  private static int lambda$5(javafx.util.Pair);
    descriptor: (Ljavafx/util/Pair;)I
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.util.Pair shift
         0: .line 222
            aload 0 /* shift */
            invokevirtual javafx.util.Pair.getValue:()Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            ireturn
        end local 0 // javafx.util.Pair shift
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  shift  Ljavafx/util/Pair<Ljava/lang/Integer;Ljava/lang/Integer;>;

  private static boolean lambda$6(int);
    descriptor: (I)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int value
         0: .line 272
            iload 0 /* value */
            iconst_m1
            if_icmple 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // int value
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0  value  I

  private static boolean lambda$7(int, int);
    descriptor: (II)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // int index
         0: .line 493
            iload 1 /* index */
            iflt 1
            iload 1 /* index */
            iload 0
            if_icmpge 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 1 // int index
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     1  index  I

  private static int lambda$8(int, int);
    descriptor: (II)I
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // int first
        start local 1 // int second
         0: .line 494
            iload 1 /* second */
            ireturn
        end local 1 // int second
        end local 0 // int first
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0   first  I
            0    1     1  second  I

  private void lambda$9(int);
    descriptor: (I)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // javafx.scene.control.MultipleSelectionModelBase this
        start local 1 // int lastIndex
         0: .line 496
            aload 0 /* this */
            iload 1 /* lastIndex */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.setSelectedIndex:(I)V
         1: .line 497
            aload 0 /* this */
            iload 1 /* lastIndex */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.focus:(I)V
         2: .line 498
            aload 0 /* this */
            aload 0 /* this */
            iload 1 /* lastIndex */
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.getModelItem:(I)Ljava/lang/Object;
            invokevirtual javafx.scene.control.MultipleSelectionModelBase.setSelectedItem:(Ljava/lang/Object;)V
         3: .line 499
            return
        end local 1 // int lastIndex
        end local 0 // javafx.scene.control.MultipleSelectionModelBase this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Ljavafx/scene/control/MultipleSelectionModelBase<TT;>;
            0    4     1  lastIndex  I
}
Signature: <T:Ljava/lang/Object;>Ljavafx/scene/control/MultipleSelectionModel<TT;>;
SourceFile: "MultipleSelectionModelBase.java"
NestMembers:
  javafx.scene.control.MultipleSelectionModelBase$1  javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList  javafx.scene.control.MultipleSelectionModelBase$ShiftParams
InnerClasses:
  public GenericAddRemoveChange = com.sun.javafx.collections.NonIterableChange$GenericAddRemoveChange of com.sun.javafx.collections.NonIterableChange
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract Change = javafx.collections.ListChangeListener$Change of javafx.collections.ListChangeListener
  javafx.scene.control.MultipleSelectionModelBase$1
  SelectedIndicesList = javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList of javafx.scene.control.MultipleSelectionModelBase
  ShiftParams = javafx.scene.control.MultipleSelectionModelBase$ShiftParams of javafx.scene.control.MultipleSelectionModelBase