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=10, 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
            new java.awt.geom.Rectangle2D$Float
            dup
            invokespecial java.awt.geom.Rectangle2D$Float.<init>:()V
            astore 9 /* rect */
        start local 9 // java.awt.geom.Rectangle2D rect
         8: .line 149
            aload 9 /* rect */
            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
         9: .line 150
            aload 9 /* rect */
            areturn
        end local 9 // java.awt.geom.Rectangle2D rect
        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   10     0   this  Ljavax/swing/text/GlyphPainter2;
            0   10     1      v  Ljavax/swing/text/GlyphView;
            0   10     2    pos  I
            0   10     3   bias  Ljavax/swing/text/Position$Bias;
            0   10     4      a  Ljava/awt/Shape;
            1   10     5   offs  I
            2   10     6  alloc  Ljava/awt/geom/Rectangle2D;
            6   10     7    hit  Ljava/awt/font/TextHitInfo;
            7   10     8   locs  [F
            8   10     9   rect  Ljava/awt/geom/Rectangle2D;
    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 171
            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 174
            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 175
            aload 7 /* hit */
            invokevirtual java.awt.font.TextHitInfo.getInsertionIndex:()I
            istore 8 /* pos */
        start local 8 // int pos
         5: .line 177
            iload 8 /* pos */
            aload 1 /* v */
            invokevirtual javax.swing.text.GlyphView.getEndOffset:()I
            if_icmpne 7
         6: .line 178
            iinc 8 /* pos */ -1
         7: .line 181
      StackMap locals: java.awt.geom.Rectangle2D java.awt.font.TextHitInfo int
      StackMap stack:
            aload 5 /* biasReturn */
            iconst_0
            aload 7 /* hit */
            invokevirtual java.awt.font.TextHitInfo.isLeadingEdge:()Z
            ifeq 8
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            goto 9
      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
         8: 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
         9: aastore
        10: .line 182
            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   11     0        this  Ljavax/swing/text/GlyphPainter2;
            0   11     1           v  Ljavax/swing/text/GlyphView;
            0   11     2           x  F
            0   11     3           y  F
            0   11     4           a  Ljava/awt/Shape;
            0   11     5  biasReturn  [Ljavax/swing/text/Position$Bias;
            3   11     6       alloc  Ljava/awt/geom/Rectangle2D;
            4   11     7         hit  Ljava/awt/font/TextHitInfo;
            5   11     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 205
            fload 4 /* len */
            fconst_0
            fcmpg
            ifge 2
         1: .line 206
            new java.lang.IllegalArgumentException
            dup
            ldc "Length must be >= 0."
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 210
      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 211
            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 212
            goto 6
        end local 5 // java.awt.font.TextHitInfo hit
         5: .line 213
      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 215
      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 243
            aload 1 /* v */
            invokevirtual javax.swing.text.GlyphView.getDocument:()Ljavax/swing/text/Document;
            astore 7 /* doc */
        start local 7 // javax.swing.text.Document doc
         1: .line 244
            aload 1 /* v */
            invokevirtual javax.swing.text.GlyphView.getStartOffset:()I
            istore 8 /* startOffset */
        start local 8 // int startOffset
         2: .line 245
            aload 1 /* v */
            invokevirtual javax.swing.text.GlyphView.getEndOffset:()I
            istore 9 /* endOffset */
        start local 9 // int endOffset
         3: .line 250
            iload 5 /* direction */
            tableswitch { // 1 - 7
                    1: 4
                    2: 82
                    3: 6
                    4: 82
                    5: 5
                    6: 82
                    7: 44
              default: 82
          }
         4: .line 252
      StackMap locals: javax.swing.text.Document int int
      StackMap stack:
            goto 83
         5: .line 254
      StackMap locals:
      StackMap stack:
            goto 83
         6: .line 256
      StackMap locals:
      StackMap stack:
            aload 7 /* doc */
            iload 8 /* startOffset */
            iload 9 /* endOffset */
            invokestatic javax.swing.text.AbstractDocument.isLeftToRight:(Ljavax/swing/text/Document;II)Z
            istore 11 /* viewIsLeftToRight */
        start local 11 // boolean viewIsLeftToRight
         7: .line 258
            iload 8 /* startOffset */
            aload 7 /* doc */
            invokeinterface javax.swing.text.Document.getLength:()I
            if_icmpne 12
         8: .line 259
            iload 2 /* pos */
            iconst_m1
            if_icmpne 11
         9: .line 260
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            aastore
        10: .line 261
            iload 8 /* startOffset */
            ireturn
        11: .line 265
      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[] javax.swing.text.Document int int top int
      StackMap stack:
            iconst_m1
            ireturn
        12: .line 267
      StackMap locals:
      StackMap stack:
            iload 2 /* pos */
            iconst_m1
            if_icmpne 24
        13: .line 269
            iload 11 /* viewIsLeftToRight */
            ifeq 16
        14: .line 270
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            aastore
        15: .line 271
            iload 8 /* startOffset */
            ireturn
        16: .line 273
      StackMap locals:
      StackMap stack:
            aload 1 /* v */
            iload 9 /* endOffset */
            iconst_1
            isub
            iload 9 /* endOffset */
            invokevirtual javax.swing.text.GlyphView.getText:(II)Ljavax/swing/text/Segment;
            astore 10 /* text */
        start local 10 // javax.swing.text.Segment text
        17: .line 274
            aload 10 /* text */
            getfield javax.swing.text.Segment.array:[C
            aload 10 /* text */
            getfield javax.swing.text.Segment.offset:I
            caload
            istore 14 /* c */
        start local 14 // char c
        18: .line 275
            aload 10 /* text */
            invokestatic javax.swing.text.SegmentCache.releaseSharedSegment:(Ljavax/swing/text/Segment;)V
        19: .line 276
            iload 14 /* c */
            bipush 10
            if_icmpne 22
        20: .line 277
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            aastore
        21: .line 278
            iload 9 /* endOffset */
            iconst_1
            isub
            ireturn
        22: .line 280
      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[] javax.swing.text.Document int int javax.swing.text.Segment 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 281
            iload 9 /* endOffset */
            ireturn
        end local 14 // char c
        end local 10 // javax.swing.text.Segment text
        24: .line 284
      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[] javax.swing.text.Document int int top int
      StackMap stack:
            aload 3 /* b */
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            if_acmpne 27
        25: .line 285
            iload 2 /* pos */
            iload 8 /* 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 287
      StackMap locals:
      StackMap stack:
            iload 2 /* pos */
            iload 8 /* 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 288
      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 289
            aload 13 /* nextHit */
            ifnonnull 31
        30: .line 290
            iconst_m1
            ireturn
        31: .line 292
      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 296
            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 298
      StackMap locals:
      StackMap stack:
            aload 13 /* nextHit */
            invokevirtual java.awt.font.TextHitInfo.getInsertionIndex:()I
            iload 8 /* startOffset */
            iadd
            istore 2 /* pos */
        34: .line 300
            iload 2 /* pos */
            iload 9 /* endOffset */
            if_icmpne 42
        35: .line 303
            aload 1 /* v */
            iload 9 /* endOffset */
            iconst_1
            isub
            iload 9 /* endOffset */
            invokevirtual javax.swing.text.GlyphView.getText:(II)Ljavax/swing/text/Segment;
            astore 10 /* text */
        start local 10 // javax.swing.text.Segment text
        36: .line 304
            aload 10 /* text */
            getfield javax.swing.text.Segment.array:[C
            aload 10 /* text */
            getfield javax.swing.text.Segment.offset:I
            caload
            istore 14 /* c */
        start local 14 // char c
        37: .line 305
            aload 10 /* text */
            invokestatic javax.swing.text.SegmentCache.releaseSharedSegment:(Ljavax/swing/text/Segment;)V
        38: .line 306
            iload 14 /* c */
            bipush 10
            if_icmpne 40
        39: .line 307
            iconst_m1
            ireturn
        40: .line 309
      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[] javax.swing.text.Document int int javax.swing.text.Segment 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 310
            goto 43
        end local 10 // javax.swing.text.Segment text
        42: .line 312
      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[] javax.swing.text.Document int int top 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 314
      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
        44: .line 316
      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[] javax.swing.text.Document int int
      StackMap stack:
            aload 7 /* doc */
            iload 8 /* startOffset */
            iload 9 /* endOffset */
            invokestatic javax.swing.text.AbstractDocument.isLeftToRight:(Ljavax/swing/text/Document;II)Z
            istore 11 /* viewIsLeftToRight */
        start local 11 // boolean viewIsLeftToRight
        45: .line 318
            iload 8 /* startOffset */
            aload 7 /* doc */
            invokeinterface javax.swing.text.Document.getLength:()I
            if_icmpne 50
        46: .line 319
            iload 2 /* pos */
            iconst_m1
            if_icmpne 49
        47: .line 320
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            aastore
        48: .line 321
            iload 8 /* startOffset */
            ireturn
        49: .line 325
      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[] javax.swing.text.Document int int top int
      StackMap stack:
            iconst_m1
            ireturn
        50: .line 327
      StackMap locals:
      StackMap stack:
            iload 2 /* pos */
            iconst_m1
            if_icmpne 62
        51: .line 329
            iload 11 /* viewIsLeftToRight */
            ifeq 60
        52: .line 330
            aload 1 /* v */
            iload 9 /* endOffset */
            iconst_1
            isub
            iload 9 /* endOffset */
            invokevirtual javax.swing.text.GlyphView.getText:(II)Ljavax/swing/text/Segment;
            astore 10 /* text */
        start local 10 // javax.swing.text.Segment text
        53: .line 331
            aload 10 /* text */
            getfield javax.swing.text.Segment.array:[C
            aload 10 /* text */
            getfield javax.swing.text.Segment.offset:I
            caload
            istore 14 /* c */
        start local 14 // char c
        54: .line 332
            aload 10 /* text */
            invokestatic javax.swing.text.SegmentCache.releaseSharedSegment:(Ljavax/swing/text/Segment;)V
        55: .line 333
            iload 14 /* c */
            bipush 10
            if_icmpeq 56
            iload 14 /* c */
            invokestatic java.lang.Character.isSpaceChar:(C)Z
            ifeq 58
        56: .line 334
      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[] javax.swing.text.Document int int javax.swing.text.Segment int top top int
      StackMap stack:
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            aastore
        57: .line 335
            iload 9 /* endOffset */
            iconst_1
            isub
            ireturn
        58: .line 337
      StackMap locals:
      StackMap stack:
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Backward:Ljavax/swing/text/Position$Bias;
            aastore
        59: .line 338
            iload 9 /* endOffset */
            ireturn
        end local 14 // char c
        end local 10 // javax.swing.text.Segment text
        60: .line 340
      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[] javax.swing.text.Document int int top int
      StackMap stack:
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            aastore
        61: .line 341
            iload 8 /* startOffset */
            ireturn
        62: .line 344
      StackMap locals:
      StackMap stack:
            aload 3 /* b */
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            if_acmpne 65
        63: .line 345
            iload 2 /* pos */
            iload 8 /* startOffset */
            isub
            invokestatic java.awt.font.TextHitInfo.afterOffset:(I)Ljava/awt/font/TextHitInfo;
            astore 12 /* currentHit */
        start local 12 // java.awt.font.TextHitInfo currentHit
        64: goto 66
        end local 12 // java.awt.font.TextHitInfo currentHit
        65: .line 347
      StackMap locals:
      StackMap stack:
            iload 2 /* pos */
            iload 8 /* startOffset */
            isub
            invokestatic java.awt.font.TextHitInfo.beforeOffset:(I)Ljava/awt/font/TextHitInfo;
            astore 12 /* currentHit */
        start local 12 // java.awt.font.TextHitInfo currentHit
        66: .line 348
      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
        67: .line 349
            aload 13 /* nextHit */
            ifnonnull 69
        68: .line 350
            iconst_m1
            ireturn
        69: .line 352
      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 71
        70: .line 356
            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 */
        71: .line 358
      StackMap locals:
      StackMap stack:
            aload 13 /* nextHit */
            invokevirtual java.awt.font.TextHitInfo.getInsertionIndex:()I
            iload 8 /* startOffset */
            iadd
            istore 2 /* pos */
        72: .line 360
            iload 2 /* pos */
            iload 9 /* endOffset */
            if_icmpne 80
        73: .line 363
            aload 1 /* v */
            iload 9 /* endOffset */
            iconst_1
            isub
            iload 9 /* endOffset */
            invokevirtual javax.swing.text.GlyphView.getText:(II)Ljavax/swing/text/Segment;
            astore 10 /* text */
        start local 10 // javax.swing.text.Segment text
        74: .line 364
            aload 10 /* text */
            getfield javax.swing.text.Segment.array:[C
            aload 10 /* text */
            getfield javax.swing.text.Segment.offset:I
            caload
            istore 14 /* c */
        start local 14 // char c
        75: .line 365
            aload 10 /* text */
            invokestatic javax.swing.text.SegmentCache.releaseSharedSegment:(Ljavax/swing/text/Segment;)V
        76: .line 366
            iload 14 /* c */
            bipush 10
            if_icmpne 78
        77: .line 367
            iconst_m1
            ireturn
        78: .line 369
      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[] javax.swing.text.Document int int javax.swing.text.Segment 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
        79: .line 370
            goto 81
        end local 10 // javax.swing.text.Segment text
        80: .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[] javax.swing.text.Document int int top 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
        81: .line 374
      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
        82: .line 376
      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[] javax.swing.text.Document 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
        83: .line 378
      StackMap locals:
      StackMap stack:
            iload 2 /* pos */
            ireturn
        end local 9 // int endOffset
        end local 8 // int startOffset
        end local 7 // javax.swing.text.Document doc
        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   84     0               this  Ljavax/swing/text/GlyphPainter2;
            0   84     1                  v  Ljavax/swing/text/GlyphView;
            0   84     2                pos  I
            0   84     3                  b  Ljavax/swing/text/Position$Bias;
            0   84     4                  a  Ljava/awt/Shape;
            0   84     5          direction  I
            0   84     6            biasRet  [Ljavax/swing/text/Position$Bias;
            1   84     7                doc  Ljavax/swing/text/Document;
            2   84     8        startOffset  I
            3   84     9          endOffset  I
           17   24    10               text  Ljavax/swing/text/Segment;
           36   42    10               text  Ljavax/swing/text/Segment;
           53   60    10               text  Ljavax/swing/text/Segment;
           74   80    10               text  Ljavax/swing/text/Segment;
            7   44    11  viewIsLeftToRight  Z
           45   82    11  viewIsLeftToRight  Z
           26   27    12         currentHit  Ljava/awt/font/TextHitInfo;
           28   44    12         currentHit  Ljava/awt/font/TextHitInfo;
           64   65    12         currentHit  Ljava/awt/font/TextHitInfo;
           66   82    12         currentHit  Ljava/awt/font/TextHitInfo;
           29   44    13            nextHit  Ljava/awt/font/TextHitInfo;
           67   82    13            nextHit  Ljava/awt/font/TextHitInfo;
           18   24    14                  c  C
           37   41    14                  c  C
           54   60    14                  c  C
           75   79    14                  c  C
    Exceptions:
      throws javax.swing.text.BadLocationException
    MethodParameters:
           Name  Flags
      v          
      pos        
      b          
      a          
      direction  
      biasRet    
}
SourceFile: "GlyphPainter2.java"
InnerClasses:
  public Float = java.awt.geom.Rectangle2D$Float of java.awt.geom.Rectangle2D
  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