class javax.swing.plaf.basic.BasicTreeUI$Actions extends sun.swing.UIAction
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: javax.swing.plaf.basic.BasicTreeUI$Actions
  super_class: sun.swing.UIAction
{
  private static final java.lang.String SELECT_PREVIOUS;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "selectPrevious"

  private static final java.lang.String SELECT_PREVIOUS_CHANGE_LEAD;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "selectPreviousChangeLead"

  private static final java.lang.String SELECT_PREVIOUS_EXTEND_SELECTION;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "selectPreviousExtendSelection"

  private static final java.lang.String SELECT_NEXT;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "selectNext"

  private static final java.lang.String SELECT_NEXT_CHANGE_LEAD;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "selectNextChangeLead"

  private static final java.lang.String SELECT_NEXT_EXTEND_SELECTION;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "selectNextExtendSelection"

  private static final java.lang.String SELECT_CHILD;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "selectChild"

  private static final java.lang.String SELECT_CHILD_CHANGE_LEAD;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "selectChildChangeLead"

  private static final java.lang.String SELECT_PARENT;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "selectParent"

  private static final java.lang.String SELECT_PARENT_CHANGE_LEAD;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "selectParentChangeLead"

  private static final java.lang.String SCROLL_UP_CHANGE_SELECTION;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "scrollUpChangeSelection"

  private static final java.lang.String SCROLL_UP_CHANGE_LEAD;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "scrollUpChangeLead"

  private static final java.lang.String SCROLL_UP_EXTEND_SELECTION;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "scrollUpExtendSelection"

  private static final java.lang.String SCROLL_DOWN_CHANGE_SELECTION;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "scrollDownChangeSelection"

  private static final java.lang.String SCROLL_DOWN_EXTEND_SELECTION;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "scrollDownExtendSelection"

  private static final java.lang.String SCROLL_DOWN_CHANGE_LEAD;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "scrollDownChangeLead"

  private static final java.lang.String SELECT_FIRST;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "selectFirst"

  private static final java.lang.String SELECT_FIRST_CHANGE_LEAD;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "selectFirstChangeLead"

  private static final java.lang.String SELECT_FIRST_EXTEND_SELECTION;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "selectFirstExtendSelection"

  private static final java.lang.String SELECT_LAST;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "selectLast"

  private static final java.lang.String SELECT_LAST_CHANGE_LEAD;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "selectLastChangeLead"

  private static final java.lang.String SELECT_LAST_EXTEND_SELECTION;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "selectLastExtendSelection"

  private static final java.lang.String TOGGLE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "toggle"

  private static final java.lang.String CANCEL_EDITING;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "cancel"

  private static final java.lang.String START_EDITING;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "startEditing"

  private static final java.lang.String SELECT_ALL;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "selectAll"

  private static final java.lang.String CLEAR_SELECTION;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "clearSelection"

  private static final java.lang.String SCROLL_LEFT;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "scrollLeft"

  private static final java.lang.String SCROLL_RIGHT;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "scrollRight"

  private static final java.lang.String SCROLL_LEFT_EXTEND_SELECTION;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "scrollLeftExtendSelection"

  private static final java.lang.String SCROLL_RIGHT_EXTEND_SELECTION;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "scrollRightExtendSelection"

  private static final java.lang.String SCROLL_RIGHT_CHANGE_LEAD;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "scrollRightChangeLead"

  private static final java.lang.String SCROLL_LEFT_CHANGE_LEAD;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "scrollLeftChangeLead"

  private static final java.lang.String EXPAND;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "expand"

  private static final java.lang.String COLLAPSE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "collapse"

  private static final java.lang.String MOVE_SELECTION_TO_PARENT;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "moveSelectionToParent"

  private static final java.lang.String ADD_TO_SELECTION;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "addToSelection"

  private static final java.lang.String TOGGLE_AND_ANCHOR;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "toggleAndAnchor"

  private static final java.lang.String EXTEND_TO;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "extendTo"

  private static final java.lang.String MOVE_SELECTION_TO;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "moveSelectionTo"

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
         0: .line 4006
            aload 0 /* this */
            aconst_null
            invokespecial sun.swing.UIAction.<init>:(Ljava/lang/String;)V
         1: .line 4007
            return
        end local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/swing/plaf/basic/BasicTreeUI$Actions;

  void <init>(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
        start local 1 // java.lang.String key
         0: .line 4010
            aload 0 /* this */
            aload 1 /* key */
            invokespecial sun.swing.UIAction.<init>:(Ljava/lang/String;)V
         1: .line 4011
            return
        end local 1 // java.lang.String key
        end local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/swing/plaf/basic/BasicTreeUI$Actions;
            0    2     1   key  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      key   

  public boolean isEnabled(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
        start local 1 // java.lang.Object o
         0: .line 4014
            aload 1 /* o */
            instanceof javax.swing.JTree
            ifeq 3
         1: .line 4015
            aload 0 /* this */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.getName:()Ljava/lang/String;
            ldc "cancel"
            if_acmpne 3
         2: .line 4016
            aload 1 /* o */
            checkcast javax.swing.JTree
            invokevirtual javax.swing.JTree.isEditing:()Z
            ireturn
         3: .line 4019
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 1 // java.lang.Object o
        end local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljavax/swing/plaf/basic/BasicTreeUI$Actions;
            0    4     1     o  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      o     

  public void actionPerformed(java.awt.event.ActionEvent);
    descriptor: (Ljava/awt/event/ActionEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=7, args_size=2
        start local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
        start local 1 // java.awt.event.ActionEvent e
         0: .line 4023
            aload 1 /* e */
            invokevirtual java.awt.event.ActionEvent.getSource:()Ljava/lang/Object;
            checkcast javax.swing.JTree
            astore 2 /* tree */
        start local 2 // javax.swing.JTree tree
         1: .line 4025
            aload 2 /* tree */
            invokevirtual javax.swing.JTree.getUI:()Ljavax/swing/plaf/TreeUI;
            ldc Ljavax/swing/plaf/basic/BasicTreeUI;
         2: .line 4024
            invokestatic javax.swing.plaf.basic.BasicLookAndFeel.getUIOfType:(Ljavax/swing/plaf/ComponentUI;Ljava/lang/Class;)Ljava/lang/Object;
            checkcast javax.swing.plaf.basic.BasicTreeUI
            astore 3 /* ui */
        start local 3 // javax.swing.plaf.basic.BasicTreeUI ui
         3: .line 4026
            aload 3 /* ui */
            ifnonnull 5
         4: .line 4027
            return
         5: .line 4029
      StackMap locals: javax.swing.JTree javax.swing.plaf.basic.BasicTreeUI
      StackMap stack:
            aload 0 /* this */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.getName:()Ljava/lang/String;
            astore 4 /* key */
        start local 4 // java.lang.String key
         6: .line 4030
            aload 4 /* key */
            ldc "selectPrevious"
            if_acmpne 9
         7: .line 4031
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_m1
            iconst_0
            iconst_1
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.increment:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
         8: .line 4032
            goto 140
         9: .line 4033
      StackMap locals: java.lang.String
      StackMap stack:
            aload 4 /* key */
            ldc "selectPreviousChangeLead"
            if_acmpne 12
        10: .line 4034
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_m1
            iconst_0
            iconst_0
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.increment:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
        11: .line 4035
            goto 140
        12: .line 4036
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "selectPreviousExtendSelection"
            if_acmpne 15
        13: .line 4037
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_m1
            iconst_1
            iconst_1
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.increment:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
        14: .line 4038
            goto 140
        15: .line 4039
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "selectNext"
            if_acmpne 18
        16: .line 4040
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_1
            iconst_0
            iconst_1
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.increment:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
        17: .line 4041
            goto 140
        18: .line 4042
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "selectNextChangeLead"
            if_acmpne 21
        19: .line 4043
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_1
            iconst_0
            iconst_0
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.increment:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
        20: .line 4044
            goto 140
        21: .line 4045
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "selectNextExtendSelection"
            if_acmpne 24
        22: .line 4046
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_1
            iconst_1
            iconst_1
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.increment:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
        23: .line 4047
            goto 140
        24: .line 4048
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "selectChild"
            if_acmpne 27
        25: .line 4049
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_1
            iconst_1
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.traverse:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZ)V
        26: .line 4050
            goto 140
        27: .line 4051
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "selectChildChangeLead"
            if_acmpne 30
        28: .line 4052
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_1
            iconst_0
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.traverse:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZ)V
        29: .line 4053
            goto 140
        30: .line 4054
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "selectParent"
            if_acmpne 33
        31: .line 4055
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_m1
            iconst_1
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.traverse:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZ)V
        32: .line 4056
            goto 140
        33: .line 4057
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "selectParentChangeLead"
            if_acmpne 36
        34: .line 4058
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_m1
            iconst_0
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.traverse:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZ)V
        35: .line 4059
            goto 140
        36: .line 4060
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "scrollUpChangeSelection"
            if_acmpne 39
        37: .line 4061
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_m1
            iconst_0
            iconst_1
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.page:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
        38: .line 4062
            goto 140
        39: .line 4063
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "scrollUpChangeLead"
            if_acmpne 42
        40: .line 4064
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_m1
            iconst_0
            iconst_0
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.page:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
        41: .line 4065
            goto 140
        42: .line 4066
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "scrollUpExtendSelection"
            if_acmpne 45
        43: .line 4067
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_m1
            iconst_1
            iconst_1
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.page:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
        44: .line 4068
            goto 140
        45: .line 4069
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "scrollDownChangeSelection"
            if_acmpne 48
        46: .line 4070
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_1
            iconst_0
            iconst_1
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.page:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
        47: .line 4071
            goto 140
        48: .line 4072
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "scrollDownExtendSelection"
            if_acmpne 51
        49: .line 4073
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_1
            iconst_1
            iconst_1
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.page:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
        50: .line 4074
            goto 140
        51: .line 4075
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "scrollDownChangeLead"
            if_acmpne 54
        52: .line 4076
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_1
            iconst_0
            iconst_0
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.page:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
        53: .line 4077
            goto 140
        54: .line 4078
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "selectFirst"
            if_acmpne 57
        55: .line 4079
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_m1
            iconst_0
            iconst_1
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.home:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
        56: .line 4080
            goto 140
        57: .line 4081
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "selectFirstChangeLead"
            if_acmpne 60
        58: .line 4082
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_m1
            iconst_0
            iconst_0
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.home:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
        59: .line 4083
            goto 140
        60: .line 4084
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "selectFirstExtendSelection"
            if_acmpne 63
        61: .line 4085
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_m1
            iconst_1
            iconst_1
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.home:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
        62: .line 4086
            goto 140
        63: .line 4087
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "selectLast"
            if_acmpne 66
        64: .line 4088
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_1
            iconst_0
            iconst_1
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.home:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
        65: .line 4089
            goto 140
        66: .line 4090
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "selectLastChangeLead"
            if_acmpne 69
        67: .line 4091
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_1
            iconst_0
            iconst_0
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.home:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
        68: .line 4092
            goto 140
        69: .line 4093
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "selectLastExtendSelection"
            if_acmpne 72
        70: .line 4094
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_1
            iconst_1
            iconst_1
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.home:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
        71: .line 4095
            goto 140
        72: .line 4096
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "toggle"
            if_acmpne 75
        73: .line 4097
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.toggle:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;)V
        74: .line 4098
            goto 140
        75: .line 4099
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "cancel"
            if_acmpne 78
        76: .line 4100
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.cancelEditing:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;)V
        77: .line 4101
            goto 140
        78: .line 4102
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "startEditing"
            if_acmpne 81
        79: .line 4103
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.startEditing:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;)V
        80: .line 4104
            goto 140
        81: .line 4105
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "selectAll"
            if_acmpne 84
        82: .line 4106
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_1
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.selectAll:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;Z)V
        83: .line 4107
            goto 140
        84: .line 4108
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "clearSelection"
            if_acmpne 87
        85: .line 4109
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_0
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.selectAll:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;Z)V
        86: .line 4110
            goto 140
        87: .line 4111
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "addToSelection"
            if_acmpne 95
        88: .line 4112
            aload 3 /* ui */
            aload 2 /* tree */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getRowCount:(Ljavax/swing/JTree;)I
            ifle 140
        89: .line 4113
            aload 3 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getLeadSelectionRow:()I
            istore 5 /* lead */
        start local 5 // int lead
        90: .line 4114
            aload 2 /* tree */
            iload 5 /* lead */
            invokevirtual javax.swing.JTree.isRowSelected:(I)Z
            ifne 140
        91: .line 4115
            aload 3 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getAnchorSelectionPath:()Ljavax/swing/tree/TreePath;
            astore 6 /* aPath */
        start local 6 // javax.swing.tree.TreePath aPath
        92: .line 4116
            aload 2 /* tree */
            iload 5 /* lead */
            invokevirtual javax.swing.JTree.addSelectionRow:(I)V
        93: .line 4117
            aload 3 /* ui */
            aload 6 /* aPath */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.setAnchorSelectionPath:(Ljavax/swing/tree/TreePath;)V
        end local 6 // javax.swing.tree.TreePath aPath
        end local 5 // int lead
        94: .line 4120
            goto 140
        95: .line 4121
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "toggleAndAnchor"
            if_acmpne 106
        96: .line 4122
            aload 3 /* ui */
            aload 2 /* tree */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getRowCount:(Ljavax/swing/JTree;)I
            ifle 140
        97: .line 4123
            aload 3 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getLeadSelectionRow:()I
            istore 5 /* lead */
        start local 5 // int lead
        98: .line 4124
            aload 3 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getLeadSelectionPath:()Ljavax/swing/tree/TreePath;
            astore 6 /* lPath */
        start local 6 // javax.swing.tree.TreePath lPath
        99: .line 4125
            aload 2 /* tree */
            iload 5 /* lead */
            invokevirtual javax.swing.JTree.isRowSelected:(I)Z
            ifne 102
       100: .line 4126
            aload 2 /* tree */
            iload 5 /* lead */
            invokevirtual javax.swing.JTree.addSelectionRow:(I)V
       101: .line 4127
            goto 104
       102: .line 4128
      StackMap locals: int javax.swing.tree.TreePath
      StackMap stack:
            aload 2 /* tree */
            iload 5 /* lead */
            invokevirtual javax.swing.JTree.removeSelectionRow:(I)V
       103: .line 4129
            aload 3 /* ui */
            aload 6 /* lPath */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.setLeadSelectionPath:(Ljavax/swing/tree/TreePath;)V
       104: .line 4131
      StackMap locals:
      StackMap stack:
            aload 3 /* ui */
            aload 6 /* lPath */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.setAnchorSelectionPath:(Ljavax/swing/tree/TreePath;)V
        end local 6 // javax.swing.tree.TreePath lPath
        end local 5 // int lead
       105: .line 4133
            goto 140
       106: .line 4134
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "extendTo"
            if_acmpne 109
       107: .line 4135
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.extendSelection:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;)V
       108: .line 4136
            goto 140
       109: .line 4137
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "moveSelectionTo"
            if_acmpne 114
       110: .line 4138
            aload 3 /* ui */
            aload 2 /* tree */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getRowCount:(Ljavax/swing/JTree;)I
            ifle 140
       111: .line 4139
            aload 3 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getLeadSelectionRow:()I
            istore 5 /* lead */
        start local 5 // int lead
       112: .line 4140
            aload 2 /* tree */
            iload 5 /* lead */
            iload 5 /* lead */
            invokevirtual javax.swing.JTree.setSelectionInterval:(II)V
        end local 5 // int lead
       113: .line 4142
            goto 140
       114: .line 4143
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "scrollLeft"
            if_acmpne 117
       115: .line 4144
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_0
            bipush -10
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.scroll:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;II)V
       116: .line 4145
            goto 140
       117: .line 4146
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "scrollRight"
            if_acmpne 120
       118: .line 4147
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_0
            bipush 10
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.scroll:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;II)V
       119: .line 4148
            goto 140
       120: .line 4149
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "scrollLeftExtendSelection"
            if_acmpne 123
       121: .line 4150
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_m1
            iconst_1
            iconst_1
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.scrollChangeSelection:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
       122: .line 4151
            goto 140
       123: .line 4152
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "scrollRightExtendSelection"
            if_acmpne 126
       124: .line 4153
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_1
            iconst_1
            iconst_1
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.scrollChangeSelection:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
       125: .line 4154
            goto 140
       126: .line 4155
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "scrollRightChangeLead"
            if_acmpne 129
       127: .line 4156
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_1
            iconst_0
            iconst_0
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.scrollChangeSelection:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
       128: .line 4157
            goto 140
       129: .line 4158
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "scrollLeftChangeLead"
            if_acmpne 132
       130: .line 4159
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            iconst_m1
            iconst_0
            iconst_0
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.scrollChangeSelection:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
       131: .line 4160
            goto 140
       132: .line 4161
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "expand"
            if_acmpne 135
       133: .line 4162
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.expand:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;)V
       134: .line 4163
            goto 140
       135: .line 4164
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "collapse"
            if_acmpne 138
       136: .line 4165
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.collapse:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;)V
       137: .line 4166
            goto 140
       138: .line 4167
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            ldc "moveSelectionToParent"
            if_acmpne 140
       139: .line 4168
            aload 0 /* this */
            aload 2 /* tree */
            aload 3 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI$Actions.moveSelectionToParent:(Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;)V
       140: .line 4170
      StackMap locals:
      StackMap stack:
            return
        end local 4 // java.lang.String key
        end local 3 // javax.swing.plaf.basic.BasicTreeUI ui
        end local 2 // javax.swing.JTree tree
        end local 1 // java.awt.event.ActionEvent e
        end local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0  141     0   this  Ljavax/swing/plaf/basic/BasicTreeUI$Actions;
            0  141     1      e  Ljava/awt/event/ActionEvent;
            1  141     2   tree  Ljavax/swing/JTree;
            3  141     3     ui  Ljavax/swing/plaf/basic/BasicTreeUI;
            6  141     4    key  Ljava/lang/String;
           90   94     5   lead  I
           92   94     6  aPath  Ljavax/swing/tree/TreePath;
           98  105     5   lead  I
           99  105     6  lPath  Ljavax/swing/tree/TreePath;
          112  113     5   lead  I
    MethodParameters:
      Name  Flags
      e     

  private void scrollChangeSelection(javax.swing.JTree, javax.swing.plaf.basic.BasicTreeUI, int, boolean, boolean);
    descriptor: (Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=8, args_size=6
        start local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
        start local 1 // javax.swing.JTree tree
        start local 2 // javax.swing.plaf.basic.BasicTreeUI ui
        start local 3 // int direction
        start local 4 // boolean addToSelection
        start local 5 // boolean changeSelection
         0: .line 4177
            aload 2 /* ui */
            aload 1 /* tree */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getRowCount:(Ljavax/swing/JTree;)I
            ifle 25
         1: .line 4178
            aload 2 /* ui */
            getfield javax.swing.plaf.basic.BasicTreeUI.treeSelectionModel:Ljavax/swing/tree/TreeSelectionModel;
            ifnull 25
         2: .line 4180
            aload 1 /* tree */
            invokevirtual javax.swing.JTree.getVisibleRect:()Ljava/awt/Rectangle;
            astore 7 /* visRect */
        start local 7 // java.awt.Rectangle visRect
         3: .line 4182
            iload 3 /* direction */
            iconst_m1
            if_icmpne 9
         4: .line 4183
            aload 2 /* ui */
            aload 1 /* tree */
            aload 7 /* visRect */
            getfield java.awt.Rectangle.x:I
         5: .line 4184
            aload 7 /* visRect */
            getfield java.awt.Rectangle.y:I
         6: .line 4183
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getClosestPathForLocation:(Ljavax/swing/JTree;II)Ljavax/swing/tree/TreePath;
            astore 6 /* newPath */
        start local 6 // javax.swing.tree.TreePath newPath
         7: .line 4185
            aload 7 /* visRect */
            iconst_0
            aload 7 /* visRect */
            getfield java.awt.Rectangle.x:I
            aload 7 /* visRect */
            getfield java.awt.Rectangle.width:I
            isub
            invokestatic java.lang.Math.max:(II)I
            putfield java.awt.Rectangle.x:I
         8: .line 4186
            goto 17
        end local 6 // javax.swing.tree.TreePath newPath
         9: .line 4188
      StackMap locals: javax.swing.plaf.basic.BasicTreeUI$Actions javax.swing.JTree javax.swing.plaf.basic.BasicTreeUI int int int top java.awt.Rectangle
      StackMap stack:
            aload 7 /* visRect */
            iconst_0
            aload 1 /* tree */
            invokevirtual javax.swing.JTree.getWidth:()I
        10: .line 4189
            aload 7 /* visRect */
            getfield java.awt.Rectangle.width:I
            isub
        11: .line 4188
            invokestatic java.lang.Math.max:(II)I
        12: .line 4189
            aload 7 /* visRect */
            getfield java.awt.Rectangle.x:I
            aload 7 /* visRect */
            getfield java.awt.Rectangle.width:I
            iadd
        13: .line 4188
            invokestatic java.lang.Math.min:(II)I
            putfield java.awt.Rectangle.x:I
        14: .line 4190
            aload 2 /* ui */
            aload 1 /* tree */
            aload 7 /* visRect */
            getfield java.awt.Rectangle.x:I
        15: .line 4191
            aload 7 /* visRect */
            getfield java.awt.Rectangle.y:I
            aload 7 /* visRect */
            getfield java.awt.Rectangle.height:I
            iadd
        16: .line 4190
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getClosestPathForLocation:(Ljavax/swing/JTree;II)Ljavax/swing/tree/TreePath;
            astore 6 /* newPath */
        start local 6 // javax.swing.tree.TreePath newPath
        17: .line 4194
      StackMap locals: javax.swing.plaf.basic.BasicTreeUI$Actions javax.swing.JTree javax.swing.plaf.basic.BasicTreeUI int int int javax.swing.tree.TreePath java.awt.Rectangle
      StackMap stack:
            aload 1 /* tree */
            aload 7 /* visRect */
            invokevirtual javax.swing.JTree.scrollRectToVisible:(Ljava/awt/Rectangle;)V
        18: .line 4196
            iload 4 /* addToSelection */
            ifeq 21
        19: .line 4197
            aload 2 /* ui */
            aload 6 /* newPath */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.extendSelection:(Ljavax/swing/tree/TreePath;)V
        20: .line 4198
            goto 25
        21: .line 4199
      StackMap locals:
      StackMap stack:
            iload 5 /* changeSelection */
            ifeq 24
        22: .line 4200
            aload 1 /* tree */
            aload 6 /* newPath */
            invokevirtual javax.swing.JTree.setSelectionPath:(Ljavax/swing/tree/TreePath;)V
        23: .line 4201
            goto 25
        24: .line 4203
      StackMap locals:
      StackMap stack:
            aload 2 /* ui */
            aload 6 /* newPath */
            iconst_1
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.setLeadSelectionPath:(Ljavax/swing/tree/TreePath;Z)V
        end local 7 // java.awt.Rectangle visRect
        end local 6 // javax.swing.tree.TreePath newPath
        25: .line 4206
      StackMap locals:
      StackMap stack:
            return
        end local 5 // boolean changeSelection
        end local 4 // boolean addToSelection
        end local 3 // int direction
        end local 2 // javax.swing.plaf.basic.BasicTreeUI ui
        end local 1 // javax.swing.JTree tree
        end local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   26     0             this  Ljavax/swing/plaf/basic/BasicTreeUI$Actions;
            0   26     1             tree  Ljavax/swing/JTree;
            0   26     2               ui  Ljavax/swing/plaf/basic/BasicTreeUI;
            0   26     3        direction  I
            0   26     4   addToSelection  Z
            0   26     5  changeSelection  Z
            7    9     6          newPath  Ljavax/swing/tree/TreePath;
           17   25     6          newPath  Ljavax/swing/tree/TreePath;
            3   25     7          visRect  Ljava/awt/Rectangle;
    MethodParameters:
                 Name  Flags
      tree             
      ui               
      direction        
      addToSelection   
      changeSelection  

  private void scroll(javax.swing.JTree, javax.swing.plaf.basic.BasicTreeUI, int, int);
    descriptor: (Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;II)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=5
        start local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
        start local 1 // javax.swing.JTree component
        start local 2 // javax.swing.plaf.basic.BasicTreeUI ui
        start local 3 // int direction
        start local 4 // int amount
         0: .line 4210
            aload 1 /* component */
            invokevirtual javax.swing.JTree.getVisibleRect:()Ljava/awt/Rectangle;
            astore 5 /* visRect */
        start local 5 // java.awt.Rectangle visRect
         1: .line 4211
            aload 1 /* component */
            invokevirtual javax.swing.JTree.getSize:()Ljava/awt/Dimension;
            astore 6 /* size */
        start local 6 // java.awt.Dimension size
         2: .line 4212
            iload 3 /* direction */
            ifne 9
         3: .line 4213
            aload 5 /* visRect */
            dup
            getfield java.awt.Rectangle.x:I
            iload 4 /* amount */
            iadd
            putfield java.awt.Rectangle.x:I
         4: .line 4214
            aload 5 /* visRect */
            iconst_0
            aload 5 /* visRect */
            getfield java.awt.Rectangle.x:I
            invokestatic java.lang.Math.max:(II)I
            putfield java.awt.Rectangle.x:I
         5: .line 4215
            aload 5 /* visRect */
            iconst_0
            aload 6 /* size */
            getfield java.awt.Dimension.width:I
            aload 5 /* visRect */
            getfield java.awt.Rectangle.width:I
            isub
            invokestatic java.lang.Math.max:(II)I
         6: .line 4216
            aload 5 /* visRect */
            getfield java.awt.Rectangle.x:I
         7: .line 4215
            invokestatic java.lang.Math.min:(II)I
            putfield java.awt.Rectangle.x:I
         8: .line 4217
            goto 14
         9: .line 4219
      StackMap locals: java.awt.Rectangle java.awt.Dimension
      StackMap stack:
            aload 5 /* visRect */
            dup
            getfield java.awt.Rectangle.y:I
            iload 4 /* amount */
            iadd
            putfield java.awt.Rectangle.y:I
        10: .line 4220
            aload 5 /* visRect */
            iconst_0
            aload 5 /* visRect */
            getfield java.awt.Rectangle.y:I
            invokestatic java.lang.Math.max:(II)I
            putfield java.awt.Rectangle.y:I
        11: .line 4221
            aload 5 /* visRect */
            iconst_0
            aload 6 /* size */
            getfield java.awt.Dimension.width:I
            aload 5 /* visRect */
            getfield java.awt.Rectangle.height:I
            isub
            invokestatic java.lang.Math.max:(II)I
        12: .line 4222
            aload 5 /* visRect */
            getfield java.awt.Rectangle.y:I
        13: .line 4221
            invokestatic java.lang.Math.min:(II)I
            putfield java.awt.Rectangle.y:I
        14: .line 4224
      StackMap locals:
      StackMap stack:
            aload 1 /* component */
            aload 5 /* visRect */
            invokevirtual javax.swing.JTree.scrollRectToVisible:(Ljava/awt/Rectangle;)V
        15: .line 4225
            return
        end local 6 // java.awt.Dimension size
        end local 5 // java.awt.Rectangle visRect
        end local 4 // int amount
        end local 3 // int direction
        end local 2 // javax.swing.plaf.basic.BasicTreeUI ui
        end local 1 // javax.swing.JTree component
        end local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   16     0       this  Ljavax/swing/plaf/basic/BasicTreeUI$Actions;
            0   16     1  component  Ljavax/swing/JTree;
            0   16     2         ui  Ljavax/swing/plaf/basic/BasicTreeUI;
            0   16     3  direction  I
            0   16     4     amount  I
            1   16     5    visRect  Ljava/awt/Rectangle;
            2   16     6       size  Ljava/awt/Dimension;
    MethodParameters:
           Name  Flags
      component  
      ui         
      direction  
      amount     

  private void extendSelection(javax.swing.JTree, javax.swing.plaf.basic.BasicTreeUI);
    descriptor: (Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=3
        start local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
        start local 1 // javax.swing.JTree tree
        start local 2 // javax.swing.plaf.basic.BasicTreeUI ui
         0: .line 4228
            aload 2 /* ui */
            aload 1 /* tree */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getRowCount:(Ljavax/swing/JTree;)I
            ifle 11
         1: .line 4229
            aload 2 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getLeadSelectionRow:()I
            istore 3 /* lead */
        start local 3 // int lead
         2: .line 4231
            iload 3 /* lead */
            iconst_m1
            if_icmpeq 11
         3: .line 4232
            aload 2 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getLeadSelectionPath:()Ljavax/swing/tree/TreePath;
            astore 4 /* leadP */
        start local 4 // javax.swing.tree.TreePath leadP
         4: .line 4233
            aload 2 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getAnchorSelectionPath:()Ljavax/swing/tree/TreePath;
            astore 5 /* aPath */
        start local 5 // javax.swing.tree.TreePath aPath
         5: .line 4234
            aload 2 /* ui */
            aload 1 /* tree */
            aload 5 /* aPath */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getRowForPath:(Ljavax/swing/JTree;Ljavax/swing/tree/TreePath;)I
            istore 6 /* aRow */
        start local 6 // int aRow
         6: .line 4236
            iload 6 /* aRow */
            iconst_m1
            if_icmpne 8
         7: .line 4237
            iconst_0
            istore 6 /* aRow */
         8: .line 4238
      StackMap locals: javax.swing.plaf.basic.BasicTreeUI$Actions javax.swing.JTree javax.swing.plaf.basic.BasicTreeUI int javax.swing.tree.TreePath javax.swing.tree.TreePath int
      StackMap stack:
            aload 1 /* tree */
            iload 6 /* aRow */
            iload 3 /* lead */
            invokevirtual javax.swing.JTree.setSelectionInterval:(II)V
         9: .line 4239
            aload 2 /* ui */
            aload 4 /* leadP */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.setLeadSelectionPath:(Ljavax/swing/tree/TreePath;)V
        10: .line 4240
            aload 2 /* ui */
            aload 5 /* aPath */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.setAnchorSelectionPath:(Ljavax/swing/tree/TreePath;)V
        end local 6 // int aRow
        end local 5 // javax.swing.tree.TreePath aPath
        end local 4 // javax.swing.tree.TreePath leadP
        end local 3 // int lead
        11: .line 4243
      StackMap locals: javax.swing.plaf.basic.BasicTreeUI$Actions javax.swing.JTree javax.swing.plaf.basic.BasicTreeUI
      StackMap stack:
            return
        end local 2 // javax.swing.plaf.basic.BasicTreeUI ui
        end local 1 // javax.swing.JTree tree
        end local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   12     0   this  Ljavax/swing/plaf/basic/BasicTreeUI$Actions;
            0   12     1   tree  Ljavax/swing/JTree;
            0   12     2     ui  Ljavax/swing/plaf/basic/BasicTreeUI;
            2   11     3   lead  I
            4   11     4  leadP  Ljavax/swing/tree/TreePath;
            5   11     5  aPath  Ljavax/swing/tree/TreePath;
            6   11     6   aRow  I
    MethodParameters:
      Name  Flags
      tree  
      ui    

  private void selectAll(javax.swing.JTree, javax.swing.plaf.basic.BasicTreeUI, boolean);
    descriptor: (Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=4
        start local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
        start local 1 // javax.swing.JTree tree
        start local 2 // javax.swing.plaf.basic.BasicTreeUI ui
        start local 3 // boolean selectAll
         0: .line 4246
            aload 2 /* ui */
            aload 1 /* tree */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getRowCount:(Ljavax/swing/JTree;)I
            istore 4 /* rowCount */
        start local 4 // int rowCount
         1: .line 4248
            iload 4 /* rowCount */
            ifle 29
         2: .line 4249
            iload 3 /* selectAll */
            ifeq 24
         3: .line 4250
            aload 1 /* tree */
            invokevirtual javax.swing.JTree.getSelectionModel:()Ljavax/swing/tree/TreeSelectionModel;
            invokeinterface javax.swing.tree.TreeSelectionModel.getSelectionMode:()I
         4: .line 4251
            iconst_1
         5: .line 4250
            if_icmpne 14
         6: .line 4253
            aload 2 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getLeadSelectionRow:()I
            istore 5 /* lead */
        start local 5 // int lead
         7: .line 4254
            iload 5 /* lead */
            iconst_m1
            if_icmpeq 10
         8: .line 4255
            aload 1 /* tree */
            iload 5 /* lead */
            invokevirtual javax.swing.JTree.setSelectionRow:(I)V
         9: .line 4256
            goto 13
      StackMap locals: int int
      StackMap stack:
        10: aload 1 /* tree */
            invokevirtual javax.swing.JTree.getMinSelectionRow:()I
            iconst_m1
            if_icmpne 13
        11: .line 4257
            aload 1 /* tree */
            iconst_0
            invokevirtual javax.swing.JTree.setSelectionRow:(I)V
        12: .line 4258
            aload 2 /* ui */
            iconst_0
            iconst_0
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.ensureRowsAreVisible:(II)V
        13: .line 4260
      StackMap locals:
      StackMap stack:
            return
        end local 5 // int lead
        14: .line 4263
      StackMap locals:
      StackMap stack:
            aload 2 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getLeadSelectionPath:()Ljavax/swing/tree/TreePath;
            astore 5 /* lastPath */
        start local 5 // javax.swing.tree.TreePath lastPath
        15: .line 4264
            aload 2 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getAnchorSelectionPath:()Ljavax/swing/tree/TreePath;
            astore 6 /* aPath */
        start local 6 // javax.swing.tree.TreePath aPath
        16: .line 4266
            aload 5 /* lastPath */
            ifnull 18
            aload 1 /* tree */
            aload 5 /* lastPath */
            invokevirtual javax.swing.JTree.isVisible:(Ljavax/swing/tree/TreePath;)Z
            ifne 18
        17: .line 4267
            aconst_null
            astore 5 /* lastPath */
        18: .line 4269
      StackMap locals: javax.swing.tree.TreePath javax.swing.tree.TreePath
      StackMap stack:
            aload 1 /* tree */
            iconst_0
            iload 4 /* rowCount */
            iconst_1
            isub
            invokevirtual javax.swing.JTree.setSelectionInterval:(II)V
        19: .line 4270
            aload 5 /* lastPath */
            ifnull 21
        20: .line 4271
            aload 2 /* ui */
            aload 5 /* lastPath */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.setLeadSelectionPath:(Ljavax/swing/tree/TreePath;)V
        21: .line 4273
      StackMap locals:
      StackMap stack:
            aload 6 /* aPath */
            ifnull 29
            aload 1 /* tree */
            aload 6 /* aPath */
            invokevirtual javax.swing.JTree.isVisible:(Ljavax/swing/tree/TreePath;)Z
            ifeq 29
        22: .line 4274
            aload 2 /* ui */
            aload 6 /* aPath */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.setAnchorSelectionPath:(Ljavax/swing/tree/TreePath;)V
        end local 6 // javax.swing.tree.TreePath aPath
        end local 5 // javax.swing.tree.TreePath lastPath
        23: .line 4276
            goto 29
        24: .line 4278
      StackMap locals:
      StackMap stack:
            aload 2 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getLeadSelectionPath:()Ljavax/swing/tree/TreePath;
            astore 5 /* lastPath */
        start local 5 // javax.swing.tree.TreePath lastPath
        25: .line 4279
            aload 2 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getAnchorSelectionPath:()Ljavax/swing/tree/TreePath;
            astore 6 /* aPath */
        start local 6 // javax.swing.tree.TreePath aPath
        26: .line 4281
            aload 1 /* tree */
            invokevirtual javax.swing.JTree.clearSelection:()V
        27: .line 4282
            aload 2 /* ui */
            aload 6 /* aPath */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.setAnchorSelectionPath:(Ljavax/swing/tree/TreePath;)V
        28: .line 4283
            aload 2 /* ui */
            aload 5 /* lastPath */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.setLeadSelectionPath:(Ljavax/swing/tree/TreePath;)V
        end local 6 // javax.swing.tree.TreePath aPath
        end local 5 // javax.swing.tree.TreePath lastPath
        29: .line 4286
      StackMap locals:
      StackMap stack:
            return
        end local 4 // int rowCount
        end local 3 // boolean selectAll
        end local 2 // javax.swing.plaf.basic.BasicTreeUI ui
        end local 1 // javax.swing.JTree tree
        end local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   30     0       this  Ljavax/swing/plaf/basic/BasicTreeUI$Actions;
            0   30     1       tree  Ljavax/swing/JTree;
            0   30     2         ui  Ljavax/swing/plaf/basic/BasicTreeUI;
            0   30     3  selectAll  Z
            1   30     4   rowCount  I
            7   14     5       lead  I
           15   23     5   lastPath  Ljavax/swing/tree/TreePath;
           16   23     6      aPath  Ljavax/swing/tree/TreePath;
           25   29     5   lastPath  Ljavax/swing/tree/TreePath;
           26   29     6      aPath  Ljavax/swing/tree/TreePath;
    MethodParameters:
           Name  Flags
      tree       
      ui         
      selectAll  

  private void startEditing(javax.swing.JTree, javax.swing.plaf.basic.BasicTreeUI);
    descriptor: (Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
        start local 1 // javax.swing.JTree tree
        start local 2 // javax.swing.plaf.basic.BasicTreeUI ui
         0: .line 4289
            aload 2 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getLeadSelectionPath:()Ljavax/swing/tree/TreePath;
            astore 3 /* lead */
        start local 3 // javax.swing.tree.TreePath lead
         1: .line 4290
            aload 3 /* lead */
            ifnull 3
         2: .line 4291
            aload 2 /* ui */
            aload 1 /* tree */
            aload 3 /* lead */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getRowForPath:(Ljavax/swing/JTree;Ljavax/swing/tree/TreePath;)I
            goto 4
      StackMap locals: javax.swing.tree.TreePath
      StackMap stack:
         3: iconst_m1
         4: .line 4290
      StackMap locals:
      StackMap stack: int
            istore 4 /* editRow */
        start local 4 // int editRow
         5: .line 4293
            iload 4 /* editRow */
            iconst_m1
            if_icmpeq 7
         6: .line 4294
            aload 1 /* tree */
            aload 3 /* lead */
            invokevirtual javax.swing.JTree.startEditingAtPath:(Ljavax/swing/tree/TreePath;)V
         7: .line 4296
      StackMap locals: int
      StackMap stack:
            return
        end local 4 // int editRow
        end local 3 // javax.swing.tree.TreePath lead
        end local 2 // javax.swing.plaf.basic.BasicTreeUI ui
        end local 1 // javax.swing.JTree tree
        end local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Ljavax/swing/plaf/basic/BasicTreeUI$Actions;
            0    8     1     tree  Ljavax/swing/JTree;
            0    8     2       ui  Ljavax/swing/plaf/basic/BasicTreeUI;
            1    8     3     lead  Ljavax/swing/tree/TreePath;
            5    8     4  editRow  I
    MethodParameters:
      Name  Flags
      tree  
      ui    

  private void cancelEditing(javax.swing.JTree, javax.swing.plaf.basic.BasicTreeUI);
    descriptor: (Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
        start local 1 // javax.swing.JTree tree
        start local 2 // javax.swing.plaf.basic.BasicTreeUI ui
         0: .line 4299
            aload 1 /* tree */
            invokevirtual javax.swing.JTree.cancelEditing:()V
         1: .line 4300
            return
        end local 2 // javax.swing.plaf.basic.BasicTreeUI ui
        end local 1 // javax.swing.JTree tree
        end local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/swing/plaf/basic/BasicTreeUI$Actions;
            0    2     1  tree  Ljavax/swing/JTree;
            0    2     2    ui  Ljavax/swing/plaf/basic/BasicTreeUI;
    MethodParameters:
      Name  Flags
      tree  
      ui    

  private void toggle(javax.swing.JTree, javax.swing.plaf.basic.BasicTreeUI);
    descriptor: (Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
        start local 1 // javax.swing.JTree tree
        start local 2 // javax.swing.plaf.basic.BasicTreeUI ui
         0: .line 4303
            aload 2 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getLeadSelectionRow:()I
            istore 3 /* selRow */
        start local 3 // int selRow
         1: .line 4305
            iload 3 /* selRow */
            iconst_m1
            if_icmpeq 7
            aload 2 /* ui */
            iload 3 /* selRow */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.isLeaf:(I)Z
            ifne 7
         2: .line 4306
            aload 2 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getAnchorSelectionPath:()Ljavax/swing/tree/TreePath;
            astore 4 /* aPath */
        start local 4 // javax.swing.tree.TreePath aPath
         3: .line 4307
            aload 2 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getLeadSelectionPath:()Ljavax/swing/tree/TreePath;
            astore 5 /* lPath */
        start local 5 // javax.swing.tree.TreePath lPath
         4: .line 4309
            aload 2 /* ui */
            aload 2 /* ui */
            aload 1 /* tree */
            iload 3 /* selRow */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getPathForRow:(Ljavax/swing/JTree;I)Ljavax/swing/tree/TreePath;
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.toggleExpandState:(Ljavax/swing/tree/TreePath;)V
         5: .line 4310
            aload 2 /* ui */
            aload 4 /* aPath */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.setAnchorSelectionPath:(Ljavax/swing/tree/TreePath;)V
         6: .line 4311
            aload 2 /* ui */
            aload 5 /* lPath */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.setLeadSelectionPath:(Ljavax/swing/tree/TreePath;)V
        end local 5 // javax.swing.tree.TreePath lPath
        end local 4 // javax.swing.tree.TreePath aPath
         7: .line 4313
      StackMap locals: int
      StackMap stack:
            return
        end local 3 // int selRow
        end local 2 // javax.swing.plaf.basic.BasicTreeUI ui
        end local 1 // javax.swing.JTree tree
        end local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Ljavax/swing/plaf/basic/BasicTreeUI$Actions;
            0    8     1    tree  Ljavax/swing/JTree;
            0    8     2      ui  Ljavax/swing/plaf/basic/BasicTreeUI;
            1    8     3  selRow  I
            3    7     4   aPath  Ljavax/swing/tree/TreePath;
            4    7     5   lPath  Ljavax/swing/tree/TreePath;
    MethodParameters:
      Name  Flags
      tree  
      ui    

  private void expand(javax.swing.JTree, javax.swing.plaf.basic.BasicTreeUI);
    descriptor: (Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
        start local 1 // javax.swing.JTree tree
        start local 2 // javax.swing.plaf.basic.BasicTreeUI ui
         0: .line 4316
            aload 2 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getLeadSelectionRow:()I
            istore 3 /* selRow */
        start local 3 // int selRow
         1: .line 4317
            aload 1 /* tree */
            iload 3 /* selRow */
            invokevirtual javax.swing.JTree.expandRow:(I)V
         2: .line 4318
            return
        end local 3 // int selRow
        end local 2 // javax.swing.plaf.basic.BasicTreeUI ui
        end local 1 // javax.swing.JTree tree
        end local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Ljavax/swing/plaf/basic/BasicTreeUI$Actions;
            0    3     1    tree  Ljavax/swing/JTree;
            0    3     2      ui  Ljavax/swing/plaf/basic/BasicTreeUI;
            1    3     3  selRow  I
    MethodParameters:
      Name  Flags
      tree  
      ui    

  private void collapse(javax.swing.JTree, javax.swing.plaf.basic.BasicTreeUI);
    descriptor: (Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
        start local 1 // javax.swing.JTree tree
        start local 2 // javax.swing.plaf.basic.BasicTreeUI ui
         0: .line 4321
            aload 2 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getLeadSelectionRow:()I
            istore 3 /* selRow */
        start local 3 // int selRow
         1: .line 4322
            aload 1 /* tree */
            iload 3 /* selRow */
            invokevirtual javax.swing.JTree.collapseRow:(I)V
         2: .line 4323
            return
        end local 3 // int selRow
        end local 2 // javax.swing.plaf.basic.BasicTreeUI ui
        end local 1 // javax.swing.JTree tree
        end local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Ljavax/swing/plaf/basic/BasicTreeUI$Actions;
            0    3     1    tree  Ljavax/swing/JTree;
            0    3     2      ui  Ljavax/swing/plaf/basic/BasicTreeUI;
            1    3     3  selRow  I
    MethodParameters:
      Name  Flags
      tree  
      ui    

  private void increment(javax.swing.JTree, javax.swing.plaf.basic.BasicTreeUI, int, boolean, boolean);
    descriptor: (Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=9, args_size=6
        start local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
        start local 1 // javax.swing.JTree tree
        start local 2 // javax.swing.plaf.basic.BasicTreeUI ui
        start local 3 // int direction
        start local 4 // boolean addToSelection
        start local 5 // boolean changeSelection
         0: .line 4330
            iload 4 /* addToSelection */
            ifne 5
            iload 5 /* changeSelection */
            ifne 5
         1: .line 4331
            aload 1 /* tree */
            invokevirtual javax.swing.JTree.getSelectionModel:()Ljavax/swing/tree/TreeSelectionModel;
            invokeinterface javax.swing.tree.TreeSelectionModel.getSelectionMode:()I
         2: .line 4332
            iconst_4
         3: .line 4331
            if_icmpeq 5
         4: .line 4333
            iconst_1
            istore 5 /* changeSelection */
         5: .line 4338
      StackMap locals:
      StackMap stack:
            aload 2 /* ui */
            getfield javax.swing.plaf.basic.BasicTreeUI.treeSelectionModel:Ljavax/swing/tree/TreeSelectionModel;
            ifnull 28
         6: .line 4339
            aload 1 /* tree */
            invokevirtual javax.swing.JTree.getRowCount:()I
            dup
            istore 6 /* rowCount */
        start local 6 // int rowCount
         7: ifle 28
         8: .line 4340
            aload 2 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getLeadSelectionRow:()I
            istore 7 /* selIndex */
        start local 7 // int selIndex
         9: .line 4343
            iload 7 /* selIndex */
            iconst_m1
            if_icmpne 15
        10: .line 4344
            iload 3 /* direction */
            iconst_1
            if_icmpne 13
        11: .line 4345
            iconst_0
            istore 8 /* newIndex */
        start local 8 // int newIndex
        12: goto 18
        end local 8 // int newIndex
        13: .line 4347
      StackMap locals: int int
      StackMap stack:
            iload 6 /* rowCount */
            iconst_1
            isub
            istore 8 /* newIndex */
        start local 8 // int newIndex
        14: .line 4348
            goto 18
        end local 8 // int newIndex
        15: .line 4351
      StackMap locals:
      StackMap stack:
            iload 6 /* rowCount */
            iconst_1
            isub
        16: .line 4352
            iconst_0
            iload 7 /* selIndex */
            iload 3 /* direction */
            iadd
        17: .line 4351
            invokestatic java.lang.Math.max:(II)I
            invokestatic java.lang.Math.min:(II)I
            istore 8 /* newIndex */
        start local 8 // int newIndex
        18: .line 4353
      StackMap locals: int
      StackMap stack:
            iload 4 /* addToSelection */
            ifeq 22
            aload 2 /* ui */
            getfield javax.swing.plaf.basic.BasicTreeUI.treeSelectionModel:Ljavax/swing/tree/TreeSelectionModel;
        19: .line 4354
            invokeinterface javax.swing.tree.TreeSelectionModel.getSelectionMode:()I
            iconst_1
            if_icmpeq 22
        20: .line 4356
            aload 2 /* ui */
            aload 1 /* tree */
            iload 8 /* newIndex */
            invokevirtual javax.swing.JTree.getPathForRow:(I)Ljavax/swing/tree/TreePath;
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.extendSelection:(Ljavax/swing/tree/TreePath;)V
        21: .line 4357
            goto 26
        22: .line 4358
      StackMap locals:
      StackMap stack:
            iload 5 /* changeSelection */
            ifeq 25
        23: .line 4359
            aload 1 /* tree */
            iload 8 /* newIndex */
            iload 8 /* newIndex */
            invokevirtual javax.swing.JTree.setSelectionInterval:(II)V
        24: .line 4360
            goto 26
        25: .line 4362
      StackMap locals:
      StackMap stack:
            aload 2 /* ui */
            aload 1 /* tree */
            iload 8 /* newIndex */
            invokevirtual javax.swing.JTree.getPathForRow:(I)Ljavax/swing/tree/TreePath;
            iconst_1
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.setLeadSelectionPath:(Ljavax/swing/tree/TreePath;Z)V
        26: .line 4364
      StackMap locals:
      StackMap stack:
            aload 2 /* ui */
            iload 8 /* newIndex */
            iload 8 /* newIndex */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.ensureRowsAreVisible:(II)V
        27: .line 4365
            aload 2 /* ui */
            iload 8 /* newIndex */
            putfield javax.swing.plaf.basic.BasicTreeUI.lastSelectedRow:I
        end local 8 // int newIndex
        end local 7 // int selIndex
        end local 6 // int rowCount
        28: .line 4367
      StackMap locals:
      StackMap stack:
            return
        end local 5 // boolean changeSelection
        end local 4 // boolean addToSelection
        end local 3 // int direction
        end local 2 // javax.swing.plaf.basic.BasicTreeUI ui
        end local 1 // javax.swing.JTree tree
        end local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   29     0             this  Ljavax/swing/plaf/basic/BasicTreeUI$Actions;
            0   29     1             tree  Ljavax/swing/JTree;
            0   29     2               ui  Ljavax/swing/plaf/basic/BasicTreeUI;
            0   29     3        direction  I
            0   29     4   addToSelection  Z
            0   29     5  changeSelection  Z
            7   28     6         rowCount  I
            9   28     7         selIndex  I
           12   13     8         newIndex  I
           14   15     8         newIndex  I
           18   28     8         newIndex  I
    MethodParameters:
                 Name  Flags
      tree             
      ui               
      direction        
      addToSelection   
      changeSelection  

  private void traverse(javax.swing.JTree, javax.swing.plaf.basic.BasicTreeUI, int, boolean);
    descriptor: (Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=10, args_size=5
        start local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
        start local 1 // javax.swing.JTree tree
        start local 2 // javax.swing.plaf.basic.BasicTreeUI ui
        start local 3 // int direction
        start local 4 // boolean changeSelection
         0: .line 4373
            iload 4 /* changeSelection */
            ifne 5
         1: .line 4374
            aload 1 /* tree */
            invokevirtual javax.swing.JTree.getSelectionModel:()Ljavax/swing/tree/TreeSelectionModel;
            invokeinterface javax.swing.tree.TreeSelectionModel.getSelectionMode:()I
         2: .line 4375
            iconst_4
         3: .line 4374
            if_icmpeq 5
         4: .line 4376
            iconst_1
            istore 4 /* changeSelection */
         5: .line 4381
      StackMap locals:
      StackMap stack:
            aload 1 /* tree */
            invokevirtual javax.swing.JTree.getRowCount:()I
            dup
            istore 5 /* rowCount */
        start local 5 // int rowCount
         6: ifle 50
         7: .line 4382
            aload 2 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getLeadSelectionRow:()I
            istore 6 /* minSelIndex */
        start local 6 // int minSelIndex
         8: .line 4385
            iload 6 /* minSelIndex */
            iconst_m1
            if_icmpne 11
         9: .line 4386
            iconst_0
            istore 7 /* newIndex */
        start local 7 // int newIndex
        10: goto 40
        end local 7 // int newIndex
        11: .line 4390
      StackMap locals: int int
      StackMap stack:
            iload 3 /* direction */
            iconst_1
            if_icmpne 24
        12: .line 4391
            aload 2 /* ui */
            aload 1 /* tree */
            iload 6 /* minSelIndex */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getPathForRow:(Ljavax/swing/JTree;I)Ljavax/swing/tree/TreePath;
            astore 8 /* minSelPath */
        start local 8 // javax.swing.tree.TreePath minSelPath
        13: .line 4392
            aload 1 /* tree */
            invokevirtual javax.swing.JTree.getModel:()Ljavax/swing/tree/TreeModel;
        14: .line 4393
            aload 8 /* minSelPath */
            invokevirtual javax.swing.tree.TreePath.getLastPathComponent:()Ljava/lang/Object;
            invokeinterface javax.swing.tree.TreeModel.getChildCount:(Ljava/lang/Object;)I
        15: .line 4392
            istore 9 /* childCount */
        start local 9 // int childCount
        16: .line 4394
            iconst_m1
            istore 7 /* newIndex */
        start local 7 // int newIndex
        17: .line 4395
            aload 2 /* ui */
            iload 6 /* minSelIndex */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.isLeaf:(I)Z
            ifne 40
        18: .line 4396
            aload 1 /* tree */
            iload 6 /* minSelIndex */
            invokevirtual javax.swing.JTree.isExpanded:(I)Z
            ifne 21
        19: .line 4397
            aload 2 /* ui */
            aload 8 /* minSelPath */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.toggleExpandState:(Ljavax/swing/tree/TreePath;)V
        20: .line 4398
            goto 40
        21: .line 4399
      StackMap locals: int javax.swing.tree.TreePath int
      StackMap stack:
            iload 9 /* childCount */
            ifle 40
        22: .line 4400
            iload 6 /* minSelIndex */
            iconst_1
            iadd
            iload 5 /* rowCount */
            iconst_1
            isub
            invokestatic java.lang.Math.min:(II)I
            istore 7 /* newIndex */
        end local 9 // int childCount
        end local 8 // javax.swing.tree.TreePath minSelPath
        23: .line 4403
            goto 40
        end local 7 // int newIndex
        24: .line 4406
      StackMap locals:
      StackMap stack:
            aload 2 /* ui */
            iload 6 /* minSelIndex */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.isLeaf:(I)Z
            ifne 31
        25: .line 4407
            aload 1 /* tree */
            iload 6 /* minSelIndex */
            invokevirtual javax.swing.JTree.isExpanded:(I)Z
            ifeq 31
        26: .line 4408
            aload 2 /* ui */
            aload 2 /* ui */
        27: .line 4409
            aload 1 /* tree */
            iload 6 /* minSelIndex */
        28: .line 4408
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getPathForRow:(Ljavax/swing/JTree;I)Ljavax/swing/tree/TreePath;
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.toggleExpandState:(Ljavax/swing/tree/TreePath;)V
        29: .line 4410
            iconst_m1
            istore 7 /* newIndex */
        start local 7 // int newIndex
        30: .line 4411
            goto 40
        end local 7 // int newIndex
        31: .line 4413
      StackMap locals:
      StackMap stack:
            aload 2 /* ui */
            aload 1 /* tree */
        32: .line 4414
            iload 6 /* minSelIndex */
        33: .line 4413
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getPathForRow:(Ljavax/swing/JTree;I)Ljavax/swing/tree/TreePath;
            astore 8 /* path */
        start local 8 // javax.swing.tree.TreePath path
        34: .line 4416
            aload 8 /* path */
            ifnull 39
            aload 8 /* path */
            invokevirtual javax.swing.tree.TreePath.getPathCount:()I
            iconst_1
            if_icmple 39
        35: .line 4417
            aload 2 /* ui */
            aload 1 /* tree */
            aload 8 /* path */
        36: .line 4418
            invokevirtual javax.swing.tree.TreePath.getParentPath:()Ljavax/swing/tree/TreePath;
        37: .line 4417
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getRowForPath:(Ljavax/swing/JTree;Ljavax/swing/tree/TreePath;)I
            istore 7 /* newIndex */
        start local 7 // int newIndex
        38: .line 4419
            goto 40
        end local 7 // int newIndex
        39: .line 4421
      StackMap locals: javax.swing.plaf.basic.BasicTreeUI$Actions javax.swing.JTree javax.swing.plaf.basic.BasicTreeUI int int int int top javax.swing.tree.TreePath
      StackMap stack:
            iconst_m1
            istore 7 /* newIndex */
        end local 8 // javax.swing.tree.TreePath path
        start local 7 // int newIndex
        40: .line 4425
      StackMap locals: javax.swing.plaf.basic.BasicTreeUI$Actions javax.swing.JTree javax.swing.plaf.basic.BasicTreeUI int int int int int
      StackMap stack:
            iload 7 /* newIndex */
            iconst_m1
            if_icmpeq 50
        41: .line 4426
            iload 4 /* changeSelection */
            ifeq 44
        42: .line 4427
            aload 1 /* tree */
            iload 7 /* newIndex */
            iload 7 /* newIndex */
            invokevirtual javax.swing.JTree.setSelectionInterval:(II)V
        43: .line 4428
            goto 49
        44: .line 4430
      StackMap locals:
      StackMap stack:
            aload 2 /* ui */
            aload 2 /* ui */
        45: .line 4431
            aload 1 /* tree */
            iload 7 /* newIndex */
        46: .line 4430
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getPathForRow:(Ljavax/swing/JTree;I)Ljavax/swing/tree/TreePath;
        47: .line 4431
            iconst_1
        48: .line 4430
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.setLeadSelectionPath:(Ljavax/swing/tree/TreePath;Z)V
        49: .line 4433
      StackMap locals:
      StackMap stack:
            aload 2 /* ui */
            iload 7 /* newIndex */
            iload 7 /* newIndex */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.ensureRowsAreVisible:(II)V
        end local 7 // int newIndex
        end local 6 // int minSelIndex
        50: .line 4436
      StackMap locals:
      StackMap stack:
            return
        end local 5 // int rowCount
        end local 4 // boolean changeSelection
        end local 3 // int direction
        end local 2 // javax.swing.plaf.basic.BasicTreeUI ui
        end local 1 // javax.swing.JTree tree
        end local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   51     0             this  Ljavax/swing/plaf/basic/BasicTreeUI$Actions;
            0   51     1             tree  Ljavax/swing/JTree;
            0   51     2               ui  Ljavax/swing/plaf/basic/BasicTreeUI;
            0   51     3        direction  I
            0   51     4  changeSelection  Z
            6   51     5         rowCount  I
            8   50     6      minSelIndex  I
           10   11     7         newIndex  I
           17   24     7         newIndex  I
           30   31     7         newIndex  I
           38   39     7         newIndex  I
           40   50     7         newIndex  I
           13   23     8       minSelPath  Ljavax/swing/tree/TreePath;
           16   23     9       childCount  I
           34   40     8             path  Ljavax/swing/tree/TreePath;
    MethodParameters:
                 Name  Flags
      tree             
      ui               
      direction        
      changeSelection  

  private void moveSelectionToParent(javax.swing.JTree, javax.swing.plaf.basic.BasicTreeUI);
    descriptor: (Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
        start local 1 // javax.swing.JTree tree
        start local 2 // javax.swing.plaf.basic.BasicTreeUI ui
         0: .line 4439
            aload 2 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getLeadSelectionRow:()I
            istore 3 /* selRow */
        start local 3 // int selRow
         1: .line 4440
            aload 2 /* ui */
            aload 1 /* tree */
            iload 3 /* selRow */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getPathForRow:(Ljavax/swing/JTree;I)Ljavax/swing/tree/TreePath;
            astore 4 /* path */
        start local 4 // javax.swing.tree.TreePath path
         2: .line 4441
            aload 4 /* path */
            ifnull 7
            aload 4 /* path */
            invokevirtual javax.swing.tree.TreePath.getPathCount:()I
            iconst_1
            if_icmple 7
         3: .line 4442
            aload 2 /* ui */
            aload 1 /* tree */
            aload 4 /* path */
            invokevirtual javax.swing.tree.TreePath.getParentPath:()Ljavax/swing/tree/TreePath;
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getRowForPath:(Ljavax/swing/JTree;Ljavax/swing/tree/TreePath;)I
            istore 5 /* newIndex */
        start local 5 // int newIndex
         4: .line 4443
            iload 5 /* newIndex */
            iconst_m1
            if_icmpeq 7
         5: .line 4444
            aload 1 /* tree */
            iload 5 /* newIndex */
            iload 5 /* newIndex */
            invokevirtual javax.swing.JTree.setSelectionInterval:(II)V
         6: .line 4445
            aload 2 /* ui */
            iload 5 /* newIndex */
            iload 5 /* newIndex */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.ensureRowsAreVisible:(II)V
        end local 5 // int newIndex
         7: .line 4448
      StackMap locals: int javax.swing.tree.TreePath
      StackMap stack:
            return
        end local 4 // javax.swing.tree.TreePath path
        end local 3 // int selRow
        end local 2 // javax.swing.plaf.basic.BasicTreeUI ui
        end local 1 // javax.swing.JTree tree
        end local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Ljavax/swing/plaf/basic/BasicTreeUI$Actions;
            0    8     1      tree  Ljavax/swing/JTree;
            0    8     2        ui  Ljavax/swing/plaf/basic/BasicTreeUI;
            1    8     3    selRow  I
            2    8     4      path  Ljavax/swing/tree/TreePath;
            4    7     5  newIndex  I
    MethodParameters:
      Name  Flags
      tree  
      ui    

  private void page(javax.swing.JTree, javax.swing.plaf.basic.BasicTreeUI, int, boolean, boolean);
    descriptor: (Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=11, args_size=6
        start local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
        start local 1 // javax.swing.JTree tree
        start local 2 // javax.swing.plaf.basic.BasicTreeUI ui
        start local 3 // int direction
        start local 4 // boolean addToSelection
        start local 5 // boolean changeSelection
         0: .line 4454
            iload 4 /* addToSelection */
            ifne 5
            iload 5 /* changeSelection */
            ifne 5
         1: .line 4455
            aload 1 /* tree */
            invokevirtual javax.swing.JTree.getSelectionModel:()Ljavax/swing/tree/TreeSelectionModel;
            invokeinterface javax.swing.tree.TreeSelectionModel.getSelectionMode:()I
         2: .line 4456
            iconst_4
         3: .line 4455
            if_icmpeq 5
         4: .line 4457
            iconst_1
            istore 5 /* changeSelection */
         5: .line 4462
      StackMap locals:
      StackMap stack:
            aload 2 /* ui */
            aload 1 /* tree */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getRowCount:(Ljavax/swing/JTree;)I
            ifle 50
         6: .line 4463
            aload 2 /* ui */
            getfield javax.swing.plaf.basic.BasicTreeUI.treeSelectionModel:Ljavax/swing/tree/TreeSelectionModel;
            ifnull 50
         7: .line 4464
            aload 1 /* tree */
            invokevirtual javax.swing.JTree.getSize:()Ljava/awt/Dimension;
            astore 6 /* maxSize */
        start local 6 // java.awt.Dimension maxSize
         8: .line 4465
            aload 2 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getLeadSelectionPath:()Ljavax/swing/tree/TreePath;
            astore 7 /* lead */
        start local 7 // javax.swing.tree.TreePath lead
         9: .line 4467
            aload 1 /* tree */
            invokevirtual javax.swing.JTree.getVisibleRect:()Ljava/awt/Rectangle;
            astore 9 /* visRect */
        start local 9 // java.awt.Rectangle visRect
        10: .line 4469
            iload 3 /* direction */
            iconst_m1
            if_icmpne 20
        11: .line 4471
            aload 2 /* ui */
            aload 1 /* tree */
            aload 9 /* visRect */
            getfield java.awt.Rectangle.x:I
        12: .line 4472
            aload 9 /* visRect */
            getfield java.awt.Rectangle.y:I
        13: .line 4471
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getClosestPathForLocation:(Ljavax/swing/JTree;II)Ljavax/swing/tree/TreePath;
            astore 8 /* newPath */
        start local 8 // javax.swing.tree.TreePath newPath
        14: .line 4473
            aload 8 /* newPath */
            aload 7 /* lead */
            invokevirtual javax.swing.tree.TreePath.equals:(Ljava/lang/Object;)Z
            ifeq 33
        15: .line 4474
            aload 9 /* visRect */
            iconst_0
            aload 9 /* visRect */
            getfield java.awt.Rectangle.y:I
            aload 9 /* visRect */
            getfield java.awt.Rectangle.height:I
            isub
            invokestatic java.lang.Math.max:(II)I
            putfield java.awt.Rectangle.y:I
        16: .line 4475
            aload 1 /* tree */
            aload 9 /* visRect */
            getfield java.awt.Rectangle.x:I
        17: .line 4476
            aload 9 /* visRect */
            getfield java.awt.Rectangle.y:I
        18: .line 4475
            invokevirtual javax.swing.JTree.getClosestPathForLocation:(II)Ljavax/swing/tree/TreePath;
            astore 8 /* newPath */
        19: .line 4478
            goto 33
        end local 8 // javax.swing.tree.TreePath newPath
        20: .line 4481
      StackMap locals: javax.swing.plaf.basic.BasicTreeUI$Actions javax.swing.JTree javax.swing.plaf.basic.BasicTreeUI int int int java.awt.Dimension javax.swing.tree.TreePath top java.awt.Rectangle
      StackMap stack:
            aload 9 /* visRect */
            aload 6 /* maxSize */
            getfield java.awt.Dimension.height:I
            aload 9 /* visRect */
            getfield java.awt.Rectangle.y:I
        21: .line 4482
            aload 9 /* visRect */
            getfield java.awt.Rectangle.height:I
            iadd
            iconst_1
            isub
        22: .line 4481
            invokestatic java.lang.Math.min:(II)I
            putfield java.awt.Rectangle.y:I
        23: .line 4483
            aload 1 /* tree */
            aload 9 /* visRect */
            getfield java.awt.Rectangle.x:I
        24: .line 4484
            aload 9 /* visRect */
            getfield java.awt.Rectangle.y:I
        25: .line 4483
            invokevirtual javax.swing.JTree.getClosestPathForLocation:(II)Ljavax/swing/tree/TreePath;
            astore 8 /* newPath */
        start local 8 // javax.swing.tree.TreePath newPath
        26: .line 4485
            aload 8 /* newPath */
            aload 7 /* lead */
            invokevirtual javax.swing.tree.TreePath.equals:(Ljava/lang/Object;)Z
            ifeq 33
        27: .line 4486
            aload 9 /* visRect */
            aload 6 /* maxSize */
            getfield java.awt.Dimension.height:I
            aload 9 /* visRect */
            getfield java.awt.Rectangle.y:I
        28: .line 4487
            aload 9 /* visRect */
            getfield java.awt.Rectangle.height:I
            iadd
            iconst_1
            isub
        29: .line 4486
            invokestatic java.lang.Math.min:(II)I
            putfield java.awt.Rectangle.y:I
        30: .line 4488
            aload 1 /* tree */
            aload 9 /* visRect */
            getfield java.awt.Rectangle.x:I
        31: .line 4489
            aload 9 /* visRect */
            getfield java.awt.Rectangle.y:I
        32: .line 4488
            invokevirtual javax.swing.JTree.getClosestPathForLocation:(II)Ljavax/swing/tree/TreePath;
            astore 8 /* newPath */
        33: .line 4492
      StackMap locals: javax.swing.plaf.basic.BasicTreeUI$Actions javax.swing.JTree javax.swing.plaf.basic.BasicTreeUI int int int java.awt.Dimension javax.swing.tree.TreePath javax.swing.tree.TreePath java.awt.Rectangle
      StackMap stack:
            aload 2 /* ui */
            aload 1 /* tree */
            aload 8 /* newPath */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getPathBounds:(Ljavax/swing/JTree;Ljavax/swing/tree/TreePath;)Ljava/awt/Rectangle;
            astore 10 /* newRect */
        start local 10 // java.awt.Rectangle newRect
        34: .line 4493
            aload 10 /* newRect */
            ifnull 50
        35: .line 4494
            aload 10 /* newRect */
            aload 9 /* visRect */
            getfield java.awt.Rectangle.x:I
            putfield java.awt.Rectangle.x:I
        36: .line 4495
            aload 10 /* newRect */
            aload 9 /* visRect */
            getfield java.awt.Rectangle.width:I
            putfield java.awt.Rectangle.width:I
        37: .line 4496
            iload 3 /* direction */
            iconst_m1
            if_icmpne 40
        38: .line 4497
            aload 10 /* newRect */
            aload 9 /* visRect */
            getfield java.awt.Rectangle.height:I
            putfield java.awt.Rectangle.height:I
        39: .line 4498
            goto 42
        40: .line 4500
      StackMap locals: java.awt.Rectangle
      StackMap stack:
            aload 10 /* newRect */
            dup
            getfield java.awt.Rectangle.y:I
            aload 9 /* visRect */
            getfield java.awt.Rectangle.height:I
            aload 10 /* newRect */
            getfield java.awt.Rectangle.height:I
            isub
            isub
            putfield java.awt.Rectangle.y:I
        41: .line 4501
            aload 10 /* newRect */
            aload 9 /* visRect */
            getfield java.awt.Rectangle.height:I
            putfield java.awt.Rectangle.height:I
        42: .line 4504
      StackMap locals:
      StackMap stack:
            iload 4 /* addToSelection */
            ifeq 45
        43: .line 4505
            aload 2 /* ui */
            aload 8 /* newPath */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.extendSelection:(Ljavax/swing/tree/TreePath;)V
        44: .line 4506
            goto 49
        45: .line 4507
      StackMap locals:
      StackMap stack:
            iload 5 /* changeSelection */
            ifeq 48
        46: .line 4508
            aload 1 /* tree */
            aload 8 /* newPath */
            invokevirtual javax.swing.JTree.setSelectionPath:(Ljavax/swing/tree/TreePath;)V
        47: .line 4509
            goto 49
        48: .line 4511
      StackMap locals:
      StackMap stack:
            aload 2 /* ui */
            aload 8 /* newPath */
            iconst_1
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.setLeadSelectionPath:(Ljavax/swing/tree/TreePath;Z)V
        49: .line 4513
      StackMap locals:
      StackMap stack:
            aload 1 /* tree */
            aload 10 /* newRect */
            invokevirtual javax.swing.JTree.scrollRectToVisible:(Ljava/awt/Rectangle;)V
        end local 10 // java.awt.Rectangle newRect
        end local 9 // java.awt.Rectangle visRect
        end local 8 // javax.swing.tree.TreePath newPath
        end local 7 // javax.swing.tree.TreePath lead
        end local 6 // java.awt.Dimension maxSize
        50: .line 4516
      StackMap locals: javax.swing.plaf.basic.BasicTreeUI$Actions javax.swing.JTree javax.swing.plaf.basic.BasicTreeUI int int int
      StackMap stack:
            return
        end local 5 // boolean changeSelection
        end local 4 // boolean addToSelection
        end local 3 // int direction
        end local 2 // javax.swing.plaf.basic.BasicTreeUI ui
        end local 1 // javax.swing.JTree tree
        end local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   51     0             this  Ljavax/swing/plaf/basic/BasicTreeUI$Actions;
            0   51     1             tree  Ljavax/swing/JTree;
            0   51     2               ui  Ljavax/swing/plaf/basic/BasicTreeUI;
            0   51     3        direction  I
            0   51     4   addToSelection  Z
            0   51     5  changeSelection  Z
            8   50     6          maxSize  Ljava/awt/Dimension;
            9   50     7             lead  Ljavax/swing/tree/TreePath;
           14   20     8          newPath  Ljavax/swing/tree/TreePath;
           26   50     8          newPath  Ljavax/swing/tree/TreePath;
           10   50     9          visRect  Ljava/awt/Rectangle;
           34   50    10          newRect  Ljava/awt/Rectangle;
    MethodParameters:
                 Name  Flags
      tree             
      ui               
      direction        
      addToSelection   
      changeSelection  

  private void home(javax.swing.JTree, javax.swing.plaf.basic.BasicTreeUI, int, boolean, boolean);
    descriptor: (Ljavax/swing/JTree;Ljavax/swing/plaf/basic/BasicTreeUI;IZZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=9, args_size=6
        start local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
        start local 1 // javax.swing.JTree tree
        start local 2 // javax.swing.plaf.basic.BasicTreeUI ui
        start local 3 // int direction
        start local 4 // boolean addToSelection
        start local 5 // boolean changeSelection
         0: .line 4522
            iload 4 /* addToSelection */
            ifne 5
            iload 5 /* changeSelection */
            ifne 5
         1: .line 4523
            aload 1 /* tree */
            invokevirtual javax.swing.JTree.getSelectionModel:()Ljavax/swing/tree/TreeSelectionModel;
            invokeinterface javax.swing.tree.TreeSelectionModel.getSelectionMode:()I
         2: .line 4524
            iconst_4
         3: .line 4523
            if_icmpeq 5
         4: .line 4525
            iconst_1
            istore 5 /* changeSelection */
         5: .line 4528
      StackMap locals:
      StackMap stack:
            aload 2 /* ui */
            aload 1 /* tree */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getRowCount:(Ljavax/swing/JTree;)I
            istore 6 /* rowCount */
        start local 6 // int rowCount
         6: .line 4530
            iload 6 /* rowCount */
            ifle 55
         7: .line 4531
            iload 3 /* direction */
            iconst_m1
            if_icmpne 28
         8: .line 4532
            aload 2 /* ui */
            iconst_0
            iconst_0
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.ensureRowsAreVisible:(II)V
         9: .line 4533
            iload 4 /* addToSelection */
            ifeq 21
        10: .line 4534
            aload 2 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getAnchorSelectionPath:()Ljavax/swing/tree/TreePath;
            astore 7 /* aPath */
        start local 7 // javax.swing.tree.TreePath aPath
        11: .line 4535
            aload 7 /* aPath */
            ifnonnull 12
            iconst_m1
            goto 13
        12: .line 4536
      StackMap locals: int javax.swing.tree.TreePath
      StackMap stack:
            aload 2 /* ui */
            aload 1 /* tree */
            aload 7 /* aPath */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getRowForPath:(Ljavax/swing/JTree;Ljavax/swing/tree/TreePath;)I
        13: .line 4535
      StackMap locals:
      StackMap stack: int
            istore 8 /* aRow */
        start local 8 // int aRow
        14: .line 4538
            iload 8 /* aRow */
            iconst_m1
            if_icmpne 17
        15: .line 4539
            aload 1 /* tree */
            iconst_0
            iconst_0
            invokevirtual javax.swing.JTree.setSelectionInterval:(II)V
        16: .line 4540
            goto 55
        17: .line 4542
      StackMap locals: int
      StackMap stack:
            aload 1 /* tree */
            iconst_0
            iload 8 /* aRow */
            invokevirtual javax.swing.JTree.setSelectionInterval:(II)V
        18: .line 4543
            aload 2 /* ui */
            aload 7 /* aPath */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.setAnchorSelectionPath:(Ljavax/swing/tree/TreePath;)V
        19: .line 4544
            aload 2 /* ui */
            aload 2 /* ui */
            aload 1 /* tree */
            iconst_0
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getPathForRow:(Ljavax/swing/JTree;I)Ljavax/swing/tree/TreePath;
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.setLeadSelectionPath:(Ljavax/swing/tree/TreePath;)V
        end local 8 // int aRow
        end local 7 // javax.swing.tree.TreePath aPath
        20: .line 4546
            goto 55
        21: .line 4547
      StackMap locals:
      StackMap stack:
            iload 5 /* changeSelection */
            ifeq 24
        22: .line 4548
            aload 1 /* tree */
            iconst_0
            iconst_0
            invokevirtual javax.swing.JTree.setSelectionInterval:(II)V
        23: .line 4549
            goto 55
        24: .line 4551
      StackMap locals:
      StackMap stack:
            aload 2 /* ui */
            aload 2 /* ui */
            aload 1 /* tree */
            iconst_0
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getPathForRow:(Ljavax/swing/JTree;I)Ljavax/swing/tree/TreePath;
        25: .line 4552
            iconst_1
        26: .line 4551
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.setLeadSelectionPath:(Ljavax/swing/tree/TreePath;Z)V
        27: .line 4554
            goto 55
        28: .line 4556
      StackMap locals:
      StackMap stack:
            aload 2 /* ui */
            iload 6 /* rowCount */
            iconst_1
            isub
            iload 6 /* rowCount */
            iconst_1
            isub
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.ensureRowsAreVisible:(II)V
        29: .line 4557
            iload 4 /* addToSelection */
            ifeq 45
        30: .line 4558
            aload 2 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getAnchorSelectionPath:()Ljavax/swing/tree/TreePath;
            astore 7 /* aPath */
        start local 7 // javax.swing.tree.TreePath aPath
        31: .line 4559
            aload 7 /* aPath */
            ifnonnull 32
            iconst_m1
            goto 33
        32: .line 4560
      StackMap locals: javax.swing.tree.TreePath
      StackMap stack:
            aload 2 /* ui */
            aload 1 /* tree */
            aload 7 /* aPath */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getRowForPath:(Ljavax/swing/JTree;Ljavax/swing/tree/TreePath;)I
        33: .line 4559
      StackMap locals:
      StackMap stack: int
            istore 8 /* aRow */
        start local 8 // int aRow
        34: .line 4562
            iload 8 /* aRow */
            iconst_m1
            if_icmpne 39
        35: .line 4563
            aload 1 /* tree */
            iload 6 /* rowCount */
            iconst_1
            isub
        36: .line 4564
            iload 6 /* rowCount */
            iconst_1
            isub
        37: .line 4563
            invokevirtual javax.swing.JTree.setSelectionInterval:(II)V
        38: .line 4565
            goto 53
        39: .line 4567
      StackMap locals: int
      StackMap stack:
            aload 1 /* tree */
            iload 8 /* aRow */
            iload 6 /* rowCount */
            iconst_1
            isub
            invokevirtual javax.swing.JTree.setSelectionInterval:(II)V
        40: .line 4568
            aload 2 /* ui */
            aload 7 /* aPath */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.setAnchorSelectionPath:(Ljavax/swing/tree/TreePath;)V
        41: .line 4569
            aload 2 /* ui */
            aload 2 /* ui */
            aload 1 /* tree */
        42: .line 4570
            iload 6 /* rowCount */
            iconst_1
            isub
        43: .line 4569
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getPathForRow:(Ljavax/swing/JTree;I)Ljavax/swing/tree/TreePath;
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.setLeadSelectionPath:(Ljavax/swing/tree/TreePath;)V
        end local 8 // int aRow
        end local 7 // javax.swing.tree.TreePath aPath
        44: .line 4572
            goto 53
        45: .line 4573
      StackMap locals:
      StackMap stack:
            iload 5 /* changeSelection */
            ifeq 48
        46: .line 4574
            aload 1 /* tree */
            iload 6 /* rowCount */
            iconst_1
            isub
            iload 6 /* rowCount */
            iconst_1
            isub
            invokevirtual javax.swing.JTree.setSelectionInterval:(II)V
        47: .line 4575
            goto 53
        48: .line 4577
      StackMap locals:
      StackMap stack:
            aload 2 /* ui */
            aload 2 /* ui */
            aload 1 /* tree */
        49: .line 4578
            iload 6 /* rowCount */
            iconst_1
            isub
        50: .line 4577
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.getPathForRow:(Ljavax/swing/JTree;I)Ljavax/swing/tree/TreePath;
        51: .line 4578
            iconst_1
        52: .line 4577
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.setLeadSelectionPath:(Ljavax/swing/tree/TreePath;Z)V
        53: .line 4580
      StackMap locals:
      StackMap stack:
            aload 2 /* ui */
            invokevirtual javax.swing.plaf.basic.BasicTreeUI.isLargeModel:()Z
            ifeq 55
        54: .line 4581
            new javax.swing.plaf.basic.BasicTreeUI$Actions$1
            dup
            aload 0 /* this */
            aload 2 /* ui */
            iload 6 /* rowCount */
            invokespecial javax.swing.plaf.basic.BasicTreeUI$Actions$1.<init>:(Ljavax/swing/plaf/basic/BasicTreeUI$Actions;Ljavax/swing/plaf/basic/BasicTreeUI;I)V
            invokestatic javax.swing.SwingUtilities.invokeLater:(Ljava/lang/Runnable;)V
        55: .line 4589
      StackMap locals:
      StackMap stack:
            return
        end local 6 // int rowCount
        end local 5 // boolean changeSelection
        end local 4 // boolean addToSelection
        end local 3 // int direction
        end local 2 // javax.swing.plaf.basic.BasicTreeUI ui
        end local 1 // javax.swing.JTree tree
        end local 0 // javax.swing.plaf.basic.BasicTreeUI$Actions this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   56     0             this  Ljavax/swing/plaf/basic/BasicTreeUI$Actions;
            0   56     1             tree  Ljavax/swing/JTree;
            0   56     2               ui  Ljavax/swing/plaf/basic/BasicTreeUI;
            0   56     3        direction  I
            0   56     4   addToSelection  Z
            0   56     5  changeSelection  Z
            6   56     6         rowCount  I
           11   20     7            aPath  Ljavax/swing/tree/TreePath;
           14   20     8             aRow  I
           31   44     7            aPath  Ljavax/swing/tree/TreePath;
           34   44     8             aRow  I
    MethodParameters:
                 Name  Flags
      tree             
      ui               final
      direction        
      addToSelection   
      changeSelection  
}
SourceFile: "BasicTreeUI.java"
NestHost: javax.swing.plaf.basic.BasicTreeUI
InnerClasses:
  private Actions = javax.swing.plaf.basic.BasicTreeUI$Actions of javax.swing.plaf.basic.BasicTreeUI
  javax.swing.plaf.basic.BasicTreeUI$Actions$1