public class javax.swing.MenuSelectionManager
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: javax.swing.MenuSelectionManager
  super_class: java.lang.Object
{
  private java.util.Vector<javax.swing.MenuElement> selection;
    descriptor: Ljava/util/Vector;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Vector<Ljavax/swing/MenuElement;>;

  private static final boolean TRACE;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final boolean VERBOSE;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final boolean DEBUG;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final java.lang.Object MENU_SELECTION_MANAGER_KEY;
    descriptor: Ljava/lang/Object;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  protected transient javax.swing.event.ChangeEvent changeEvent;
    descriptor: Ljavax/swing/event/ChangeEvent;
    flags: (0x0084) ACC_PROTECTED, ACC_TRANSIENT

  protected javax.swing.event.EventListenerList listenerList;
    descriptor: Ljavax/swing/event/EventListenerList;
    flags: (0x0004) ACC_PROTECTED

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 47
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putstatic javax.swing.MenuSelectionManager.MENU_SELECTION_MANAGER_KEY:Ljava/lang/Object;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // javax.swing.MenuSelectionManager this
         0: .line 39
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 40
            aload 0 /* this */
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            putfield javax.swing.MenuSelectionManager.selection:Ljava/util/Vector;
         2: .line 73
            aload 0 /* this */
            aconst_null
            putfield javax.swing.MenuSelectionManager.changeEvent:Ljavax/swing/event/ChangeEvent;
         3: .line 74
            aload 0 /* this */
            new javax.swing.event.EventListenerList
            dup
            invokespecial javax.swing.event.EventListenerList.<init>:()V
            putfield javax.swing.MenuSelectionManager.listenerList:Ljavax/swing/event/EventListenerList;
         4: .line 39
            return
        end local 0 // javax.swing.MenuSelectionManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljavax/swing/MenuSelectionManager;

  public static javax.swing.MenuSelectionManager defaultManager();
    descriptor: ()Ljavax/swing/MenuSelectionManager;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=0
         0: .line 55
            getstatic javax.swing.MenuSelectionManager.MENU_SELECTION_MANAGER_KEY:Ljava/lang/Object;
            dup
            astore 0
            monitorenter
         1: .line 56
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 1 /* context */
        start local 1 // sun.awt.AppContext context
         2: .line 57
            aload 1 /* context */
         3: .line 58
            getstatic javax.swing.MenuSelectionManager.MENU_SELECTION_MANAGER_KEY:Ljava/lang/Object;
         4: .line 57
            invokevirtual sun.awt.AppContext.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.swing.MenuSelectionManager
            astore 2 /* msm */
        start local 2 // javax.swing.MenuSelectionManager msm
         5: .line 59
            aload 2 /* msm */
            ifnonnull 8
         6: .line 60
            new javax.swing.MenuSelectionManager
            dup
            invokespecial javax.swing.MenuSelectionManager.<init>:()V
            astore 2 /* msm */
         7: .line 61
            aload 1 /* context */
            getstatic javax.swing.MenuSelectionManager.MENU_SELECTION_MANAGER_KEY:Ljava/lang/Object;
            aload 2 /* msm */
            invokevirtual sun.awt.AppContext.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 64
      StackMap locals: java.lang.Object sun.awt.AppContext javax.swing.MenuSelectionManager
      StackMap stack:
            aload 2 /* msm */
            aload 0
            monitorexit
         9: areturn
        end local 2 // javax.swing.MenuSelectionManager msm
        end local 1 // sun.awt.AppContext context
        10: .line 55
      StackMap locals: java.lang.Object
      StackMap stack: java.lang.Throwable
            aload 0
            monitorexit
        11: athrow
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            2   10     1  context  Lsun/awt/AppContext;
            5   10     2      msm  Ljavax/swing/MenuSelectionManager;
      Exception table:
        from    to  target  type
           1     9      10  any
          10    11      10  any

  public void setSelectedPath(javax.swing.MenuElement[]);
    descriptor: ([Ljavax/swing/MenuElement;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // javax.swing.MenuSelectionManager this
        start local 1 // javax.swing.MenuElement[] path
         0: .line 89
            aload 0 /* this */
            getfield javax.swing.MenuSelectionManager.selection:Ljava/util/Vector;
            invokevirtual java.util.Vector.size:()I
            istore 4 /* currentSelectionCount */
        start local 4 // int currentSelectionCount
         1: .line 90
            iconst_0
            istore 5 /* firstDifference */
        start local 5 // int firstDifference
         2: .line 92
            aload 1 /* path */
            ifnonnull 4
         3: .line 93
            iconst_0
            anewarray javax.swing.MenuElement
            astore 1 /* path */
         4: .line 101
      StackMap locals: javax.swing.MenuSelectionManager javax.swing.MenuElement[] top top int int
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         5: aload 1 /* path */
            arraylength
            istore 3 /* c */
        start local 3 // int c
         6: goto 10
         7: .line 102
      StackMap locals: javax.swing.MenuSelectionManager javax.swing.MenuElement[] int int int int
      StackMap stack:
            iload 2 /* i */
            iload 4 /* currentSelectionCount */
            if_icmpge 11
            aload 0 /* this */
            getfield javax.swing.MenuSelectionManager.selection:Ljava/util/Vector;
            iload 2 /* i */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            aload 1 /* path */
            iload 2 /* i */
            aaload
            if_acmpne 11
         8: .line 103
            iinc 5 /* firstDifference */ 1
         9: .line 101
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 2 /* i */
            iload 3 /* c */
            if_icmplt 7
        11: .line 108
      StackMap locals:
      StackMap stack:
            iload 4 /* currentSelectionCount */
            iconst_1
            isub
            istore 2 /* i */
            goto 16
        12: .line 109
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.MenuSelectionManager.selection:Ljava/util/Vector;
            iload 2 /* i */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            checkcast javax.swing.MenuElement
            astore 6 /* me */
        start local 6 // javax.swing.MenuElement me
        13: .line 110
            aload 0 /* this */
            getfield javax.swing.MenuSelectionManager.selection:Ljava/util/Vector;
            iload 2 /* i */
            invokevirtual java.util.Vector.removeElementAt:(I)V
        14: .line 111
            aload 6 /* me */
            iconst_0
            invokeinterface javax.swing.MenuElement.menuSelectionChanged:(Z)V
        end local 6 // javax.swing.MenuElement me
        15: .line 108
            iinc 2 /* i */ -1
      StackMap locals:
      StackMap stack:
        16: iload 2 /* i */
            iload 5 /* firstDifference */
            if_icmpge 12
        17: .line 114
            iload 5 /* firstDifference */
            istore 2 /* i */
            aload 1 /* path */
            arraylength
            istore 3 /* c */
            goto 22
        18: .line 115
      StackMap locals:
      StackMap stack:
            aload 1 /* path */
            iload 2 /* i */
            aaload
            ifnull 21
        19: .line 116
            aload 0 /* this */
            getfield javax.swing.MenuSelectionManager.selection:Ljava/util/Vector;
            aload 1 /* path */
            iload 2 /* i */
            aaload
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
        20: .line 117
            aload 1 /* path */
            iload 2 /* i */
            aaload
            iconst_1
            invokeinterface javax.swing.MenuElement.menuSelectionChanged:(Z)V
        21: .line 114
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        22: iload 2 /* i */
            iload 3 /* c */
            if_icmplt 18
        23: .line 121
            aload 0 /* this */
            invokevirtual javax.swing.MenuSelectionManager.fireStateChanged:()V
        24: .line 122
            return
        end local 5 // int firstDifference
        end local 4 // int currentSelectionCount
        end local 3 // int c
        end local 2 // int i
        end local 1 // javax.swing.MenuElement[] path
        end local 0 // javax.swing.MenuSelectionManager this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   25     0                   this  Ljavax/swing/MenuSelectionManager;
            0   25     1                   path  [Ljavax/swing/MenuElement;
            5   25     2                      i  I
            6   25     3                      c  I
            1   25     4  currentSelectionCount  I
            2   25     5        firstDifference  I
           13   15     6                     me  Ljavax/swing/MenuElement;
    MethodParameters:
      Name  Flags
      path  

  public javax.swing.MenuElement[] getSelectedPath();
    descriptor: ()[Ljavax/swing/MenuElement;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // javax.swing.MenuSelectionManager this
         0: .line 130
            aload 0 /* this */
            getfield javax.swing.MenuSelectionManager.selection:Ljava/util/Vector;
            invokevirtual java.util.Vector.size:()I
            anewarray javax.swing.MenuElement
            astore 1 /* res */
        start local 1 // javax.swing.MenuElement[] res
         1: .line 132
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: aload 0 /* this */
            getfield javax.swing.MenuSelectionManager.selection:Ljava/util/Vector;
            invokevirtual java.util.Vector.size:()I
            istore 3 /* c */
        start local 3 // int c
         3: goto 6
         4: .line 133
      StackMap locals: javax.swing.MenuElement[] int int
      StackMap stack:
            aload 1 /* res */
            iload 2 /* i */
            aload 0 /* this */
            getfield javax.swing.MenuSelectionManager.selection:Ljava/util/Vector;
            iload 2 /* i */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            checkcast javax.swing.MenuElement
            aastore
         5: .line 132
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* i */
            iload 3 /* c */
            if_icmplt 4
         7: .line 134
            aload 1 /* res */
            areturn
        end local 3 // int c
        end local 2 // int i
        end local 1 // javax.swing.MenuElement[] res
        end local 0 // javax.swing.MenuSelectionManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljavax/swing/MenuSelectionManager;
            1    8     1   res  [Ljavax/swing/MenuElement;
            2    8     2     i  I
            3    8     3     c  I

  public void clearSelectedPath();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.swing.MenuSelectionManager this
         0: .line 142
            aload 0 /* this */
            getfield javax.swing.MenuSelectionManager.selection:Ljava/util/Vector;
            invokevirtual java.util.Vector.size:()I
            ifle 2
         1: .line 143
            aload 0 /* this */
            aconst_null
            invokevirtual javax.swing.MenuSelectionManager.setSelectedPath:([Ljavax/swing/MenuElement;)V
         2: .line 145
      StackMap locals:
      StackMap stack:
            return
        end local 0 // javax.swing.MenuSelectionManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavax/swing/MenuSelectionManager;

  public void addChangeListener(javax.swing.event.ChangeListener);
    descriptor: (Ljavax/swing/event/ChangeListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // javax.swing.MenuSelectionManager this
        start local 1 // javax.swing.event.ChangeListener l
         0: .line 153
            aload 0 /* this */
            getfield javax.swing.MenuSelectionManager.listenerList:Ljavax/swing/event/EventListenerList;
            ldc Ljavax/swing/event/ChangeListener;
            aload 1 /* l */
            invokevirtual javax.swing.event.EventListenerList.add:(Ljava/lang/Class;Ljava/util/EventListener;)V
         1: .line 154
            return
        end local 1 // javax.swing.event.ChangeListener l
        end local 0 // javax.swing.MenuSelectionManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/swing/MenuSelectionManager;
            0    2     1     l  Ljavax/swing/event/ChangeListener;
    MethodParameters:
      Name  Flags
      l     

  public void removeChangeListener(javax.swing.event.ChangeListener);
    descriptor: (Ljavax/swing/event/ChangeListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // javax.swing.MenuSelectionManager this
        start local 1 // javax.swing.event.ChangeListener l
         0: .line 162
            aload 0 /* this */
            getfield javax.swing.MenuSelectionManager.listenerList:Ljavax/swing/event/EventListenerList;
            ldc Ljavax/swing/event/ChangeListener;
            aload 1 /* l */
            invokevirtual javax.swing.event.EventListenerList.remove:(Ljava/lang/Class;Ljava/util/EventListener;)V
         1: .line 163
            return
        end local 1 // javax.swing.event.ChangeListener l
        end local 0 // javax.swing.MenuSelectionManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/swing/MenuSelectionManager;
            0    2     1     l  Ljavax/swing/event/ChangeListener;
    MethodParameters:
      Name  Flags
      l     

  public javax.swing.event.ChangeListener[] getChangeListeners();
    descriptor: ()[Ljavax/swing/event/ChangeListener;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.swing.MenuSelectionManager this
         0: .line 174
            aload 0 /* this */
            getfield javax.swing.MenuSelectionManager.listenerList:Ljavax/swing/event/EventListenerList;
            ldc Ljavax/swing/event/ChangeListener;
            invokevirtual javax.swing.event.EventListenerList.getListeners:(Ljava/lang/Class;)[Ljava/util/EventListener;
            checkcast javax.swing.event.ChangeListener[]
            areturn
        end local 0 // javax.swing.MenuSelectionManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/MenuSelectionManager;

  protected void fireStateChanged();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // javax.swing.MenuSelectionManager this
         0: .line 186
            aload 0 /* this */
            getfield javax.swing.MenuSelectionManager.listenerList:Ljavax/swing/event/EventListenerList;
            invokevirtual javax.swing.event.EventListenerList.getListenerList:()[Ljava/lang/Object;
            astore 1 /* listeners */
        start local 1 // java.lang.Object[] listeners
         1: .line 189
            aload 1 /* listeners */
            arraylength
            iconst_2
            isub
            istore 2 /* i */
        start local 2 // int i
         2: goto 8
         3: .line 190
      StackMap locals: java.lang.Object[] int
      StackMap stack:
            aload 1 /* listeners */
            iload 2 /* i */
            aaload
            ldc Ljavax/swing/event/ChangeListener;
            if_acmpne 7
         4: .line 192
            aload 0 /* this */
            getfield javax.swing.MenuSelectionManager.changeEvent:Ljavax/swing/event/ChangeEvent;
            ifnonnull 6
         5: .line 193
            aload 0 /* this */
            new javax.swing.event.ChangeEvent
            dup
            aload 0 /* this */
            invokespecial javax.swing.event.ChangeEvent.<init>:(Ljava/lang/Object;)V
            putfield javax.swing.MenuSelectionManager.changeEvent:Ljavax/swing/event/ChangeEvent;
         6: .line 194
      StackMap locals:
      StackMap stack:
            aload 1 /* listeners */
            iload 2 /* i */
            iconst_1
            iadd
            aaload
            checkcast javax.swing.event.ChangeListener
            aload 0 /* this */
            getfield javax.swing.MenuSelectionManager.changeEvent:Ljavax/swing/event/ChangeEvent;
            invokeinterface javax.swing.event.ChangeListener.stateChanged:(Ljavax/swing/event/ChangeEvent;)V
         7: .line 189
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ -2
      StackMap locals:
      StackMap stack:
         8: iload 2 /* i */
            ifge 3
        end local 2 // int i
         9: .line 197
            return
        end local 1 // java.lang.Object[] listeners
        end local 0 // javax.swing.MenuSelectionManager this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       this  Ljavax/swing/MenuSelectionManager;
            1   10     1  listeners  [Ljava/lang/Object;
            2    9     2          i  I

  public void processMouseEvent(java.awt.event.MouseEvent);
    descriptor: (Ljava/awt/event/MouseEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=14, locals=26, args_size=2
        start local 0 // javax.swing.MenuSelectionManager this
        start local 1 // java.awt.event.MouseEvent event
         0: .line 217
            aload 1 /* event */
            invokevirtual java.awt.event.MouseEvent.getPoint:()Ljava/awt/Point;
            astore 4 /* p */
        start local 4 // java.awt.Point p
         1: .line 219
            aload 1 /* event */
            invokevirtual java.awt.event.MouseEvent.getSource:()Ljava/lang/Object;
            checkcast java.awt.Component
            astore 17 /* source */
        start local 17 // java.awt.Component source
         2: .line 221
            aload 17 /* source */
            invokevirtual java.awt.Component.isShowing:()Z
            ifne 4
         3: .line 224
            return
         4: .line 227
      StackMap locals: javax.swing.MenuSelectionManager java.awt.event.MouseEvent top top java.awt.Point top top top top top top top top top top top top java.awt.Component
      StackMap stack:
            aload 1 /* event */
            invokevirtual java.awt.event.MouseEvent.getID:()I
            istore 18 /* type */
        start local 18 // int type
         5: .line 228
            aload 1 /* event */
            invokevirtual java.awt.event.MouseEvent.getModifiers:()I
            istore 19 /* modifiers */
        start local 19 // int modifiers
         6: .line 230
            iload 18 /* type */
            sipush 504
            if_icmpeq 8
         7: .line 231
            iload 18 /* type */
            sipush 505
            if_icmpne 10
         8: .line 232
      StackMap locals: int int
      StackMap stack:
            iload 19 /* modifiers */
            bipush 28
            iand
            ifeq 10
         9: .line 234
            return
        10: .line 237
      StackMap locals:
      StackMap stack:
            aload 4 /* p */
            aload 17 /* source */
            invokestatic javax.swing.SwingUtilities.convertPointToScreen:(Ljava/awt/Point;Ljava/awt/Component;)V
        11: .line 239
            aload 4 /* p */
            getfield java.awt.Point.x:I
            istore 2 /* screenX */
        start local 2 // int screenX
        12: .line 240
            aload 4 /* p */
            getfield java.awt.Point.y:I
            istore 3 /* screenY */
        start local 3 // int screenY
        13: .line 242
            aload 0 /* this */
            getfield javax.swing.MenuSelectionManager.selection:Ljava/util/Vector;
            invokevirtual java.util.Vector.clone:()Ljava/lang/Object;
            checkcast java.util.Vector
            astore 15 /* tmp */
        start local 15 // java.util.Vector tmp
        14: .line 243
            aload 15 /* tmp */
            invokevirtual java.util.Vector.size:()I
            istore 16 /* selectionSize */
        start local 16 // int selectionSize
        15: .line 244
            iconst_0
            istore 20 /* success */
        start local 20 // boolean success
        16: .line 245
            iload 16 /* selectionSize */
            iconst_1
            isub
            istore 5 /* i */
        start local 5 // int i
        17: goto 93
        18: .line 246
      StackMap locals: javax.swing.MenuSelectionManager java.awt.event.MouseEvent int int java.awt.Point int top top top top top top top top top java.util.Vector int java.awt.Component int int int
      StackMap stack:
            aload 15 /* tmp */
            iload 5 /* i */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            checkcast javax.swing.MenuElement
            astore 12 /* menuElement */
        start local 12 // javax.swing.MenuElement menuElement
        19: .line 247
            aload 12 /* menuElement */
            invokeinterface javax.swing.MenuElement.getSubElements:()[Ljavax/swing/MenuElement;
            astore 13 /* subElements */
        start local 13 // javax.swing.MenuElement[] subElements
        20: .line 249
            aconst_null
            astore 14 /* path */
        start local 14 // javax.swing.MenuElement[] path
        21: .line 250
            iconst_0
            istore 6 /* j */
        start local 6 // int j
        22: aload 13 /* subElements */
            arraylength
            istore 7 /* d */
        start local 7 // int d
        23: goto 91
        24: .line 251
      StackMap locals: javax.swing.MenuSelectionManager java.awt.event.MouseEvent int int java.awt.Point int int int top top top top javax.swing.MenuElement javax.swing.MenuElement[] javax.swing.MenuElement[] java.util.Vector int java.awt.Component int int int
      StackMap stack:
            aload 13 /* subElements */
            iload 6 /* j */
            aaload
            ifnonnull 26
        25: .line 252
            goto 90
        26: .line 253
      StackMap locals:
      StackMap stack:
            aload 13 /* subElements */
            iload 6 /* j */
            aaload
            invokeinterface javax.swing.MenuElement.getComponent:()Ljava/awt/Component;
            astore 8 /* mc */
        start local 8 // java.awt.Component mc
        27: .line 254
            aload 8 /* mc */
            invokevirtual java.awt.Component.isShowing:()Z
            ifne 29
        28: .line 255
            goto 90
        29: .line 256
      StackMap locals: javax.swing.MenuSelectionManager java.awt.event.MouseEvent int int java.awt.Point int int int java.awt.Component top top top javax.swing.MenuElement javax.swing.MenuElement[] javax.swing.MenuElement[] java.util.Vector int java.awt.Component int int int
      StackMap stack:
            aload 8 /* mc */
            instanceof javax.swing.JComponent
            ifeq 33
        30: .line 257
            aload 8 /* mc */
            invokevirtual java.awt.Component.getWidth:()I
            istore 10 /* cWidth */
        start local 10 // int cWidth
        31: .line 258
            aload 8 /* mc */
            invokevirtual java.awt.Component.getHeight:()I
            istore 11 /* cHeight */
        start local 11 // int cHeight
        32: .line 259
            goto 36
        end local 11 // int cHeight
        end local 10 // int cWidth
        33: .line 260
      StackMap locals:
      StackMap stack:
            aload 8 /* mc */
            invokevirtual java.awt.Component.getBounds:()Ljava/awt/Rectangle;
            astore 9 /* r2 */
        start local 9 // java.awt.Rectangle r2
        34: .line 261
            aload 9 /* r2 */
            getfield java.awt.Rectangle.width:I
            istore 10 /* cWidth */
        start local 10 // int cWidth
        35: .line 262
            aload 9 /* r2 */
            getfield java.awt.Rectangle.height:I
            istore 11 /* cHeight */
        end local 9 // java.awt.Rectangle r2
        start local 11 // int cHeight
        36: .line 264
      StackMap locals: javax.swing.MenuSelectionManager java.awt.event.MouseEvent int int java.awt.Point int int int java.awt.Component top int int javax.swing.MenuElement javax.swing.MenuElement[] javax.swing.MenuElement[] java.util.Vector int java.awt.Component int int int
      StackMap stack:
            aload 4 /* p */
            iload 2 /* screenX */
            putfield java.awt.Point.x:I
        37: .line 265
            aload 4 /* p */
            iload 3 /* screenY */
            putfield java.awt.Point.y:I
        38: .line 266
            aload 4 /* p */
            aload 8 /* mc */
            invokestatic javax.swing.SwingUtilities.convertPointFromScreen:(Ljava/awt/Point;Ljava/awt/Component;)V
        39: .line 272
            aload 4 /* p */
            getfield java.awt.Point.x:I
            iflt 90
            aload 4 /* p */
            getfield java.awt.Point.x:I
            iload 10 /* cWidth */
            if_icmpge 90
            aload 4 /* p */
            getfield java.awt.Point.y:I
            iflt 90
            aload 4 /* p */
            getfield java.awt.Point.y:I
            iload 11 /* cHeight */
            if_icmpge 90
        40: .line 274
            aload 14 /* path */
            ifnonnull 47
        41: .line 275
            iload 5 /* i */
            iconst_2
            iadd
            anewarray javax.swing.MenuElement
            astore 14 /* path */
        42: .line 276
            iconst_0
            istore 21 /* k */
        start local 21 // int k
        43: goto 46
        44: .line 277
      StackMap locals: int
      StackMap stack:
            aload 14 /* path */
            iload 21 /* k */
            aload 15 /* tmp */
            iload 21 /* k */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            checkcast javax.swing.MenuElement
            aastore
        45: .line 276
            iinc 21 /* k */ 1
      StackMap locals:
      StackMap stack:
        46: iload 21 /* k */
            iload 5 /* i */
            if_icmple 44
        end local 21 // int k
        47: .line 279
      StackMap locals:
      StackMap stack:
            aload 14 /* path */
            iload 5 /* i */
            iconst_1
            iadd
            aload 13 /* subElements */
            iload 6 /* j */
            aaload
            aastore
        48: .line 280
            aload 0 /* this */
            invokevirtual javax.swing.MenuSelectionManager.getSelectedPath:()[Ljavax/swing/MenuElement;
            astore 22 /* currentSelection */
        start local 22 // javax.swing.MenuElement[] currentSelection
        49: .line 283
            aload 22 /* currentSelection */
            aload 22 /* currentSelection */
            arraylength
            iconst_1
            isub
            aaload
        50: .line 284
            aload 14 /* path */
            iload 5 /* i */
            iconst_1
            iadd
            aaload
        51: .line 283
            if_acmpeq 79
        52: .line 285
            aload 22 /* currentSelection */
            arraylength
            iconst_2
            if_icmplt 56
        53: .line 286
            aload 22 /* currentSelection */
            aload 22 /* currentSelection */
            arraylength
            iconst_2
            isub
            aaload
        54: .line 287
            aload 14 /* path */
            iload 5 /* i */
            iconst_1
            iadd
            aaload
        55: .line 286
            if_acmpeq 79
        56: .line 288
      StackMap locals: javax.swing.MenuSelectionManager java.awt.event.MouseEvent int int java.awt.Point int int int java.awt.Component top int int javax.swing.MenuElement javax.swing.MenuElement[] javax.swing.MenuElement[] java.util.Vector int java.awt.Component int int int top javax.swing.MenuElement[]
      StackMap stack:
            aload 22 /* currentSelection */
            aload 22 /* currentSelection */
            arraylength
            iconst_1
            isub
            aaload
            invokeinterface javax.swing.MenuElement.getComponent:()Ljava/awt/Component;
            astore 23 /* oldMC */
        start local 23 // java.awt.Component oldMC
        57: .line 290
            new java.awt.event.MouseEvent
            dup
            aload 23 /* oldMC */
            sipush 505
        58: .line 291
            aload 1 /* event */
            invokevirtual java.awt.event.MouseEvent.getWhen:()J
        59: .line 292
            aload 1 /* event */
            invokevirtual java.awt.event.MouseEvent.getModifiers:()I
            aload 4 /* p */
            getfield java.awt.Point.x:I
            aload 4 /* p */
            getfield java.awt.Point.y:I
        60: .line 293
            aload 1 /* event */
            invokevirtual java.awt.event.MouseEvent.getXOnScreen:()I
        61: .line 294
            aload 1 /* event */
            invokevirtual java.awt.event.MouseEvent.getYOnScreen:()I
        62: .line 295
            aload 1 /* event */
            invokevirtual java.awt.event.MouseEvent.getClickCount:()I
        63: .line 296
            aload 1 /* event */
            invokevirtual java.awt.event.MouseEvent.isPopupTrigger:()Z
        64: .line 297
            iconst_0
        65: .line 290
            invokespecial java.awt.event.MouseEvent.<init>:(Ljava/awt/Component;IJIIIIIIZI)V
            astore 24 /* exitEvent */
        start local 24 // java.awt.event.MouseEvent exitEvent
        66: .line 298
            aload 22 /* currentSelection */
            aload 22 /* currentSelection */
            arraylength
            iconst_1
            isub
            aaload
        67: .line 299
            aload 24 /* exitEvent */
            aload 14 /* path */
            aload 0 /* this */
            invokeinterface javax.swing.MenuElement.processMouseEvent:(Ljava/awt/event/MouseEvent;[Ljavax/swing/MenuElement;Ljavax/swing/MenuSelectionManager;)V
        68: .line 301
            new java.awt.event.MouseEvent
            dup
            aload 8 /* mc */
        69: .line 302
            sipush 504
        70: .line 303
            aload 1 /* event */
            invokevirtual java.awt.event.MouseEvent.getWhen:()J
        71: .line 304
            aload 1 /* event */
            invokevirtual java.awt.event.MouseEvent.getModifiers:()I
            aload 4 /* p */
            getfield java.awt.Point.x:I
            aload 4 /* p */
            getfield java.awt.Point.y:I
        72: .line 305
            aload 1 /* event */
            invokevirtual java.awt.event.MouseEvent.getXOnScreen:()I
        73: .line 306
            aload 1 /* event */
            invokevirtual java.awt.event.MouseEvent.getYOnScreen:()I
        74: .line 307
            aload 1 /* event */
            invokevirtual java.awt.event.MouseEvent.getClickCount:()I
        75: .line 308
            aload 1 /* event */
            invokevirtual java.awt.event.MouseEvent.isPopupTrigger:()Z
        76: .line 309
            iconst_0
        77: .line 301
            invokespecial java.awt.event.MouseEvent.<init>:(Ljava/awt/Component;IJIIIIIIZI)V
            astore 25 /* enterEvent */
        start local 25 // java.awt.event.MouseEvent enterEvent
        78: .line 310
            aload 13 /* subElements */
            iload 6 /* j */
            aaload
            aload 25 /* enterEvent */
            aload 14 /* path */
            aload 0 /* this */
            invokeinterface javax.swing.MenuElement.processMouseEvent:(Ljava/awt/event/MouseEvent;[Ljavax/swing/MenuElement;Ljavax/swing/MenuSelectionManager;)V
        end local 25 // java.awt.event.MouseEvent enterEvent
        end local 24 // java.awt.event.MouseEvent exitEvent
        end local 23 // java.awt.Component oldMC
        79: .line 312
      StackMap locals:
      StackMap stack:
            new java.awt.event.MouseEvent
            dup
            aload 8 /* mc */
            aload 1 /* event */
            invokevirtual java.awt.event.MouseEvent.getID:()I
            aload 1 /* event */
            invokevirtual java.awt.event.MouseEvent.getWhen:()J
        80: .line 313
            aload 1 /* event */
            invokevirtual java.awt.event.MouseEvent.getModifiers:()I
            aload 4 /* p */
            getfield java.awt.Point.x:I
            aload 4 /* p */
            getfield java.awt.Point.y:I
        81: .line 314
            aload 1 /* event */
            invokevirtual java.awt.event.MouseEvent.getXOnScreen:()I
        82: .line 315
            aload 1 /* event */
            invokevirtual java.awt.event.MouseEvent.getYOnScreen:()I
        83: .line 316
            aload 1 /* event */
            invokevirtual java.awt.event.MouseEvent.getClickCount:()I
        84: .line 317
            aload 1 /* event */
            invokevirtual java.awt.event.MouseEvent.isPopupTrigger:()Z
        85: .line 318
            iconst_0
        86: .line 312
            invokespecial java.awt.event.MouseEvent.<init>:(Ljava/awt/Component;IJIIIIIIZI)V
            astore 23 /* mouseEvent */
        start local 23 // java.awt.event.MouseEvent mouseEvent
        87: .line 319
            aload 13 /* subElements */
            iload 6 /* j */
            aaload
            aload 23 /* mouseEvent */
            aload 14 /* path */
            aload 0 /* this */
            invokeinterface javax.swing.MenuElement.processMouseEvent:(Ljava/awt/event/MouseEvent;[Ljavax/swing/MenuElement;Ljavax/swing/MenuSelectionManager;)V
        88: .line 320
            iconst_1
            istore 20 /* success */
        89: .line 321
            aload 1 /* event */
            invokevirtual java.awt.event.MouseEvent.consume:()V
        end local 23 // java.awt.event.MouseEvent mouseEvent
        end local 22 // javax.swing.MenuElement[] currentSelection
        end local 11 // int cHeight
        end local 10 // int cWidth
        end local 8 // java.awt.Component mc
        90: .line 250
      StackMap locals: javax.swing.MenuSelectionManager java.awt.event.MouseEvent int int java.awt.Point int int int top top top top javax.swing.MenuElement javax.swing.MenuElement[] javax.swing.MenuElement[] java.util.Vector int java.awt.Component int int int
      StackMap stack:
            iinc 6 /* j */ 1
      StackMap locals:
      StackMap stack:
        91: iload 6 /* j */
            iload 7 /* d */
            if_icmpge 92
            iload 20 /* success */
            ifeq 24
        92: .line 245
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ -1
        end local 14 // javax.swing.MenuElement[] path
        end local 13 // javax.swing.MenuElement[] subElements
        end local 12 // javax.swing.MenuElement menuElement
        end local 7 // int d
        end local 6 // int j
      StackMap locals: javax.swing.MenuSelectionManager java.awt.event.MouseEvent int int java.awt.Point int top top top top top top top top top java.util.Vector int java.awt.Component int int int
      StackMap stack:
        93: iload 5 /* i */
            iflt 94
            iload 20 /* success */
            ifeq 18
        94: .line 325
      StackMap locals:
      StackMap stack:
            return
        end local 20 // boolean success
        end local 19 // int modifiers
        end local 18 // int type
        end local 17 // java.awt.Component source
        end local 16 // int selectionSize
        end local 15 // java.util.Vector tmp
        end local 5 // int i
        end local 4 // java.awt.Point p
        end local 3 // int screenY
        end local 2 // int screenX
        end local 1 // java.awt.event.MouseEvent event
        end local 0 // javax.swing.MenuSelectionManager this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   95     0              this  Ljavax/swing/MenuSelectionManager;
            0   95     1             event  Ljava/awt/event/MouseEvent;
           12   95     2           screenX  I
           13   95     3           screenY  I
            1   95     4                 p  Ljava/awt/Point;
           17   95     5                 i  I
           22   93     6                 j  I
           23   93     7                 d  I
           27   90     8                mc  Ljava/awt/Component;
           34   36     9                r2  Ljava/awt/Rectangle;
           31   33    10            cWidth  I
           35   90    10            cWidth  I
           32   33    11           cHeight  I
           36   90    11           cHeight  I
           19   93    12       menuElement  Ljavax/swing/MenuElement;
           20   93    13       subElements  [Ljavax/swing/MenuElement;
           21   93    14              path  [Ljavax/swing/MenuElement;
           14   95    15               tmp  Ljava/util/Vector;
           15   95    16     selectionSize  I
            2   95    17            source  Ljava/awt/Component;
            5   95    18              type  I
            6   95    19         modifiers  I
           16   95    20           success  Z
           43   47    21                 k  I
           49   90    22  currentSelection  [Ljavax/swing/MenuElement;
           57   79    23             oldMC  Ljava/awt/Component;
           66   79    24         exitEvent  Ljava/awt/event/MouseEvent;
           78   79    25        enterEvent  Ljava/awt/event/MouseEvent;
           87   90    23        mouseEvent  Ljava/awt/event/MouseEvent;
    MethodParameters:
       Name  Flags
      event  

  private void printMenuElementArray(javax.swing.MenuElement[]);
    descriptor: ([Ljavax/swing/MenuElement;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // javax.swing.MenuSelectionManager this
        start local 1 // javax.swing.MenuElement[] path
         0: .line 328
            aload 0 /* this */
            aload 1 /* path */
            iconst_0
            invokevirtual javax.swing.MenuSelectionManager.printMenuElementArray:([Ljavax/swing/MenuElement;Z)V
         1: .line 329
            return
        end local 1 // javax.swing.MenuElement[] path
        end local 0 // javax.swing.MenuSelectionManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/swing/MenuSelectionManager;
            0    2     1  path  [Ljavax/swing/MenuElement;
    MethodParameters:
      Name  Flags
      path  

  private void printMenuElementArray(javax.swing.MenuElement[], boolean);
    descriptor: ([Ljavax/swing/MenuElement;Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // javax.swing.MenuSelectionManager this
        start local 1 // javax.swing.MenuElement[] path
        start local 2 // boolean dumpStack
         0: .line 332
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "Path is("
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         1: .line 334
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: aload 1 /* path */
            arraylength
            istore 4 /* j */
        start local 4 // int j
         3: goto 24
         4: .line 335
      StackMap locals: int int
      StackMap stack:
            iconst_0
            istore 5 /* k */
        start local 5 // int k
         5: goto 8
         6: .line 336
      StackMap locals: int
      StackMap stack:
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "  "
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
         7: .line 335
            iinc 5 /* k */ 1
      StackMap locals:
      StackMap stack:
         8: iload 5 /* k */
            iload 3 /* i */
            if_icmple 6
        end local 5 // int k
         9: .line 337
            aload 1 /* path */
            iload 3 /* i */
            aaload
            astore 5 /* me */
        start local 5 // javax.swing.MenuElement me
        10: .line 338
            aload 5 /* me */
            instanceof javax.swing.JMenuItem
            ifeq 13
        11: .line 339
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            aload 5 /* me */
            checkcast javax.swing.JMenuItem
            invokevirtual javax.swing.JMenuItem.getText:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        12: .line 340
            goto 23
      StackMap locals: javax.swing.MenuSelectionManager javax.swing.MenuElement[] int int int javax.swing.MenuElement
      StackMap stack:
        13: aload 5 /* me */
            instanceof javax.swing.JMenuBar
            ifeq 16
        14: .line 341
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "JMenuBar, "
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        15: .line 342
            goto 23
      StackMap locals:
      StackMap stack:
        16: aload 5 /* me */
            instanceof javax.swing.JPopupMenu
            ifeq 19
        17: .line 343
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "JPopupMenu, "
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        18: .line 344
            goto 23
      StackMap locals:
      StackMap stack:
        19: aload 5 /* me */
            ifnonnull 22
        20: .line 345
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "NULL , "
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        21: .line 346
            goto 23
        22: .line 347
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 5 /* me */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        end local 5 // javax.swing.MenuElement me
        23: .line 334
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        24: iload 3 /* i */
            iload 4 /* j */
            if_icmplt 4
        25: .line 350
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc ")"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        26: .line 352
            iload 2 /* dumpStack */
            ifeq 28
        27: .line 353
            invokestatic java.lang.Thread.dumpStack:()V
        28: .line 354
      StackMap locals:
      StackMap stack:
            return
        end local 4 // int j
        end local 3 // int i
        end local 2 // boolean dumpStack
        end local 1 // javax.swing.MenuElement[] path
        end local 0 // javax.swing.MenuSelectionManager this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   29     0       this  Ljavax/swing/MenuSelectionManager;
            0   29     1       path  [Ljavax/swing/MenuElement;
            0   29     2  dumpStack  Z
            2   29     3          i  I
            3   29     4          j  I
            5    9     5          k  I
           10   23     5         me  Ljavax/swing/MenuElement;
    MethodParameters:
           Name  Flags
      path       
      dumpStack  

  public java.awt.Component componentForPoint(java.awt.Component, java.awt.Point);
    descriptor: (Ljava/awt/Component;Ljava/awt/Point;)Ljava/awt/Component;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=17, args_size=3
        start local 0 // javax.swing.MenuSelectionManager this
        start local 1 // java.awt.Component source
        start local 2 // java.awt.Point sourcePoint
         0: .line 370
            aload 2 /* sourcePoint */
            astore 5 /* p */
        start local 5 // java.awt.Point p
         1: .line 380
            aload 5 /* p */
            aload 1 /* source */
            invokestatic javax.swing.SwingUtilities.convertPointToScreen:(Ljava/awt/Point;Ljava/awt/Component;)V
         2: .line 382
            aload 5 /* p */
            getfield java.awt.Point.x:I
            istore 3 /* screenX */
        start local 3 // int screenX
         3: .line 383
            aload 5 /* p */
            getfield java.awt.Point.y:I
            istore 4 /* screenY */
        start local 4 // int screenY
         4: .line 385
            aload 0 /* this */
            getfield javax.swing.MenuSelectionManager.selection:Ljava/util/Vector;
            invokevirtual java.util.Vector.clone:()Ljava/lang/Object;
            checkcast java.util.Vector
            astore 15 /* tmp */
        start local 15 // java.util.Vector tmp
         5: .line 386
            aload 15 /* tmp */
            invokevirtual java.util.Vector.size:()I
            istore 16 /* selectionSize */
        start local 16 // int selectionSize
         6: .line 387
            iload 16 /* selectionSize */
            iconst_1
            isub
            istore 6 /* i */
        start local 6 // int i
         7: goto 33
         8: .line 388
      StackMap locals: javax.swing.MenuSelectionManager java.awt.Component java.awt.Point int int java.awt.Point int top top top top top top top top java.util.Vector int
      StackMap stack:
            aload 15 /* tmp */
            iload 6 /* i */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            checkcast javax.swing.MenuElement
            astore 13 /* menuElement */
        start local 13 // javax.swing.MenuElement menuElement
         9: .line 389
            aload 13 /* menuElement */
            invokeinterface javax.swing.MenuElement.getSubElements:()[Ljavax/swing/MenuElement;
            astore 14 /* subElements */
        start local 14 // javax.swing.MenuElement[] subElements
        10: .line 391
            iconst_0
            istore 7 /* j */
        start local 7 // int j
        11: aload 14 /* subElements */
            arraylength
            istore 8 /* d */
        start local 8 // int d
        12: goto 31
        13: .line 392
      StackMap locals: javax.swing.MenuSelectionManager java.awt.Component java.awt.Point int int java.awt.Point int int int top top top top javax.swing.MenuElement javax.swing.MenuElement[] java.util.Vector int
      StackMap stack:
            aload 14 /* subElements */
            iload 7 /* j */
            aaload
            ifnonnull 15
        14: .line 393
            goto 30
        15: .line 394
      StackMap locals:
      StackMap stack:
            aload 14 /* subElements */
            iload 7 /* j */
            aaload
            invokeinterface javax.swing.MenuElement.getComponent:()Ljava/awt/Component;
            astore 9 /* mc */
        start local 9 // java.awt.Component mc
        16: .line 395
            aload 9 /* mc */
            invokevirtual java.awt.Component.isShowing:()Z
            ifne 18
        17: .line 396
            goto 30
        18: .line 397
      StackMap locals: javax.swing.MenuSelectionManager java.awt.Component java.awt.Point int int java.awt.Point int int int java.awt.Component top top top javax.swing.MenuElement javax.swing.MenuElement[] java.util.Vector int
      StackMap stack:
            aload 9 /* mc */
            instanceof javax.swing.JComponent
            ifeq 22
        19: .line 398
            aload 9 /* mc */
            invokevirtual java.awt.Component.getWidth:()I
            istore 11 /* cWidth */
        start local 11 // int cWidth
        20: .line 399
            aload 9 /* mc */
            invokevirtual java.awt.Component.getHeight:()I
            istore 12 /* cHeight */
        start local 12 // int cHeight
        21: .line 400
            goto 25
        end local 12 // int cHeight
        end local 11 // int cWidth
        22: .line 401
      StackMap locals:
      StackMap stack:
            aload 9 /* mc */
            invokevirtual java.awt.Component.getBounds:()Ljava/awt/Rectangle;
            astore 10 /* r2 */
        start local 10 // java.awt.Rectangle r2
        23: .line 402
            aload 10 /* r2 */
            getfield java.awt.Rectangle.width:I
            istore 11 /* cWidth */
        start local 11 // int cWidth
        24: .line 403
            aload 10 /* r2 */
            getfield java.awt.Rectangle.height:I
            istore 12 /* cHeight */
        end local 10 // java.awt.Rectangle r2
        start local 12 // int cHeight
        25: .line 405
      StackMap locals: javax.swing.MenuSelectionManager java.awt.Component java.awt.Point int int java.awt.Point int int int java.awt.Component top int int javax.swing.MenuElement javax.swing.MenuElement[] java.util.Vector int
      StackMap stack:
            aload 5 /* p */
            iload 3 /* screenX */
            putfield java.awt.Point.x:I
        26: .line 406
            aload 5 /* p */
            iload 4 /* screenY */
            putfield java.awt.Point.y:I
        27: .line 407
            aload 5 /* p */
            aload 9 /* mc */
            invokestatic javax.swing.SwingUtilities.convertPointFromScreen:(Ljava/awt/Point;Ljava/awt/Component;)V
        28: .line 412
            aload 5 /* p */
            getfield java.awt.Point.x:I
            iflt 30
            aload 5 /* p */
            getfield java.awt.Point.x:I
            iload 11 /* cWidth */
            if_icmpge 30
            aload 5 /* p */
            getfield java.awt.Point.y:I
            iflt 30
            aload 5 /* p */
            getfield java.awt.Point.y:I
            iload 12 /* cHeight */
            if_icmpge 30
        29: .line 413
            aload 9 /* mc */
            areturn
        end local 12 // int cHeight
        end local 11 // int cWidth
        end local 9 // java.awt.Component mc
        30: .line 391
      StackMap locals: javax.swing.MenuSelectionManager java.awt.Component java.awt.Point int int java.awt.Point int int int top top top top javax.swing.MenuElement javax.swing.MenuElement[] java.util.Vector int
      StackMap stack:
            iinc 7 /* j */ 1
      StackMap locals:
      StackMap stack:
        31: iload 7 /* j */
            iload 8 /* d */
            if_icmplt 13
        32: .line 387
            iinc 6 /* i */ -1
        end local 14 // javax.swing.MenuElement[] subElements
        end local 13 // javax.swing.MenuElement menuElement
        end local 8 // int d
        end local 7 // int j
      StackMap locals: javax.swing.MenuSelectionManager java.awt.Component java.awt.Point int int java.awt.Point int top top top top top top top top java.util.Vector int
      StackMap stack:
        33: iload 6 /* i */
            ifge 8
        34: .line 417
            aconst_null
            areturn
        end local 16 // int selectionSize
        end local 15 // java.util.Vector tmp
        end local 6 // int i
        end local 5 // java.awt.Point p
        end local 4 // int screenY
        end local 3 // int screenX
        end local 2 // java.awt.Point sourcePoint
        end local 1 // java.awt.Component source
        end local 0 // javax.swing.MenuSelectionManager this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   35     0           this  Ljavax/swing/MenuSelectionManager;
            0   35     1         source  Ljava/awt/Component;
            0   35     2    sourcePoint  Ljava/awt/Point;
            3   35     3        screenX  I
            4   35     4        screenY  I
            1   35     5              p  Ljava/awt/Point;
            7   35     6              i  I
           11   33     7              j  I
           12   33     8              d  I
           16   30     9             mc  Ljava/awt/Component;
           23   25    10             r2  Ljava/awt/Rectangle;
           20   22    11         cWidth  I
           24   30    11         cWidth  I
           21   22    12        cHeight  I
           25   30    12        cHeight  I
            9   33    13    menuElement  Ljavax/swing/MenuElement;
           10   33    14    subElements  [Ljavax/swing/MenuElement;
            5   35    15            tmp  Ljava/util/Vector;
            6   35    16  selectionSize  I
    MethodParameters:
             Name  Flags
      source       
      sourcePoint  

  public void processKeyEvent(java.awt.event.KeyEvent);
    descriptor: (Ljava/awt/event/KeyEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=9, args_size=2
        start local 0 // javax.swing.MenuSelectionManager this
        start local 1 // java.awt.event.KeyEvent e
         0: .line 427
            iconst_0
            anewarray javax.swing.MenuElement
            astore 2 /* sel2 */
        start local 2 // javax.swing.MenuElement[] sel2
         1: .line 428
            aload 0 /* this */
            getfield javax.swing.MenuSelectionManager.selection:Ljava/util/Vector;
            aload 2 /* sel2 */
            invokevirtual java.util.Vector.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast javax.swing.MenuElement[]
            astore 2 /* sel2 */
         2: .line 429
            aload 2 /* sel2 */
            arraylength
            istore 3 /* selSize */
        start local 3 // int selSize
         3: .line 432
            iload 3 /* selSize */
            iconst_1
            if_icmpge 5
         4: .line 433
            return
         5: .line 436
      StackMap locals: javax.swing.MenuElement[] int
      StackMap stack:
            iload 3 /* selSize */
            iconst_1
            isub
            istore 5 /* i */
        start local 5 // int i
         6: goto 25
         7: .line 437
      StackMap locals: javax.swing.MenuSelectionManager java.awt.event.KeyEvent javax.swing.MenuElement[] int top int
      StackMap stack:
            aload 2 /* sel2 */
            iload 5 /* i */
            aaload
            astore 6 /* elem */
        start local 6 // javax.swing.MenuElement elem
         8: .line 438
            aload 6 /* elem */
            invokeinterface javax.swing.MenuElement.getSubElements:()[Ljavax/swing/MenuElement;
            astore 7 /* subs */
        start local 7 // javax.swing.MenuElement[] subs
         9: .line 439
            aconst_null
            astore 4 /* path */
        start local 4 // javax.swing.MenuElement[] path
        10: .line 441
            iconst_0
            istore 8 /* j */
        start local 8 // int j
        11: goto 23
        12: .line 442
      StackMap locals: javax.swing.MenuSelectionManager java.awt.event.KeyEvent javax.swing.MenuElement[] int javax.swing.MenuElement[] int javax.swing.MenuElement javax.swing.MenuElement[] int
      StackMap stack:
            aload 7 /* subs */
            iload 8 /* j */
            aaload
            ifnull 22
            aload 7 /* subs */
            iload 8 /* j */
            aaload
            invokeinterface javax.swing.MenuElement.getComponent:()Ljava/awt/Component;
            invokevirtual java.awt.Component.isShowing:()Z
            ifeq 22
        13: .line 443
            aload 7 /* subs */
            iload 8 /* j */
            aaload
            invokeinterface javax.swing.MenuElement.getComponent:()Ljava/awt/Component;
            invokevirtual java.awt.Component.isEnabled:()Z
            ifne 15
        14: .line 444
            goto 22
        15: .line 447
      StackMap locals:
      StackMap stack:
            aload 4 /* path */
            ifnonnull 18
        16: .line 448
            iload 5 /* i */
            iconst_2
            iadd
            anewarray javax.swing.MenuElement
            astore 4 /* path */
        17: .line 449
            aload 2 /* sel2 */
            iconst_0
            aload 4 /* path */
            iconst_0
            iload 5 /* i */
            iconst_1
            iadd
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        18: .line 451
      StackMap locals:
      StackMap stack:
            aload 4 /* path */
            iload 5 /* i */
            iconst_1
            iadd
            aload 7 /* subs */
            iload 8 /* j */
            aaload
            aastore
        19: .line 452
            aload 7 /* subs */
            iload 8 /* j */
            aaload
            aload 1 /* e */
            aload 4 /* path */
            aload 0 /* this */
            invokeinterface javax.swing.MenuElement.processKeyEvent:(Ljava/awt/event/KeyEvent;[Ljavax/swing/MenuElement;Ljavax/swing/MenuSelectionManager;)V
        20: .line 453
            aload 1 /* e */
            invokevirtual java.awt.event.KeyEvent.isConsumed:()Z
            ifeq 22
        21: .line 454
            return
        22: .line 441
      StackMap locals:
      StackMap stack:
            iinc 8 /* j */ 1
      StackMap locals:
      StackMap stack:
        23: iload 8 /* j */
            aload 7 /* subs */
            arraylength
            if_icmplt 12
        end local 8 // int j
        end local 7 // javax.swing.MenuElement[] subs
        end local 6 // javax.swing.MenuElement elem
        24: .line 436
            iinc 5 /* i */ -1
        end local 4 // javax.swing.MenuElement[] path
      StackMap locals: javax.swing.MenuSelectionManager java.awt.event.KeyEvent javax.swing.MenuElement[] int top int
      StackMap stack:
        25: iload 5 /* i */
            ifge 7
        end local 5 // int i
        26: .line 460
            iconst_1
            anewarray javax.swing.MenuElement
            astore 4 /* path */
        start local 4 // javax.swing.MenuElement[] path
        27: .line 461
            aload 4 /* path */
            iconst_0
            aload 2 /* sel2 */
            iconst_0
            aaload
            aastore
        28: .line 462
            aload 4 /* path */
            iconst_0
            aaload
            aload 1 /* e */
            aload 4 /* path */
            aload 0 /* this */
            invokeinterface javax.swing.MenuElement.processKeyEvent:(Ljava/awt/event/KeyEvent;[Ljavax/swing/MenuElement;Ljavax/swing/MenuSelectionManager;)V
        29: .line 463
            aload 1 /* e */
            invokevirtual java.awt.event.KeyEvent.isConsumed:()Z
            ifeq 31
        30: .line 464
            return
        31: .line 466
      StackMap locals: javax.swing.MenuSelectionManager java.awt.event.KeyEvent javax.swing.MenuElement[] int javax.swing.MenuElement[]
      StackMap stack:
            return
        end local 4 // javax.swing.MenuElement[] path
        end local 3 // int selSize
        end local 2 // javax.swing.MenuElement[] sel2
        end local 1 // java.awt.event.KeyEvent e
        end local 0 // javax.swing.MenuSelectionManager this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   32     0     this  Ljavax/swing/MenuSelectionManager;
            0   32     1        e  Ljava/awt/event/KeyEvent;
            1   32     2     sel2  [Ljavax/swing/MenuElement;
            3   32     3  selSize  I
           10   25     4     path  [Ljavax/swing/MenuElement;
           27   32     4     path  [Ljavax/swing/MenuElement;
            6   26     5        i  I
            8   24     6     elem  Ljavax/swing/MenuElement;
            9   24     7     subs  [Ljavax/swing/MenuElement;
           11   24     8        j  I
    MethodParameters:
      Name  Flags
      e     

  public boolean isComponentPartOfCurrentMenu(java.awt.Component);
    descriptor: (Ljava/awt/Component;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // javax.swing.MenuSelectionManager this
        start local 1 // java.awt.Component c
         0: .line 472
            aload 0 /* this */
            getfield javax.swing.MenuSelectionManager.selection:Ljava/util/Vector;
            invokevirtual java.util.Vector.size:()I
            ifle 3
         1: .line 473
            aload 0 /* this */
            getfield javax.swing.MenuSelectionManager.selection:Ljava/util/Vector;
            iconst_0
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            checkcast javax.swing.MenuElement
            astore 2 /* me */
        start local 2 // javax.swing.MenuElement me
         2: .line 474
            aload 0 /* this */
            aload 2 /* me */
            aload 1 /* c */
            invokevirtual javax.swing.MenuSelectionManager.isComponentPartOfCurrentMenu:(Ljavax/swing/MenuElement;Ljava/awt/Component;)Z
            ireturn
        end local 2 // javax.swing.MenuElement me
         3: .line 476
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.awt.Component c
        end local 0 // javax.swing.MenuSelectionManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljavax/swing/MenuSelectionManager;
            0    4     1     c  Ljava/awt/Component;
            2    3     2    me  Ljavax/swing/MenuElement;
    MethodParameters:
      Name  Flags
      c     

  private boolean isComponentPartOfCurrentMenu(javax.swing.MenuElement, java.awt.Component);
    descriptor: (Ljavax/swing/MenuElement;Ljava/awt/Component;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // javax.swing.MenuSelectionManager this
        start local 1 // javax.swing.MenuElement root
        start local 2 // java.awt.Component c
         0: .line 483
            aload 1 /* root */
            ifnonnull 2
         1: .line 484
            iconst_0
            ireturn
         2: .line 486
      StackMap locals:
      StackMap stack:
            aload 1 /* root */
            invokeinterface javax.swing.MenuElement.getComponent:()Ljava/awt/Component;
            aload 2 /* c */
            if_acmpne 4
         3: .line 487
            iconst_1
            ireturn
         4: .line 489
      StackMap locals:
      StackMap stack:
            aload 1 /* root */
            invokeinterface javax.swing.MenuElement.getSubElements:()[Ljavax/swing/MenuElement;
            astore 3 /* children */
        start local 3 // javax.swing.MenuElement[] children
         5: .line 490
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         6: aload 3 /* children */
            arraylength
            istore 5 /* d */
        start local 5 // int d
         7: goto 11
         8: .line 491
      StackMap locals: javax.swing.MenuElement[] int int
      StackMap stack:
            aload 0 /* this */
            aload 3 /* children */
            iload 4 /* i */
            aaload
            aload 2 /* c */
            invokevirtual javax.swing.MenuSelectionManager.isComponentPartOfCurrentMenu:(Ljavax/swing/MenuElement;Ljava/awt/Component;)Z
            ifeq 10
         9: .line 492
            iconst_1
            ireturn
        10: .line 490
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 4 /* i */
            iload 5 /* d */
            if_icmplt 8
        12: .line 495
            iconst_0
            ireturn
        end local 5 // int d
        end local 4 // int i
        end local 3 // javax.swing.MenuElement[] children
        end local 2 // java.awt.Component c
        end local 1 // javax.swing.MenuElement root
        end local 0 // javax.swing.MenuSelectionManager this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   13     0      this  Ljavax/swing/MenuSelectionManager;
            0   13     1      root  Ljavax/swing/MenuElement;
            0   13     2         c  Ljava/awt/Component;
            5   13     3  children  [Ljavax/swing/MenuElement;
            6   13     4         i  I
            7   13     5         d  I
    MethodParameters:
      Name  Flags
      root  
      c     
}
SourceFile: "MenuSelectionManager.java"