public class com.apple.laf.AquaMenuPainter
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.apple.laf.AquaMenuPainter
  super_class: java.lang.Object
{
  static final byte kShiftGlyph;
    descriptor: B
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 5

  static final byte kOptionGlyph;
    descriptor: B
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 7

  static final byte kControlGlyph;
    descriptor: B
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 6

  static final byte kPencilGlyph;
    descriptor: B
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 15

  static final byte kCommandMark;
    descriptor: B
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 17

  static final char kUBlackDiamond;
    descriptor: C
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 9670

  static final char kUCheckMark;
    descriptor: C
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 10003

  static final char kUControlGlyph;
    descriptor: C
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 8963

  static final char kUOptionGlyph;
    descriptor: C
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 8997

  static final char kUEnterGlyph;
    descriptor: C
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 8996

  static final char kUCommandGlyph;
    descriptor: C
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 8984

  static final char kULeftDeleteGlyph;
    descriptor: C
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 9003

  static final char kURightDeleteGlyph;
    descriptor: C
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 8998

  static final char kUShiftGlyph;
    descriptor: C
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 8679

  static final char kUCapsLockGlyph;
    descriptor: C
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 8682

  static final int ALT_GRAPH_MASK;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 32

  static final int sUnsupportedModifiersMask;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: -48

  private static final com.apple.laf.AquaUtils$RecyclableSingleton<com.apple.laf.AquaMenuPainter> sPainter;
    descriptor: Lcom/apple/laf/AquaUtils$RecyclableSingleton;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lcom/apple/laf/AquaUtils$RecyclableSingleton<Lcom/apple/laf/AquaMenuPainter;>;

  static final int defaultMenuItemGap;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  static final int kAcceleratorArrowSpace;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 16

  private static final com.apple.laf.AquaMenuPainter$RecyclableBorder menuBarPainter;
    descriptor: Lcom/apple/laf/AquaMenuPainter$RecyclableBorder;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final com.apple.laf.AquaMenuPainter$RecyclableBorder selectedMenuBarItemPainter;
    descriptor: Lcom/apple/laf/AquaMenuPainter$RecyclableBorder;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final com.apple.laf.AquaMenuPainter$RecyclableBorder selectedMenuItemPainter;
    descriptor: Lcom/apple/laf/AquaMenuPainter$RecyclableBorder;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 128
            new com.apple.laf.AquaUtils$RecyclableSingletonFromDefaultConstructor
            dup
            ldc Lcom/apple/laf/AquaMenuPainter;
            invokespecial com.apple.laf.AquaUtils$RecyclableSingletonFromDefaultConstructor.<init>:(Ljava/lang/Class;)V
            putstatic com.apple.laf.AquaMenuPainter.sPainter:Lcom/apple/laf/AquaUtils$RecyclableSingleton;
         1: .line 142
            new com.apple.laf.AquaMenuPainter$RecyclableBorder
            dup
            ldc "MenuBar.backgroundPainter"
            invokespecial com.apple.laf.AquaMenuPainter$RecyclableBorder.<init>:(Ljava/lang/String;)V
            putstatic com.apple.laf.AquaMenuPainter.menuBarPainter:Lcom/apple/laf/AquaMenuPainter$RecyclableBorder;
         2: .line 143
            new com.apple.laf.AquaMenuPainter$RecyclableBorder
            dup
            ldc "MenuBar.selectedBackgroundPainter"
            invokespecial com.apple.laf.AquaMenuPainter$RecyclableBorder.<init>:(Ljava/lang/String;)V
            putstatic com.apple.laf.AquaMenuPainter.selectedMenuBarItemPainter:Lcom/apple/laf/AquaMenuPainter$RecyclableBorder;
         3: .line 144
            new com.apple.laf.AquaMenuPainter$RecyclableBorder
            dup
            ldc "MenuItem.selectedBackgroundPainter"
            invokespecial com.apple.laf.AquaMenuPainter$RecyclableBorder.<init>:(Ljava/lang/String;)V
            putstatic com.apple.laf.AquaMenuPainter.selectedMenuItemPainter:Lcom/apple/laf/AquaMenuPainter$RecyclableBorder;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.apple.laf.AquaMenuPainter this
         0: .line 53
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.apple.laf.AquaMenuPainter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/apple/laf/AquaMenuPainter;

  static java.lang.String getKeyModifiersText(int, boolean);
    descriptor: (IZ)Ljava/lang/String;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // int modifiers
        start local 1 // boolean isLeftToRight
         0: .line 88
            iload 0 /* modifiers */
            iload 1 /* isLeftToRight */
            invokestatic com.apple.laf.AquaMenuPainter.getKeyModifiersUnicode:(IZ)Ljava/lang/String;
            areturn
        end local 1 // boolean isLeftToRight
        end local 0 // int modifiers
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0      modifiers  I
            0    1     1  isLeftToRight  Z
    MethodParameters:
               Name  Flags
      modifiers      final
      isLeftToRight  final

  private static java.lang.String getKeyModifiersUnicode(int, boolean);
    descriptor: (IZ)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // int modifiers
        start local 1 // boolean isLeftToRight
         0: .line 94
            new java.lang.StringBuilder
            dup
            iconst_2
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 2 /* buf */
        start local 2 // java.lang.StringBuilder buf
         1: .line 98
            iload 1 /* isLeftToRight */
            ifeq 11
         2: .line 99
            iload 0 /* modifiers */
            iconst_2
            iand
            ifeq 4
         3: .line 100
            aload 2 /* buf */
            sipush 8963
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         4: .line 102
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            iload 0 /* modifiers */
            bipush 40
            iand
            ifeq 6
         5: .line 103
            aload 2 /* buf */
            sipush 8997
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         6: .line 105
      StackMap locals:
      StackMap stack:
            iload 0 /* modifiers */
            iconst_1
            iand
            ifeq 8
         7: .line 106
            aload 2 /* buf */
            sipush 8679
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         8: .line 108
      StackMap locals:
      StackMap stack:
            iload 0 /* modifiers */
            iconst_4
            iand
            ifeq 19
         9: .line 109
            aload 2 /* buf */
            sipush 8984
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        10: .line 111
            goto 19
        11: .line 112
      StackMap locals:
      StackMap stack:
            iload 0 /* modifiers */
            iconst_4
            iand
            ifeq 13
        12: .line 113
            aload 2 /* buf */
            sipush 8984
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        13: .line 115
      StackMap locals:
      StackMap stack:
            iload 0 /* modifiers */
            iconst_1
            iand
            ifeq 15
        14: .line 116
            aload 2 /* buf */
            sipush 8679
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        15: .line 118
      StackMap locals:
      StackMap stack:
            iload 0 /* modifiers */
            bipush 40
            iand
            ifeq 17
        16: .line 119
            aload 2 /* buf */
            sipush 8997
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        17: .line 121
      StackMap locals:
      StackMap stack:
            iload 0 /* modifiers */
            iconst_2
            iand
            ifeq 19
        18: .line 122
            aload 2 /* buf */
            sipush 8963
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        19: .line 125
      StackMap locals:
      StackMap stack:
            aload 2 /* buf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.StringBuilder buf
        end local 1 // boolean isLeftToRight
        end local 0 // int modifiers
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   20     0      modifiers  I
            0   20     1  isLeftToRight  Z
            1   20     2            buf  Ljava/lang/StringBuilder;
    MethodParameters:
               Name  Flags
      modifiers      final
      isLeftToRight  final

  static com.apple.laf.AquaMenuPainter instance();
    descriptor: ()Lcom/apple/laf/AquaMenuPainter;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 130
            getstatic com.apple.laf.AquaMenuPainter.sPainter:Lcom/apple/laf/AquaUtils$RecyclableSingleton;
            invokevirtual com.apple.laf.AquaUtils$RecyclableSingleton.get:()Ljava/lang/Object;
            checkcast com.apple.laf.AquaMenuPainter
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void paintMenuBarBackground(java.awt.Graphics, int, int, javax.swing.JComponent);
    descriptor: (Ljava/awt/Graphics;IILjavax/swing/JComponent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=5
        start local 0 // com.apple.laf.AquaMenuPainter this
        start local 1 // java.awt.Graphics g
        start local 2 // int width
        start local 3 // int height
        start local 4 // javax.swing.JComponent c
         0: .line 147
            aload 1 /* g */
            aload 4 /* c */
            ifnonnull 1
            getstatic java.awt.Color.white:Ljava/awt/Color;
            goto 2
      StackMap locals:
      StackMap stack: java.awt.Graphics
         1: aload 4 /* c */
            invokevirtual javax.swing.JComponent.getBackground:()Ljava/awt/Color;
      StackMap locals: com.apple.laf.AquaMenuPainter java.awt.Graphics int int javax.swing.JComponent
      StackMap stack: java.awt.Graphics java.awt.Color
         2: invokevirtual java.awt.Graphics.setColor:(Ljava/awt/Color;)V
         3: .line 148
            aload 1 /* g */
            iconst_0
            iconst_0
            iload 2 /* width */
            iload 3 /* height */
            invokevirtual java.awt.Graphics.fillRect:(IIII)V
         4: .line 149
            getstatic com.apple.laf.AquaMenuPainter.menuBarPainter:Lcom/apple/laf/AquaMenuPainter$RecyclableBorder;
            invokevirtual com.apple.laf.AquaMenuPainter$RecyclableBorder.get:()Ljava/lang/Object;
            checkcast javax.swing.border.Border
            aconst_null
            aload 1 /* g */
            iconst_0
            iconst_0
            iload 2 /* width */
            iload 3 /* height */
            invokeinterface javax.swing.border.Border.paintBorder:(Ljava/awt/Component;Ljava/awt/Graphics;IIII)V
         5: .line 150
            return
        end local 4 // javax.swing.JComponent c
        end local 3 // int height
        end local 2 // int width
        end local 1 // java.awt.Graphics g
        end local 0 // com.apple.laf.AquaMenuPainter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lcom/apple/laf/AquaMenuPainter;
            0    6     1       g  Ljava/awt/Graphics;
            0    6     2   width  I
            0    6     3  height  I
            0    6     4       c  Ljavax/swing/JComponent;
    MethodParameters:
        Name  Flags
      g       final
      width   final
      height  final
      c       final

  public void paintSelectedMenuTitleBackground(java.awt.Graphics, int, int);
    descriptor: (Ljava/awt/Graphics;II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=4
        start local 0 // com.apple.laf.AquaMenuPainter this
        start local 1 // java.awt.Graphics g
        start local 2 // int width
        start local 3 // int height
         0: .line 153
            getstatic com.apple.laf.AquaMenuPainter.selectedMenuBarItemPainter:Lcom/apple/laf/AquaMenuPainter$RecyclableBorder;
            invokevirtual com.apple.laf.AquaMenuPainter$RecyclableBorder.get:()Ljava/lang/Object;
            checkcast javax.swing.border.Border
            aconst_null
            aload 1 /* g */
            iconst_m1
            iconst_0
            iload 2 /* width */
            iconst_2
            iadd
            iload 3 /* height */
            invokeinterface javax.swing.border.Border.paintBorder:(Ljava/awt/Component;Ljava/awt/Graphics;IIII)V
         1: .line 154
            return
        end local 3 // int height
        end local 2 // int width
        end local 1 // java.awt.Graphics g
        end local 0 // com.apple.laf.AquaMenuPainter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lcom/apple/laf/AquaMenuPainter;
            0    2     1       g  Ljava/awt/Graphics;
            0    2     2   width  I
            0    2     3  height  I
    MethodParameters:
        Name  Flags
      g       final
      width   final
      height  final

  public void paintSelectedMenuItemBackground(java.awt.Graphics, int, int);
    descriptor: (Ljava/awt/Graphics;II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=4
        start local 0 // com.apple.laf.AquaMenuPainter this
        start local 1 // java.awt.Graphics g
        start local 2 // int width
        start local 3 // int height
         0: .line 157
            getstatic com.apple.laf.AquaMenuPainter.selectedMenuItemPainter:Lcom/apple/laf/AquaMenuPainter$RecyclableBorder;
            invokevirtual com.apple.laf.AquaMenuPainter$RecyclableBorder.get:()Ljava/lang/Object;
            checkcast javax.swing.border.Border
            aconst_null
            aload 1 /* g */
            iconst_0
            iconst_0
            iload 2 /* width */
            iload 3 /* height */
            invokeinterface javax.swing.border.Border.paintBorder:(Ljava/awt/Component;Ljava/awt/Graphics;IIII)V
         1: .line 158
            return
        end local 3 // int height
        end local 2 // int width
        end local 1 // java.awt.Graphics g
        end local 0 // com.apple.laf.AquaMenuPainter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lcom/apple/laf/AquaMenuPainter;
            0    2     1       g  Ljava/awt/Graphics;
            0    2     2   width  I
            0    2     3  height  I
    MethodParameters:
        Name  Flags
      g       final
      width   final
      height  final

  protected void paintMenuItem(com.apple.laf.AquaMenuPainter$Client, java.awt.Graphics, javax.swing.JComponent, javax.swing.Icon, javax.swing.Icon, java.awt.Color, java.awt.Color, java.awt.Color, java.awt.Color, int, java.awt.Font);
    descriptor: (Lcom/apple/laf/AquaMenuPainter$Client;Ljava/awt/Graphics;Ljavax/swing/JComponent;Ljavax/swing/Icon;Ljavax/swing/Icon;Ljava/awt/Color;Ljava/awt/Color;Ljava/awt/Color;Ljava/awt/Color;ILjava/awt/Font;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=22, locals=43, args_size=12
        start local 0 // com.apple.laf.AquaMenuPainter this
        start local 1 // com.apple.laf.AquaMenuPainter$Client client
        start local 2 // java.awt.Graphics g
        start local 3 // javax.swing.JComponent c
        start local 4 // javax.swing.Icon checkIcon
        start local 5 // javax.swing.Icon arrowIcon
        start local 6 // java.awt.Color background
        start local 7 // java.awt.Color foreground
        start local 8 // java.awt.Color disabledForeground
        start local 9 // java.awt.Color selectionForeground
        start local 10 // int defaultTextIconGap
        start local 11 // java.awt.Font acceleratorFont
         0: .line 161
            aload 3 /* c */
            checkcast javax.swing.JMenuItem
            astore 12 /* b */
        start local 12 // javax.swing.JMenuItem b
         1: .line 162
            aload 12 /* b */
            invokevirtual javax.swing.JMenuItem.getModel:()Ljavax/swing/ButtonModel;
            astore 13 /* model */
        start local 13 // javax.swing.ButtonModel model
         2: .line 165
            aload 12 /* b */
            invokevirtual javax.swing.JMenuItem.getWidth:()I
            istore 14 /* menuWidth */
        start local 14 // int menuWidth
         3: .line 166
            aload 12 /* b */
            invokevirtual javax.swing.JMenuItem.getHeight:()I
            istore 15 /* menuHeight */
        start local 15 // int menuHeight
         4: .line 167
            aload 3 /* c */
            invokevirtual javax.swing.JComponent.getInsets:()Ljava/awt/Insets;
            astore 16 /* i */
        start local 16 // java.awt.Insets i
         5: .line 169
            new java.awt.Rectangle
            dup
            iconst_0
            iconst_0
            iload 14 /* menuWidth */
            iload 15 /* menuHeight */
            invokespecial java.awt.Rectangle.<init>:(IIII)V
            astore 17 /* viewRect */
        start local 17 // java.awt.Rectangle viewRect
         6: .line 171
            aload 17 /* viewRect */
            dup
            getfield java.awt.Rectangle.x:I
            aload 16 /* i */
            getfield java.awt.Insets.left:I
            iadd
            putfield java.awt.Rectangle.x:I
         7: .line 172
            aload 17 /* viewRect */
            dup
            getfield java.awt.Rectangle.y:I
            aload 16 /* i */
            getfield java.awt.Insets.top:I
            iadd
            putfield java.awt.Rectangle.y:I
         8: .line 173
            aload 17 /* viewRect */
            dup
            getfield java.awt.Rectangle.width:I
            aload 16 /* i */
            getfield java.awt.Insets.right:I
            aload 17 /* viewRect */
            getfield java.awt.Rectangle.x:I
            iadd
            isub
            putfield java.awt.Rectangle.width:I
         9: .line 174
            aload 17 /* viewRect */
            dup
            getfield java.awt.Rectangle.height:I
            aload 16 /* i */
            getfield java.awt.Insets.bottom:I
            aload 17 /* viewRect */
            getfield java.awt.Rectangle.y:I
            iadd
            isub
            putfield java.awt.Rectangle.height:I
        10: .line 176
            aload 2 /* g */
            invokevirtual java.awt.Graphics.getFont:()Ljava/awt/Font;
            astore 18 /* holdf */
        start local 18 // java.awt.Font holdf
        11: .line 177
            aload 2 /* g */
            invokevirtual java.awt.Graphics.getColor:()Ljava/awt/Color;
            astore 19 /* holdc */
        start local 19 // java.awt.Color holdc
        12: .line 178
            aload 3 /* c */
            invokevirtual javax.swing.JComponent.getFont:()Ljava/awt/Font;
            astore 20 /* f */
        start local 20 // java.awt.Font f
        13: .line 179
            aload 2 /* g */
            aload 20 /* f */
            invokevirtual java.awt.Graphics.setFont:(Ljava/awt/Font;)V
        14: .line 180
            aload 2 /* g */
            aload 20 /* f */
            invokevirtual java.awt.Graphics.getFontMetrics:(Ljava/awt/Font;)Ljava/awt/FontMetrics;
            astore 21 /* fm */
        start local 21 // java.awt.FontMetrics fm
        15: .line 182
            aload 2 /* g */
            aload 11 /* acceleratorFont */
            invokevirtual java.awt.Graphics.getFontMetrics:(Ljava/awt/Font;)Ljava/awt/FontMetrics;
            astore 22 /* fmAccel */
        start local 22 // java.awt.FontMetrics fmAccel
        16: .line 185
            aload 3 /* c */
            invokevirtual javax.swing.JComponent.isOpaque:()Z
            ifeq 18
        17: .line 186
            aload 1 /* client */
            aload 2 /* g */
            aload 3 /* c */
            iload 14 /* menuWidth */
            iload 15 /* menuHeight */
            invokeinterface com.apple.laf.AquaMenuPainter$Client.paintBackground:(Ljava/awt/Graphics;Ljavax/swing/JComponent;II)V
        18: .line 190
      StackMap locals: com.apple.laf.AquaMenuPainter com.apple.laf.AquaMenuPainter$Client java.awt.Graphics javax.swing.JComponent javax.swing.Icon javax.swing.Icon java.awt.Color java.awt.Color java.awt.Color java.awt.Color int java.awt.Font javax.swing.JMenuItem javax.swing.ButtonModel int int java.awt.Insets java.awt.Rectangle java.awt.Font java.awt.Color java.awt.Font java.awt.FontMetrics java.awt.FontMetrics
      StackMap stack:
            aload 12 /* b */
            invokevirtual javax.swing.JMenuItem.getAccelerator:()Ljavax/swing/KeyStroke;
            astore 23 /* accelerator */
        start local 23 // javax.swing.KeyStroke accelerator
        19: .line 191
            ldc ""
            astore 24 /* modifiersString */
        start local 24 // java.lang.String modifiersString
        20: ldc ""
            astore 25 /* keyString */
        start local 25 // java.lang.String keyString
        21: .line 192
            aload 3 /* c */
            invokestatic com.apple.laf.AquaUtils.isLeftToRight:(Ljava/awt/Component;)Z
            istore 26 /* leftToRight */
        start local 26 // boolean leftToRight
        22: .line 193
            aload 23 /* accelerator */
            ifnull 31
        23: .line 194
            aload 23 /* accelerator */
            invokevirtual javax.swing.KeyStroke.getModifiers:()I
            istore 27 /* modifiers */
        start local 27 // int modifiers
        24: .line 195
            iload 27 /* modifiers */
            ifle 26
        25: .line 196
            iload 27 /* modifiers */
            iload 26 /* leftToRight */
            invokestatic com.apple.laf.AquaMenuPainter.getKeyModifiersText:(IZ)Ljava/lang/String;
            astore 24 /* modifiersString */
        26: .line 198
      StackMap locals: com.apple.laf.AquaMenuPainter com.apple.laf.AquaMenuPainter$Client java.awt.Graphics javax.swing.JComponent javax.swing.Icon javax.swing.Icon java.awt.Color java.awt.Color java.awt.Color java.awt.Color int java.awt.Font javax.swing.JMenuItem javax.swing.ButtonModel int int java.awt.Insets java.awt.Rectangle java.awt.Font java.awt.Color java.awt.Font java.awt.FontMetrics java.awt.FontMetrics javax.swing.KeyStroke java.lang.String java.lang.String int int
      StackMap stack:
            aload 23 /* accelerator */
            invokevirtual javax.swing.KeyStroke.getKeyCode:()I
            istore 28 /* keyCode */
        start local 28 // int keyCode
        27: .line 199
            iload 28 /* keyCode */
            ifeq 30
        28: .line 200
            iload 28 /* keyCode */
            invokestatic java.awt.event.KeyEvent.getKeyText:(I)Ljava/lang/String;
            astore 25 /* keyString */
        29: .line 201
            goto 31
        30: .line 202
      StackMap locals: int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 25 /* keyString */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 23 /* accelerator */
            invokevirtual javax.swing.KeyStroke.getKeyChar:()C
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 25 /* keyString */
        end local 28 // int keyCode
        end local 27 // int modifiers
        31: .line 206
      StackMap locals:
      StackMap stack:
            new java.awt.Rectangle
            dup
            invokespecial java.awt.Rectangle.<init>:()V
            astore 27 /* iconRect */
        start local 27 // java.awt.Rectangle iconRect
        32: .line 207
            new java.awt.Rectangle
            dup
            invokespecial java.awt.Rectangle.<init>:()V
            astore 28 /* textRect */
        start local 28 // java.awt.Rectangle textRect
        33: .line 208
            new java.awt.Rectangle
            dup
            invokespecial java.awt.Rectangle.<init>:()V
            astore 29 /* acceleratorRect */
        start local 29 // java.awt.Rectangle acceleratorRect
        34: .line 209
            new java.awt.Rectangle
            dup
            invokespecial java.awt.Rectangle.<init>:()V
            astore 30 /* checkIconRect */
        start local 30 // java.awt.Rectangle checkIconRect
        35: .line 210
            new java.awt.Rectangle
            dup
            invokespecial java.awt.Rectangle.<init>:()V
            astore 31 /* arrowIconRect */
        start local 31 // java.awt.Rectangle arrowIconRect
        36: .line 213
            aload 0 /* this */
            aload 12 /* b */
            aload 21 /* fm */
            aload 12 /* b */
            invokevirtual javax.swing.JMenuItem.getText:()Ljava/lang/String;
            aload 22 /* fmAccel */
            aload 25 /* keyString */
            aload 24 /* modifiersString */
            aload 12 /* b */
            invokevirtual javax.swing.JMenuItem.getIcon:()Ljavax/swing/Icon;
            aload 4 /* checkIcon */
            aload 5 /* arrowIcon */
            aload 12 /* b */
            invokevirtual javax.swing.JMenuItem.getVerticalAlignment:()I
            aload 12 /* b */
            invokevirtual javax.swing.JMenuItem.getHorizontalAlignment:()I
            aload 12 /* b */
            invokevirtual javax.swing.JMenuItem.getVerticalTextPosition:()I
            aload 12 /* b */
            invokevirtual javax.swing.JMenuItem.getHorizontalTextPosition:()I
            aload 17 /* viewRect */
            aload 27 /* iconRect */
            aload 28 /* textRect */
            aload 29 /* acceleratorRect */
            aload 30 /* checkIconRect */
            aload 31 /* arrowIconRect */
            aload 12 /* b */
            invokevirtual javax.swing.JMenuItem.getText:()Ljava/lang/String;
            ifnonnull 37
            iconst_0
            goto 38
      StackMap locals: com.apple.laf.AquaMenuPainter com.apple.laf.AquaMenuPainter$Client java.awt.Graphics javax.swing.JComponent javax.swing.Icon javax.swing.Icon java.awt.Color java.awt.Color java.awt.Color java.awt.Color int java.awt.Font javax.swing.JMenuItem javax.swing.ButtonModel int int java.awt.Insets java.awt.Rectangle java.awt.Font java.awt.Color java.awt.Font java.awt.FontMetrics java.awt.FontMetrics javax.swing.KeyStroke java.lang.String java.lang.String int java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle
      StackMap stack: com.apple.laf.AquaMenuPainter javax.swing.JMenuItem java.awt.FontMetrics java.lang.String java.awt.FontMetrics java.lang.String java.lang.String javax.swing.Icon javax.swing.Icon javax.swing.Icon int int int int java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle
        37: iload 10 /* defaultTextIconGap */
      StackMap locals: com.apple.laf.AquaMenuPainter com.apple.laf.AquaMenuPainter$Client java.awt.Graphics javax.swing.JComponent javax.swing.Icon javax.swing.Icon java.awt.Color java.awt.Color java.awt.Color java.awt.Color int java.awt.Font javax.swing.JMenuItem javax.swing.ButtonModel int int java.awt.Insets java.awt.Rectangle java.awt.Font java.awt.Color java.awt.Font java.awt.FontMetrics java.awt.FontMetrics javax.swing.KeyStroke java.lang.String java.lang.String int java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle
      StackMap stack: com.apple.laf.AquaMenuPainter javax.swing.JMenuItem java.awt.FontMetrics java.lang.String java.awt.FontMetrics java.lang.String java.lang.String javax.swing.Icon javax.swing.Icon javax.swing.Icon int int int int java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle int
        38: iload 10 /* defaultTextIconGap */
            invokevirtual com.apple.laf.AquaMenuPainter.layoutMenuItem:(Ljavax/swing/JMenuItem;Ljava/awt/FontMetrics;Ljava/lang/String;Ljava/awt/FontMetrics;Ljava/lang/String;Ljava/lang/String;Ljavax/swing/Icon;Ljavax/swing/Icon;Ljavax/swing/Icon;IIIILjava/awt/Rectangle;Ljava/awt/Rectangle;Ljava/awt/Rectangle;Ljava/awt/Rectangle;Ljava/awt/Rectangle;Ljava/awt/Rectangle;II)Ljava/lang/String;
            astore 32 /* text */
        start local 32 // java.lang.String text
        39: .line 219
            aload 12 /* b */
            invokevirtual javax.swing.JMenuItem.getParent:()Ljava/awt/Container;
            astore 33 /* parent */
        start local 33 // java.awt.Container parent
        40: .line 220
            aload 33 /* parent */
            instanceof javax.swing.JMenuBar
            istore 34 /* parentIsMenuBar */
        start local 34 // boolean parentIsMenuBar
        41: .line 222
            aload 33 /* parent */
            astore 35 /* ancestor */
        start local 35 // java.awt.Container ancestor
        42: .line 223
            goto 44
      StackMap locals: com.apple.laf.AquaMenuPainter com.apple.laf.AquaMenuPainter$Client java.awt.Graphics javax.swing.JComponent javax.swing.Icon javax.swing.Icon java.awt.Color java.awt.Color java.awt.Color java.awt.Color int java.awt.Font javax.swing.JMenuItem javax.swing.ButtonModel int int java.awt.Insets java.awt.Rectangle java.awt.Font java.awt.Color java.awt.Font java.awt.FontMetrics java.awt.FontMetrics javax.swing.KeyStroke java.lang.String java.lang.String int java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.lang.String java.awt.Container int java.awt.Container
      StackMap stack:
        43: aload 35 /* ancestor */
            invokevirtual java.awt.Container.getParent:()Ljava/awt/Container;
            astore 35 /* ancestor */
      StackMap locals:
      StackMap stack:
        44: aload 35 /* ancestor */
            ifnull 45
            aload 35 /* ancestor */
            instanceof javax.swing.JPopupMenu
            ifeq 43
        45: .line 225
      StackMap locals:
      StackMap stack:
            aload 13 /* model */
            invokeinterface javax.swing.ButtonModel.isEnabled:()Z
            ifeq 47
            aload 35 /* ancestor */
            ifnull 46
            aload 35 /* ancestor */
            invokevirtual java.awt.Container.isVisible:()Z
            ifeq 47
      StackMap locals:
      StackMap stack:
        46: iconst_1
            goto 48
      StackMap locals:
      StackMap stack:
        47: iconst_0
      StackMap locals:
      StackMap stack: int
        48: istore 36 /* isEnabled */
        start local 36 // boolean isEnabled
        49: .line 228
            iconst_0
            istore 37 /* isSelected */
        start local 37 // boolean isSelected
        50: .line 229
            iload 36 /* isEnabled */
            ifne 53
        51: .line 231
            aload 2 /* g */
            aload 8 /* disabledForeground */
            invokevirtual java.awt.Graphics.setColor:(Ljava/awt/Color;)V
        52: .line 232
            goto 60
        53: .line 234
      StackMap locals: int int
      StackMap stack:
            aload 13 /* model */
            invokeinterface javax.swing.ButtonModel.isArmed:()Z
            ifne 54
            aload 3 /* c */
            instanceof javax.swing.JMenu
            ifeq 57
            aload 13 /* model */
            invokeinterface javax.swing.ButtonModel.isSelected:()Z
            ifeq 57
        54: .line 235
      StackMap locals:
      StackMap stack:
            aload 2 /* g */
            aload 9 /* selectionForeground */
            invokevirtual java.awt.Graphics.setColor:(Ljava/awt/Color;)V
        55: .line 236
            iconst_1
            istore 37 /* isSelected */
        56: .line 237
            goto 60
        57: .line 238
      StackMap locals:
      StackMap stack:
            aload 2 /* g */
            iload 34 /* parentIsMenuBar */
            ifeq 58
            aload 33 /* parent */
            invokevirtual java.awt.Container.getForeground:()Ljava/awt/Color;
            goto 59
      StackMap locals:
      StackMap stack: java.awt.Graphics
        58: aload 12 /* b */
            invokevirtual javax.swing.JMenuItem.getForeground:()Ljava/awt/Color;
      StackMap locals: com.apple.laf.AquaMenuPainter com.apple.laf.AquaMenuPainter$Client java.awt.Graphics javax.swing.JComponent javax.swing.Icon javax.swing.Icon java.awt.Color java.awt.Color java.awt.Color java.awt.Color int java.awt.Font javax.swing.JMenuItem javax.swing.ButtonModel int int java.awt.Insets java.awt.Rectangle java.awt.Font java.awt.Color java.awt.Font java.awt.FontMetrics java.awt.FontMetrics javax.swing.KeyStroke java.lang.String java.lang.String int java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.lang.String java.awt.Container int java.awt.Container int int
      StackMap stack: java.awt.Graphics java.awt.Color
        59: invokevirtual java.awt.Graphics.setColor:(Ljava/awt/Color;)V
        60: .line 246
      StackMap locals:
      StackMap stack:
            aload 12 /* b */
            invokevirtual javax.swing.JMenuItem.getIcon:()Ljavax/swing/Icon;
            ifnull 62
        61: .line 247
            aload 0 /* this */
            aload 2 /* g */
            aload 12 /* b */
            aload 27 /* iconRect */
            iload 36 /* isEnabled */
            invokevirtual com.apple.laf.AquaMenuPainter.paintIcon:(Ljava/awt/Graphics;Ljavax/swing/JMenuItem;Ljava/awt/Rectangle;Z)V
        62: .line 251
      StackMap locals:
      StackMap stack:
            aload 4 /* checkIcon */
            ifnull 64
        63: .line 252
            aload 0 /* this */
            aload 2 /* g */
            aload 12 /* b */
            aload 4 /* checkIcon */
            aload 30 /* checkIconRect */
            invokevirtual com.apple.laf.AquaMenuPainter.paintCheck:(Ljava/awt/Graphics;Ljavax/swing/JMenuItem;Ljavax/swing/Icon;Ljava/awt/Rectangle;)V
        64: .line 256
      StackMap locals:
      StackMap stack:
            aload 25 /* keyString */
            ifnull 84
            aload 25 /* keyString */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 84
        65: .line 257
            aload 29 /* acceleratorRect */
            getfield java.awt.Rectangle.y:I
            aload 21 /* fm */
            invokevirtual java.awt.FontMetrics.getAscent:()I
            iadd
            istore 38 /* yAccel */
        start local 38 // int yAccel
        66: .line 258
            aload 24 /* modifiersString */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 69
        67: .line 260
            aload 3 /* c */
            aload 2 /* g */
            aload 25 /* keyString */
            aload 29 /* acceleratorRect */
            getfield java.awt.Rectangle.x:I
            iload 38 /* yAccel */
            invokestatic sun.swing.SwingUtilities2.drawString:(Ljavax/swing/JComponent;Ljava/awt/Graphics;Ljava/lang/String;II)V
        68: .line 261
            goto 84
        69: .line 262
      StackMap locals: int
      StackMap stack:
            aload 23 /* accelerator */
            invokevirtual javax.swing.KeyStroke.getModifiers:()I
            istore 39 /* modifiers */
        start local 39 // int modifiers
        70: .line 263
            iconst_0
            istore 40 /* underlinedChar */
        start local 40 // int underlinedChar
        71: .line 264
            iload 39 /* modifiers */
            bipush 32
            iand
            ifle 72
            sipush 8997
            istore 40 /* underlinedChar */
        72: .line 267
      StackMap locals: int int
      StackMap stack:
            aload 21 /* fm */
            bipush 77
            invokevirtual java.awt.FontMetrics.charWidth:(C)I
            aload 21 /* fm */
            aload 25 /* keyString */
            invokestatic javax.swing.SwingUtilities.computeStringWidth:(Ljava/awt/FontMetrics;Ljava/lang/String;)I
            invokestatic java.lang.Math.max:(II)I
            istore 41 /* emWidth */
        start local 41 // int emWidth
        73: .line 269
            iload 26 /* leftToRight */
            ifeq 79
        74: .line 270
            aload 2 /* g */
            aload 11 /* acceleratorFont */
            invokevirtual java.awt.Graphics.setFont:(Ljava/awt/Font;)V
        75: .line 271
            aload 0 /* this */
            aload 2 /* g */
            aload 3 /* c */
            aload 24 /* modifiersString */
            iload 40 /* underlinedChar */
            aload 29 /* acceleratorRect */
            getfield java.awt.Rectangle.x:I
            iload 38 /* yAccel */
            iload 36 /* isEnabled */
            iload 37 /* isSelected */
            invokevirtual com.apple.laf.AquaMenuPainter.drawString:(Ljava/awt/Graphics;Ljavax/swing/JComponent;Ljava/lang/String;IIIZZ)V
        76: .line 272
            aload 2 /* g */
            aload 20 /* f */
            invokevirtual java.awt.Graphics.setFont:(Ljava/awt/Font;)V
        77: .line 273
            aload 3 /* c */
            aload 2 /* g */
            aload 25 /* keyString */
            aload 29 /* acceleratorRect */
            getfield java.awt.Rectangle.x:I
            aload 29 /* acceleratorRect */
            getfield java.awt.Rectangle.width:I
            iadd
            iload 41 /* emWidth */
            isub
            iload 38 /* yAccel */
            invokestatic sun.swing.SwingUtilities2.drawString:(Ljavax/swing/JComponent;Ljava/awt/Graphics;Ljava/lang/String;II)V
        78: .line 274
            goto 84
        79: .line 275
      StackMap locals: int
      StackMap stack:
            aload 29 /* acceleratorRect */
            getfield java.awt.Rectangle.x:I
            iload 41 /* emWidth */
            iadd
            istore 42 /* xAccel */
        start local 42 // int xAccel
        80: .line 276
            aload 2 /* g */
            aload 11 /* acceleratorFont */
            invokevirtual java.awt.Graphics.setFont:(Ljava/awt/Font;)V
        81: .line 277
            aload 0 /* this */
            aload 2 /* g */
            aload 3 /* c */
            aload 24 /* modifiersString */
            iload 40 /* underlinedChar */
            iload 42 /* xAccel */
            iload 38 /* yAccel */
            iload 36 /* isEnabled */
            iload 37 /* isSelected */
            invokevirtual com.apple.laf.AquaMenuPainter.drawString:(Ljava/awt/Graphics;Ljavax/swing/JComponent;Ljava/lang/String;IIIZZ)V
        82: .line 278
            aload 2 /* g */
            aload 20 /* f */
            invokevirtual java.awt.Graphics.setFont:(Ljava/awt/Font;)V
        83: .line 279
            aload 3 /* c */
            aload 2 /* g */
            aload 25 /* keyString */
            iload 42 /* xAccel */
            aload 21 /* fm */
            aload 25 /* keyString */
            invokevirtual java.awt.FontMetrics.stringWidth:(Ljava/lang/String;)I
            isub
            iload 38 /* yAccel */
            invokestatic sun.swing.SwingUtilities2.drawString:(Ljavax/swing/JComponent;Ljava/awt/Graphics;Ljava/lang/String;II)V
        end local 42 // int xAccel
        end local 41 // int emWidth
        end local 40 // int underlinedChar
        end local 39 // int modifiers
        end local 38 // int yAccel
        84: .line 285
      StackMap locals: com.apple.laf.AquaMenuPainter com.apple.laf.AquaMenuPainter$Client java.awt.Graphics javax.swing.JComponent javax.swing.Icon javax.swing.Icon java.awt.Color java.awt.Color java.awt.Color java.awt.Color int java.awt.Font javax.swing.JMenuItem javax.swing.ButtonModel int int java.awt.Insets java.awt.Rectangle java.awt.Font java.awt.Color java.awt.Font java.awt.FontMetrics java.awt.FontMetrics javax.swing.KeyStroke java.lang.String java.lang.String int java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.lang.String java.awt.Container int java.awt.Container int int
      StackMap stack:
            aload 32 /* text */
            ifnull 93
            aload 32 /* text */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 93
        85: .line 286
            aload 3 /* c */
            ldc "html"
            invokevirtual javax.swing.JComponent.getClientProperty:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.swing.text.View
            astore 38 /* v */
        start local 38 // javax.swing.text.View v
        86: .line 287
            aload 38 /* v */
            ifnull 89
        87: .line 288
            aload 38 /* v */
            aload 2 /* g */
            aload 28 /* textRect */
            invokevirtual javax.swing.text.View.paint:(Ljava/awt/Graphics;Ljava/awt/Shape;)V
        88: .line 289
            goto 93
        89: .line 290
      StackMap locals: javax.swing.text.View
      StackMap stack:
            invokestatic com.apple.laf.AquaMnemonicHandler.isMnemonicHidden:()Z
            ifeq 90
            iconst_m1
            goto 91
      StackMap locals:
      StackMap stack:
        90: aload 13 /* model */
            invokeinterface javax.swing.ButtonModel.getMnemonic:()I
      StackMap locals:
      StackMap stack: int
        91: istore 39 /* mnemonic */
        start local 39 // int mnemonic
        92: .line 291
            aload 0 /* this */
            aload 2 /* g */
            aload 3 /* c */
            aload 32 /* text */
            iload 39 /* mnemonic */
            aload 28 /* textRect */
            getfield java.awt.Rectangle.x:I
            aload 28 /* textRect */
            getfield java.awt.Rectangle.y:I
            aload 21 /* fm */
            invokevirtual java.awt.FontMetrics.getAscent:()I
            iadd
            iload 36 /* isEnabled */
            iload 37 /* isSelected */
            invokevirtual com.apple.laf.AquaMenuPainter.drawString:(Ljava/awt/Graphics;Ljavax/swing/JComponent;Ljava/lang/String;IIIZZ)V
        end local 39 // int mnemonic
        end local 38 // javax.swing.text.View v
        93: .line 296
      StackMap locals:
      StackMap stack:
            aload 5 /* arrowIcon */
            ifnull 95
        94: .line 297
            aload 0 /* this */
            aload 2 /* g */
            aload 12 /* b */
            aload 13 /* model */
            aload 5 /* arrowIcon */
            aload 31 /* arrowIconRect */
            invokevirtual com.apple.laf.AquaMenuPainter.paintArrow:(Ljava/awt/Graphics;Ljavax/swing/JMenuItem;Ljavax/swing/ButtonModel;Ljavax/swing/Icon;Ljava/awt/Rectangle;)V
        95: .line 300
      StackMap locals:
      StackMap stack:
            aload 2 /* g */
            aload 19 /* holdc */
            invokevirtual java.awt.Graphics.setColor:(Ljava/awt/Color;)V
        96: .line 301
            aload 2 /* g */
            aload 18 /* holdf */
            invokevirtual java.awt.Graphics.setFont:(Ljava/awt/Font;)V
        97: .line 302
            return
        end local 37 // boolean isSelected
        end local 36 // boolean isEnabled
        end local 35 // java.awt.Container ancestor
        end local 34 // boolean parentIsMenuBar
        end local 33 // java.awt.Container parent
        end local 32 // java.lang.String text
        end local 31 // java.awt.Rectangle arrowIconRect
        end local 30 // java.awt.Rectangle checkIconRect
        end local 29 // java.awt.Rectangle acceleratorRect
        end local 28 // java.awt.Rectangle textRect
        end local 27 // java.awt.Rectangle iconRect
        end local 26 // boolean leftToRight
        end local 25 // java.lang.String keyString
        end local 24 // java.lang.String modifiersString
        end local 23 // javax.swing.KeyStroke accelerator
        end local 22 // java.awt.FontMetrics fmAccel
        end local 21 // java.awt.FontMetrics fm
        end local 20 // java.awt.Font f
        end local 19 // java.awt.Color holdc
        end local 18 // java.awt.Font holdf
        end local 17 // java.awt.Rectangle viewRect
        end local 16 // java.awt.Insets i
        end local 15 // int menuHeight
        end local 14 // int menuWidth
        end local 13 // javax.swing.ButtonModel model
        end local 12 // javax.swing.JMenuItem b
        end local 11 // java.awt.Font acceleratorFont
        end local 10 // int defaultTextIconGap
        end local 9 // java.awt.Color selectionForeground
        end local 8 // java.awt.Color disabledForeground
        end local 7 // java.awt.Color foreground
        end local 6 // java.awt.Color background
        end local 5 // javax.swing.Icon arrowIcon
        end local 4 // javax.swing.Icon checkIcon
        end local 3 // javax.swing.JComponent c
        end local 2 // java.awt.Graphics g
        end local 1 // com.apple.laf.AquaMenuPainter$Client client
        end local 0 // com.apple.laf.AquaMenuPainter this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   98     0                 this  Lcom/apple/laf/AquaMenuPainter;
            0   98     1               client  Lcom/apple/laf/AquaMenuPainter$Client;
            0   98     2                    g  Ljava/awt/Graphics;
            0   98     3                    c  Ljavax/swing/JComponent;
            0   98     4            checkIcon  Ljavax/swing/Icon;
            0   98     5            arrowIcon  Ljavax/swing/Icon;
            0   98     6           background  Ljava/awt/Color;
            0   98     7           foreground  Ljava/awt/Color;
            0   98     8   disabledForeground  Ljava/awt/Color;
            0   98     9  selectionForeground  Ljava/awt/Color;
            0   98    10   defaultTextIconGap  I
            0   98    11      acceleratorFont  Ljava/awt/Font;
            1   98    12                    b  Ljavax/swing/JMenuItem;
            2   98    13                model  Ljavax/swing/ButtonModel;
            3   98    14            menuWidth  I
            4   98    15           menuHeight  I
            5   98    16                    i  Ljava/awt/Insets;
            6   98    17             viewRect  Ljava/awt/Rectangle;
           11   98    18                holdf  Ljava/awt/Font;
           12   98    19                holdc  Ljava/awt/Color;
           13   98    20                    f  Ljava/awt/Font;
           15   98    21                   fm  Ljava/awt/FontMetrics;
           16   98    22              fmAccel  Ljava/awt/FontMetrics;
           19   98    23          accelerator  Ljavax/swing/KeyStroke;
           20   98    24      modifiersString  Ljava/lang/String;
           21   98    25            keyString  Ljava/lang/String;
           22   98    26          leftToRight  Z
           24   31    27            modifiers  I
           27   31    28              keyCode  I
           32   98    27             iconRect  Ljava/awt/Rectangle;
           33   98    28             textRect  Ljava/awt/Rectangle;
           34   98    29      acceleratorRect  Ljava/awt/Rectangle;
           35   98    30        checkIconRect  Ljava/awt/Rectangle;
           36   98    31        arrowIconRect  Ljava/awt/Rectangle;
           39   98    32                 text  Ljava/lang/String;
           40   98    33               parent  Ljava/awt/Container;
           41   98    34      parentIsMenuBar  Z
           42   98    35             ancestor  Ljava/awt/Container;
           49   98    36            isEnabled  Z
           50   98    37           isSelected  Z
           66   84    38               yAccel  I
           70   84    39            modifiers  I
           71   84    40       underlinedChar  I
           73   84    41              emWidth  I
           80   84    42               xAccel  I
           86   93    38                    v  Ljavax/swing/text/View;
           92   93    39             mnemonic  I
    MethodParameters:
                     Name  Flags
      client               final
      g                    final
      c                    final
      checkIcon            final
      arrowIcon            final
      background           final
      foreground           final
      disabledForeground   final
      selectionForeground  final
      defaultTextIconGap   final
      acceleratorFont      final

  protected java.awt.Dimension getPreferredMenuItemSize(javax.swing.JComponent, javax.swing.Icon, javax.swing.Icon, int, java.awt.Font);
    descriptor: (Ljavax/swing/JComponent;Ljavax/swing/Icon;Ljavax/swing/Icon;ILjava/awt/Font;)Ljava/awt/Dimension;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=22, locals=24, args_size=6
        start local 0 // com.apple.laf.AquaMenuPainter this
        start local 1 // javax.swing.JComponent c
        start local 2 // javax.swing.Icon checkIcon
        start local 3 // javax.swing.Icon arrowIcon
        start local 4 // int defaultTextIconGap
        start local 5 // java.awt.Font acceleratorFont
         0: .line 307
            aload 1 /* c */
            checkcast javax.swing.JMenuItem
            astore 6 /* b */
        start local 6 // javax.swing.JMenuItem b
         1: .line 308
            aload 6 /* b */
            invokevirtual javax.swing.JMenuItem.getIcon:()Ljavax/swing/Icon;
            astore 7 /* icon */
        start local 7 // javax.swing.Icon icon
         2: .line 309
            aload 6 /* b */
            invokevirtual javax.swing.JMenuItem.getText:()Ljava/lang/String;
            astore 8 /* text */
        start local 8 // java.lang.String text
         3: .line 310
            aload 6 /* b */
            invokevirtual javax.swing.JMenuItem.getAccelerator:()Ljavax/swing/KeyStroke;
            astore 9 /* accelerator */
        start local 9 // javax.swing.KeyStroke accelerator
         4: .line 311
            ldc ""
            astore 10 /* keyString */
        start local 10 // java.lang.String keyString
         5: ldc ""
            astore 11 /* modifiersString */
        start local 11 // java.lang.String modifiersString
         6: .line 313
            aload 9 /* accelerator */
            ifnull 15
         7: .line 314
            aload 9 /* accelerator */
            invokevirtual javax.swing.KeyStroke.getModifiers:()I
            istore 12 /* modifiers */
        start local 12 // int modifiers
         8: .line 315
            iload 12 /* modifiers */
            ifle 10
         9: .line 316
            iload 12 /* modifiers */
            iconst_1
            invokestatic com.apple.laf.AquaMenuPainter.getKeyModifiersText:(IZ)Ljava/lang/String;
            astore 11 /* modifiersString */
        10: .line 318
      StackMap locals: com.apple.laf.AquaMenuPainter javax.swing.JComponent javax.swing.Icon javax.swing.Icon int java.awt.Font javax.swing.JMenuItem javax.swing.Icon java.lang.String javax.swing.KeyStroke java.lang.String java.lang.String int
      StackMap stack:
            aload 9 /* accelerator */
            invokevirtual javax.swing.KeyStroke.getKeyCode:()I
            istore 13 /* keyCode */
        start local 13 // int keyCode
        11: .line 319
            iload 13 /* keyCode */
            ifeq 14
        12: .line 320
            iload 13 /* keyCode */
            invokestatic java.awt.event.KeyEvent.getKeyText:(I)Ljava/lang/String;
            astore 10 /* keyString */
        13: .line 321
            goto 15
        14: .line 322
      StackMap locals: int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 10 /* keyString */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 9 /* accelerator */
            invokevirtual javax.swing.KeyStroke.getKeyChar:()C
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 10 /* keyString */
        end local 13 // int keyCode
        end local 12 // int modifiers
        15: .line 326
      StackMap locals:
      StackMap stack:
            aload 6 /* b */
            invokevirtual javax.swing.JMenuItem.getFont:()Ljava/awt/Font;
            astore 12 /* font */
        start local 12 // java.awt.Font font
        16: .line 327
            aload 6 /* b */
            aload 12 /* font */
            invokevirtual javax.swing.JMenuItem.getFontMetrics:(Ljava/awt/Font;)Ljava/awt/FontMetrics;
            astore 13 /* fm */
        start local 13 // java.awt.FontMetrics fm
        17: .line 328
            aload 6 /* b */
            aload 5 /* acceleratorFont */
            invokevirtual javax.swing.JMenuItem.getFontMetrics:(Ljava/awt/Font;)Ljava/awt/FontMetrics;
            astore 14 /* fmAccel */
        start local 14 // java.awt.FontMetrics fmAccel
        18: .line 330
            new java.awt.Rectangle
            dup
            invokespecial java.awt.Rectangle.<init>:()V
            astore 15 /* iconRect */
        start local 15 // java.awt.Rectangle iconRect
        19: .line 331
            new java.awt.Rectangle
            dup
            invokespecial java.awt.Rectangle.<init>:()V
            astore 16 /* textRect */
        start local 16 // java.awt.Rectangle textRect
        20: .line 332
            new java.awt.Rectangle
            dup
            invokespecial java.awt.Rectangle.<init>:()V
            astore 17 /* acceleratorRect */
        start local 17 // java.awt.Rectangle acceleratorRect
        21: .line 333
            new java.awt.Rectangle
            dup
            invokespecial java.awt.Rectangle.<init>:()V
            astore 18 /* checkIconRect */
        start local 18 // java.awt.Rectangle checkIconRect
        22: .line 334
            new java.awt.Rectangle
            dup
            invokespecial java.awt.Rectangle.<init>:()V
            astore 19 /* arrowIconRect */
        start local 19 // java.awt.Rectangle arrowIconRect
        23: .line 335
            new java.awt.Rectangle
            dup
            sipush 32767
            sipush 32767
            invokespecial java.awt.Rectangle.<init>:(II)V
            astore 20 /* viewRect */
        start local 20 // java.awt.Rectangle viewRect
        24: .line 337
            aload 0 /* this */
            aload 6 /* b */
            aload 13 /* fm */
            aload 8 /* text */
            aload 14 /* fmAccel */
            aload 10 /* keyString */
            aload 11 /* modifiersString */
            aload 7 /* icon */
            aload 2 /* checkIcon */
            aload 3 /* arrowIcon */
            aload 6 /* b */
            invokevirtual javax.swing.JMenuItem.getVerticalAlignment:()I
            aload 6 /* b */
            invokevirtual javax.swing.JMenuItem.getHorizontalAlignment:()I
            aload 6 /* b */
            invokevirtual javax.swing.JMenuItem.getVerticalTextPosition:()I
            aload 6 /* b */
            invokevirtual javax.swing.JMenuItem.getHorizontalTextPosition:()I
            aload 20 /* viewRect */
            aload 15 /* iconRect */
            aload 16 /* textRect */
            aload 17 /* acceleratorRect */
            aload 18 /* checkIconRect */
            aload 19 /* arrowIconRect */
            aload 8 /* text */
            ifnonnull 25
            iconst_0
            goto 26
      StackMap locals: com.apple.laf.AquaMenuPainter javax.swing.JComponent javax.swing.Icon javax.swing.Icon int java.awt.Font javax.swing.JMenuItem javax.swing.Icon java.lang.String javax.swing.KeyStroke java.lang.String java.lang.String java.awt.Font java.awt.FontMetrics java.awt.FontMetrics java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle
      StackMap stack: com.apple.laf.AquaMenuPainter javax.swing.JMenuItem java.awt.FontMetrics java.lang.String java.awt.FontMetrics java.lang.String java.lang.String javax.swing.Icon javax.swing.Icon javax.swing.Icon int int int int java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle
        25: iload 4 /* defaultTextIconGap */
      StackMap locals: com.apple.laf.AquaMenuPainter javax.swing.JComponent javax.swing.Icon javax.swing.Icon int java.awt.Font javax.swing.JMenuItem javax.swing.Icon java.lang.String javax.swing.KeyStroke java.lang.String java.lang.String java.awt.Font java.awt.FontMetrics java.awt.FontMetrics java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle
      StackMap stack: com.apple.laf.AquaMenuPainter javax.swing.JMenuItem java.awt.FontMetrics java.lang.String java.awt.FontMetrics java.lang.String java.lang.String javax.swing.Icon javax.swing.Icon javax.swing.Icon int int int int java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle int
        26: iload 4 /* defaultTextIconGap */
            invokevirtual com.apple.laf.AquaMenuPainter.layoutMenuItem:(Ljavax/swing/JMenuItem;Ljava/awt/FontMetrics;Ljava/lang/String;Ljava/awt/FontMetrics;Ljava/lang/String;Ljava/lang/String;Ljavax/swing/Icon;Ljavax/swing/Icon;Ljavax/swing/Icon;IIIILjava/awt/Rectangle;Ljava/awt/Rectangle;Ljava/awt/Rectangle;Ljava/awt/Rectangle;Ljava/awt/Rectangle;Ljava/awt/Rectangle;II)Ljava/lang/String;
            pop
        27: .line 339
            new java.awt.Rectangle
            dup
            invokespecial java.awt.Rectangle.<init>:()V
            astore 21 /* r */
        start local 21 // java.awt.Rectangle r
        28: .line 340
            aload 21 /* r */
            aload 16 /* textRect */
            invokevirtual java.awt.Rectangle.setBounds:(Ljava/awt/Rectangle;)V
        29: .line 341
            aload 15 /* iconRect */
            getfield java.awt.Rectangle.x:I
            aload 15 /* iconRect */
            getfield java.awt.Rectangle.y:I
            aload 15 /* iconRect */
            getfield java.awt.Rectangle.width:I
            aload 15 /* iconRect */
            getfield java.awt.Rectangle.height:I
            aload 21 /* r */
            invokestatic javax.swing.SwingUtilities.computeUnion:(IIIILjava/awt/Rectangle;)Ljava/awt/Rectangle;
            astore 21 /* r */
        30: .line 345
            aload 10 /* keyString */
            ifnull 31
            aload 10 /* keyString */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 31
            iconst_0
            goto 32
      StackMap locals: java.awt.Rectangle
      StackMap stack:
        31: iconst_1
      StackMap locals:
      StackMap stack: int
        32: istore 22 /* acceleratorTextIsEmpty */
        start local 22 // boolean acceleratorTextIsEmpty
        33: .line 347
            iload 22 /* acceleratorTextIsEmpty */
            ifne 35
        34: .line 348
            aload 21 /* r */
            dup
            getfield java.awt.Rectangle.width:I
            aload 17 /* acceleratorRect */
            getfield java.awt.Rectangle.width:I
            iadd
            putfield java.awt.Rectangle.width:I
        35: .line 351
      StackMap locals: int
      StackMap stack:
            aload 6 /* b */
            invokestatic com.apple.laf.AquaMenuPainter.isTopLevelMenu:(Ljavax/swing/JMenuItem;)Z
            ifne 40
        36: .line 353
            aload 21 /* r */
            dup
            getfield java.awt.Rectangle.width:I
            aload 18 /* checkIconRect */
            getfield java.awt.Rectangle.width:I
            iadd
            putfield java.awt.Rectangle.width:I
        37: .line 354
            aload 21 /* r */
            dup
            getfield java.awt.Rectangle.width:I
            iload 4 /* defaultTextIconGap */
            iadd
            putfield java.awt.Rectangle.width:I
        38: .line 357
            aload 21 /* r */
            dup
            getfield java.awt.Rectangle.width:I
            iload 4 /* defaultTextIconGap */
            iadd
            putfield java.awt.Rectangle.width:I
        39: .line 358
            aload 21 /* r */
            dup
            getfield java.awt.Rectangle.width:I
            aload 19 /* arrowIconRect */
            getfield java.awt.Rectangle.width:I
            iadd
            putfield java.awt.Rectangle.width:I
        40: .line 361
      StackMap locals:
      StackMap stack:
            aload 6 /* b */
            invokevirtual javax.swing.JMenuItem.getInsets:()Ljava/awt/Insets;
            astore 23 /* insets */
        start local 23 // java.awt.Insets insets
        41: .line 362
            aload 23 /* insets */
            ifnull 44
        42: .line 363
            aload 21 /* r */
            dup
            getfield java.awt.Rectangle.width:I
            aload 23 /* insets */
            getfield java.awt.Insets.left:I
            aload 23 /* insets */
            getfield java.awt.Insets.right:I
            iadd
            iadd
            putfield java.awt.Rectangle.width:I
        43: .line 364
            aload 21 /* r */
            dup
            getfield java.awt.Rectangle.height:I
            aload 23 /* insets */
            getfield java.awt.Insets.top:I
            aload 23 /* insets */
            getfield java.awt.Insets.bottom:I
            iadd
            iadd
            putfield java.awt.Rectangle.height:I
        44: .line 368
      StackMap locals: java.awt.Insets
      StackMap stack:
            aload 21 /* r */
            dup
            getfield java.awt.Rectangle.width:I
            iconst_4
            iload 4 /* defaultTextIconGap */
            iadd
            iadd
            putfield java.awt.Rectangle.width:I
        45: .line 369
            aload 21 /* r */
            aload 21 /* r */
            getfield java.awt.Rectangle.height:I
            bipush 18
            invokestatic java.lang.Math.max:(II)I
            putfield java.awt.Rectangle.height:I
        46: .line 371
            aload 21 /* r */
            invokevirtual java.awt.Rectangle.getSize:()Ljava/awt/Dimension;
            areturn
        end local 23 // java.awt.Insets insets
        end local 22 // boolean acceleratorTextIsEmpty
        end local 21 // java.awt.Rectangle r
        end local 20 // java.awt.Rectangle viewRect
        end local 19 // java.awt.Rectangle arrowIconRect
        end local 18 // java.awt.Rectangle checkIconRect
        end local 17 // java.awt.Rectangle acceleratorRect
        end local 16 // java.awt.Rectangle textRect
        end local 15 // java.awt.Rectangle iconRect
        end local 14 // java.awt.FontMetrics fmAccel
        end local 13 // java.awt.FontMetrics fm
        end local 12 // java.awt.Font font
        end local 11 // java.lang.String modifiersString
        end local 10 // java.lang.String keyString
        end local 9 // javax.swing.KeyStroke accelerator
        end local 8 // java.lang.String text
        end local 7 // javax.swing.Icon icon
        end local 6 // javax.swing.JMenuItem b
        end local 5 // java.awt.Font acceleratorFont
        end local 4 // int defaultTextIconGap
        end local 3 // javax.swing.Icon arrowIcon
        end local 2 // javax.swing.Icon checkIcon
        end local 1 // javax.swing.JComponent c
        end local 0 // com.apple.laf.AquaMenuPainter this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   47     0                    this  Lcom/apple/laf/AquaMenuPainter;
            0   47     1                       c  Ljavax/swing/JComponent;
            0   47     2               checkIcon  Ljavax/swing/Icon;
            0   47     3               arrowIcon  Ljavax/swing/Icon;
            0   47     4      defaultTextIconGap  I
            0   47     5         acceleratorFont  Ljava/awt/Font;
            1   47     6                       b  Ljavax/swing/JMenuItem;
            2   47     7                    icon  Ljavax/swing/Icon;
            3   47     8                    text  Ljava/lang/String;
            4   47     9             accelerator  Ljavax/swing/KeyStroke;
            5   47    10               keyString  Ljava/lang/String;
            6   47    11         modifiersString  Ljava/lang/String;
            8   15    12               modifiers  I
           11   15    13                 keyCode  I
           16   47    12                    font  Ljava/awt/Font;
           17   47    13                      fm  Ljava/awt/FontMetrics;
           18   47    14                 fmAccel  Ljava/awt/FontMetrics;
           19   47    15                iconRect  Ljava/awt/Rectangle;
           20   47    16                textRect  Ljava/awt/Rectangle;
           21   47    17         acceleratorRect  Ljava/awt/Rectangle;
           22   47    18           checkIconRect  Ljava/awt/Rectangle;
           23   47    19           arrowIconRect  Ljava/awt/Rectangle;
           24   47    20                viewRect  Ljava/awt/Rectangle;
           28   47    21                       r  Ljava/awt/Rectangle;
           33   47    22  acceleratorTextIsEmpty  Z
           41   47    23                  insets  Ljava/awt/Insets;
    MethodParameters:
                    Name  Flags
      c                   final
      checkIcon           final
      arrowIcon           final
      defaultTextIconGap  final
      acceleratorFont     final

  protected void paintCheck(java.awt.Graphics, javax.swing.JMenuItem, javax.swing.Icon, java.awt.Rectangle);
    descriptor: (Ljava/awt/Graphics;Ljavax/swing/JMenuItem;Ljavax/swing/Icon;Ljava/awt/Rectangle;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // com.apple.laf.AquaMenuPainter this
        start local 1 // java.awt.Graphics g
        start local 2 // javax.swing.JMenuItem item
        start local 3 // javax.swing.Icon checkIcon
        start local 4 // java.awt.Rectangle checkIconRect
         0: .line 375
            aload 2 /* item */
            invokestatic com.apple.laf.AquaMenuPainter.isTopLevelMenu:(Ljavax/swing/JMenuItem;)Z
            ifne 1
            aload 2 /* item */
            invokevirtual javax.swing.JMenuItem.isSelected:()Z
            ifne 2
      StackMap locals:
      StackMap stack:
         1: return
         2: .line 377
      StackMap locals:
      StackMap stack:
            aload 2 /* item */
            invokevirtual javax.swing.JMenuItem.isArmed:()Z
            ifeq 5
            aload 3 /* checkIcon */
            instanceof com.apple.laf.AquaIcon$InvertableIcon
            ifeq 5
         3: .line 378
            aload 3 /* checkIcon */
            checkcast com.apple.laf.AquaIcon$InvertableIcon
            invokeinterface com.apple.laf.AquaIcon$InvertableIcon.getInvertedIcon:()Ljavax/swing/Icon;
            aload 2 /* item */
            aload 1 /* g */
            aload 4 /* checkIconRect */
            getfield java.awt.Rectangle.x:I
            aload 4 /* checkIconRect */
            getfield java.awt.Rectangle.y:I
            invokeinterface javax.swing.Icon.paintIcon:(Ljava/awt/Component;Ljava/awt/Graphics;II)V
         4: .line 379
            goto 6
         5: .line 380
      StackMap locals:
      StackMap stack:
            aload 3 /* checkIcon */
            aload 2 /* item */
            aload 1 /* g */
            aload 4 /* checkIconRect */
            getfield java.awt.Rectangle.x:I
            aload 4 /* checkIconRect */
            getfield java.awt.Rectangle.y:I
            invokeinterface javax.swing.Icon.paintIcon:(Ljava/awt/Component;Ljava/awt/Graphics;II)V
         6: .line 382
      StackMap locals:
      StackMap stack:
            return
        end local 4 // java.awt.Rectangle checkIconRect
        end local 3 // javax.swing.Icon checkIcon
        end local 2 // javax.swing.JMenuItem item
        end local 1 // java.awt.Graphics g
        end local 0 // com.apple.laf.AquaMenuPainter this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    7     0           this  Lcom/apple/laf/AquaMenuPainter;
            0    7     1              g  Ljava/awt/Graphics;
            0    7     2           item  Ljavax/swing/JMenuItem;
            0    7     3      checkIcon  Ljavax/swing/Icon;
            0    7     4  checkIconRect  Ljava/awt/Rectangle;
    MethodParameters:
               Name  Flags
      g              final
      item           final
      checkIcon      
      checkIconRect  

  protected void paintIcon(java.awt.Graphics, javax.swing.JMenuItem, java.awt.Rectangle, boolean);
    descriptor: (Ljava/awt/Graphics;Ljavax/swing/JMenuItem;Ljava/awt/Rectangle;Z)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=7, args_size=5
        start local 0 // com.apple.laf.AquaMenuPainter this
        start local 1 // java.awt.Graphics g
        start local 2 // javax.swing.JMenuItem c
        start local 3 // java.awt.Rectangle localIconRect
        start local 4 // boolean isEnabled
         0: .line 385
            aload 2 /* c */
            invokevirtual javax.swing.JMenuItem.getModel:()Ljavax/swing/ButtonModel;
            astore 5 /* model */
        start local 5 // javax.swing.ButtonModel model
         1: .line 387
            iload 4 /* isEnabled */
            ifne 4
         2: .line 388
            aload 2 /* c */
            invokevirtual javax.swing.JMenuItem.getDisabledIcon:()Ljavax/swing/Icon;
            astore 6 /* icon */
        start local 6 // javax.swing.Icon icon
         3: .line 389
            goto 10
        end local 6 // javax.swing.Icon icon
      StackMap locals: javax.swing.ButtonModel
      StackMap stack:
         4: aload 5 /* model */
            invokeinterface javax.swing.ButtonModel.isPressed:()Z
            ifeq 9
            aload 5 /* model */
            invokeinterface javax.swing.ButtonModel.isArmed:()Z
            ifeq 9
         5: .line 390
            aload 2 /* c */
            invokevirtual javax.swing.JMenuItem.getPressedIcon:()Ljavax/swing/Icon;
            astore 6 /* icon */
        start local 6 // javax.swing.Icon icon
         6: .line 391
            aload 6 /* icon */
            ifnonnull 10
         7: .line 393
            aload 2 /* c */
            invokevirtual javax.swing.JMenuItem.getIcon:()Ljavax/swing/Icon;
            astore 6 /* icon */
         8: .line 395
            goto 10
        end local 6 // javax.swing.Icon icon
         9: .line 396
      StackMap locals:
      StackMap stack:
            aload 2 /* c */
            invokevirtual javax.swing.JMenuItem.getIcon:()Ljavax/swing/Icon;
            astore 6 /* icon */
        start local 6 // javax.swing.Icon icon
        10: .line 399
      StackMap locals: javax.swing.Icon
      StackMap stack:
            aload 6 /* icon */
            ifnull 11
            aload 6 /* icon */
            aload 2 /* c */
            aload 1 /* g */
            aload 3 /* localIconRect */
            getfield java.awt.Rectangle.x:I
            aload 3 /* localIconRect */
            getfield java.awt.Rectangle.y:I
            invokeinterface javax.swing.Icon.paintIcon:(Ljava/awt/Component;Ljava/awt/Graphics;II)V
        11: .line 400
      StackMap locals:
      StackMap stack:
            return
        end local 6 // javax.swing.Icon icon
        end local 5 // javax.swing.ButtonModel model
        end local 4 // boolean isEnabled
        end local 3 // java.awt.Rectangle localIconRect
        end local 2 // javax.swing.JMenuItem c
        end local 1 // java.awt.Graphics g
        end local 0 // com.apple.laf.AquaMenuPainter this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   12     0           this  Lcom/apple/laf/AquaMenuPainter;
            0   12     1              g  Ljava/awt/Graphics;
            0   12     2              c  Ljavax/swing/JMenuItem;
            0   12     3  localIconRect  Ljava/awt/Rectangle;
            0   12     4      isEnabled  Z
            1   12     5          model  Ljavax/swing/ButtonModel;
            3    4     6           icon  Ljavax/swing/Icon;
            6    9     6           icon  Ljavax/swing/Icon;
           10   12     6           icon  Ljavax/swing/Icon;
    MethodParameters:
               Name  Flags
      g              final
      c              final
      localIconRect  final
      isEnabled      

  protected void paintArrow(java.awt.Graphics, javax.swing.JMenuItem, javax.swing.ButtonModel, javax.swing.Icon, java.awt.Rectangle);
    descriptor: (Ljava/awt/Graphics;Ljavax/swing/JMenuItem;Ljavax/swing/ButtonModel;Ljavax/swing/Icon;Ljava/awt/Rectangle;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=6, args_size=6
        start local 0 // com.apple.laf.AquaMenuPainter this
        start local 1 // java.awt.Graphics g
        start local 2 // javax.swing.JMenuItem c
        start local 3 // javax.swing.ButtonModel model
        start local 4 // javax.swing.Icon arrowIcon
        start local 5 // java.awt.Rectangle arrowIconRect
         0: .line 403
            aload 2 /* c */
            invokestatic com.apple.laf.AquaMenuPainter.isTopLevelMenu:(Ljavax/swing/JMenuItem;)Z
            ifeq 1
            return
         1: .line 405
      StackMap locals:
      StackMap stack:
            aload 2 /* c */
            instanceof javax.swing.JMenu
            ifeq 5
            aload 3 /* model */
            invokeinterface javax.swing.ButtonModel.isArmed:()Z
            ifne 2
            aload 3 /* model */
            invokeinterface javax.swing.ButtonModel.isSelected:()Z
            ifeq 5
      StackMap locals:
      StackMap stack:
         2: aload 4 /* arrowIcon */
            instanceof com.apple.laf.AquaIcon$InvertableIcon
            ifeq 5
         3: .line 406
            aload 4 /* arrowIcon */
            checkcast com.apple.laf.AquaIcon$InvertableIcon
            invokeinterface com.apple.laf.AquaIcon$InvertableIcon.getInvertedIcon:()Ljavax/swing/Icon;
            aload 2 /* c */
            aload 1 /* g */
            aload 5 /* arrowIconRect */
            getfield java.awt.Rectangle.x:I
            aload 5 /* arrowIconRect */
            getfield java.awt.Rectangle.y:I
            invokeinterface javax.swing.Icon.paintIcon:(Ljava/awt/Component;Ljava/awt/Graphics;II)V
         4: .line 407
            goto 6
         5: .line 408
      StackMap locals:
      StackMap stack:
            aload 4 /* arrowIcon */
            aload 2 /* c */
            aload 1 /* g */
            aload 5 /* arrowIconRect */
            getfield java.awt.Rectangle.x:I
            aload 5 /* arrowIconRect */
            getfield java.awt.Rectangle.y:I
            invokeinterface javax.swing.Icon.paintIcon:(Ljava/awt/Component;Ljava/awt/Graphics;II)V
         6: .line 410
      StackMap locals:
      StackMap stack:
            return
        end local 5 // java.awt.Rectangle arrowIconRect
        end local 4 // javax.swing.Icon arrowIcon
        end local 3 // javax.swing.ButtonModel model
        end local 2 // javax.swing.JMenuItem c
        end local 1 // java.awt.Graphics g
        end local 0 // com.apple.laf.AquaMenuPainter this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    7     0           this  Lcom/apple/laf/AquaMenuPainter;
            0    7     1              g  Ljava/awt/Graphics;
            0    7     2              c  Ljavax/swing/JMenuItem;
            0    7     3          model  Ljavax/swing/ButtonModel;
            0    7     4      arrowIcon  Ljavax/swing/Icon;
            0    7     5  arrowIconRect  Ljava/awt/Rectangle;
    MethodParameters:
               Name  Flags
      g              
      c              
      model          
      arrowIcon      
      arrowIconRect  

  public void drawString(java.awt.Graphics, javax.swing.JComponent, java.lang.String, int, int, int, boolean, boolean);
    descriptor: (Ljava/awt/Graphics;Ljavax/swing/JComponent;Ljava/lang/String;IIIZZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=14, args_size=9
        start local 0 // com.apple.laf.AquaMenuPainter this
        start local 1 // java.awt.Graphics g
        start local 2 // javax.swing.JComponent c
        start local 3 // java.lang.String text
        start local 4 // int underlinedChar
        start local 5 // int x
        start local 6 // int y
        start local 7 // boolean isEnabled
        start local 8 // boolean isSelected
         0: .line 418
            iconst_m1
            istore 11 /* index */
        start local 11 // int index
         1: .line 420
            iload 4 /* underlinedChar */
            ifeq 11
         2: .line 421
            iload 4 /* underlinedChar */
            i2c
            invokestatic java.lang.Character.toUpperCase:(C)C
            istore 10 /* uc */
        start local 10 // char uc
         3: .line 422
            iload 4 /* underlinedChar */
            i2c
            invokestatic java.lang.Character.toLowerCase:(C)C
            istore 9 /* lc */
        start local 9 // char lc
         4: .line 424
            aload 3 /* text */
            iload 10 /* uc */
            invokevirtual java.lang.String.indexOf:(I)I
            istore 13 /* uci */
        start local 13 // int uci
         5: .line 425
            aload 3 /* text */
            iload 9 /* lc */
            invokevirtual java.lang.String.indexOf:(I)I
            istore 12 /* lci */
        start local 12 // int lci
         6: .line 427
            iload 13 /* uci */
            iconst_m1
            if_icmpne 7
            iload 12 /* lci */
            istore 11 /* index */
            goto 11
         7: .line 428
      StackMap locals: com.apple.laf.AquaMenuPainter java.awt.Graphics javax.swing.JComponent java.lang.String int int int int int int int int int int
      StackMap stack:
            iload 12 /* lci */
            iconst_m1
            if_icmpne 8
            iload 13 /* uci */
            istore 11 /* index */
            goto 11
         8: .line 429
      StackMap locals:
      StackMap stack:
            iload 12 /* lci */
            iload 13 /* uci */
            if_icmpge 9
            iload 12 /* lci */
            goto 10
      StackMap locals:
      StackMap stack:
         9: iload 13 /* uci */
      StackMap locals:
      StackMap stack: int
        10: istore 11 /* index */
        end local 13 // int uci
        end local 12 // int lci
        end local 10 // char uc
        end local 9 // char lc
        11: .line 432
      StackMap locals: com.apple.laf.AquaMenuPainter java.awt.Graphics javax.swing.JComponent java.lang.String int int int int int top top int
      StackMap stack:
            aload 2 /* c */
            aload 1 /* g */
            aload 3 /* text */
            iload 11 /* index */
            iload 5 /* x */
            iload 6 /* y */
            invokestatic sun.swing.SwingUtilities2.drawStringUnderlineCharAt:(Ljavax/swing/JComponent;Ljava/awt/Graphics;Ljava/lang/String;III)V
        12: .line 433
            return
        end local 11 // int index
        end local 8 // boolean isSelected
        end local 7 // boolean isEnabled
        end local 6 // int y
        end local 5 // int x
        end local 4 // int underlinedChar
        end local 3 // java.lang.String text
        end local 2 // javax.swing.JComponent c
        end local 1 // java.awt.Graphics g
        end local 0 // com.apple.laf.AquaMenuPainter this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   13     0            this  Lcom/apple/laf/AquaMenuPainter;
            0   13     1               g  Ljava/awt/Graphics;
            0   13     2               c  Ljavax/swing/JComponent;
            0   13     3            text  Ljava/lang/String;
            0   13     4  underlinedChar  I
            0   13     5               x  I
            0   13     6               y  I
            0   13     7       isEnabled  Z
            0   13     8      isSelected  Z
            4   11     9              lc  C
            3   11    10              uc  C
            1   13    11           index  I
            6   11    12             lci  I
            5   11    13             uci  I
    MethodParameters:
                Name  Flags
      g               final
      c               final
      text            final
      underlinedChar  final
      x               final
      y               final
      isEnabled       final
      isSelected      final

  private static boolean isTopLevelMenu(javax.swing.JMenuItem);
    descriptor: (Ljavax/swing/JMenuItem;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.JMenuItem menuItem
         0: .line 440
            aload 0 /* menuItem */
            instanceof javax.swing.JMenu
            ifeq 1
            aload 0 /* menuItem */
            checkcast javax.swing.JMenu
            invokevirtual javax.swing.JMenu.isTopLevelMenu:()Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // javax.swing.JMenuItem menuItem
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0  menuItem  Ljavax/swing/JMenuItem;
    MethodParameters:
          Name  Flags
      menuItem  final

  private java.lang.String layoutMenuItem(javax.swing.JMenuItem, java.awt.FontMetrics, java.lang.String, java.awt.FontMetrics, java.lang.String, java.lang.String, javax.swing.Icon, javax.swing.Icon, javax.swing.Icon, int, int, int, int, java.awt.Rectangle, java.awt.Rectangle, java.awt.Rectangle, java.awt.Rectangle, java.awt.Rectangle, java.awt.Rectangle, int, int);
    descriptor: (Ljavax/swing/JMenuItem;Ljava/awt/FontMetrics;Ljava/lang/String;Ljava/awt/FontMetrics;Ljava/lang/String;Ljava/lang/String;Ljavax/swing/Icon;Ljavax/swing/Icon;Ljavax/swing/Icon;IIIILjava/awt/Rectangle;Ljava/awt/Rectangle;Ljava/awt/Rectangle;Ljava/awt/Rectangle;Ljava/awt/Rectangle;Ljava/awt/Rectangle;II)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=12, locals=26, args_size=22
        start local 0 // com.apple.laf.AquaMenuPainter this
        start local 1 // javax.swing.JMenuItem menuItem
        start local 2 // java.awt.FontMetrics fm
        start local 3 // java.lang.String text
        start local 4 // java.awt.FontMetrics fmAccel
        start local 5 // java.lang.String keyString
        start local 6 // java.lang.String modifiersString
        start local 7 // javax.swing.Icon icon
        start local 8 // javax.swing.Icon checkIcon
        start local 9 // javax.swing.Icon arrowIcon
        start local 10 // int verticalAlignment
        start local 11 // int horizontalAlignment
        start local 12 // int verticalTextPosition
        start local 13 // int horizontalTextPosition
        start local 14 // java.awt.Rectangle viewR
        start local 15 // java.awt.Rectangle iconR
        start local 16 // java.awt.Rectangle textR
        start local 17 // java.awt.Rectangle acceleratorR
        start local 18 // java.awt.Rectangle checkIconR
        start local 19 // java.awt.Rectangle arrowIconR
        start local 20 // int textIconGap
        start local 21 // int menuItemGap
         0: .line 445
            aload 1 /* menuItem */
            aload 2 /* fm */
            aload 3 /* text */
            aload 7 /* icon */
            iload 10 /* verticalAlignment */
            iconst_2
            iload 12 /* verticalTextPosition */
            iload 13 /* horizontalTextPosition */
            aload 14 /* viewR */
            aload 15 /* iconR */
            aload 16 /* textR */
            iload 20 /* textIconGap */
            invokestatic javax.swing.SwingUtilities.layoutCompoundLabel:(Ljavax/swing/JComponent;Ljava/awt/FontMetrics;Ljava/lang/String;Ljavax/swing/Icon;IIIILjava/awt/Rectangle;Ljava/awt/Rectangle;Ljava/awt/Rectangle;I)Ljava/lang/String;
            pop
         1: .line 447
            aload 5 /* keyString */
            ifnull 2
            aload 5 /* keyString */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 2
            iconst_0
            goto 3
      StackMap locals:
      StackMap stack:
         2: iconst_1
      StackMap locals:
      StackMap stack: int
         3: istore 22 /* acceleratorTextIsEmpty */
        start local 22 // boolean acceleratorTextIsEmpty
         4: .line 449
            iload 22 /* acceleratorTextIsEmpty */
            ifeq 8
         5: .line 450
            aload 17 /* acceleratorR */
            aload 17 /* acceleratorR */
            iconst_0
            dup_x1
            putfield java.awt.Rectangle.height:I
            putfield java.awt.Rectangle.width:I
         6: .line 451
            ldc ""
            astore 5 /* keyString */
         7: .line 452
            goto 11
         8: .line 454
      StackMap locals: int
      StackMap stack:
            aload 17 /* acceleratorR */
            aload 4 /* fmAccel */
            aload 6 /* modifiersString */
            invokestatic javax.swing.SwingUtilities.computeStringWidth:(Ljava/awt/FontMetrics;Ljava/lang/String;)I
            putfield java.awt.Rectangle.width:I
         9: .line 457
            aload 17 /* acceleratorR */
            dup
            getfield java.awt.Rectangle.width:I
            aload 2 /* fm */
            bipush 77
            invokevirtual java.awt.FontMetrics.charWidth:(C)I
            aload 2 /* fm */
            aload 5 /* keyString */
            invokestatic javax.swing.SwingUtilities.computeStringWidth:(Ljava/awt/FontMetrics;Ljava/lang/String;)I
            invokestatic java.lang.Math.max:(II)I
            iadd
            putfield java.awt.Rectangle.width:I
        10: .line 458
            aload 17 /* acceleratorR */
            aload 4 /* fmAccel */
            invokevirtual java.awt.FontMetrics.getHeight:()I
            putfield java.awt.Rectangle.height:I
        11: .line 464
      StackMap locals:
      StackMap stack:
            aload 1 /* menuItem */
            invokestatic com.apple.laf.AquaMenuPainter.isTopLevelMenu:(Ljavax/swing/JMenuItem;)Z
            istore 23 /* isTopLevelMenu */
        start local 23 // boolean isTopLevelMenu
        12: .line 465
            iload 23 /* isTopLevelMenu */
            ifne 25
        13: .line 466
            aload 8 /* checkIcon */
            ifnull 17
        14: .line 467
            aload 18 /* checkIconR */
            aload 8 /* checkIcon */
            invokeinterface javax.swing.Icon.getIconWidth:()I
            putfield java.awt.Rectangle.width:I
        15: .line 468
            aload 18 /* checkIconR */
            aload 8 /* checkIcon */
            invokeinterface javax.swing.Icon.getIconHeight:()I
            putfield java.awt.Rectangle.height:I
        16: .line 469
            goto 18
        17: .line 470
      StackMap locals: int
      StackMap stack:
            aload 18 /* checkIconR */
            aload 18 /* checkIconR */
            bipush 16
            dup_x1
            putfield java.awt.Rectangle.height:I
            putfield java.awt.Rectangle.width:I
        18: .line 476
      StackMap locals:
      StackMap stack:
            aload 9 /* arrowIcon */
            ifnull 22
        19: .line 477
            aload 19 /* arrowIconR */
            aload 9 /* arrowIcon */
            invokeinterface javax.swing.Icon.getIconWidth:()I
            putfield java.awt.Rectangle.width:I
        20: .line 478
            aload 19 /* arrowIconR */
            aload 9 /* arrowIcon */
            invokeinterface javax.swing.Icon.getIconHeight:()I
            putfield java.awt.Rectangle.height:I
        21: .line 479
            goto 23
        22: .line 480
      StackMap locals:
      StackMap stack:
            aload 19 /* arrowIconR */
            aload 19 /* arrowIconR */
            bipush 16
            dup_x1
            putfield java.awt.Rectangle.height:I
            putfield java.awt.Rectangle.width:I
        23: .line 483
      StackMap locals:
      StackMap stack:
            aload 16 /* textR */
            dup
            getfield java.awt.Rectangle.x:I
            bipush 12
            iadd
            putfield java.awt.Rectangle.x:I
        24: .line 484
            aload 15 /* iconR */
            dup
            getfield java.awt.Rectangle.x:I
            bipush 12
            iadd
            putfield java.awt.Rectangle.x:I
        25: .line 487
      StackMap locals:
      StackMap stack:
            aload 15 /* iconR */
            aload 16 /* textR */
            invokevirtual java.awt.Rectangle.union:(Ljava/awt/Rectangle;)Ljava/awt/Rectangle;
            astore 24 /* labelR */
        start local 24 // java.awt.Rectangle labelR
        26: .line 491
            aload 17 /* acceleratorR */
            dup
            getfield java.awt.Rectangle.x:I
            aload 14 /* viewR */
            getfield java.awt.Rectangle.width:I
            aload 19 /* arrowIconR */
            getfield java.awt.Rectangle.width:I
            isub
            aload 17 /* acceleratorR */
            getfield java.awt.Rectangle.width:I
            isub
            iadd
            putfield java.awt.Rectangle.x:I
        27: .line 492
            aload 17 /* acceleratorR */
            aload 14 /* viewR */
            getfield java.awt.Rectangle.y:I
            aload 14 /* viewR */
            getfield java.awt.Rectangle.height:I
            iconst_2
            idiv
            iadd
            aload 17 /* acceleratorR */
            getfield java.awt.Rectangle.height:I
            iconst_2
            idiv
            isub
            putfield java.awt.Rectangle.y:I
        28: .line 494
            iload 23 /* isTopLevelMenu */
            ifne 34
        29: .line 497
            aload 19 /* arrowIconR */
            aload 14 /* viewR */
            getfield java.awt.Rectangle.width:I
            aload 19 /* arrowIconR */
            getfield java.awt.Rectangle.width:I
            isub
            iconst_1
            iadd
            putfield java.awt.Rectangle.x:I
        30: .line 498
            aload 19 /* arrowIconR */
            aload 14 /* viewR */
            getfield java.awt.Rectangle.y:I
            aload 24 /* labelR */
            getfield java.awt.Rectangle.height:I
            iconst_2
            idiv
            iadd
            aload 19 /* arrowIconR */
            getfield java.awt.Rectangle.height:I
            iconst_2
            idiv
            isub
            iconst_1
            iadd
            putfield java.awt.Rectangle.y:I
        31: .line 500
            aload 18 /* checkIconR */
            aload 14 /* viewR */
            getfield java.awt.Rectangle.y:I
            aload 24 /* labelR */
            getfield java.awt.Rectangle.height:I
            iconst_2
            idiv
            iadd
            aload 18 /* checkIconR */
            getfield java.awt.Rectangle.height:I
            iconst_2
            idiv
            isub
            putfield java.awt.Rectangle.y:I
        32: .line 501
            aload 18 /* checkIconR */
            iconst_5
            putfield java.awt.Rectangle.x:I
        33: .line 503
            aload 16 /* textR */
            dup
            getfield java.awt.Rectangle.width:I
            bipush 8
            iadd
            putfield java.awt.Rectangle.width:I
        34: .line 509
      StackMap locals: java.awt.Rectangle
      StackMap stack:
            aload 1 /* menuItem */
            invokestatic com.apple.laf.AquaUtils.isLeftToRight:(Ljava/awt/Component;)Z
            ifne 41
        35: .line 511
            aload 14 /* viewR */
            getfield java.awt.Rectangle.width:I
            istore 25 /* w */
        start local 25 // int w
        36: .line 512
            aload 18 /* checkIconR */
            iload 25 /* w */
            aload 18 /* checkIconR */
            getfield java.awt.Rectangle.x:I
            aload 18 /* checkIconR */
            getfield java.awt.Rectangle.width:I
            iadd
            isub
            putfield java.awt.Rectangle.x:I
        37: .line 513
            aload 15 /* iconR */
            iload 25 /* w */
            aload 15 /* iconR */
            getfield java.awt.Rectangle.x:I
            aload 15 /* iconR */
            getfield java.awt.Rectangle.width:I
            iadd
            isub
            putfield java.awt.Rectangle.x:I
        38: .line 514
            aload 16 /* textR */
            iload 25 /* w */
            aload 16 /* textR */
            getfield java.awt.Rectangle.x:I
            aload 16 /* textR */
            getfield java.awt.Rectangle.width:I
            iadd
            isub
            putfield java.awt.Rectangle.x:I
        39: .line 515
            aload 17 /* acceleratorR */
            iload 25 /* w */
            aload 17 /* acceleratorR */
            getfield java.awt.Rectangle.x:I
            aload 17 /* acceleratorR */
            getfield java.awt.Rectangle.width:I
            iadd
            isub
            putfield java.awt.Rectangle.x:I
        40: .line 516
            aload 19 /* arrowIconR */
            iload 25 /* w */
            aload 19 /* arrowIconR */
            getfield java.awt.Rectangle.x:I
            aload 19 /* arrowIconR */
            getfield java.awt.Rectangle.width:I
            iadd
            isub
            putfield java.awt.Rectangle.x:I
        end local 25 // int w
        41: .line 518
      StackMap locals:
      StackMap stack:
            aload 16 /* textR */
            dup
            getfield java.awt.Rectangle.x:I
            iload 21 /* menuItemGap */
            iadd
            putfield java.awt.Rectangle.x:I
        42: .line 519
            aload 15 /* iconR */
            dup
            getfield java.awt.Rectangle.x:I
            iload 21 /* menuItemGap */
            iadd
            putfield java.awt.Rectangle.x:I
        43: .line 521
            aload 3 /* text */
            areturn
        end local 24 // java.awt.Rectangle labelR
        end local 23 // boolean isTopLevelMenu
        end local 22 // boolean acceleratorTextIsEmpty
        end local 21 // int menuItemGap
        end local 20 // int textIconGap
        end local 19 // java.awt.Rectangle arrowIconR
        end local 18 // java.awt.Rectangle checkIconR
        end local 17 // java.awt.Rectangle acceleratorR
        end local 16 // java.awt.Rectangle textR
        end local 15 // java.awt.Rectangle iconR
        end local 14 // java.awt.Rectangle viewR
        end local 13 // int horizontalTextPosition
        end local 12 // int verticalTextPosition
        end local 11 // int horizontalAlignment
        end local 10 // int verticalAlignment
        end local 9 // javax.swing.Icon arrowIcon
        end local 8 // javax.swing.Icon checkIcon
        end local 7 // javax.swing.Icon icon
        end local 6 // java.lang.String modifiersString
        end local 5 // java.lang.String keyString
        end local 4 // java.awt.FontMetrics fmAccel
        end local 3 // java.lang.String text
        end local 2 // java.awt.FontMetrics fm
        end local 1 // javax.swing.JMenuItem menuItem
        end local 0 // com.apple.laf.AquaMenuPainter this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   44     0                    this  Lcom/apple/laf/AquaMenuPainter;
            0   44     1                menuItem  Ljavax/swing/JMenuItem;
            0   44     2                      fm  Ljava/awt/FontMetrics;
            0   44     3                    text  Ljava/lang/String;
            0   44     4                 fmAccel  Ljava/awt/FontMetrics;
            0   44     5               keyString  Ljava/lang/String;
            0   44     6         modifiersString  Ljava/lang/String;
            0   44     7                    icon  Ljavax/swing/Icon;
            0   44     8               checkIcon  Ljavax/swing/Icon;
            0   44     9               arrowIcon  Ljavax/swing/Icon;
            0   44    10       verticalAlignment  I
            0   44    11     horizontalAlignment  I
            0   44    12    verticalTextPosition  I
            0   44    13  horizontalTextPosition  I
            0   44    14                   viewR  Ljava/awt/Rectangle;
            0   44    15                   iconR  Ljava/awt/Rectangle;
            0   44    16                   textR  Ljava/awt/Rectangle;
            0   44    17            acceleratorR  Ljava/awt/Rectangle;
            0   44    18              checkIconR  Ljava/awt/Rectangle;
            0   44    19              arrowIconR  Ljava/awt/Rectangle;
            0   44    20             textIconGap  I
            0   44    21             menuItemGap  I
            4   44    22  acceleratorTextIsEmpty  Z
           12   44    23          isTopLevelMenu  Z
           26   44    24                  labelR  Ljava/awt/Rectangle;
           36   41    25                       w  I
    MethodParameters:
                        Name  Flags
      menuItem                final
      fm                      final
      text                    final
      fmAccel                 final
      keyString               
      modifiersString         final
      icon                    final
      checkIcon               final
      arrowIcon               final
      verticalAlignment       final
      horizontalAlignment     final
      verticalTextPosition    final
      horizontalTextPosition  final
      viewR                   final
      iconR                   final
      textR                   final
      acceleratorR            final
      checkIconR              final
      arrowIconR              final
      textIconGap             final
      menuItemGap             final

  public static javax.swing.border.Border getMenuBarPainter();
    descriptor: ()Ljavax/swing/border/Border;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=0
         0: .line 525
            new com.apple.laf.AquaBorder$Default
            dup
            invokespecial com.apple.laf.AquaBorder$Default.<init>:()V
            astore 0 /* border */
        start local 0 // com.apple.laf.AquaBorder border
         1: .line 526
            aload 0 /* border */
            getfield com.apple.laf.AquaBorder.painter:Lcom/apple/laf/AquaPainter;
            getfield com.apple.laf.AquaPainter.state:Lapple/laf/JRSUIState;
            getstatic apple.laf.JRSUIConstants$Widget.MENU_BAR:Lapple/laf/JRSUIConstants$Widget;
            invokevirtual apple.laf.JRSUIState.set:(Lapple/laf/JRSUIConstants$Property;)V
         2: .line 527
            aload 0 /* border */
            areturn
        end local 0 // com.apple.laf.AquaBorder border
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            1    3     0  border  Lcom/apple/laf/AquaBorder;

  public static javax.swing.border.Border getSelectedMenuBarItemPainter();
    descriptor: ()Ljavax/swing/border/Border;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=0
         0: .line 531
            new com.apple.laf.AquaBorder$Default
            dup
            invokespecial com.apple.laf.AquaBorder$Default.<init>:()V
            astore 0 /* border */
        start local 0 // com.apple.laf.AquaBorder border
         1: .line 532
            aload 0 /* border */
            getfield com.apple.laf.AquaBorder.painter:Lcom/apple/laf/AquaPainter;
            getfield com.apple.laf.AquaPainter.state:Lapple/laf/JRSUIState;
            getstatic apple.laf.JRSUIConstants$Widget.MENU_TITLE:Lapple/laf/JRSUIConstants$Widget;
            invokevirtual apple.laf.JRSUIState.set:(Lapple/laf/JRSUIConstants$Property;)V
         2: .line 533
            aload 0 /* border */
            getfield com.apple.laf.AquaBorder.painter:Lcom/apple/laf/AquaPainter;
            getfield com.apple.laf.AquaPainter.state:Lapple/laf/JRSUIState;
            getstatic apple.laf.JRSUIConstants$State.PRESSED:Lapple/laf/JRSUIConstants$State;
            invokevirtual apple.laf.JRSUIState.set:(Lapple/laf/JRSUIConstants$Property;)V
         3: .line 534
            aload 0 /* border */
            areturn
        end local 0 // com.apple.laf.AquaBorder border
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            1    4     0  border  Lcom/apple/laf/AquaBorder;

  public static javax.swing.border.Border getSelectedMenuItemPainter();
    descriptor: ()Ljavax/swing/border/Border;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=0
         0: .line 538
            new com.apple.laf.AquaBorder$Default
            dup
            invokespecial com.apple.laf.AquaBorder$Default.<init>:()V
            astore 0 /* border */
        start local 0 // com.apple.laf.AquaBorder border
         1: .line 539
            aload 0 /* border */
            getfield com.apple.laf.AquaBorder.painter:Lcom/apple/laf/AquaPainter;
            getfield com.apple.laf.AquaPainter.state:Lapple/laf/JRSUIState;
            getstatic apple.laf.JRSUIConstants$Widget.MENU_ITEM:Lapple/laf/JRSUIConstants$Widget;
            invokevirtual apple.laf.JRSUIState.set:(Lapple/laf/JRSUIConstants$Property;)V
         2: .line 540
            aload 0 /* border */
            getfield com.apple.laf.AquaBorder.painter:Lcom/apple/laf/AquaPainter;
            getfield com.apple.laf.AquaPainter.state:Lapple/laf/JRSUIState;
            getstatic apple.laf.JRSUIConstants$State.PRESSED:Lapple/laf/JRSUIConstants$State;
            invokevirtual apple.laf.JRSUIState.set:(Lapple/laf/JRSUIConstants$Property;)V
         3: .line 541
            aload 0 /* border */
            areturn
        end local 0 // com.apple.laf.AquaBorder border
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            1    4     0  border  Lcom/apple/laf/AquaBorder;
}
SourceFile: "AquaMenuPainter.java"
NestMembers:
  com.apple.laf.AquaMenuPainter$Client  com.apple.laf.AquaMenuPainter$RecyclableBorder
InnerClasses:
  public State = apple.laf.JRSUIConstants$State of apple.laf.JRSUIConstants
  public Widget = apple.laf.JRSUIConstants$Widget of apple.laf.JRSUIConstants
  Default = com.apple.laf.AquaBorder$Default of com.apple.laf.AquaBorder
  abstract InvertableIcon = com.apple.laf.AquaIcon$InvertableIcon of com.apple.laf.AquaIcon
  abstract Client = com.apple.laf.AquaMenuPainter$Client of com.apple.laf.AquaMenuPainter
  RecyclableBorder = com.apple.laf.AquaMenuPainter$RecyclableBorder of com.apple.laf.AquaMenuPainter
  abstract RecyclableSingleton = com.apple.laf.AquaUtils$RecyclableSingleton of com.apple.laf.AquaUtils
  RecyclableSingletonFromDefaultConstructor = com.apple.laf.AquaUtils$RecyclableSingletonFromDefaultConstructor of com.apple.laf.AquaUtils
  Property = apple.laf.JRSUIConstants$Property of apple.laf.JRSUIConstants