public class javax.swing.plaf.basic.BasicScrollBarUI$TrackListener extends java.awt.event.MouseAdapter implements java.awt.event.MouseMotionListener
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: javax.swing.plaf.basic.BasicScrollBarUI$TrackListener
  super_class: java.awt.event.MouseAdapter
{
  protected transient int offset;
    descriptor: I
    flags: (0x0084) ACC_PROTECTED, ACC_TRANSIENT

  protected transient int currentMouseX;
    descriptor: I
    flags: (0x0084) ACC_PROTECTED, ACC_TRANSIENT

  protected transient int currentMouseY;
    descriptor: I
    flags: (0x0084) ACC_PROTECTED, ACC_TRANSIENT

  private transient int direction;
    descriptor: I
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  final javax.swing.plaf.basic.BasicScrollBarUI this$0;
    descriptor: Ljavax/swing/plaf/basic/BasicScrollBarUI;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  protected void <init>(javax.swing.plaf.basic.BasicScrollBarUI);
    descriptor: (Ljavax/swing/plaf/basic/BasicScrollBarUI;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.plaf.basic.BasicScrollBarUI$TrackListener this
         0: .line 1063
            aload 0 /* this */
            aload 1
            putfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            aload 0 /* this */
            invokespecial java.awt.event.MouseAdapter.<init>:()V
         1: .line 1068
            aload 0 /* this */
            iconst_1
            putfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.direction:I
         2: .line 1063
            return
        end local 0 // javax.swing.plaf.basic.BasicScrollBarUI$TrackListener this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavax/swing/plaf/basic/BasicScrollBarUI$TrackListener;
    MethodParameters:
        Name  Flags
      this$0  final

  public void mouseReleased(java.awt.event.MouseEvent);
    descriptor: (Ljava/awt/event/MouseEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // javax.swing.plaf.basic.BasicScrollBarUI$TrackListener this
        start local 1 // java.awt.event.MouseEvent e
         0: .line 1072
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.isDragging:Z
            ifeq 2
         1: .line 1073
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            aload 1 /* e */
            invokevirtual java.awt.event.MouseEvent.getX:()I
            aload 1 /* e */
            invokevirtual java.awt.event.MouseEvent.getY:()I
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.updateThumbState:(II)V
         2: .line 1075
      StackMap locals:
      StackMap stack:
            aload 1 /* e */
            invokestatic javax.swing.SwingUtilities.isRightMouseButton:(Ljava/awt/event/MouseEvent;)Z
            ifne 5
         3: .line 1076
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.getSupportsAbsolutePositioning:()Z
            ifne 6
         4: .line 1077
            aload 1 /* e */
            invokestatic javax.swing.SwingUtilities.isMiddleMouseButton:(Ljava/awt/event/MouseEvent;)Z
            ifeq 6
         5: .line 1078
      StackMap locals:
      StackMap stack:
            return
         6: .line 1079
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            invokevirtual javax.swing.JScrollBar.isEnabled:()Z
            ifne 8
         7: .line 1080
            return
         8: .line 1082
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.getTrackBounds:()Ljava/awt/Rectangle;
            astore 2 /* r */
        start local 2 // java.awt.Rectangle r
         9: .line 1083
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            aload 2 /* r */
            getfield java.awt.Rectangle.x:I
            aload 2 /* r */
            getfield java.awt.Rectangle.y:I
            aload 2 /* r */
            getfield java.awt.Rectangle.width:I
            aload 2 /* r */
            getfield java.awt.Rectangle.height:I
            invokevirtual javax.swing.JScrollBar.repaint:(IIII)V
        10: .line 1085
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            iconst_0
            putfield javax.swing.plaf.basic.BasicScrollBarUI.trackHighlight:I
        11: .line 1086
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            iconst_0
            putfield javax.swing.plaf.basic.BasicScrollBarUI.isDragging:Z
        12: .line 1087
            aload 0 /* this */
            iconst_0
            putfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.offset:I
        13: .line 1088
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollTimer:Ljavax/swing/Timer;
            invokevirtual javax.swing.Timer.stop:()V
        14: .line 1089
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            iconst_1
            putfield javax.swing.plaf.basic.BasicScrollBarUI.useCachedValue:Z
        15: .line 1090
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            iconst_0
            invokevirtual javax.swing.JScrollBar.setValueIsAdjusting:(Z)V
        16: .line 1091
            return
        end local 2 // java.awt.Rectangle r
        end local 1 // java.awt.event.MouseEvent e
        end local 0 // javax.swing.plaf.basic.BasicScrollBarUI$TrackListener this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   17     0  this  Ljavax/swing/plaf/basic/BasicScrollBarUI$TrackListener;
            0   17     1     e  Ljava/awt/event/MouseEvent;
            9   17     2     r  Ljava/awt/Rectangle;
    MethodParameters:
      Name  Flags
      e     

  public void mousePressed(java.awt.event.MouseEvent);
    descriptor: (Ljava/awt/event/MouseEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // javax.swing.plaf.basic.BasicScrollBarUI$TrackListener this
        start local 1 // java.awt.event.MouseEvent e
         0: .line 1103
            aload 1 /* e */
            invokestatic javax.swing.SwingUtilities.isRightMouseButton:(Ljava/awt/event/MouseEvent;)Z
            ifne 3
         1: .line 1104
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.getSupportsAbsolutePositioning:()Z
            ifne 4
         2: .line 1105
            aload 1 /* e */
            invokestatic javax.swing.SwingUtilities.isMiddleMouseButton:(Ljava/awt/event/MouseEvent;)Z
            ifeq 4
         3: .line 1106
      StackMap locals:
      StackMap stack:
            return
         4: .line 1107
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            invokevirtual javax.swing.JScrollBar.isEnabled:()Z
            ifne 6
         5: .line 1108
            return
         6: .line 1110
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            invokevirtual javax.swing.JScrollBar.hasFocus:()Z
            ifne 8
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            invokevirtual javax.swing.JScrollBar.isRequestFocusEnabled:()Z
            ifeq 8
         7: .line 1111
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            invokevirtual javax.swing.JScrollBar.requestFocus:()V
         8: .line 1114
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            iconst_1
            putfield javax.swing.plaf.basic.BasicScrollBarUI.useCachedValue:Z
         9: .line 1115
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            iconst_1
            invokevirtual javax.swing.JScrollBar.setValueIsAdjusting:(Z)V
        10: .line 1117
            aload 0 /* this */
            aload 1 /* e */
            invokevirtual java.awt.event.MouseEvent.getX:()I
            putfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.currentMouseX:I
        11: .line 1118
            aload 0 /* this */
            aload 1 /* e */
            invokevirtual java.awt.event.MouseEvent.getY:()I
            putfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.currentMouseY:I
        12: .line 1121
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.getThumbBounds:()Ljava/awt/Rectangle;
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.currentMouseX:I
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.currentMouseY:I
            invokevirtual java.awt.Rectangle.contains:(II)Z
            ifeq 19
        13: .line 1122
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            invokevirtual javax.swing.JScrollBar.getOrientation:()I
            tableswitch { // 0 - 1
                    0: 16
                    1: 14
              default: 17
          }
        14: .line 1124
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.currentMouseY:I
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.getThumbBounds:()Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            isub
            putfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.offset:I
        15: .line 1125
            goto 17
        16: .line 1127
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.currentMouseX:I
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.getThumbBounds:()Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            isub
            putfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.offset:I
        17: .line 1130
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            iconst_1
            putfield javax.swing.plaf.basic.BasicScrollBarUI.isDragging:Z
        18: .line 1131
            return
        19: .line 1133
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.getSupportsAbsolutePositioning:()Z
            ifeq 28
        20: .line 1134
            aload 1 /* e */
            invokestatic javax.swing.SwingUtilities.isMiddleMouseButton:(Ljava/awt/event/MouseEvent;)Z
            ifeq 28
        21: .line 1135
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            invokevirtual javax.swing.JScrollBar.getOrientation:()I
            tableswitch { // 0 - 1
                    0: 24
                    1: 22
              default: 25
          }
        22: .line 1137
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.getThumbBounds:()Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            iconst_2
            idiv
            putfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.offset:I
        23: .line 1138
            goto 25
        24: .line 1140
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.getThumbBounds:()Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            iconst_2
            idiv
            putfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.offset:I
        25: .line 1143
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            iconst_1
            putfield javax.swing.plaf.basic.BasicScrollBarUI.isDragging:Z
        26: .line 1144
            aload 0 /* this */
            aload 1 /* e */
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.setValueFrom:(Ljava/awt/event/MouseEvent;)V
        27: .line 1145
            return
        28: .line 1147
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            iconst_0
            putfield javax.swing.plaf.basic.BasicScrollBarUI.isDragging:Z
        29: .line 1149
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            invokevirtual javax.swing.JScrollBar.getSize:()Ljava/awt/Dimension;
            astore 2 /* sbSize */
        start local 2 // java.awt.Dimension sbSize
        30: .line 1150
            aload 0 /* this */
            iconst_1
            putfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.direction:I
        31: .line 1152
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            invokevirtual javax.swing.JScrollBar.getOrientation:()I
            tableswitch { // 0 - 1
                    0: 43
                    1: 32
              default: 55
          }
        32: .line 1154
      StackMap locals: java.awt.Dimension
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.getThumbBounds:()Ljava/awt/Rectangle;
            invokevirtual java.awt.Rectangle.isEmpty:()Z
            ifeq 38
        33: .line 1155
            aload 2 /* sbSize */
            getfield java.awt.Dimension.height:I
            iconst_2
            idiv
            istore 3 /* scrollbarCenter */
        start local 3 // int scrollbarCenter
        34: .line 1156
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.currentMouseY:I
            iload 3 /* scrollbarCenter */
            if_icmpge 35
            iconst_m1
            goto 36
      StackMap locals: javax.swing.plaf.basic.BasicScrollBarUI$TrackListener java.awt.event.MouseEvent java.awt.Dimension int
      StackMap stack: javax.swing.plaf.basic.BasicScrollBarUI$TrackListener
        35: iconst_1
      StackMap locals: javax.swing.plaf.basic.BasicScrollBarUI$TrackListener java.awt.event.MouseEvent java.awt.Dimension int
      StackMap stack: javax.swing.plaf.basic.BasicScrollBarUI$TrackListener int
        36: putfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.direction:I
        end local 3 // int scrollbarCenter
        37: .line 1157
            goto 55
        38: .line 1158
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.getThumbBounds:()Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            istore 3 /* thumbY */
        start local 3 // int thumbY
        39: .line 1159
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.currentMouseY:I
            iload 3 /* thumbY */
            if_icmpge 40
            iconst_m1
            goto 41
      StackMap locals: javax.swing.plaf.basic.BasicScrollBarUI$TrackListener java.awt.event.MouseEvent java.awt.Dimension int
      StackMap stack: javax.swing.plaf.basic.BasicScrollBarUI$TrackListener
        40: iconst_1
      StackMap locals: javax.swing.plaf.basic.BasicScrollBarUI$TrackListener java.awt.event.MouseEvent java.awt.Dimension int
      StackMap stack: javax.swing.plaf.basic.BasicScrollBarUI$TrackListener int
        41: putfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.direction:I
        end local 3 // int thumbY
        42: .line 1161
            goto 55
        43: .line 1163
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.getThumbBounds:()Ljava/awt/Rectangle;
            invokevirtual java.awt.Rectangle.isEmpty:()Z
            ifeq 49
        44: .line 1164
            aload 2 /* sbSize */
            getfield java.awt.Dimension.width:I
            iconst_2
            idiv
            istore 3 /* scrollbarCenter */
        start local 3 // int scrollbarCenter
        45: .line 1165
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.currentMouseX:I
            iload 3 /* scrollbarCenter */
            if_icmpge 46
            iconst_m1
            goto 47
      StackMap locals: javax.swing.plaf.basic.BasicScrollBarUI$TrackListener java.awt.event.MouseEvent java.awt.Dimension int
      StackMap stack: javax.swing.plaf.basic.BasicScrollBarUI$TrackListener
        46: iconst_1
      StackMap locals: javax.swing.plaf.basic.BasicScrollBarUI$TrackListener java.awt.event.MouseEvent java.awt.Dimension int
      StackMap stack: javax.swing.plaf.basic.BasicScrollBarUI$TrackListener int
        47: putfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.direction:I
        end local 3 // int scrollbarCenter
        48: .line 1166
            goto 53
        49: .line 1167
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.getThumbBounds:()Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            istore 3 /* thumbX */
        start local 3 // int thumbX
        50: .line 1168
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.currentMouseX:I
            iload 3 /* thumbX */
            if_icmpge 51
            iconst_m1
            goto 52
      StackMap locals: javax.swing.plaf.basic.BasicScrollBarUI$TrackListener java.awt.event.MouseEvent java.awt.Dimension int
      StackMap stack: javax.swing.plaf.basic.BasicScrollBarUI$TrackListener
        51: iconst_1
      StackMap locals: javax.swing.plaf.basic.BasicScrollBarUI$TrackListener java.awt.event.MouseEvent java.awt.Dimension int
      StackMap stack: javax.swing.plaf.basic.BasicScrollBarUI$TrackListener int
        52: putfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.direction:I
        end local 3 // int thumbX
        53: .line 1170
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            invokevirtual javax.swing.JScrollBar.getComponentOrientation:()Ljava/awt/ComponentOrientation;
            invokevirtual java.awt.ComponentOrientation.isLeftToRight:()Z
            ifne 55
        54: .line 1171
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.direction:I
            ineg
            putfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.direction:I
        55: .line 1175
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.direction:I
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.scrollByBlock:(I)V
        56: .line 1177
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollTimer:Ljavax/swing/Timer;
            invokevirtual javax.swing.Timer.stop:()V
        57: .line 1178
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollListener:Ljavax/swing/plaf/basic/BasicScrollBarUI$ScrollListener;
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.direction:I
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI$ScrollListener.setDirection:(I)V
        58: .line 1179
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollListener:Ljavax/swing/plaf/basic/BasicScrollBarUI$ScrollListener;
            iconst_1
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI$ScrollListener.setScrollByBlock:(Z)V
        59: .line 1180
            aload 0 /* this */
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.startScrollTimerIfNecessary:()V
        60: .line 1181
            return
        end local 2 // java.awt.Dimension sbSize
        end local 1 // java.awt.event.MouseEvent e
        end local 0 // javax.swing.plaf.basic.BasicScrollBarUI$TrackListener this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   61     0             this  Ljavax/swing/plaf/basic/BasicScrollBarUI$TrackListener;
            0   61     1                e  Ljava/awt/event/MouseEvent;
           30   61     2           sbSize  Ljava/awt/Dimension;
           34   37     3  scrollbarCenter  I
           39   42     3           thumbY  I
           45   48     3  scrollbarCenter  I
           50   53     3           thumbX  I
    MethodParameters:
      Name  Flags
      e     

  public void mouseDragged(java.awt.event.MouseEvent);
    descriptor: (Ljava/awt/event/MouseEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // javax.swing.plaf.basic.BasicScrollBarUI$TrackListener this
        start local 1 // java.awt.event.MouseEvent e
         0: .line 1191
            aload 1 /* e */
            invokestatic javax.swing.SwingUtilities.isRightMouseButton:(Ljava/awt/event/MouseEvent;)Z
            ifne 3
         1: .line 1192
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.getSupportsAbsolutePositioning:()Z
            ifne 4
         2: .line 1193
            aload 1 /* e */
            invokestatic javax.swing.SwingUtilities.isMiddleMouseButton:(Ljava/awt/event/MouseEvent;)Z
            ifeq 4
         3: .line 1194
      StackMap locals:
      StackMap stack:
            return
         4: .line 1195
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            invokevirtual javax.swing.JScrollBar.isEnabled:()Z
            ifeq 5
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.getThumbBounds:()Ljava/awt/Rectangle;
            invokevirtual java.awt.Rectangle.isEmpty:()Z
            ifeq 6
         5: .line 1196
      StackMap locals:
      StackMap stack:
            return
         6: .line 1198
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.isDragging:Z
            ifeq 9
         7: .line 1199
            aload 0 /* this */
            aload 1 /* e */
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.setValueFrom:(Ljava/awt/event/MouseEvent;)V
         8: .line 1200
            goto 13
         9: .line 1201
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* e */
            invokevirtual java.awt.event.MouseEvent.getX:()I
            putfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.currentMouseX:I
        10: .line 1202
            aload 0 /* this */
            aload 1 /* e */
            invokevirtual java.awt.event.MouseEvent.getY:()I
            putfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.currentMouseY:I
        11: .line 1203
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.currentMouseX:I
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.currentMouseY:I
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.updateThumbState:(II)V
        12: .line 1204
            aload 0 /* this */
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.startScrollTimerIfNecessary:()V
        13: .line 1206
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.awt.event.MouseEvent e
        end local 0 // javax.swing.plaf.basic.BasicScrollBarUI$TrackListener this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   14     0  this  Ljavax/swing/plaf/basic/BasicScrollBarUI$TrackListener;
            0   14     1     e  Ljava/awt/event/MouseEvent;
    MethodParameters:
      Name  Flags
      e     

  private void setValueFrom(java.awt.event.MouseEvent);
    descriptor: (Ljava/awt/event/MouseEvent;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=13, args_size=2
        start local 0 // javax.swing.plaf.basic.BasicScrollBarUI$TrackListener this
        start local 1 // java.awt.event.MouseEvent e
         0: .line 1209
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.isThumbRollover:()Z
            istore 2 /* active */
        start local 2 // boolean active
         1: .line 1210
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            invokevirtual javax.swing.JScrollBar.getModel:()Ljavax/swing/BoundedRangeModel;
            astore 3 /* model */
        start local 3 // javax.swing.BoundedRangeModel model
         2: .line 1211
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.getThumbBounds:()Ljava/awt/Rectangle;
            astore 4 /* thumbR */
        start local 4 // java.awt.Rectangle thumbR
         3: .line 1215
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            invokevirtual javax.swing.JScrollBar.getOrientation:()I
            iconst_1
            if_icmpne 10
         4: .line 1216
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.trackRect:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            istore 5 /* thumbMin */
        start local 5 // int thumbMin
         5: .line 1217
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.trackRect:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.trackRect:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            iadd
            aload 4 /* thumbR */
            getfield java.awt.Rectangle.height:I
            isub
            istore 6 /* thumbMax */
        start local 6 // int thumbMax
         6: .line 1218
            iload 6 /* thumbMax */
            iload 5 /* thumbMin */
            aload 1 /* e */
            invokevirtual java.awt.event.MouseEvent.getY:()I
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.offset:I
            isub
            invokestatic java.lang.Math.max:(II)I
            invokestatic java.lang.Math.min:(II)I
            istore 7 /* thumbPos */
        start local 7 // int thumbPos
         7: .line 1219
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            aload 4 /* thumbR */
            getfield java.awt.Rectangle.x:I
            iload 7 /* thumbPos */
            aload 4 /* thumbR */
            getfield java.awt.Rectangle.width:I
            aload 4 /* thumbR */
            getfield java.awt.Rectangle.height:I
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.setThumbBounds:(IIII)V
         8: .line 1220
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.getTrackBounds:()Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            i2f
            pop
         9: .line 1221
            goto 15
        end local 7 // int thumbPos
        end local 6 // int thumbMax
        end local 5 // int thumbMin
        10: .line 1223
      StackMap locals: int javax.swing.BoundedRangeModel java.awt.Rectangle
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.trackRect:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            istore 5 /* thumbMin */
        start local 5 // int thumbMin
        11: .line 1224
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.trackRect:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.trackRect:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            iadd
            aload 4 /* thumbR */
            getfield java.awt.Rectangle.width:I
            isub
            istore 6 /* thumbMax */
        start local 6 // int thumbMax
        12: .line 1225
            iload 6 /* thumbMax */
            iload 5 /* thumbMin */
            aload 1 /* e */
            invokevirtual java.awt.event.MouseEvent.getX:()I
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.offset:I
            isub
            invokestatic java.lang.Math.max:(II)I
            invokestatic java.lang.Math.min:(II)I
            istore 7 /* thumbPos */
        start local 7 // int thumbPos
        13: .line 1226
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            iload 7 /* thumbPos */
            aload 4 /* thumbR */
            getfield java.awt.Rectangle.y:I
            aload 4 /* thumbR */
            getfield java.awt.Rectangle.width:I
            aload 4 /* thumbR */
            getfield java.awt.Rectangle.height:I
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.setThumbBounds:(IIII)V
        14: .line 1227
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.getTrackBounds:()Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            i2f
            pop
        15: .line 1234
      StackMap locals: int int int
      StackMap stack:
            iload 7 /* thumbPos */
            iload 6 /* thumbMax */
            if_icmpne 22
        16: .line 1235
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            invokevirtual javax.swing.JScrollBar.getOrientation:()I
            iconst_1
            if_icmpeq 18
        17: .line 1236
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            invokevirtual javax.swing.JScrollBar.getComponentOrientation:()Ljava/awt/ComponentOrientation;
            invokevirtual java.awt.ComponentOrientation.isLeftToRight:()Z
            ifeq 20
        18: .line 1237
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            aload 3 /* model */
            invokeinterface javax.swing.BoundedRangeModel.getMaximum:()I
            aload 3 /* model */
            invokeinterface javax.swing.BoundedRangeModel.getExtent:()I
            isub
            invokevirtual javax.swing.JScrollBar.setValue:(I)V
        19: .line 1238
            goto 34
        20: .line 1239
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            aload 3 /* model */
            invokeinterface javax.swing.BoundedRangeModel.getMinimum:()I
            invokevirtual javax.swing.JScrollBar.setValue:(I)V
        21: .line 1241
            goto 34
        22: .line 1243
      StackMap locals:
      StackMap stack:
            aload 3 /* model */
            invokeinterface javax.swing.BoundedRangeModel.getMaximum:()I
            aload 3 /* model */
            invokeinterface javax.swing.BoundedRangeModel.getExtent:()I
            isub
            i2f
            fstore 8 /* valueMax */
        start local 8 // float valueMax
        23: .line 1244
            fload 8 /* valueMax */
            aload 3 /* model */
            invokeinterface javax.swing.BoundedRangeModel.getMinimum:()I
            i2f
            fsub
            fstore 9 /* valueRange */
        start local 9 // float valueRange
        24: .line 1245
            iload 7 /* thumbPos */
            iload 5 /* thumbMin */
            isub
            i2f
            fstore 10 /* thumbValue */
        start local 10 // float thumbValue
        25: .line 1246
            iload 6 /* thumbMax */
            iload 5 /* thumbMin */
            isub
            i2f
            fstore 11 /* thumbRange */
        start local 11 // float thumbRange
        26: .line 1248
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            invokevirtual javax.swing.JScrollBar.getOrientation:()I
            iconst_1
            if_icmpeq 28
        27: .line 1249
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            invokevirtual javax.swing.JScrollBar.getComponentOrientation:()Ljava/awt/ComponentOrientation;
            invokevirtual java.awt.ComponentOrientation.isLeftToRight:()Z
            ifeq 30
        28: .line 1250
      StackMap locals: javax.swing.plaf.basic.BasicScrollBarUI$TrackListener java.awt.event.MouseEvent int javax.swing.BoundedRangeModel java.awt.Rectangle int int int float float float float
      StackMap stack:
            ldc 0.5
            fload 10 /* thumbValue */
            fload 11 /* thumbRange */
            fdiv
            fload 9 /* valueRange */
            fmul
            f2d
            dadd
            d2i
            istore 12 /* value */
        start local 12 // int value
        29: .line 1251
            goto 31
        end local 12 // int value
        30: .line 1252
      StackMap locals:
      StackMap stack:
            ldc 0.5
            iload 6 /* thumbMax */
            iload 7 /* thumbPos */
            isub
            i2f
            fload 11 /* thumbRange */
            fdiv
            fload 9 /* valueRange */
            fmul
            f2d
            dadd
            d2i
            istore 12 /* value */
        start local 12 // int value
        31: .line 1255
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            iconst_1
            putfield javax.swing.plaf.basic.BasicScrollBarUI.useCachedValue:Z
        32: .line 1256
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            iload 12 /* value */
            aload 3 /* model */
            invokeinterface javax.swing.BoundedRangeModel.getMinimum:()I
            iadd
            putfield javax.swing.plaf.basic.BasicScrollBarUI.scrollBarValue:I
        33: .line 1257
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollBarValue:I
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.adjustValueIfNecessary:(I)I
            invokevirtual javax.swing.JScrollBar.setValue:(I)V
        end local 12 // int value
        end local 11 // float thumbRange
        end local 10 // float thumbValue
        end local 9 // float valueRange
        end local 8 // float valueMax
        34: .line 1259
      StackMap locals: javax.swing.plaf.basic.BasicScrollBarUI$TrackListener java.awt.event.MouseEvent int javax.swing.BoundedRangeModel java.awt.Rectangle int int int
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            iload 2 /* active */
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.setThumbRollover:(Z)V
        35: .line 1260
            return
        end local 7 // int thumbPos
        end local 6 // int thumbMax
        end local 5 // int thumbMin
        end local 4 // java.awt.Rectangle thumbR
        end local 3 // javax.swing.BoundedRangeModel model
        end local 2 // boolean active
        end local 1 // java.awt.event.MouseEvent e
        end local 0 // javax.swing.plaf.basic.BasicScrollBarUI$TrackListener this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   36     0        this  Ljavax/swing/plaf/basic/BasicScrollBarUI$TrackListener;
            0   36     1           e  Ljava/awt/event/MouseEvent;
            1   36     2      active  Z
            2   36     3       model  Ljavax/swing/BoundedRangeModel;
            3   36     4      thumbR  Ljava/awt/Rectangle;
            5   10     5    thumbMin  I
           11   36     5    thumbMin  I
            6   10     6    thumbMax  I
           12   36     6    thumbMax  I
            7   10     7    thumbPos  I
           13   36     7    thumbPos  I
           23   34     8    valueMax  F
           24   34     9  valueRange  F
           25   34    10  thumbValue  F
           26   34    11  thumbRange  F
           29   30    12       value  I
           31   34    12       value  I
    MethodParameters:
      Name  Flags
      e     

  private int adjustValueIfNecessary(int);
    descriptor: (I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=13, args_size=2
        start local 0 // javax.swing.plaf.basic.BasicScrollBarUI$TrackListener this
        start local 1 // int value
         0: .line 1263
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            invokevirtual javax.swing.JScrollBar.getParent:()Ljava/awt/Container;
            instanceof javax.swing.JScrollPane
            ifeq 34
         1: .line 1264
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            invokevirtual javax.swing.JScrollBar.getParent:()Ljava/awt/Container;
            checkcast javax.swing.JScrollPane
            astore 2 /* scrollpane */
        start local 2 // javax.swing.JScrollPane scrollpane
         2: .line 1265
            aload 2 /* scrollpane */
            invokevirtual javax.swing.JScrollPane.getViewport:()Ljavax/swing/JViewport;
            astore 3 /* viewport */
        start local 3 // javax.swing.JViewport viewport
         3: .line 1266
            aload 3 /* viewport */
            invokevirtual javax.swing.JViewport.getView:()Ljava/awt/Component;
            astore 4 /* view */
        start local 4 // java.awt.Component view
         4: .line 1267
            aload 4 /* view */
            instanceof javax.swing.JList
            ifeq 34
         5: .line 1268
            aload 4 /* view */
            checkcast javax.swing.JList
            astore 5 /* list */
        start local 5 // javax.swing.JList list
         6: .line 1269
            aload 5 /* list */
            aload 5 /* list */
            invokevirtual javax.swing.JList.getUI:()Ljavax/swing/plaf/ListUI;
         7: .line 1270
            ldc "List.lockToPositionOnScroll"
            iconst_0
         8: .line 1269
            invokestatic sun.swing.DefaultLookup.getBoolean:(Ljavax/swing/JComponent;Ljavax/swing/plaf/ComponentUI;Ljava/lang/String;Z)Z
         9: .line 1270
            ifeq 34
        10: .line 1271
            iload 1 /* value */
            istore 6 /* adjustedValue */
        start local 6 // int adjustedValue
        11: .line 1272
            aload 5 /* list */
            invokevirtual javax.swing.JList.getLayoutOrientation:()I
            istore 7 /* mode */
        start local 7 // int mode
        12: .line 1273
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            invokevirtual javax.swing.JScrollBar.getOrientation:()I
            istore 8 /* orientation */
        start local 8 // int orientation
        13: .line 1274
            iload 8 /* orientation */
            iconst_1
            if_icmpne 18
            iload 7 /* mode */
            ifne 18
        14: .line 1275
            aload 5 /* list */
            new java.awt.Point
            dup
            iconst_0
            iload 1 /* value */
            invokespecial java.awt.Point.<init>:(II)V
            invokevirtual javax.swing.JList.locationToIndex:(Ljava/awt/Point;)I
            istore 9 /* index */
        start local 9 // int index
        15: .line 1276
            aload 5 /* list */
            iload 9 /* index */
            iload 9 /* index */
            invokevirtual javax.swing.JList.getCellBounds:(II)Ljava/awt/Rectangle;
            astore 10 /* rect */
        start local 10 // java.awt.Rectangle rect
        16: .line 1277
            aload 10 /* rect */
            ifnull 18
        17: .line 1278
            aload 10 /* rect */
            getfield java.awt.Rectangle.y:I
            istore 6 /* adjustedValue */
        end local 10 // java.awt.Rectangle rect
        end local 9 // int index
        18: .line 1281
      StackMap locals: javax.swing.plaf.basic.BasicScrollBarUI$TrackListener int javax.swing.JScrollPane javax.swing.JViewport java.awt.Component javax.swing.JList int int int
      StackMap stack:
            iload 8 /* orientation */
            ifne 33
        19: .line 1282
            iload 7 /* mode */
            iconst_1
            if_icmpeq 20
            iload 7 /* mode */
            iconst_2
            if_icmpne 33
        20: .line 1283
      StackMap locals:
      StackMap stack:
            aload 2 /* scrollpane */
            invokevirtual javax.swing.JScrollPane.getComponentOrientation:()Ljava/awt/ComponentOrientation;
            invokevirtual java.awt.ComponentOrientation.isLeftToRight:()Z
            ifeq 26
        21: .line 1284
            aload 5 /* list */
            new java.awt.Point
            dup
            iload 1 /* value */
            iconst_0
            invokespecial java.awt.Point.<init>:(II)V
            invokevirtual javax.swing.JList.locationToIndex:(Ljava/awt/Point;)I
            istore 9 /* index */
        start local 9 // int index
        22: .line 1285
            aload 5 /* list */
            iload 9 /* index */
            iload 9 /* index */
            invokevirtual javax.swing.JList.getCellBounds:(II)Ljava/awt/Rectangle;
            astore 10 /* rect */
        start local 10 // java.awt.Rectangle rect
        23: .line 1286
            aload 10 /* rect */
            ifnull 33
        24: .line 1287
            aload 10 /* rect */
            getfield java.awt.Rectangle.x:I
            istore 6 /* adjustedValue */
        end local 10 // java.awt.Rectangle rect
        end local 9 // int index
        25: .line 1289
            goto 33
        26: .line 1291
      StackMap locals:
      StackMap stack:
            new java.awt.Point
            dup
            iload 1 /* value */
            iconst_0
            invokespecial java.awt.Point.<init>:(II)V
            astore 9 /* loc */
        start local 9 // java.awt.Point loc
        27: .line 1292
            aload 3 /* viewport */
            invokevirtual javax.swing.JViewport.getExtentSize:()Ljava/awt/Dimension;
            getfield java.awt.Dimension.width:I
            istore 10 /* extent */
        start local 10 // int extent
        28: .line 1293
            aload 9 /* loc */
            dup
            getfield java.awt.Point.x:I
            iload 10 /* extent */
            iconst_1
            isub
            iadd
            putfield java.awt.Point.x:I
        29: .line 1294
            aload 5 /* list */
            aload 9 /* loc */
            invokevirtual javax.swing.JList.locationToIndex:(Ljava/awt/Point;)I
            istore 11 /* index */
        start local 11 // int index
        30: .line 1295
            aload 5 /* list */
            iload 11 /* index */
            iload 11 /* index */
            invokevirtual javax.swing.JList.getCellBounds:(II)Ljava/awt/Rectangle;
            astore 12 /* rect */
        start local 12 // java.awt.Rectangle rect
        31: .line 1296
            aload 12 /* rect */
            ifnull 33
        32: .line 1297
            aload 12 /* rect */
            getfield java.awt.Rectangle.x:I
            aload 12 /* rect */
            getfield java.awt.Rectangle.width:I
            iadd
            iload 10 /* extent */
            isub
            istore 6 /* adjustedValue */
        end local 12 // java.awt.Rectangle rect
        end local 11 // int index
        end local 10 // int extent
        end local 9 // java.awt.Point loc
        33: .line 1301
      StackMap locals:
      StackMap stack:
            iload 6 /* adjustedValue */
            istore 1 /* value */
        end local 8 // int orientation
        end local 7 // int mode
        end local 6 // int adjustedValue
        end local 5 // javax.swing.JList list
        end local 4 // java.awt.Component view
        end local 3 // javax.swing.JViewport viewport
        end local 2 // javax.swing.JScrollPane scrollpane
        34: .line 1306
      StackMap locals: javax.swing.plaf.basic.BasicScrollBarUI$TrackListener int
      StackMap stack:
            iload 1 /* value */
            ireturn
        end local 1 // int value
        end local 0 // javax.swing.plaf.basic.BasicScrollBarUI$TrackListener this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   35     0           this  Ljavax/swing/plaf/basic/BasicScrollBarUI$TrackListener;
            0   35     1          value  I
            2   34     2     scrollpane  Ljavax/swing/JScrollPane;
            3   34     3       viewport  Ljavax/swing/JViewport;
            4   34     4           view  Ljava/awt/Component;
            6   34     5           list  Ljavax/swing/JList;
           11   34     6  adjustedValue  I
           12   34     7           mode  I
           13   34     8    orientation  I
           15   18     9          index  I
           16   18    10           rect  Ljava/awt/Rectangle;
           22   25     9          index  I
           23   25    10           rect  Ljava/awt/Rectangle;
           27   33     9            loc  Ljava/awt/Point;
           28   33    10         extent  I
           30   33    11          index  I
           31   33    12           rect  Ljava/awt/Rectangle;
    MethodParameters:
       Name  Flags
      value  

  private void startScrollTimerIfNecessary();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // javax.swing.plaf.basic.BasicScrollBarUI$TrackListener this
         0: .line 1310
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollTimer:Ljavax/swing/Timer;
            invokevirtual javax.swing.Timer.isRunning:()Z
            ifeq 2
         1: .line 1311
            return
         2: .line 1314
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.getThumbBounds:()Ljava/awt/Rectangle;
            astore 1 /* tb */
        start local 1 // java.awt.Rectangle tb
         3: .line 1316
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollbar:Ljavax/swing/JScrollBar;
            invokevirtual javax.swing.JScrollBar.getOrientation:()I
            tableswitch { // 0 - 1
                    0: 11
                    1: 4
              default: 14
          }
         4: .line 1318
      StackMap locals: java.awt.Rectangle
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.direction:I
            ifle 8
         5: .line 1319
            aload 1 /* tb */
            getfield java.awt.Rectangle.y:I
            aload 1 /* tb */
            getfield java.awt.Rectangle.height:I
            iadd
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.trackListener:Ljavax/swing/plaf/basic/BasicScrollBarUI$TrackListener;
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.currentMouseY:I
            if_icmpge 14
         6: .line 1320
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollTimer:Ljavax/swing/Timer;
            invokevirtual javax.swing.Timer.start:()V
         7: .line 1322
            goto 14
      StackMap locals:
      StackMap stack:
         8: aload 1 /* tb */
            getfield java.awt.Rectangle.y:I
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.trackListener:Ljavax/swing/plaf/basic/BasicScrollBarUI$TrackListener;
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.currentMouseY:I
            if_icmple 14
         9: .line 1323
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollTimer:Ljavax/swing/Timer;
            invokevirtual javax.swing.Timer.start:()V
        10: .line 1325
            goto 14
        11: .line 1327
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.direction:I
            ifle 12
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.isMouseAfterThumb:()Z
            ifne 13
        12: .line 1328
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.direction:I
            ifge 14
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.isMouseBeforeThumb:()Z
            ifeq 14
        13: .line 1330
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.scrollTimer:Ljavax/swing/Timer;
            invokevirtual javax.swing.Timer.start:()V
        14: .line 1334
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.awt.Rectangle tb
        end local 0 // javax.swing.plaf.basic.BasicScrollBarUI$TrackListener this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0  this  Ljavax/swing/plaf/basic/BasicScrollBarUI$TrackListener;
            3   15     1    tb  Ljava/awt/Rectangle;

  public void mouseMoved(java.awt.event.MouseEvent);
    descriptor: (Ljava/awt/event/MouseEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // javax.swing.plaf.basic.BasicScrollBarUI$TrackListener this
        start local 1 // java.awt.event.MouseEvent e
         0: .line 1337
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.isDragging:Z
            ifne 2
         1: .line 1338
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            aload 1 /* e */
            invokevirtual java.awt.event.MouseEvent.getX:()I
            aload 1 /* e */
            invokevirtual java.awt.event.MouseEvent.getY:()I
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.updateThumbState:(II)V
         2: .line 1340
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.awt.event.MouseEvent e
        end local 0 // javax.swing.plaf.basic.BasicScrollBarUI$TrackListener this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavax/swing/plaf/basic/BasicScrollBarUI$TrackListener;
            0    3     1     e  Ljava/awt/event/MouseEvent;
    MethodParameters:
      Name  Flags
      e     

  public void mouseExited(java.awt.event.MouseEvent);
    descriptor: (Ljava/awt/event/MouseEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.plaf.basic.BasicScrollBarUI$TrackListener this
        start local 1 // java.awt.event.MouseEvent e
         0: .line 1349
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            getfield javax.swing.plaf.basic.BasicScrollBarUI.isDragging:Z
            ifne 2
         1: .line 1350
            aload 0 /* this */
            getfield javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.this$0:Ljavax/swing/plaf/basic/BasicScrollBarUI;
            iconst_0
            invokevirtual javax.swing.plaf.basic.BasicScrollBarUI.setThumbRollover:(Z)V
         2: .line 1352
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.awt.event.MouseEvent e
        end local 0 // javax.swing.plaf.basic.BasicScrollBarUI$TrackListener this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavax/swing/plaf/basic/BasicScrollBarUI$TrackListener;
            0    3     1     e  Ljava/awt/event/MouseEvent;
    MethodParameters:
      Name  Flags
      e     
}
SourceFile: "BasicScrollBarUI.java"
NestHost: javax.swing.plaf.basic.BasicScrollBarUI
InnerClasses:
  protected ScrollListener = javax.swing.plaf.basic.BasicScrollBarUI$ScrollListener of javax.swing.plaf.basic.BasicScrollBarUI
  protected TrackListener = javax.swing.plaf.basic.BasicScrollBarUI$TrackListener of javax.swing.plaf.basic.BasicScrollBarUI