class javax.swing.text.GlyphPainter2 extends javax.swing.text.GlyphView$GlyphPainter
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: javax.swing.text.GlyphPainter2
  super_class: javax.swing.text.GlyphView$GlyphPainter
{
  java.awt.font.TextLayout layout;
    descriptor: Ljava/awt/font/TextLayout;
    flags: (0x0000) 

  public void <init>(java.awt.font.TextLayout);
    descriptor: (Ljava/awt/font/TextLayout;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.text.GlyphPainter2 this
        start local 1 // java.awt.font.TextLayout layout
         0: .line 53
            aload 0 /* this */
            invokespecial javax.swing.text.GlyphView$GlyphPainter.<init>:()V
         1: .line 54
            aload 0 /* this */
            aload 1 /* layout */
            putfield javax.swing.text.GlyphPainter2.layout:Ljava/awt/font/TextLayout;
         2: .line 55
            return
        end local 1 // java.awt.font.TextLayout layout
        end local 0 // javax.swing.text.GlyphPainter2 this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Ljavax/swing/text/GlyphPainter2;
            0    3     1  layout  Ljava/awt/font/TextLayout;
    MethodParameters:
        Name  Flags
      layout  

  public javax.swing.text.GlyphView$GlyphPainter getPainter(javax.swing.text.GlyphView, int, int);
    descriptor: (Ljavax/swing/text/GlyphView;II)Ljavax/swing/text/GlyphView$GlyphPainter;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=4, args_size=4
        start local 0 // javax.swing.text.GlyphPainter2 this
        start local 1 // javax.swing.text.GlyphView v
        start local 2 // int p0
        start local 3 // int p1
         0: .line 61
            aconst_null
            areturn
        end local 3 // int p1
        end local 2 // int p0
        end local 1 // javax.swing.text.GlyphView v
        end local 0 // javax.swing.text.GlyphPainter2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/text/GlyphPainter2;
            0    1     1     v  Ljavax/swing/text/GlyphView;
            0    1     2    p0  I
            0    1     3    p1  I
    MethodParameters:
      Name  Flags
      v     
      p0    
      p1    

  public float getSpan(javax.swing.text.GlyphView, int, int, javax.swing.text.TabExpander, float);
    descriptor: (Ljavax/swing/text/GlyphView;IILjavax/swing/text/TabExpander;F)F
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=14, args_size=6
        start local 0 // javax.swing.text.GlyphPainter2 this
        start local 1 // javax.swing.text.GlyphView v
        start local 2 // int p0
        start local 3 // int p1
        start local 4 // javax.swing.text.TabExpander e
        start local 5 // float x
         0: .line 73
            iload 2 /* p0 */
            aload 1 /* v */
            invokevirtual javax.swing.text.GlyphView.getStartOffset:()I
            if_icmpne 2
            iload 3 /* p1 */
            aload 1 /* v */
            invokevirtual javax.swing.text.GlyphView.getEndOffset:()I
            if_icmpne 2
         1: .line 74
            aload 0 /* this */
            getfield javax.swing.text.GlyphPainter2.layout:Ljava/awt/font/TextLayout;
            invokevirtual java.awt.font.TextLayout.getAdvance:()F
            freturn
         2: .line 76
      StackMap locals:
      StackMap stack:
            aload 1 /* v */
            invokevirtual javax.swing.text.GlyphView.getStartOffset:()I
            istore 6 /* p */
        start local 6 // int p
         3: .line 77
            iload 2 /* p0 */
            iload 6 /* p */
            isub
            istore 7 /* index0 */
        start local 7 // int index0
         4: .line 78
            iload 3 /* p1 */
            iload 6 /* p */
            isub
            istore 8 /* index1 */
        start local 8 // int index1
         5: .line 80
            iload 7 /* index0 */
            invokestatic java.awt.font.TextHitInfo.afterOffset:(I)Ljava/awt/font/TextHitInfo;
            astore 9 /* hit0 */
        start local 9 // java.awt.font.TextHitInfo hit0
         6: .line 81
            iload 8 /* index1 */
            invokestatic java.awt.font.TextHitInfo.beforeOffset:(I)Ljava/awt/font/TextHitInfo;
            astore 10 /* hit1 */
        start local 10 // java.awt.font.TextHitInfo hit1
         7: .line 82
            aload 0 /* this */
            getfield javax.swing.text.GlyphPainter2.layout:Ljava/awt/font/TextLayout;
            aload 9 /* hit0 */
            invokevirtual java.awt.font.TextLayout.getCaretInfo:(Ljava/awt/font/TextHitInfo;)[F
            astore 11 /* locs */
        start local 11 // float[] locs
         8: .line 83
            aload 11 /* locs */
            iconst_0
            faload
            fstore 12 /* x0 */
        start local 12 // float x0
         9: .line 84
            aload 0 /* this */
            getfield javax.swing.text.GlyphPainter2.layout:Ljava/awt/font/TextLayout;
            aload 10 /* hit1 */
            invokevirtual java.awt.font.TextLayout.getCaretInfo:(Ljava/awt/font/TextHitInfo;)[F
            astore 11 /* locs */
        10: .line 85
            aload 11 /* locs */
            iconst_0
            faload
            fstore 13 /* x1 */
        start local 13 // float x1
        11: .line 86
            fload 13 /* x1 */
            fload 12 /* x0 */
            fcmpl
            ifle 12
            fload 13 /* x1 */
            fload 12 /* x0 */
            fsub
            goto 13
      StackMap locals: javax.swing.text.GlyphPainter2 javax.swing.text.GlyphView int int javax.swing.text.TabExpander float int int int java.awt.font.TextHitInfo java.awt.font.TextHitInfo float[] float float
      StackMap stack:
        12: fload 12 /* x0 */
            fload 13 /* x1 */
            fsub
      StackMap locals:
      StackMap stack: float
        13: freturn
        end local 13 // float x1
        end local 12 // float x0
        end local 11 // float[] locs
        end local 10 // java.awt.font.TextHitInfo hit1
        end local 9 // java.awt.font.TextHitInfo hit0
        end local 8 // int index1
        end local 7 // int index0
        end local 6 // int p
        end local 5 // float x
        end local 4 // javax.swing.text.TabExpander e
        end local 3 // int p1
        end local 2 // int p0
        end local 1 // javax.swing.text.GlyphView v
        end local 0 // javax.swing.text.GlyphPainter2 this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   14     0    this  Ljavax/swing/text/GlyphPainter2;
            0   14     1       v  Ljavax/swing/text/GlyphView;
            0   14     2      p0  I
            0   14     3      p1  I
            0   14     4       e  Ljavax/swing/text/TabExpander;
            0   14     5       x  F
            3   14     6       p  I
            4   14     7  index0  I
            5   14     8  index1  I
            6   14     9    hit0  Ljava/awt/font/TextHitInfo;
            7   14    10    hit1  Ljava/awt/font/TextHitInfo;
            8   14    11    locs  [F
            9   14    12      x0  F
           11   14    13      x1  F
    MethodParameters:
      Name  Flags
      v     
      p0    
      p1    
      e     
      x     

  public float getHeight(javax.swing.text.GlyphView);
    descriptor: (Ljavax/swing/text/GlyphView;)F
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.text.GlyphPainter2 this
        start local 1 // javax.swing.text.GlyphView v
         0: .line 90
            aload 0 /* this */
            getfield javax.swing.text.GlyphPainter2.layout:Ljava/awt/font/TextLayout;
            invokevirtual java.awt.font.TextLayout.getAscent:()F
            aload 0 /* this */
            getfield javax.swing.text.GlyphPainter2.layout:Ljava/awt/font/TextLayout;
            invokevirtual java.awt.font.TextLayout.getDescent:()F
            fadd
            aload 0 /* this */
            getfield javax.swing.text.GlyphPainter2.layout:Ljava/awt/font/TextLayout;
            invokevirtual java.awt.font.TextLayout.getLeading:()F
            fadd
            freturn
        end local 1 // javax.swing.text.GlyphView v
        end local 0 // javax.swing.text.GlyphPainter2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/text/GlyphPainter2;
            0    1     1     v  Ljavax/swing/text/GlyphView;
    MethodParameters:
      Name  Flags
      v     

  public float getAscent(javax.swing.text.GlyphView);
    descriptor: (Ljavax/swing/text/GlyphView;)F
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // javax.swing.text.GlyphPainter2 this
        start local 1 // javax.swing.text.GlyphView v
         0: .line 98
            aload 0 /* this */
            getfield javax.swing.text.GlyphPainter2.layout:Ljava/awt/font/TextLayout;
            invokevirtual java.awt.font.TextLayout.getAscent:()F
            freturn
        end local 1 // javax.swing.text.GlyphView v
        end local 0 // javax.swing.text.GlyphPainter2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/text/GlyphPainter2;
            0    1     1     v  Ljavax/swing/text/GlyphView;
    MethodParameters:
      Name  Flags
      v     

  public float getDescent(javax.swing.text.GlyphView);
    descriptor: (Ljavax/swing/text/GlyphView;)F
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // javax.swing.text.GlyphPainter2 this
        start local 1 // javax.swing.text.GlyphView v
         0: .line 106
            aload 0 /* this */
            getfield javax.swing.text.GlyphPainter2.layout:Ljava/awt/font/TextLayout;
            invokevirtual java.awt.font.TextLayout.getDescent:()F
            freturn
        end local 1 // javax.swing.text.GlyphView v
        end local 0 // javax.swing.text.GlyphPainter2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/text/GlyphPainter2;
            0    1     1     v  Ljavax/swing/text/GlyphView;
    MethodParameters:
      Name  Flags
      v     

  public void paint(javax.swing.text.GlyphView, java.awt.Graphics, java.awt.Shape, int, int);
    descriptor: (Ljavax/swing/text/GlyphView;Ljava/awt/Graphics;Ljava/awt/Shape;II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=12, args_size=6
        start local 0 // javax.swing.text.GlyphPainter2 this
        start local 1 // javax.swing.text.GlyphView v
        start local 2 // java.awt.Graphics g
        start local 3 // java.awt.Shape a
        start local 4 // int p0
        start local 5 // int p1
         0: .line 116
            aload 2 /* g */
            instanceof java.awt.Graphics2D
            ifeq 17
         1: .line 117
            aload 3 /* a */
            invokeinterface java.awt.Shape.getBounds2D:()Ljava/awt/geom/Rectangle2D;
            astore 6 /* alloc */
        start local 6 // java.awt.geom.Rectangle2D alloc
         2: .line 118
            aload 2 /* g */
            checkcast java.awt.Graphics2D
            astore 7 /* g2d */
        start local 7 // java.awt.Graphics2D g2d
         3: .line 119
            aload 6 /* alloc */
            invokevirtual java.awt.geom.Rectangle2D.getY:()D
            d2f
            aload 0 /* this */
            getfield javax.swing.text.GlyphPainter2.layout:Ljava/awt/font/TextLayout;
            invokevirtual java.awt.font.TextLayout.getAscent:()F
            fadd
            aload 0 /* this */
            getfield javax.swing.text.GlyphPainter2.layout:Ljava/awt/font/TextLayout;
            invokevirtual java.awt.font.TextLayout.getLeading:()F
            fadd
            fstore 8 /* y */
        start local 8 // float y
         4: .line 120
            aload 6 /* alloc */
            invokevirtual java.awt.geom.Rectangle2D.getX:()D
            d2f
            fstore 9 /* x */
        start local 9 // float x
         5: .line 121
            iload 4 /* p0 */
            aload 1 /* v */
            invokevirtual javax.swing.text.GlyphView.getStartOffset:()I
            if_icmpgt 6
            iload 5 /* p1 */
            aload 1 /* v */
            invokevirtual javax.swing.text.GlyphView.getEndOffset:()I
            if_icmpge 16
         6: .line 125
      StackMap locals: javax.swing.text.GlyphPainter2 javax.swing.text.GlyphView java.awt.Graphics java.awt.Shape int int java.awt.geom.Rectangle2D java.awt.Graphics2D float float
      StackMap stack:
            aload 1 /* v */
            iload 4 /* p0 */
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
         7: .line 126
            iload 5 /* p1 */
            getstatic javax.swing.text.Position$Bias.Backward:Ljavax/swing/text/Position$Bias;
            aload 3 /* a */
         8: .line 125
            invokevirtual javax.swing.text.GlyphView.modelToView:(ILjavax/swing/text/Position$Bias;ILjavax/swing/text/Position$Bias;Ljava/awt/Shape;)Ljava/awt/Shape;
            astore 10 /* s */
        start local 10 // java.awt.Shape s
         9: .line 127
            aload 2 /* g */
            invokevirtual java.awt.Graphics.getClip:()Ljava/awt/Shape;
            astore 11 /* savedClip */
        start local 11 // java.awt.Shape savedClip
        10: .line 128
            aload 7 /* g2d */
            aload 10 /* s */
            invokevirtual java.awt.Graphics2D.clip:(Ljava/awt/Shape;)V
        11: .line 129
            aload 0 /* this */
            getfield javax.swing.text.GlyphPainter2.layout:Ljava/awt/font/TextLayout;
            aload 7 /* g2d */
            fload 9 /* x */
            fload 8 /* y */
            invokevirtual java.awt.font.TextLayout.draw:(Ljava/awt/Graphics2D;FF)V
        12: .line 130
            aload 2 /* g */
            aload 11 /* savedClip */
            invokevirtual java.awt.Graphics.setClip:(Ljava/awt/Shape;)V
        end local 11 // java.awt.Shape savedClip
        end local 10 // java.awt.Shape s
        13: .line 131
            goto 17
      StackMap locals:
      StackMap stack: javax.swing.text.BadLocationException
        14: pop
        15: .line 132
            goto 17
        16: .line 133
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.text.GlyphPainter2.layout:Ljava/awt/font/TextLayout;
            aload 7 /* g2d */
            fload 9 /* x */
            fload 8 /* y */
            invokevirtual java.awt.font.TextLayout.draw:(Ljava/awt/Graphics2D;FF)V
        end local 9 // float x
        end local 8 // float y
        end local 7 // java.awt.Graphics2D g2d
        end local 6 // java.awt.geom.Rectangle2D alloc
        17: .line 136
      StackMap locals: javax.swing.text.GlyphPainter2 javax.swing.text.GlyphView java.awt.Graphics java.awt.Shape int int
      StackMap stack:
            return
        end local 5 // int p1
        end local 4 // int p0
        end local 3 // java.awt.Shape a
        end local 2 // java.awt.Graphics g
        end local 1 // javax.swing.text.GlyphView v
        end local 0 // javax.swing.text.GlyphPainter2 this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   18     0       this  Ljavax/swing/text/GlyphPainter2;
            0   18     1          v  Ljavax/swing/text/GlyphView;
            0   18     2          g  Ljava/awt/Graphics;
            0   18     3          a  Ljava/awt/Shape;
            0   18     4         p0  I
            0   18     5         p1  I
            2   17     6      alloc  Ljava/awt/geom/Rectangle2D;
            3   17     7        g2d  Ljava/awt/Graphics2D;
            4   17     8          y  F
            5   17     9          x  F
            9   13    10          s  Ljava/awt/Shape;
           10   13    11  savedClip  Ljava/awt/Shape;
      Exception table:
        from    to  target  type
           6    13      14  Class javax.swing.text.BadLocationException
    MethodParameters:
      Name  Flags
      v     
      g     
      a     
      p0    
      p1    

  public java.awt.Shape modelToView(javax.swing.text.GlyphView, int, javax.swing.text.Position$Bias, java.awt.Shape);
    descriptor: (Ljavax/swing/text/GlyphView;ILjavax/swing/text/Position$Bias;Ljava/awt/Shape;)Ljava/awt/Shape;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=9, args_size=5
        start local 0 // javax.swing.text.GlyphPainter2 this
        start local 1 // javax.swing.text.GlyphView v
        start local 2 // int pos
        start local 3 // javax.swing.text.Position$Bias bias
        start local 4 // java.awt.Shape a
         0: .line 140
            iload 2 /* pos */
            aload 1 /* v */
            invokevirtual javax.swing.text.GlyphView.getStartOffset:()I
            isub
            istore 5 /* offs */
        start local 5 // int offs
         1: .line 141
            aload 4 /* a */
            invokeinterface java.awt.Shape.getBounds2D:()Ljava/awt/geom/Rectangle2D;
            astore 6 /* alloc */
        start local 6 // java.awt.geom.Rectangle2D alloc
         2: .line 142
            aload 3 /* bias */
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            if_acmpne 4
         3: .line 143
            iload 5 /* offs */
            invokestatic java.awt.font.TextHitInfo.afterOffset:(I)Ljava/awt/font/TextHitInfo;
            goto 5
      StackMap locals: int java.awt.geom.Rectangle2D
      StackMap stack:
         4: iload 5 /* offs */
            invokestatic java.awt.font.TextHitInfo.beforeOffset:(I)Ljava/awt/font/TextHitInfo;
         5: .line 142
      StackMap locals:
      StackMap stack: java.awt.font.TextHitInfo
            astore 7 /* hit */
        start local 7 // java.awt.font.TextHitInfo hit
         6: .line 144
            aload 0 /* this */
            getfield javax.swing.text.GlyphPainter2.layout:Ljava/awt/font/TextLayout;
            aload 7 /* hit */
            invokevirtual java.awt.font.TextLayout.getCaretInfo:(Ljava/awt/font/TextHitInfo;)[F
            astore 8 /* locs */
        start local 8 // float[] locs
         7: .line 148
            aload 6 /* alloc */
            aload 6 /* alloc */
            invokevirtual java.awt.geom.Rectangle2D.getX:()D
            aload 8 /* locs */
            iconst_0
            faload
            f2d
            dadd
            aload 6 /* alloc */
            invokevirtual java.awt.geom.Rectangle2D.getY:()D
            dconst_1
            aload 6 /* alloc */
            invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
            invokevirtual java.awt.geom.Rectangle2D.setRect:(DDDD)V
         8: .line 149
            aload 6 /* alloc */
            areturn
        end local 8 // float[] locs
        end local 7 // java.awt.font.TextHitInfo hit
        end local 6 // java.awt.geom.Rectangle2D alloc
        end local 5 // int offs
        end local 4 // java.awt.Shape a
        end local 3 // javax.swing.text.Position$Bias bias
        end local 2 // int pos
        end local 1 // javax.swing.text.GlyphView v
        end local 0 // javax.swing.text.GlyphPainter2 this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0   this  Ljavax/swing/text/GlyphPainter2;
            0    9     1      v  Ljavax/swing/text/GlyphView;
            0    9     2    pos  I
            0    9     3   bias  Ljavax/swing/text/Position$Bias;
            0    9     4      a  Ljava/awt/Shape;
            1    9     5   offs  I
            2    9     6  alloc  Ljava/awt/geom/Rectangle2D;
            6    9     7    hit  Ljava/awt/font/TextHitInfo;
            7    9     8   locs  [F
    Exceptions:
      throws javax.swing.text.BadLocationException
    MethodParameters:
      Name  Flags
      v     
      pos   
      bias  
      a     

  public int viewToModel(javax.swing.text.GlyphView, float, float, java.awt.Shape, javax.swing.text.Position$Bias[]);
    descriptor: (Ljavax/swing/text/GlyphView;FFLjava/awt/Shape;[Ljavax/swing/text/Position$Bias;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=9, args_size=6
        start local 0 // javax.swing.text.GlyphPainter2 this
        start local 1 // javax.swing.text.GlyphView v
        start local 2 // float x
        start local 3 // float y
        start local 4 // java.awt.Shape a
        start local 5 // javax.swing.text.Position$Bias[] biasReturn
         0: .line 170
            aload 4 /* a */
            instanceof java.awt.geom.Rectangle2D
            ifeq 1
            aload 4 /* a */
            checkcast java.awt.geom.Rectangle2D
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 4 /* a */
            invokeinterface java.awt.Shape.getBounds2D:()Ljava/awt/geom/Rectangle2D;
      StackMap locals:
      StackMap stack: java.awt.geom.Rectangle2D
         2: astore 6 /* alloc */
        start local 6 // java.awt.geom.Rectangle2D alloc
         3: .line 173
            aload 0 /* this */
            getfield javax.swing.text.GlyphPainter2.layout:Ljava/awt/font/TextLayout;
            fload 2 /* x */
            aload 6 /* alloc */
            invokevirtual java.awt.geom.Rectangle2D.getX:()D
            d2f
            fsub
            fconst_0
            invokevirtual java.awt.font.TextLayout.hitTestChar:(FF)Ljava/awt/font/TextHitInfo;
            astore 7 /* hit */
        start local 7 // java.awt.font.TextHitInfo hit
         4: .line 174
            aload 7 /* hit */
            invokevirtual java.awt.font.TextHitInfo.getInsertionIndex:()I
            istore 8 /* pos */
        start local 8 // int pos
         5: .line 175
            aload 5 /* biasReturn */
            iconst_0
            aload 7 /* hit */
            invokevirtual java.awt.font.TextHitInfo.isLeadingEdge:()Z
            ifeq 6
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            goto 7
      StackMap locals: javax.swing.text.GlyphPainter2 javax.swing.text.GlyphView float float java.awt.Shape javax.swing.text.Position$Bias[] java.awt.geom.Rectangle2D java.awt.font.TextHitInfo int
      StackMap stack: javax.swing.text.Position$Bias[] int
         6: getstatic javax.swing.text.Position$Bias.Backward:Ljavax/swing/text/Position$Bias;
      StackMap locals: javax.swing.text.GlyphPainter2 javax.swing.text.GlyphView float float java.awt.Shape javax.swing.text.Position$Bias[] java.awt.geom.Rectangle2D java.awt.font.TextHitInfo int
      StackMap stack: javax.swing.text.Position$Bias[] int javax.swing.text.Position$Bias
         7: aastore
         8: .line 176
            iload 8 /* pos */
            aload 1 /* v */
            invokevirtual javax.swing.text.GlyphView.getStartOffset:()I
            iadd
            ireturn
        end local 8 // int pos
        end local 7 // java.awt.font.TextHitInfo hit
        end local 6 // java.awt.geom.Rectangle2D alloc
        end local 5 // javax.swing.text.Position$Bias[] biasReturn
        end local 4 // java.awt.Shape a
        end local 3 // float y
        end local 2 // float x
        end local 1 // javax.swing.text.GlyphView v
        end local 0 // javax.swing.text.GlyphPainter2 this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0        this  Ljavax/swing/text/GlyphPainter2;
            0    9     1           v  Ljavax/swing/text/GlyphView;
            0    9     2           x  F
            0    9     3           y  F
            0    9     4           a  Ljava/awt/Shape;
            0    9     5  biasReturn  [Ljavax/swing/text/Position$Bias;
            3    9     6       alloc  Ljava/awt/geom/Rectangle2D;
            4    9     7         hit  Ljava/awt/font/TextHitInfo;
            5    9     8         pos  I
    MethodParameters:
            Name  Flags
      v           
      x           
      y           
      a           
      biasReturn  

  public int getBoundedPosition(javax.swing.text.GlyphView, int, float, float);
    descriptor: (Ljavax/swing/text/GlyphView;IFF)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=5
        start local 0 // javax.swing.text.GlyphPainter2 this
        start local 1 // javax.swing.text.GlyphView v
        start local 2 // int p0
        start local 3 // float x
        start local 4 // float len
         0: .line 199
            fload 4 /* len */
            fconst_0
            fcmpg
            ifge 2
         1: .line 200
            new java.lang.IllegalArgumentException
            dup
            ldc "Length must be >= 0."
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 204
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.text.GlyphPainter2.layout:Ljava/awt/font/TextLayout;
            invokevirtual java.awt.font.TextLayout.isLeftToRight:()Z
            ifeq 5
         3: .line 205
            aload 0 /* this */
            getfield javax.swing.text.GlyphPainter2.layout:Ljava/awt/font/TextLayout;
            fload 4 /* len */
            fconst_0
            invokevirtual java.awt.font.TextLayout.hitTestChar:(FF)Ljava/awt/font/TextHitInfo;
            astore 5 /* hit */
        start local 5 // java.awt.font.TextHitInfo hit
         4: .line 206
            goto 6
        end local 5 // java.awt.font.TextHitInfo hit
         5: .line 207
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.text.GlyphPainter2.layout:Ljava/awt/font/TextLayout;
            aload 0 /* this */
            getfield javax.swing.text.GlyphPainter2.layout:Ljava/awt/font/TextLayout;
            invokevirtual java.awt.font.TextLayout.getAdvance:()F
            fload 4 /* len */
            fsub
            fconst_0
            invokevirtual java.awt.font.TextLayout.hitTestChar:(FF)Ljava/awt/font/TextHitInfo;
            astore 5 /* hit */
        start local 5 // java.awt.font.TextHitInfo hit
         6: .line 209
      StackMap locals: java.awt.font.TextHitInfo
      StackMap stack:
            aload 1 /* v */
            invokevirtual javax.swing.text.GlyphView.getStartOffset:()I
            aload 5 /* hit */
            invokevirtual java.awt.font.TextHitInfo.getCharIndex:()I
            iadd
            ireturn
        end local 5 // java.awt.font.TextHitInfo hit
        end local 4 // float len
        end local 3 // float x
        end local 2 // int p0
        end local 1 // javax.swing.text.GlyphView v
        end local 0 // javax.swing.text.GlyphPainter2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljavax/swing/text/GlyphPainter2;
            0    7     1     v  Ljavax/swing/text/GlyphView;
            0    7     2    p0  I
            0    7     3     x  F
            0    7     4   len  F
            4    5     5   hit  Ljava/awt/font/TextHitInfo;
            6    7     5   hit  Ljava/awt/font/TextHitInfo;
    MethodParameters:
      Name  Flags
      v     
      p0    
      x     
      len   

  public int getNextVisualPositionFrom(javax.swing.text.GlyphView, int, javax.swing.text.Position$Bias, java.awt.Shape, int, javax.swing.text.Position$Bias[]);
    descriptor: (Ljavax/swing/text/GlyphView;ILjavax/swing/text/Position$Bias;Ljava/awt/Shape;I[Ljavax/swing/text/Position$Bias;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=15, args_size=7
        start local 0 // javax.swing.text.GlyphPainter2 this
        start local 1 // javax.swing.text.GlyphView v
        start local 2 // int pos
        start local 3 // javax.swing.text.Position$Bias b
        start local 4 // java.awt.Shape a
        start local 5 // int direction
        start local 6 // javax.swing.text.Position$Bias[] biasRet
         0: .line 237
            aload 1 /* v */
            invokevirtual javax.swing.text.GlyphView.getStartOffset:()I
            istore 7 /* startOffset */
        start local 7 // int startOffset
         1: .line 238
            aload 1 /* v */
            invokevirtual javax.swing.text.GlyphView.getEndOffset:()I
            istore 8 /* endOffset */
        start local 8 // int endOffset
         2: .line 244
            iload 5 /* direction */
            tableswitch { // 1 - 7
                    1: 3
                    2: 83
                    3: 5
                    4: 83
                    5: 4
                    6: 83
                    7: 44
              default: 83
          }
         3: .line 246
      StackMap locals: int int
      StackMap stack:
            goto 84
         4: .line 248
      StackMap locals:
      StackMap stack:
            goto 84
         5: .line 250
      StackMap locals:
      StackMap stack:
            aload 1 /* v */
            invokevirtual javax.swing.text.GlyphView.getDocument:()Ljavax/swing/text/Document;
            checkcast javax.swing.text.AbstractDocument
            astore 10 /* doc */
        start local 10 // javax.swing.text.AbstractDocument doc
         6: .line 251
            aload 10 /* doc */
            iload 7 /* startOffset */
            iload 8 /* endOffset */
            invokevirtual javax.swing.text.AbstractDocument.isLeftToRight:(II)Z
            istore 11 /* viewIsLeftToRight */
        start local 11 // boolean viewIsLeftToRight
         7: .line 253
            iload 7 /* startOffset */
            aload 10 /* doc */
            invokevirtual javax.swing.text.AbstractDocument.getLength:()I
            if_icmpne 12
         8: .line 254
            iload 2 /* pos */
            iconst_m1
            if_icmpne 11
         9: .line 255
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            aastore
        10: .line 256
            iload 7 /* startOffset */
            ireturn
        11: .line 260
      StackMap locals: javax.swing.text.GlyphPainter2 javax.swing.text.GlyphView int javax.swing.text.Position$Bias java.awt.Shape int javax.swing.text.Position$Bias[] int int top javax.swing.text.AbstractDocument int
      StackMap stack:
            iconst_m1
            ireturn
        12: .line 262
      StackMap locals:
      StackMap stack:
            iload 2 /* pos */
            iconst_m1
            if_icmpne 24
        13: .line 264
            iload 11 /* viewIsLeftToRight */
            ifeq 16
        14: .line 265
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            aastore
        15: .line 266
            iload 7 /* startOffset */
            ireturn
        16: .line 268
      StackMap locals:
      StackMap stack:
            aload 1 /* v */
            iload 8 /* endOffset */
            iconst_1
            isub
            iload 8 /* endOffset */
            invokevirtual javax.swing.text.GlyphView.getText:(II)Ljavax/swing/text/Segment;
            astore 9 /* text */
        start local 9 // javax.swing.text.Segment text
        17: .line 269
            aload 9 /* text */
            getfield javax.swing.text.Segment.array:[C
            aload 9 /* text */
            getfield javax.swing.text.Segment.offset:I
            caload
            istore 14 /* c */
        start local 14 // char c
        18: .line 270
            aload 9 /* text */
            invokestatic javax.swing.text.SegmentCache.releaseSharedSegment:(Ljavax/swing/text/Segment;)V
        19: .line 271
            iload 14 /* c */
            bipush 10
            if_icmpne 22
        20: .line 272
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            aastore
        21: .line 273
            iload 8 /* endOffset */
            iconst_1
            isub
            ireturn
        22: .line 275
      StackMap locals: javax.swing.text.GlyphPainter2 javax.swing.text.GlyphView int javax.swing.text.Position$Bias java.awt.Shape int javax.swing.text.Position$Bias[] int int javax.swing.text.Segment javax.swing.text.AbstractDocument int top top int
      StackMap stack:
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Backward:Ljavax/swing/text/Position$Bias;
            aastore
        23: .line 276
            iload 8 /* endOffset */
            ireturn
        end local 14 // char c
        end local 9 // javax.swing.text.Segment text
        24: .line 279
      StackMap locals: javax.swing.text.GlyphPainter2 javax.swing.text.GlyphView int javax.swing.text.Position$Bias java.awt.Shape int javax.swing.text.Position$Bias[] int int top javax.swing.text.AbstractDocument int
      StackMap stack:
            aload 3 /* b */
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            if_acmpne 27
        25: .line 280
            iload 2 /* pos */
            iload 7 /* startOffset */
            isub
            invokestatic java.awt.font.TextHitInfo.afterOffset:(I)Ljava/awt/font/TextHitInfo;
            astore 12 /* currentHit */
        start local 12 // java.awt.font.TextHitInfo currentHit
        26: goto 28
        end local 12 // java.awt.font.TextHitInfo currentHit
        27: .line 282
      StackMap locals:
      StackMap stack:
            iload 2 /* pos */
            iload 7 /* startOffset */
            isub
            invokestatic java.awt.font.TextHitInfo.beforeOffset:(I)Ljava/awt/font/TextHitInfo;
            astore 12 /* currentHit */
        start local 12 // java.awt.font.TextHitInfo currentHit
        28: .line 283
      StackMap locals: java.awt.font.TextHitInfo
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.text.GlyphPainter2.layout:Ljava/awt/font/TextLayout;
            aload 12 /* currentHit */
            invokevirtual java.awt.font.TextLayout.getNextRightHit:(Ljava/awt/font/TextHitInfo;)Ljava/awt/font/TextHitInfo;
            astore 13 /* nextHit */
        start local 13 // java.awt.font.TextHitInfo nextHit
        29: .line 284
            aload 13 /* nextHit */
            ifnonnull 31
        30: .line 285
            iconst_m1
            ireturn
        31: .line 287
      StackMap locals: java.awt.font.TextHitInfo
      StackMap stack:
            iload 11 /* viewIsLeftToRight */
            aload 0 /* this */
            getfield javax.swing.text.GlyphPainter2.layout:Ljava/awt/font/TextLayout;
            invokevirtual java.awt.font.TextLayout.isLeftToRight:()Z
            if_icmpeq 33
        32: .line 291
            aload 0 /* this */
            getfield javax.swing.text.GlyphPainter2.layout:Ljava/awt/font/TextLayout;
            aload 13 /* nextHit */
            invokevirtual java.awt.font.TextLayout.getVisualOtherHit:(Ljava/awt/font/TextHitInfo;)Ljava/awt/font/TextHitInfo;
            astore 13 /* nextHit */
        33: .line 293
      StackMap locals:
      StackMap stack:
            aload 13 /* nextHit */
            invokevirtual java.awt.font.TextHitInfo.getInsertionIndex:()I
            iload 7 /* startOffset */
            iadd
            istore 2 /* pos */
        34: .line 295
            iload 2 /* pos */
            iload 8 /* endOffset */
            if_icmpne 42
        35: .line 298
            aload 1 /* v */
            iload 8 /* endOffset */
            iconst_1
            isub
            iload 8 /* endOffset */
            invokevirtual javax.swing.text.GlyphView.getText:(II)Ljavax/swing/text/Segment;
            astore 9 /* text */
        start local 9 // javax.swing.text.Segment text
        36: .line 299
            aload 9 /* text */
            getfield javax.swing.text.Segment.array:[C
            aload 9 /* text */
            getfield javax.swing.text.Segment.offset:I
            caload
            istore 14 /* c */
        start local 14 // char c
        37: .line 300
            aload 9 /* text */
            invokestatic javax.swing.text.SegmentCache.releaseSharedSegment:(Ljavax/swing/text/Segment;)V
        38: .line 301
            iload 14 /* c */
            bipush 10
            if_icmpne 40
        39: .line 302
            iconst_m1
            ireturn
        40: .line 304
      StackMap locals: javax.swing.text.GlyphPainter2 javax.swing.text.GlyphView int javax.swing.text.Position$Bias java.awt.Shape int javax.swing.text.Position$Bias[] int int javax.swing.text.Segment javax.swing.text.AbstractDocument int java.awt.font.TextHitInfo java.awt.font.TextHitInfo int
      StackMap stack:
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Backward:Ljavax/swing/text/Position$Bias;
            aastore
        end local 14 // char c
        41: .line 305
            goto 43
        end local 9 // javax.swing.text.Segment text
        42: .line 307
      StackMap locals: javax.swing.text.GlyphPainter2 javax.swing.text.GlyphView int javax.swing.text.Position$Bias java.awt.Shape int javax.swing.text.Position$Bias[] int int top javax.swing.text.AbstractDocument int java.awt.font.TextHitInfo java.awt.font.TextHitInfo
      StackMap stack:
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            aastore
        43: .line 309
      StackMap locals:
      StackMap stack:
            iload 2 /* pos */
            ireturn
        end local 13 // java.awt.font.TextHitInfo nextHit
        end local 12 // java.awt.font.TextHitInfo currentHit
        end local 11 // boolean viewIsLeftToRight
        end local 10 // javax.swing.text.AbstractDocument doc
        44: .line 311
      StackMap locals: javax.swing.text.GlyphPainter2 javax.swing.text.GlyphView int javax.swing.text.Position$Bias java.awt.Shape int javax.swing.text.Position$Bias[] int int
      StackMap stack:
            aload 1 /* v */
            invokevirtual javax.swing.text.GlyphView.getDocument:()Ljavax/swing/text/Document;
            checkcast javax.swing.text.AbstractDocument
            astore 10 /* doc */
        start local 10 // javax.swing.text.AbstractDocument doc
        45: .line 312
            aload 10 /* doc */
            iload 7 /* startOffset */
            iload 8 /* endOffset */
            invokevirtual javax.swing.text.AbstractDocument.isLeftToRight:(II)Z
            istore 11 /* viewIsLeftToRight */
        start local 11 // boolean viewIsLeftToRight
        46: .line 314
            iload 7 /* startOffset */
            aload 10 /* doc */
            invokevirtual javax.swing.text.AbstractDocument.getLength:()I
            if_icmpne 51
        47: .line 315
            iload 2 /* pos */
            iconst_m1
            if_icmpne 50
        48: .line 316
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            aastore
        49: .line 317
            iload 7 /* startOffset */
            ireturn
        50: .line 321
      StackMap locals: javax.swing.text.GlyphPainter2 javax.swing.text.GlyphView int javax.swing.text.Position$Bias java.awt.Shape int javax.swing.text.Position$Bias[] int int top javax.swing.text.AbstractDocument int
      StackMap stack:
            iconst_m1
            ireturn
        51: .line 323
      StackMap locals:
      StackMap stack:
            iload 2 /* pos */
            iconst_m1
            if_icmpne 63
        52: .line 325
            iload 11 /* viewIsLeftToRight */
            ifeq 61
        53: .line 326
            aload 1 /* v */
            iload 8 /* endOffset */
            iconst_1
            isub
            iload 8 /* endOffset */
            invokevirtual javax.swing.text.GlyphView.getText:(II)Ljavax/swing/text/Segment;
            astore 9 /* text */
        start local 9 // javax.swing.text.Segment text
        54: .line 327
            aload 9 /* text */
            getfield javax.swing.text.Segment.array:[C
            aload 9 /* text */
            getfield javax.swing.text.Segment.offset:I
            caload
            istore 14 /* c */
        start local 14 // char c
        55: .line 328
            aload 9 /* text */
            invokestatic javax.swing.text.SegmentCache.releaseSharedSegment:(Ljavax/swing/text/Segment;)V
        56: .line 329
            iload 14 /* c */
            bipush 10
            if_icmpeq 57
            iload 14 /* c */
            invokestatic java.lang.Character.isSpaceChar:(C)Z
            ifeq 59
        57: .line 330
      StackMap locals: javax.swing.text.GlyphPainter2 javax.swing.text.GlyphView int javax.swing.text.Position$Bias java.awt.Shape int javax.swing.text.Position$Bias[] int int javax.swing.text.Segment javax.swing.text.AbstractDocument int top top int
      StackMap stack:
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            aastore
        58: .line 331
            iload 8 /* endOffset */
            iconst_1
            isub
            ireturn
        59: .line 333
      StackMap locals:
      StackMap stack:
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Backward:Ljavax/swing/text/Position$Bias;
            aastore
        60: .line 334
            iload 8 /* endOffset */
            ireturn
        end local 14 // char c
        end local 9 // javax.swing.text.Segment text
        61: .line 336
      StackMap locals: javax.swing.text.GlyphPainter2 javax.swing.text.GlyphView int javax.swing.text.Position$Bias java.awt.Shape int javax.swing.text.Position$Bias[] int int top javax.swing.text.AbstractDocument int
      StackMap stack:
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            aastore
        62: .line 337
            iload 7 /* startOffset */
            ireturn
        63: .line 340
      StackMap locals:
      StackMap stack:
            aload 3 /* b */
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            if_acmpne 66
        64: .line 341
            iload 2 /* pos */
            iload 7 /* startOffset */
            isub
            invokestatic java.awt.font.TextHitInfo.afterOffset:(I)Ljava/awt/font/TextHitInfo;
            astore 12 /* currentHit */
        start local 12 // java.awt.font.TextHitInfo currentHit
        65: goto 67
        end local 12 // java.awt.font.TextHitInfo currentHit
        66: .line 343
      StackMap locals:
      StackMap stack:
            iload 2 /* pos */
            iload 7 /* startOffset */
            isub
            invokestatic java.awt.font.TextHitInfo.beforeOffset:(I)Ljava/awt/font/TextHitInfo;
            astore 12 /* currentHit */
        start local 12 // java.awt.font.TextHitInfo currentHit
        67: .line 344
      StackMap locals: java.awt.font.TextHitInfo
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.text.GlyphPainter2.layout:Ljava/awt/font/TextLayout;
            aload 12 /* currentHit */
            invokevirtual java.awt.font.TextLayout.getNextLeftHit:(Ljava/awt/font/TextHitInfo;)Ljava/awt/font/TextHitInfo;
            astore 13 /* nextHit */
        start local 13 // java.awt.font.TextHitInfo nextHit
        68: .line 345
            aload 13 /* nextHit */
            ifnonnull 70
        69: .line 346
            iconst_m1
            ireturn
        70: .line 348
      StackMap locals: java.awt.font.TextHitInfo
      StackMap stack:
            iload 11 /* viewIsLeftToRight */
            aload 0 /* this */
            getfield javax.swing.text.GlyphPainter2.layout:Ljava/awt/font/TextLayout;
            invokevirtual java.awt.font.TextLayout.isLeftToRight:()Z
            if_icmpeq 72
        71: .line 352
            aload 0 /* this */
            getfield javax.swing.text.GlyphPainter2.layout:Ljava/awt/font/TextLayout;
            aload 13 /* nextHit */
            invokevirtual java.awt.font.TextLayout.getVisualOtherHit:(Ljava/awt/font/TextHitInfo;)Ljava/awt/font/TextHitInfo;
            astore 13 /* nextHit */
        72: .line 354
      StackMap locals:
      StackMap stack:
            aload 13 /* nextHit */
            invokevirtual java.awt.font.TextHitInfo.getInsertionIndex:()I
            iload 7 /* startOffset */
            iadd
            istore 2 /* pos */
        73: .line 356
            iload 2 /* pos */
            iload 8 /* endOffset */
            if_icmpne 81
        74: .line 359
            aload 1 /* v */
            iload 8 /* endOffset */
            iconst_1
            isub
            iload 8 /* endOffset */
            invokevirtual javax.swing.text.GlyphView.getText:(II)Ljavax/swing/text/Segment;
            astore 9 /* text */
        start local 9 // javax.swing.text.Segment text
        75: .line 360
            aload 9 /* text */
            getfield javax.swing.text.Segment.array:[C
            aload 9 /* text */
            getfield javax.swing.text.Segment.offset:I
            caload
            istore 14 /* c */
        start local 14 // char c
        76: .line 361
            aload 9 /* text */
            invokestatic javax.swing.text.SegmentCache.releaseSharedSegment:(Ljavax/swing/text/Segment;)V
        77: .line 362
            iload 14 /* c */
            bipush 10
            if_icmpne 79
        78: .line 363
            iconst_m1
            ireturn
        79: .line 365
      StackMap locals: javax.swing.text.GlyphPainter2 javax.swing.text.GlyphView int javax.swing.text.Position$Bias java.awt.Shape int javax.swing.text.Position$Bias[] int int javax.swing.text.Segment javax.swing.text.AbstractDocument int java.awt.font.TextHitInfo java.awt.font.TextHitInfo int
      StackMap stack:
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Backward:Ljavax/swing/text/Position$Bias;
            aastore
        end local 14 // char c
        80: .line 366
            goto 82
        end local 9 // javax.swing.text.Segment text
        81: .line 368
      StackMap locals: javax.swing.text.GlyphPainter2 javax.swing.text.GlyphView int javax.swing.text.Position$Bias java.awt.Shape int javax.swing.text.Position$Bias[] int int top javax.swing.text.AbstractDocument int java.awt.font.TextHitInfo java.awt.font.TextHitInfo
      StackMap stack:
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            aastore
        82: .line 370
      StackMap locals:
      StackMap stack:
            iload 2 /* pos */
            ireturn
        end local 13 // java.awt.font.TextHitInfo nextHit
        end local 12 // java.awt.font.TextHitInfo currentHit
        end local 11 // boolean viewIsLeftToRight
        end local 10 // javax.swing.text.AbstractDocument doc
        83: .line 372
      StackMap locals: javax.swing.text.GlyphPainter2 javax.swing.text.GlyphView int javax.swing.text.Position$Bias java.awt.Shape int javax.swing.text.Position$Bias[] int int
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Bad direction: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 5 /* direction */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        84: .line 374
      StackMap locals:
      StackMap stack:
            iload 2 /* pos */
            ireturn
        end local 8 // int endOffset
        end local 7 // int startOffset
        end local 6 // javax.swing.text.Position$Bias[] biasRet
        end local 5 // int direction
        end local 4 // java.awt.Shape a
        end local 3 // javax.swing.text.Position$Bias b
        end local 2 // int pos
        end local 1 // javax.swing.text.GlyphView v
        end local 0 // javax.swing.text.GlyphPainter2 this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   85     0               this  Ljavax/swing/text/GlyphPainter2;
            0   85     1                  v  Ljavax/swing/text/GlyphView;
            0   85     2                pos  I
            0   85     3                  b  Ljavax/swing/text/Position$Bias;
            0   85     4                  a  Ljava/awt/Shape;
            0   85     5          direction  I
            0   85     6            biasRet  [Ljavax/swing/text/Position$Bias;
            1   85     7        startOffset  I
            2   85     8          endOffset  I
           17   24     9               text  Ljavax/swing/text/Segment;
           36   42     9               text  Ljavax/swing/text/Segment;
           54   61     9               text  Ljavax/swing/text/Segment;
           75   81     9               text  Ljavax/swing/text/Segment;
            6   44    10                doc  Ljavax/swing/text/AbstractDocument;
           45   83    10                doc  Ljavax/swing/text/AbstractDocument;
            7   44    11  viewIsLeftToRight  Z
           46   83    11  viewIsLeftToRight  Z
           26   27    12         currentHit  Ljava/awt/font/TextHitInfo;
           28   44    12         currentHit  Ljava/awt/font/TextHitInfo;
           65   66    12         currentHit  Ljava/awt/font/TextHitInfo;
           67   83    12         currentHit  Ljava/awt/font/TextHitInfo;
           29   44    13            nextHit  Ljava/awt/font/TextHitInfo;
           68   83    13            nextHit  Ljava/awt/font/TextHitInfo;
           18   24    14                  c  C
           37   41    14                  c  C
           55   61    14                  c  C
           76   80    14                  c  C
    Exceptions:
      throws javax.swing.text.BadLocationException
    MethodParameters:
           Name  Flags
      v          
      pos        
      b          
      a          
      direction  
      biasRet    
}
SourceFile: "GlyphPainter2.java"
InnerClasses:
  public abstract GlyphPainter = javax.swing.text.GlyphView$GlyphPainter of javax.swing.text.GlyphView
  public final Bias = javax.swing.text.Position$Bias of javax.swing.text.Position