class javax.swing.KeyboardManager
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: javax.swing.KeyboardManager
  super_class: java.lang.Object
{
  static javax.swing.KeyboardManager currentManager;
    descriptor: Ljavax/swing/KeyboardManager;
    flags: (0x0008) ACC_STATIC

  java.util.Hashtable<java.awt.Container, java.util.Hashtable> containerMap;
    descriptor: Ljava/util/Hashtable;
    flags: (0x0000) 
    Signature: Ljava/util/Hashtable<Ljava/awt/Container;Ljava/util/Hashtable;>;

  java.util.Hashtable<javax.swing.KeyboardManager$ComponentKeyStrokePair, java.awt.Container> componentKeyStrokeMap;
    descriptor: Ljava/util/Hashtable;
    flags: (0x0000) 
    Signature: Ljava/util/Hashtable<Ljavax/swing/KeyboardManager$ComponentKeyStrokePair;Ljava/awt/Container;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 67
            new javax.swing.KeyboardManager
            dup
            invokespecial javax.swing.KeyboardManager.<init>:()V
            putstatic javax.swing.KeyboardManager.currentManager:Ljavax/swing/KeyboardManager;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // javax.swing.KeyboardManager this
         0: .line 65
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 72
            aload 0 /* this */
            new java.util.Hashtable
            dup
            invokespecial java.util.Hashtable.<init>:()V
            putfield javax.swing.KeyboardManager.containerMap:Ljava/util/Hashtable;
         2: .line 78
            aload 0 /* this */
            new java.util.Hashtable
            dup
            invokespecial java.util.Hashtable.<init>:()V
            putfield javax.swing.KeyboardManager.componentKeyStrokeMap:Ljava/util/Hashtable;
         3: .line 65
            return
        end local 0 // javax.swing.KeyboardManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljavax/swing/KeyboardManager;

  public static javax.swing.KeyboardManager getCurrentManager();
    descriptor: ()Ljavax/swing/KeyboardManager;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 81
            getstatic javax.swing.KeyboardManager.currentManager:Ljavax/swing/KeyboardManager;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static void setCurrentManager(javax.swing.KeyboardManager);
    descriptor: (Ljavax/swing/KeyboardManager;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.KeyboardManager km
         0: .line 85
            aload 0 /* km */
            putstatic javax.swing.KeyboardManager.currentManager:Ljavax/swing/KeyboardManager;
         1: .line 86
            return
        end local 0 // javax.swing.KeyboardManager km
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0    km  Ljavax/swing/KeyboardManager;
    MethodParameters:
      Name  Flags
      km    

  public void registerKeyStroke(javax.swing.KeyStroke, javax.swing.JComponent);
    descriptor: (Ljavax/swing/KeyStroke;Ljavax/swing/JComponent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=7, args_size=3
        start local 0 // javax.swing.KeyboardManager this
        start local 1 // javax.swing.KeyStroke k
        start local 2 // javax.swing.JComponent c
         0: .line 95
            aload 2 /* c */
            invokestatic javax.swing.KeyboardManager.getTopAncestor:(Ljavax/swing/JComponent;)Ljava/awt/Container;
            astore 3 /* topContainer */
        start local 3 // java.awt.Container topContainer
         1: .line 96
            aload 3 /* topContainer */
            ifnonnull 3
         2: .line 97
            return
         3: .line 99
      StackMap locals: java.awt.Container
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.KeyboardManager.containerMap:Ljava/util/Hashtable;
            aload 3 /* topContainer */
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Hashtable
            astore 4 /* keyMap */
        start local 4 // java.util.Hashtable keyMap
         4: .line 101
            aload 4 /* keyMap */
            ifnonnull 6
         5: .line 102
            aload 0 /* this */
            aload 3 /* topContainer */
            invokevirtual javax.swing.KeyboardManager.registerNewTopContainer:(Ljava/awt/Container;)Ljava/util/Hashtable;
            astore 4 /* keyMap */
         6: .line 105
      StackMap locals: java.util.Hashtable
      StackMap stack:
            aload 4 /* keyMap */
            aload 1 /* k */
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 5 /* tmp */
        start local 5 // java.lang.Object tmp
         7: .line 106
            aload 5 /* tmp */
            ifnonnull 10
         8: .line 107
            aload 4 /* keyMap */
            aload 1 /* k */
            aload 2 /* c */
            invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         9: .line 108
            goto 24
      StackMap locals: java.lang.Object
      StackMap stack:
        10: aload 5 /* tmp */
            instanceof java.util.Vector
            ifeq 15
        11: .line 109
            aload 5 /* tmp */
            checkcast java.util.Vector
            astore 6 /* v */
        start local 6 // java.util.Vector v
        12: .line 110
            aload 6 /* v */
            aload 2 /* c */
            invokevirtual java.util.Vector.contains:(Ljava/lang/Object;)Z
            ifne 24
        13: .line 111
            aload 6 /* v */
            aload 2 /* c */
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
        end local 6 // java.util.Vector v
        14: .line 113
            goto 24
      StackMap locals:
      StackMap stack:
        15: aload 5 /* tmp */
            instanceof javax.swing.JComponent
            ifeq 22
        16: .line 117
            aload 5 /* tmp */
            aload 2 /* c */
            if_acmpeq 24
        17: .line 118
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            astore 6 /* v */
        start local 6 // java.util.Vector v
        18: .line 119
            aload 6 /* v */
            aload 5 /* tmp */
            checkcast javax.swing.JComponent
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
        19: .line 120
            aload 6 /* v */
            aload 2 /* c */
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
        20: .line 121
            aload 4 /* keyMap */
            aload 1 /* k */
            aload 6 /* v */
            invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 6 // java.util.Vector v
        21: .line 123
            goto 24
        22: .line 124
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "Unexpected condition in registerKeyStroke"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        23: .line 125
            invokestatic java.lang.Thread.dumpStack:()V
        24: .line 128
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.KeyboardManager.componentKeyStrokeMap:Ljava/util/Hashtable;
            new javax.swing.KeyboardManager$ComponentKeyStrokePair
            dup
            aload 0 /* this */
            aload 2 /* c */
            aload 1 /* k */
            invokespecial javax.swing.KeyboardManager$ComponentKeyStrokePair.<init>:(Ljavax/swing/KeyboardManager;Ljava/lang/Object;Ljava/lang/Object;)V
            aload 3 /* topContainer */
            invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        25: .line 132
            aload 3 /* topContainer */
            instanceof sun.awt.EmbeddedFrame
            ifeq 27
        26: .line 133
            aload 3 /* topContainer */
            checkcast sun.awt.EmbeddedFrame
            aload 1 /* k */
            invokevirtual sun.awt.EmbeddedFrame.registerAccelerator:(Ljava/awt/AWTKeyStroke;)V
        27: .line 135
      StackMap locals:
      StackMap stack:
            return
        end local 5 // java.lang.Object tmp
        end local 4 // java.util.Hashtable keyMap
        end local 3 // java.awt.Container topContainer
        end local 2 // javax.swing.JComponent c
        end local 1 // javax.swing.KeyStroke k
        end local 0 // javax.swing.KeyboardManager this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   28     0          this  Ljavax/swing/KeyboardManager;
            0   28     1             k  Ljavax/swing/KeyStroke;
            0   28     2             c  Ljavax/swing/JComponent;
            1   28     3  topContainer  Ljava/awt/Container;
            4   28     4        keyMap  Ljava/util/Hashtable;
            7   28     5           tmp  Ljava/lang/Object;
           12   14     6             v  Ljava/util/Vector;
           18   21     6             v  Ljava/util/Vector<Ljavax/swing/JComponent;>;
    MethodParameters:
      Name  Flags
      k     
      c     

  private static java.awt.Container getTopAncestor(javax.swing.JComponent);
    descriptor: (Ljavax/swing/JComponent;)Ljava/awt/Container;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // javax.swing.JComponent c
         0: .line 141
            aload 0 /* c */
            invokevirtual javax.swing.JComponent.getParent:()Ljava/awt/Container;
            astore 1 /* p */
        start local 1 // java.awt.Container p
         1: goto 6
         2: .line 142
      StackMap locals: java.awt.Container
      StackMap stack:
            aload 1 /* p */
            instanceof java.awt.Window
            ifeq 3
            aload 1 /* p */
            checkcast java.awt.Window
            invokevirtual java.awt.Window.isFocusableWindow:()Z
            ifne 4
         3: .line 143
      StackMap locals:
      StackMap stack:
            aload 1 /* p */
            instanceof java.applet.Applet
            ifne 4
            aload 1 /* p */
            instanceof javax.swing.JInternalFrame
            ifeq 5
         4: .line 145
      StackMap locals:
      StackMap stack:
            aload 1 /* p */
            areturn
         5: .line 141
      StackMap locals:
      StackMap stack:
            aload 1 /* p */
            invokevirtual java.awt.Container.getParent:()Ljava/awt/Container;
            astore 1 /* p */
      StackMap locals:
      StackMap stack:
         6: aload 1 /* p */
            ifnonnull 2
        end local 1 // java.awt.Container p
         7: .line 148
            aconst_null
            areturn
        end local 0 // javax.swing.JComponent c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0     c  Ljavax/swing/JComponent;
            1    7     1     p  Ljava/awt/Container;
    MethodParameters:
      Name  Flags
      c     

  public void unregisterKeyStroke(javax.swing.KeyStroke, javax.swing.JComponent);
    descriptor: (Ljavax/swing/KeyStroke;Ljavax/swing/JComponent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=3
        start local 0 // javax.swing.KeyboardManager this
        start local 1 // javax.swing.KeyStroke ks
        start local 2 // javax.swing.JComponent c
         0: .line 156
            new javax.swing.KeyboardManager$ComponentKeyStrokePair
            dup
            aload 0 /* this */
            aload 2 /* c */
            aload 1 /* ks */
            invokespecial javax.swing.KeyboardManager$ComponentKeyStrokePair.<init>:(Ljavax/swing/KeyboardManager;Ljava/lang/Object;Ljava/lang/Object;)V
            astore 3 /* ckp */
        start local 3 // javax.swing.KeyboardManager$ComponentKeyStrokePair ckp
         1: .line 158
            aload 0 /* this */
            getfield javax.swing.KeyboardManager.componentKeyStrokeMap:Ljava/util/Hashtable;
            aload 3 /* ckp */
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.awt.Container
            astore 4 /* topContainer */
        start local 4 // java.awt.Container topContainer
         2: .line 160
            aload 4 /* topContainer */
            ifnonnull 4
         3: .line 161
            return
         4: .line 164
      StackMap locals: javax.swing.KeyboardManager$ComponentKeyStrokePair java.awt.Container
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.KeyboardManager.containerMap:Ljava/util/Hashtable;
            aload 4 /* topContainer */
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Hashtable
            astore 5 /* keyMap */
        start local 5 // java.util.Hashtable keyMap
         5: .line 165
            aload 5 /* keyMap */
            ifnonnull 8
         6: .line 166
            invokestatic java.lang.Thread.dumpStack:()V
         7: .line 167
            return
         8: .line 170
      StackMap locals: java.util.Hashtable
      StackMap stack:
            aload 5 /* keyMap */
            aload 1 /* ks */
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 6 /* tmp */
        start local 6 // java.lang.Object tmp
         9: .line 171
            aload 6 /* tmp */
            ifnonnull 12
        10: .line 172
            invokestatic java.lang.Thread.dumpStack:()V
        11: .line 173
            return
        12: .line 176
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 6 /* tmp */
            instanceof javax.swing.JComponent
            ifeq 15
            aload 6 /* tmp */
            aload 2 /* c */
            if_acmpne 15
        13: .line 177
            aload 5 /* keyMap */
            aload 1 /* ks */
            invokevirtual java.util.Hashtable.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        14: .line 179
            goto 20
      StackMap locals:
      StackMap stack:
        15: aload 6 /* tmp */
            instanceof java.util.Vector
            ifeq 20
        16: .line 180
            aload 6 /* tmp */
            checkcast java.util.Vector
            astore 7 /* v */
        start local 7 // java.util.Vector v
        17: .line 181
            aload 7 /* v */
            aload 2 /* c */
            invokevirtual java.util.Vector.removeElement:(Ljava/lang/Object;)Z
            pop
        18: .line 182
            aload 7 /* v */
            invokevirtual java.util.Vector.isEmpty:()Z
            ifeq 20
        19: .line 183
            aload 5 /* keyMap */
            aload 1 /* ks */
            invokevirtual java.util.Hashtable.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 7 // java.util.Vector v
        20: .line 188
      StackMap locals:
      StackMap stack:
            aload 5 /* keyMap */
            invokevirtual java.util.Hashtable.isEmpty:()Z
            ifeq 22
        21: .line 189
            aload 0 /* this */
            getfield javax.swing.KeyboardManager.containerMap:Ljava/util/Hashtable;
            aload 4 /* topContainer */
            invokevirtual java.util.Hashtable.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        22: .line 193
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.KeyboardManager.componentKeyStrokeMap:Ljava/util/Hashtable;
            aload 3 /* ckp */
            invokevirtual java.util.Hashtable.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        23: .line 197
            aload 4 /* topContainer */
            instanceof sun.awt.EmbeddedFrame
            ifeq 25
        24: .line 198
            aload 4 /* topContainer */
            checkcast sun.awt.EmbeddedFrame
            aload 1 /* ks */
            invokevirtual sun.awt.EmbeddedFrame.unregisterAccelerator:(Ljava/awt/AWTKeyStroke;)V
        25: .line 200
      StackMap locals:
      StackMap stack:
            return
        end local 6 // java.lang.Object tmp
        end local 5 // java.util.Hashtable keyMap
        end local 4 // java.awt.Container topContainer
        end local 3 // javax.swing.KeyboardManager$ComponentKeyStrokePair ckp
        end local 2 // javax.swing.JComponent c
        end local 1 // javax.swing.KeyStroke ks
        end local 0 // javax.swing.KeyboardManager this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   26     0          this  Ljavax/swing/KeyboardManager;
            0   26     1            ks  Ljavax/swing/KeyStroke;
            0   26     2             c  Ljavax/swing/JComponent;
            1   26     3           ckp  Ljavax/swing/KeyboardManager$ComponentKeyStrokePair;
            2   26     4  topContainer  Ljava/awt/Container;
            5   26     5        keyMap  Ljava/util/Hashtable;
            9   26     6           tmp  Ljava/lang/Object;
           17   20     7             v  Ljava/util/Vector;
    MethodParameters:
      Name  Flags
      ks    
      c     

  public boolean fireKeyboardAction(java.awt.event.KeyEvent, boolean, java.awt.Container);
    descriptor: (Ljava/awt/event/KeyEvent;ZLjava/awt/Container;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=11, args_size=4
        start local 0 // javax.swing.KeyboardManager this
        start local 1 // java.awt.event.KeyEvent e
        start local 2 // boolean pressed
        start local 3 // java.awt.Container topAncestor
         0: .line 211
            aload 1 /* e */
            invokevirtual java.awt.event.KeyEvent.isConsumed:()Z
            ifeq 3
         1: .line 212
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "Aquired pre-used event!"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         2: .line 213
            invokestatic java.lang.Thread.dumpStack:()V
         3: .line 219
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 5 /* ksE */
        start local 5 // javax.swing.KeyStroke ksE
         4: .line 222
            aload 1 /* e */
            invokevirtual java.awt.event.KeyEvent.getID:()I
            sipush 400
            if_icmpne 7
         5: .line 223
            aload 1 /* e */
            invokevirtual java.awt.event.KeyEvent.getKeyChar:()C
            invokestatic javax.swing.KeyStroke.getKeyStroke:(C)Ljavax/swing/KeyStroke;
            astore 4 /* ks */
        start local 4 // javax.swing.KeyStroke ks
         6: .line 224
            goto 15
        end local 4 // javax.swing.KeyStroke ks
         7: .line 225
      StackMap locals: javax.swing.KeyboardManager java.awt.event.KeyEvent int java.awt.Container top javax.swing.KeyStroke
      StackMap stack:
            invokestatic sun.awt.AWTAccessor.getKeyEventAccessor:()Lsun/awt/AWTAccessor$KeyEventAccessor;
            aload 1 /* e */
            invokeinterface sun.awt.AWTAccessor$KeyEventAccessor.getExtendedKeyCode:(Ljava/awt/event/KeyEvent;)I
            istore 6 /* ekc */
        start local 6 // int ekc
         8: .line 226
            aload 1 /* e */
            invokevirtual java.awt.event.KeyEvent.getKeyCode:()I
            iload 6 /* ekc */
            if_icmpeq 12
         9: .line 227
            iload 6 /* ekc */
            aload 1 /* e */
            invokevirtual java.awt.event.KeyEvent.getModifiers:()I
            iload 2 /* pressed */
            ifeq 10
            iconst_0
            goto 11
      StackMap locals: javax.swing.KeyboardManager java.awt.event.KeyEvent int java.awt.Container top javax.swing.KeyStroke int
      StackMap stack: int int
        10: iconst_1
      StackMap locals: javax.swing.KeyboardManager java.awt.event.KeyEvent int java.awt.Container top javax.swing.KeyStroke int
      StackMap stack: int int int
        11: invokestatic javax.swing.KeyStroke.getKeyStroke:(IIZ)Ljavax/swing/KeyStroke;
            astore 5 /* ksE */
        12: .line 229
      StackMap locals:
      StackMap stack:
            aload 1 /* e */
            invokevirtual java.awt.event.KeyEvent.getKeyCode:()I
            aload 1 /* e */
            invokevirtual java.awt.event.KeyEvent.getModifiers:()I
            iload 2 /* pressed */
            ifeq 13
            iconst_0
            goto 14
      StackMap locals: javax.swing.KeyboardManager java.awt.event.KeyEvent int java.awt.Container top javax.swing.KeyStroke int
      StackMap stack: int int
        13: iconst_1
      StackMap locals: javax.swing.KeyboardManager java.awt.event.KeyEvent int java.awt.Container top javax.swing.KeyStroke int
      StackMap stack: int int int
        14: invokestatic javax.swing.KeyStroke.getKeyStroke:(IIZ)Ljavax/swing/KeyStroke;
            astore 4 /* ks */
        end local 6 // int ekc
        start local 4 // javax.swing.KeyStroke ks
        15: .line 232
      StackMap locals: javax.swing.KeyboardManager java.awt.event.KeyEvent int java.awt.Container javax.swing.KeyStroke javax.swing.KeyStroke
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.KeyboardManager.containerMap:Ljava/util/Hashtable;
            aload 3 /* topAncestor */
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Hashtable
            astore 6 /* keyMap */
        start local 6 // java.util.Hashtable keyMap
        16: .line 233
            aload 6 /* keyMap */
            ifnull 44
        17: .line 235
            aconst_null
            astore 7 /* tmp */
        start local 7 // java.lang.Object tmp
        18: .line 237
            aload 5 /* ksE */
            ifnull 22
        19: .line 238
            aload 6 /* keyMap */
            aload 5 /* ksE */
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 7 /* tmp */
        20: .line 239
            aload 7 /* tmp */
            ifnull 22
        21: .line 240
            aload 5 /* ksE */
            astore 4 /* ks */
        22: .line 243
      StackMap locals: java.util.Hashtable java.lang.Object
      StackMap stack:
            aload 7 /* tmp */
            ifnonnull 24
        23: .line 244
            aload 6 /* keyMap */
            aload 4 /* ks */
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 7 /* tmp */
        24: .line 247
      StackMap locals:
      StackMap stack:
            aload 7 /* tmp */
            ifnull 44
        25: .line 249
            aload 7 /* tmp */
            instanceof javax.swing.JComponent
            ifeq 30
        26: .line 250
            aload 7 /* tmp */
            checkcast javax.swing.JComponent
            astore 8 /* c */
        start local 8 // javax.swing.JComponent c
        27: .line 251
            aload 8 /* c */
            invokevirtual javax.swing.JComponent.isShowing:()Z
            ifeq 44
            aload 8 /* c */
            invokevirtual javax.swing.JComponent.isEnabled:()Z
            ifeq 44
        28: .line 252
            aload 0 /* this */
            aload 8 /* c */
            aload 4 /* ks */
            aload 1 /* e */
            iload 2 /* pressed */
            invokevirtual javax.swing.KeyboardManager.fireBinding:(Ljavax/swing/JComponent;Ljavax/swing/KeyStroke;Ljava/awt/event/KeyEvent;Z)V
        end local 8 // javax.swing.JComponent c
        29: .line 254
            goto 44
      StackMap locals:
      StackMap stack:
        30: aload 7 /* tmp */
            instanceof java.util.Vector
            ifeq 42
        31: .line 255
            aload 7 /* tmp */
            checkcast java.util.Vector
            astore 8 /* v */
        start local 8 // java.util.Vector v
        32: .line 261
            aload 8 /* v */
            invokevirtual java.util.Vector.size:()I
            iconst_1
            isub
            istore 9 /* counter */
        start local 9 // int counter
        33: goto 40
        34: .line 262
      StackMap locals: java.util.Vector int
      StackMap stack:
            aload 8 /* v */
            iload 9 /* counter */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            checkcast javax.swing.JComponent
            astore 10 /* c */
        start local 10 // javax.swing.JComponent c
        35: .line 264
            aload 10 /* c */
            invokevirtual javax.swing.JComponent.isShowing:()Z
            ifeq 39
            aload 10 /* c */
            invokevirtual javax.swing.JComponent.isEnabled:()Z
            ifeq 39
        36: .line 265
            aload 0 /* this */
            aload 10 /* c */
            aload 4 /* ks */
            aload 1 /* e */
            iload 2 /* pressed */
            invokevirtual javax.swing.KeyboardManager.fireBinding:(Ljavax/swing/JComponent;Ljavax/swing/KeyStroke;Ljava/awt/event/KeyEvent;Z)V
        37: .line 266
            aload 1 /* e */
            invokevirtual java.awt.event.KeyEvent.isConsumed:()Z
            ifeq 39
        38: .line 267
            iconst_1
            ireturn
        end local 10 // javax.swing.JComponent c
        39: .line 261
      StackMap locals:
      StackMap stack:
            iinc 9 /* counter */ -1
      StackMap locals:
      StackMap stack:
        40: iload 9 /* counter */
            ifge 34
        end local 9 // int counter
        end local 8 // java.util.Vector v
        41: .line 270
            goto 44
        42: .line 271
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Unexpected condition in fireKeyboardAction "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 7 /* tmp */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        43: .line 273
            invokestatic java.lang.Thread.dumpStack:()V
        end local 7 // java.lang.Object tmp
        44: .line 277
      StackMap locals:
      StackMap stack:
            aload 1 /* e */
            invokevirtual java.awt.event.KeyEvent.isConsumed:()Z
            ifeq 46
        45: .line 278
            iconst_1
            ireturn
        46: .line 283
      StackMap locals:
      StackMap stack:
            aload 6 /* keyMap */
            ifnull 60
        47: .line 284
            aload 6 /* keyMap */
            ldc Ljavax/swing/JMenuBar;
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Vector
            astore 7 /* v */
        start local 7 // java.util.Vector v
        48: .line 285
            aload 7 /* v */
            ifnull 60
        49: .line 286
            aload 7 /* v */
            invokevirtual java.util.Vector.elements:()Ljava/util/Enumeration;
            astore 8 /* iter */
        start local 8 // java.util.Enumeration iter
        50: .line 287
            goto 59
        51: .line 288
      StackMap locals: java.util.Vector java.util.Enumeration
      StackMap stack:
            aload 8 /* iter */
            invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
            checkcast javax.swing.JMenuBar
            astore 9 /* mb */
        start local 9 // javax.swing.JMenuBar mb
        52: .line 289
            aload 9 /* mb */
            invokevirtual javax.swing.JMenuBar.isShowing:()Z
            ifeq 59
            aload 9 /* mb */
            invokevirtual javax.swing.JMenuBar.isEnabled:()Z
            ifeq 59
        53: .line 290
            aload 4 /* ks */
            aload 5 /* ksE */
            invokevirtual javax.swing.KeyStroke.equals:(Ljava/lang/Object;)Z
            ifne 55
        54: .line 291
            aload 0 /* this */
            aload 9 /* mb */
            aload 5 /* ksE */
            aload 1 /* e */
            iload 2 /* pressed */
            invokevirtual javax.swing.KeyboardManager.fireBinding:(Ljavax/swing/JComponent;Ljavax/swing/KeyStroke;Ljava/awt/event/KeyEvent;Z)V
        55: .line 293
      StackMap locals: javax.swing.JMenuBar
      StackMap stack:
            aload 4 /* ks */
            aload 5 /* ksE */
            invokevirtual javax.swing.KeyStroke.equals:(Ljava/lang/Object;)Z
            ifne 56
            aload 1 /* e */
            invokevirtual java.awt.event.KeyEvent.isConsumed:()Z
            ifne 57
        56: .line 294
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 9 /* mb */
            aload 4 /* ks */
            aload 1 /* e */
            iload 2 /* pressed */
            invokevirtual javax.swing.KeyboardManager.fireBinding:(Ljavax/swing/JComponent;Ljavax/swing/KeyStroke;Ljava/awt/event/KeyEvent;Z)V
        57: .line 296
      StackMap locals:
      StackMap stack:
            aload 1 /* e */
            invokevirtual java.awt.event.KeyEvent.isConsumed:()Z
            ifeq 59
        58: .line 297
            iconst_1
            ireturn
        end local 9 // javax.swing.JMenuBar mb
        59: .line 287
      StackMap locals:
      StackMap stack:
            aload 8 /* iter */
            invokeinterface java.util.Enumeration.hasMoreElements:()Z
            ifne 51
        end local 8 // java.util.Enumeration iter
        end local 7 // java.util.Vector v
        60: .line 304
      StackMap locals:
      StackMap stack:
            aload 1 /* e */
            invokevirtual java.awt.event.KeyEvent.isConsumed:()Z
            ireturn
        end local 6 // java.util.Hashtable keyMap
        end local 5 // javax.swing.KeyStroke ksE
        end local 4 // javax.swing.KeyStroke ks
        end local 3 // java.awt.Container topAncestor
        end local 2 // boolean pressed
        end local 1 // java.awt.event.KeyEvent e
        end local 0 // javax.swing.KeyboardManager this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   61     0         this  Ljavax/swing/KeyboardManager;
            0   61     1            e  Ljava/awt/event/KeyEvent;
            0   61     2      pressed  Z
            0   61     3  topAncestor  Ljava/awt/Container;
            6    7     4           ks  Ljavax/swing/KeyStroke;
           15   61     4           ks  Ljavax/swing/KeyStroke;
            4   61     5          ksE  Ljavax/swing/KeyStroke;
            8   15     6          ekc  I
           16   61     6       keyMap  Ljava/util/Hashtable;
           18   44     7          tmp  Ljava/lang/Object;
           27   29     8            c  Ljavax/swing/JComponent;
           32   41     8            v  Ljava/util/Vector;
           33   41     9      counter  I
           35   39    10            c  Ljavax/swing/JComponent;
           48   60     7            v  Ljava/util/Vector;
           50   60     8         iter  Ljava/util/Enumeration;
           52   59     9           mb  Ljavax/swing/JMenuBar;
    MethodParameters:
             Name  Flags
      e            
      pressed      
      topAncestor  

  void fireBinding(javax.swing.JComponent, javax.swing.KeyStroke, java.awt.event.KeyEvent, boolean);
    descriptor: (Ljavax/swing/JComponent;Ljavax/swing/KeyStroke;Ljava/awt/event/KeyEvent;Z)V
    flags: (0x0000) 
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // javax.swing.KeyboardManager this
        start local 1 // javax.swing.JComponent c
        start local 2 // javax.swing.KeyStroke ks
        start local 3 // java.awt.event.KeyEvent e
        start local 4 // boolean pressed
         0: .line 308
            aload 1 /* c */
            aload 2 /* ks */
            aload 3 /* e */
            iconst_2
         1: .line 309
            iload 4 /* pressed */
         2: .line 308
            invokevirtual javax.swing.JComponent.processKeyBinding:(Ljavax/swing/KeyStroke;Ljava/awt/event/KeyEvent;IZ)Z
         3: .line 309
            ifeq 5
         4: .line 310
            aload 3 /* e */
            invokevirtual java.awt.event.KeyEvent.consume:()V
         5: .line 312
      StackMap locals:
      StackMap stack:
            return
        end local 4 // boolean pressed
        end local 3 // java.awt.event.KeyEvent e
        end local 2 // javax.swing.KeyStroke ks
        end local 1 // javax.swing.JComponent c
        end local 0 // javax.swing.KeyboardManager this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Ljavax/swing/KeyboardManager;
            0    6     1        c  Ljavax/swing/JComponent;
            0    6     2       ks  Ljavax/swing/KeyStroke;
            0    6     3        e  Ljava/awt/event/KeyEvent;
            0    6     4  pressed  Z
    MethodParameters:
         Name  Flags
      c        
      ks       
      e        
      pressed  

  public void registerMenuBar(javax.swing.JMenuBar);
    descriptor: (Ljavax/swing/JMenuBar;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // javax.swing.KeyboardManager this
        start local 1 // javax.swing.JMenuBar mb
         0: .line 315
            aload 1 /* mb */
            invokestatic javax.swing.KeyboardManager.getTopAncestor:(Ljavax/swing/JComponent;)Ljava/awt/Container;
            astore 2 /* top */
        start local 2 // java.awt.Container top
         1: .line 316
            aload 2 /* top */
            ifnonnull 3
         2: .line 317
            return
         3: .line 319
      StackMap locals: java.awt.Container
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.KeyboardManager.containerMap:Ljava/util/Hashtable;
            aload 2 /* top */
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Hashtable
            astore 3 /* keyMap */
        start local 3 // java.util.Hashtable keyMap
         4: .line 321
            aload 3 /* keyMap */
            ifnonnull 6
         5: .line 322
            aload 0 /* this */
            aload 2 /* top */
            invokevirtual javax.swing.KeyboardManager.registerNewTopContainer:(Ljava/awt/Container;)Ljava/util/Hashtable;
            astore 3 /* keyMap */
         6: .line 325
      StackMap locals: java.util.Hashtable
      StackMap stack:
            aload 3 /* keyMap */
            ldc Ljavax/swing/JMenuBar;
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Vector
            astore 4 /* menuBars */
        start local 4 // java.util.Vector menuBars
         7: .line 327
            aload 4 /* menuBars */
            ifnonnull 10
         8: .line 329
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            astore 4 /* menuBars */
         9: .line 330
            aload 3 /* keyMap */
            ldc Ljavax/swing/JMenuBar;
            aload 4 /* menuBars */
            invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 333
      StackMap locals: java.util.Vector
      StackMap stack:
            aload 4 /* menuBars */
            aload 1 /* mb */
            invokevirtual java.util.Vector.contains:(Ljava/lang/Object;)Z
            ifne 12
        11: .line 334
            aload 4 /* menuBars */
            aload 1 /* mb */
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
        12: .line 336
      StackMap locals:
      StackMap stack:
            return
        end local 4 // java.util.Vector menuBars
        end local 3 // java.util.Hashtable keyMap
        end local 2 // java.awt.Container top
        end local 1 // javax.swing.JMenuBar mb
        end local 0 // javax.swing.KeyboardManager this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   13     0      this  Ljavax/swing/KeyboardManager;
            0   13     1        mb  Ljavax/swing/JMenuBar;
            1   13     2       top  Ljava/awt/Container;
            4   13     3    keyMap  Ljava/util/Hashtable;
            7   13     4  menuBars  Ljava/util/Vector;
    MethodParameters:
      Name  Flags
      mb    

  public void unregisterMenuBar(javax.swing.JMenuBar);
    descriptor: (Ljavax/swing/JMenuBar;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // javax.swing.KeyboardManager this
        start local 1 // javax.swing.JMenuBar mb
         0: .line 340
            aload 1 /* mb */
            invokestatic javax.swing.KeyboardManager.getTopAncestor:(Ljavax/swing/JComponent;)Ljava/awt/Container;
            astore 2 /* topContainer */
        start local 2 // java.awt.Container topContainer
         1: .line 341
            aload 2 /* topContainer */
            ifnonnull 3
         2: .line 342
            return
         3: .line 344
      StackMap locals: java.awt.Container
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.KeyboardManager.containerMap:Ljava/util/Hashtable;
            aload 2 /* topContainer */
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Hashtable
            astore 3 /* keyMap */
        start local 3 // java.util.Hashtable keyMap
         4: .line 345
            aload 3 /* keyMap */
            ifnull 12
         5: .line 346
            aload 3 /* keyMap */
            ldc Ljavax/swing/JMenuBar;
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Vector
            astore 4 /* v */
        start local 4 // java.util.Vector v
         6: .line 347
            aload 4 /* v */
            ifnull 12
         7: .line 348
            aload 4 /* v */
            aload 1 /* mb */
            invokevirtual java.util.Vector.removeElement:(Ljava/lang/Object;)Z
            pop
         8: .line 349
            aload 4 /* v */
            invokevirtual java.util.Vector.isEmpty:()Z
            ifeq 12
         9: .line 350
            aload 3 /* keyMap */
            ldc Ljavax/swing/JMenuBar;
            invokevirtual java.util.Hashtable.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 351
            aload 3 /* keyMap */
            invokevirtual java.util.Hashtable.isEmpty:()Z
            ifeq 12
        11: .line 353
            aload 0 /* this */
            getfield javax.swing.KeyboardManager.containerMap:Ljava/util/Hashtable;
            aload 2 /* topContainer */
            invokevirtual java.util.Hashtable.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 4 // java.util.Vector v
        12: .line 358
      StackMap locals: java.util.Hashtable
      StackMap stack:
            return
        end local 3 // java.util.Hashtable keyMap
        end local 2 // java.awt.Container topContainer
        end local 1 // javax.swing.JMenuBar mb
        end local 0 // javax.swing.KeyboardManager this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   13     0          this  Ljavax/swing/KeyboardManager;
            0   13     1            mb  Ljavax/swing/JMenuBar;
            1   13     2  topContainer  Ljava/awt/Container;
            4   13     3        keyMap  Ljava/util/Hashtable;
            6   12     4             v  Ljava/util/Vector;
    MethodParameters:
      Name  Flags
      mb    

  protected java.util.Hashtable registerNewTopContainer(java.awt.Container);
    descriptor: (Ljava/awt/Container;)Ljava/util/Hashtable;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // javax.swing.KeyboardManager this
        start local 1 // java.awt.Container topContainer
         0: .line 360
            new java.util.Hashtable
            dup
            invokespecial java.util.Hashtable.<init>:()V
            astore 2 /* keyMap */
        start local 2 // java.util.Hashtable keyMap
         1: .line 361
            aload 0 /* this */
            getfield javax.swing.KeyboardManager.containerMap:Ljava/util/Hashtable;
            aload 1 /* topContainer */
            aload 2 /* keyMap */
            invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 362
            aload 2 /* keyMap */
            areturn
        end local 2 // java.util.Hashtable keyMap
        end local 1 // java.awt.Container topContainer
        end local 0 // javax.swing.KeyboardManager this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Ljavax/swing/KeyboardManager;
            0    3     1  topContainer  Ljava/awt/Container;
            1    3     2        keyMap  Ljava/util/Hashtable;
    MethodParameters:
              Name  Flags
      topContainer  
}
SourceFile: "KeyboardManager.java"
NestMembers:
  javax.swing.KeyboardManager$ComponentKeyStrokePair
InnerClasses:
  ComponentKeyStrokePair = javax.swing.KeyboardManager$ComponentKeyStrokePair of javax.swing.KeyboardManager
  public abstract KeyEventAccessor = sun.awt.AWTAccessor$KeyEventAccessor of sun.awt.AWTAccessor