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 66
            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 64
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 71
            aload 0 /* this */
            new java.util.Hashtable
            dup
            invokespecial java.util.Hashtable.<init>:()V
            putfield javax.swing.KeyboardManager.containerMap:Ljava/util/Hashtable;
         2: .line 77
            aload 0 /* this */
            new java.util.Hashtable
            dup
            invokespecial java.util.Hashtable.<init>:()V
            putfield javax.swing.KeyboardManager.componentKeyStrokeMap:Ljava/util/Hashtable;
         3: .line 64
            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 80
            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 84
            aload 0 /* km */
            putstatic javax.swing.KeyboardManager.currentManager:Ljavax/swing/KeyboardManager;
         1: .line 85
            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 94
            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 95
            aload 3 /* topContainer */
            ifnonnull 3
         2: .line 96
            return
         3: .line 98
      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 100
            aload 4 /* keyMap */
            ifnonnull 6
         5: .line 101
            aload 0 /* this */
            aload 3 /* topContainer */
            invokevirtual javax.swing.KeyboardManager.registerNewTopContainer:(Ljava/awt/Container;)Ljava/util/Hashtable;
            astore 4 /* keyMap */
         6: .line 104
      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 105
            aload 5 /* tmp */
            ifnonnull 10
         8: .line 106
            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 107
            goto 24
      StackMap locals: java.lang.Object
      StackMap stack:
        10: aload 5 /* tmp */
            instanceof java.util.Vector
            ifeq 15
        11: .line 108
            aload 5 /* tmp */
            checkcast java.util.Vector
            astore 6 /* v */
        start local 6 // java.util.Vector v
        12: .line 109
            aload 6 /* v */
            aload 2 /* c */
            invokevirtual java.util.Vector.contains:(Ljava/lang/Object;)Z
            ifne 24
        13: .line 110
            aload 6 /* v */
            aload 2 /* c */
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
        end local 6 // java.util.Vector v
        14: .line 112
            goto 24
      StackMap locals:
      StackMap stack:
        15: aload 5 /* tmp */
            instanceof javax.swing.JComponent
            ifeq 22
        16: .line 116
            aload 5 /* tmp */
            aload 2 /* c */
            if_acmpeq 24
        17: .line 117
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            astore 6 /* v */
        start local 6 // java.util.Vector v
        18: .line 118
            aload 6 /* v */
            aload 5 /* tmp */
            checkcast javax.swing.JComponent
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
        19: .line 119
            aload 6 /* v */
            aload 2 /* c */
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
        20: .line 120
            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 122
            goto 24
        22: .line 123
      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 124
            invokestatic java.lang.Thread.dumpStack:()V
        24: .line 127
      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 131
            aload 3 /* topContainer */
            instanceof sun.awt.EmbeddedFrame
            ifeq 27
        26: .line 132
            aload 3 /* topContainer */
            checkcast sun.awt.EmbeddedFrame
            aload 1 /* k */
            invokevirtual sun.awt.EmbeddedFrame.registerAccelerator:(Ljava/awt/AWTKeyStroke;)V
        27: .line 134
      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 140
            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 141
      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 142
      StackMap locals:
      StackMap stack:
            aload 1 /* p */
            instanceof java.applet.Applet
            ifne 4
            aload 1 /* p */
            instanceof javax.swing.JInternalFrame
            ifeq 5
         4: .line 144
      StackMap locals:
      StackMap stack:
            aload 1 /* p */
            areturn
         5: .line 140
      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 147
            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 155
            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 157
            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 159
            aload 4 /* topContainer */
            ifnonnull 4
         3: .line 160
            return
         4: .line 163
      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 164
            aload 5 /* keyMap */
            ifnonnull 8
         6: .line 165
            invokestatic java.lang.Thread.dumpStack:()V
         7: .line 166
            return
         8: .line 169
      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 170
            aload 6 /* tmp */
            ifnonnull 12
        10: .line 171
            invokestatic java.lang.Thread.dumpStack:()V
        11: .line 172
            return
        12: .line 175
      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 176
            aload 5 /* keyMap */
            aload 1 /* ks */
            invokevirtual java.util.Hashtable.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        14: .line 178
            goto 20
      StackMap locals:
      StackMap stack:
        15: aload 6 /* tmp */
            instanceof java.util.Vector
            ifeq 20
        16: .line 179
            aload 6 /* tmp */
            checkcast java.util.Vector
            astore 7 /* v */
        start local 7 // java.util.Vector v
        17: .line 180
            aload 7 /* v */
            aload 2 /* c */
            invokevirtual java.util.Vector.removeElement:(Ljava/lang/Object;)Z
            pop
        18: .line 181
            aload 7 /* v */
            invokevirtual java.util.Vector.isEmpty:()Z
            ifeq 20
        19: .line 182
            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 187
      StackMap locals:
      StackMap stack:
            aload 5 /* keyMap */
            invokevirtual java.util.Hashtable.isEmpty:()Z
            ifeq 22
        21: .line 188
            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 192
      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 196
            aload 4 /* topContainer */
            instanceof sun.awt.EmbeddedFrame
            ifeq 25
        24: .line 197
            aload 4 /* topContainer */
            checkcast sun.awt.EmbeddedFrame
            aload 1 /* ks */
            invokevirtual sun.awt.EmbeddedFrame.unregisterAccelerator:(Ljava/awt/AWTKeyStroke;)V
        25: .line 199
      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 210
            aload 1 /* e */
            invokevirtual java.awt.event.KeyEvent.isConsumed:()Z
            ifeq 3
         1: .line 211
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "Acquired pre-used event!"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         2: .line 212
            invokestatic java.lang.Thread.dumpStack:()V
         3: .line 218
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 5 /* ksE */
        start local 5 // javax.swing.KeyStroke ksE
         4: .line 221
            aload 1 /* e */
            invokevirtual java.awt.event.KeyEvent.getID:()I
            sipush 400
            if_icmpne 7
         5: .line 222
            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 223
            goto 14
        end local 4 // javax.swing.KeyStroke ks
         7: .line 224
      StackMap locals: javax.swing.KeyboardManager java.awt.event.KeyEvent int java.awt.Container top javax.swing.KeyStroke
      StackMap stack:
            aload 1 /* e */
            invokevirtual java.awt.event.KeyEvent.getKeyCode:()I
            aload 1 /* e */
            invokevirtual java.awt.event.KeyEvent.getExtendedKeyCode:()I
            if_icmpeq 11
         8: .line 225
            aload 1 /* e */
            invokevirtual java.awt.event.KeyEvent.getExtendedKeyCode:()I
            aload 1 /* e */
            invokevirtual java.awt.event.KeyEvent.getModifiers:()I
            iload 2 /* pressed */
            ifeq 9
            iconst_0
            goto 10
      StackMap locals: javax.swing.KeyboardManager java.awt.event.KeyEvent int java.awt.Container top javax.swing.KeyStroke
      StackMap stack: int int
         9: iconst_1
      StackMap locals: javax.swing.KeyboardManager java.awt.event.KeyEvent int java.awt.Container top javax.swing.KeyStroke
      StackMap stack: int int int
        10: invokestatic javax.swing.KeyStroke.getKeyStroke:(IIZ)Ljavax/swing/KeyStroke;
            astore 5 /* ksE */
        11: .line 227
      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 12
            iconst_0
            goto 13
      StackMap locals: javax.swing.KeyboardManager java.awt.event.KeyEvent int java.awt.Container top javax.swing.KeyStroke
      StackMap stack: int int
        12: iconst_1
      StackMap locals: javax.swing.KeyboardManager java.awt.event.KeyEvent int java.awt.Container top javax.swing.KeyStroke
      StackMap stack: int int int
        13: invokestatic javax.swing.KeyStroke.getKeyStroke:(IIZ)Ljavax/swing/KeyStroke;
            astore 4 /* ks */
        start local 4 // javax.swing.KeyStroke ks
        14: .line 230
      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
        15: .line 231
            aload 6 /* keyMap */
            ifnull 43
        16: .line 233
            aconst_null
            astore 7 /* tmp */
        start local 7 // java.lang.Object tmp
        17: .line 235
            aload 5 /* ksE */
            ifnull 21
        18: .line 236
            aload 6 /* keyMap */
            aload 5 /* ksE */
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 7 /* tmp */
        19: .line 237
            aload 7 /* tmp */
            ifnull 21
        20: .line 238
            aload 5 /* ksE */
            astore 4 /* ks */
        21: .line 241
      StackMap locals: java.util.Hashtable java.lang.Object
      StackMap stack:
            aload 7 /* tmp */
            ifnonnull 23
        22: .line 242
            aload 6 /* keyMap */
            aload 4 /* ks */
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 7 /* tmp */
        23: .line 245
      StackMap locals:
      StackMap stack:
            aload 7 /* tmp */
            ifnull 43
        24: .line 247
            aload 7 /* tmp */
            instanceof javax.swing.JComponent
            ifeq 29
        25: .line 248
            aload 7 /* tmp */
            checkcast javax.swing.JComponent
            astore 8 /* c */
        start local 8 // javax.swing.JComponent c
        26: .line 249
            aload 8 /* c */
            invokevirtual javax.swing.JComponent.isShowing:()Z
            ifeq 43
            aload 8 /* c */
            invokevirtual javax.swing.JComponent.isEnabled:()Z
            ifeq 43
        27: .line 250
            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
        28: .line 252
            goto 43
      StackMap locals:
      StackMap stack:
        29: aload 7 /* tmp */
            instanceof java.util.Vector
            ifeq 41
        30: .line 253
            aload 7 /* tmp */
            checkcast java.util.Vector
            astore 8 /* v */
        start local 8 // java.util.Vector v
        31: .line 259
            aload 8 /* v */
            invokevirtual java.util.Vector.size:()I
            iconst_1
            isub
            istore 9 /* counter */
        start local 9 // int counter
        32: goto 39
        33: .line 260
      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
        34: .line 262
            aload 10 /* c */
            invokevirtual javax.swing.JComponent.isShowing:()Z
            ifeq 38
            aload 10 /* c */
            invokevirtual javax.swing.JComponent.isEnabled:()Z
            ifeq 38
        35: .line 263
            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
        36: .line 264
            aload 1 /* e */
            invokevirtual java.awt.event.KeyEvent.isConsumed:()Z
            ifeq 38
        37: .line 265
            iconst_1
            ireturn
        end local 10 // javax.swing.JComponent c
        38: .line 259
      StackMap locals:
      StackMap stack:
            iinc 9 /* counter */ -1
      StackMap locals:
      StackMap stack:
        39: iload 9 /* counter */
            ifge 33
        end local 9 // int counter
        end local 8 // java.util.Vector v
        40: .line 268
            goto 43
        41: .line 269
      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
        42: .line 271
            invokestatic java.lang.Thread.dumpStack:()V
        end local 7 // java.lang.Object tmp
        43: .line 275
      StackMap locals:
      StackMap stack:
            aload 1 /* e */
            invokevirtual java.awt.event.KeyEvent.isConsumed:()Z
            ifeq 45
        44: .line 276
            iconst_1
            ireturn
        45: .line 281
      StackMap locals:
      StackMap stack:
            aload 6 /* keyMap */
            ifnull 62
        46: .line 282
            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
        47: .line 283
            aload 7 /* v */
            ifnull 62
        48: .line 284
            aload 7 /* v */
            invokevirtual java.util.Vector.elements:()Ljava/util/Enumeration;
            astore 8 /* iter */
        start local 8 // java.util.Enumeration iter
        49: .line 285
            goto 61
        50: .line 286
      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
        51: .line 287
            aload 9 /* mb */
            invokevirtual javax.swing.JMenuBar.isShowing:()Z
            ifeq 61
            aload 9 /* mb */
            invokevirtual javax.swing.JMenuBar.isEnabled:()Z
            ifeq 61
        52: .line 288
            aload 5 /* ksE */
            ifnull 53
            aload 5 /* ksE */
            aload 4 /* ks */
            invokevirtual javax.swing.KeyStroke.equals:(Ljava/lang/Object;)Z
            ifne 53
            iconst_1
            goto 54
      StackMap locals: javax.swing.JMenuBar
      StackMap stack:
        53: iconst_0
      StackMap locals:
      StackMap stack: int
        54: istore 10 /* extended */
        start local 10 // boolean extended
        55: .line 289
            iload 10 /* extended */
            ifeq 57
        56: .line 290
            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
        57: .line 292
      StackMap locals: int
      StackMap stack:
            iload 10 /* extended */
            ifeq 58
            aload 1 /* e */
            invokevirtual java.awt.event.KeyEvent.isConsumed:()Z
            ifne 59
        58: .line 293
      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
        59: .line 295
      StackMap locals:
      StackMap stack:
            aload 1 /* e */
            invokevirtual java.awt.event.KeyEvent.isConsumed:()Z
            ifeq 61
        60: .line 296
            iconst_1
            ireturn
        end local 10 // boolean extended
        end local 9 // javax.swing.JMenuBar mb
        61: .line 285
      StackMap locals:
      StackMap stack:
            aload 8 /* iter */
            invokeinterface java.util.Enumeration.hasMoreElements:()Z
            ifne 50
        end local 8 // java.util.Enumeration iter
        end local 7 // java.util.Vector v
        62: .line 303
      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   63     0         this  Ljavax/swing/KeyboardManager;
            0   63     1            e  Ljava/awt/event/KeyEvent;
            0   63     2      pressed  Z
            0   63     3  topAncestor  Ljava/awt/Container;
            6    7     4           ks  Ljavax/swing/KeyStroke;
           14   63     4           ks  Ljavax/swing/KeyStroke;
            4   63     5          ksE  Ljavax/swing/KeyStroke;
           15   63     6       keyMap  Ljava/util/Hashtable;
           17   43     7          tmp  Ljava/lang/Object;
           26   28     8            c  Ljavax/swing/JComponent;
           31   40     8            v  Ljava/util/Vector;
           32   40     9      counter  I
           34   38    10            c  Ljavax/swing/JComponent;
           47   62     7            v  Ljava/util/Vector;
           49   62     8         iter  Ljava/util/Enumeration;
           51   61     9           mb  Ljavax/swing/JMenuBar;
           55   61    10     extended  Z
    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 307
            aload 1 /* c */
            aload 2 /* ks */
            aload 3 /* e */
            iconst_2
         1: .line 308
            iload 4 /* pressed */
         2: .line 307
            invokevirtual javax.swing.JComponent.processKeyBinding:(Ljavax/swing/KeyStroke;Ljava/awt/event/KeyEvent;IZ)Z
         3: .line 308
            ifeq 5
         4: .line 309
            aload 3 /* e */
            invokevirtual java.awt.event.KeyEvent.consume:()V
         5: .line 311
      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 314
            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 315
            aload 2 /* top */
            ifnonnull 3
         2: .line 316
            return
         3: .line 318
      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 320
            aload 3 /* keyMap */
            ifnonnull 6
         5: .line 321
            aload 0 /* this */
            aload 2 /* top */
            invokevirtual javax.swing.KeyboardManager.registerNewTopContainer:(Ljava/awt/Container;)Ljava/util/Hashtable;
            astore 3 /* keyMap */
         6: .line 324
      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 326
            aload 4 /* menuBars */
            ifnonnull 10
         8: .line 328
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            astore 4 /* menuBars */
         9: .line 329
            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 332
      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 333
            aload 4 /* menuBars */
            aload 1 /* mb */
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
        12: .line 335
      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 339
            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 340
            aload 2 /* topContainer */
            ifnonnull 3
         2: .line 341
            return
         3: .line 343
      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 344
            aload 3 /* keyMap */
            ifnull 12
         5: .line 345
            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 346
            aload 4 /* v */
            ifnull 12
         7: .line 347
            aload 4 /* v */
            aload 1 /* mb */
            invokevirtual java.util.Vector.removeElement:(Ljava/lang/Object;)Z
            pop
         8: .line 348
            aload 4 /* v */
            invokevirtual java.util.Vector.isEmpty:()Z
            ifeq 12
         9: .line 349
            aload 3 /* keyMap */
            ldc Ljavax/swing/JMenuBar;
            invokevirtual java.util.Hashtable.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 350
            aload 3 /* keyMap */
            invokevirtual java.util.Hashtable.isEmpty:()Z
            ifeq 12
        11: .line 352
            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 357
      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 359
            new java.util.Hashtable
            dup
            invokespecial java.util.Hashtable.<init>:()V
            astore 2 /* keyMap */
        start local 2 // java.util.Hashtable keyMap
         1: .line 360
            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 361
            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