public class org.apache.batik.gvt.font.AWTGVTGlyphVector implements org.apache.batik.gvt.font.GVTGlyphVector
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.batik.gvt.font.AWTGVTGlyphVector
  super_class: java.lang.Object
{
  public static final java.text.AttributedCharacterIterator$Attribute PAINT_INFO;
    descriptor: Ljava/text/AttributedCharacterIterator$Attribute;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  private java.awt.font.GlyphVector awtGlyphVector;
    descriptor: Ljava/awt/font/GlyphVector;
    flags: (0x0002) ACC_PRIVATE

  private org.apache.batik.gvt.font.AWTGVTFont gvtFont;
    descriptor: Lorg/apache/batik/gvt/font/AWTGVTFont;
    flags: (0x0002) ACC_PRIVATE

  private java.text.CharacterIterator ci;
    descriptor: Ljava/text/CharacterIterator;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.geom.Point2D[] defaultGlyphPositions;
    descriptor: [Ljava/awt/geom/Point2D;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.geom.Point2D$Float[] glyphPositions;
    descriptor: [Ljava/awt/geom/Point2D$Float;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.geom.AffineTransform[] glyphTransforms;
    descriptor: [Ljava/awt/geom/AffineTransform;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.Shape[] glyphOutlines;
    descriptor: [Ljava/awt/Shape;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.Shape[] glyphVisualBounds;
    descriptor: [Ljava/awt/Shape;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.Shape[] glyphLogicalBounds;
    descriptor: [Ljava/awt/Shape;
    flags: (0x0002) ACC_PRIVATE

  private boolean[] glyphVisible;
    descriptor: [Z
    flags: (0x0002) ACC_PRIVATE

  private org.apache.batik.gvt.font.GVTGlyphMetrics[] glyphMetrics;
    descriptor: [Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.geom.GeneralPath outline;
    descriptor: Ljava/awt/geom/GeneralPath;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.geom.Rectangle2D visualBounds;
    descriptor: Ljava/awt/geom/Rectangle2D;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.geom.Rectangle2D logicalBounds;
    descriptor: Ljava/awt/geom/Rectangle2D;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.geom.Rectangle2D bounds2D;
    descriptor: Ljava/awt/geom/Rectangle2D;
    flags: (0x0002) ACC_PRIVATE

  private double scaleFactor;
    descriptor: D
    flags: (0x0002) ACC_PRIVATE

  private float ascent;
    descriptor: F
    flags: (0x0002) ACC_PRIVATE

  private float descent;
    descriptor: F
    flags: (0x0002) ACC_PRIVATE

  private org.apache.batik.gvt.text.TextPaintInfo cacheTPI;
    descriptor: Lorg/apache/batik/gvt/text/TextPaintInfo;
    flags: (0x0002) ACC_PRIVATE

  private static final boolean outlinesPositioned;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final boolean drawGlyphVectorWorks;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final boolean glyphVectorTransformWorks;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=0
         0: .line 52
            getstatic org.apache.batik.gvt.text.GVTAttributedCharacterIterator$TextAttribute.PAINT_INFO:Lorg/apache/batik/gvt/text/GVTAttributedCharacterIterator$TextAttribute;
         1: .line 51
            putstatic org.apache.batik.gvt.font.AWTGVTGlyphVector.PAINT_INFO:Ljava/text/AttributedCharacterIterator$Attribute;
         2: .line 504
            ldc "java.specification.version"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            astore 0 /* s */
        start local 0 // java.lang.String s
         3: .line 505
            ldc "1.6"
            aload 0 /* s */
            invokevirtual java.lang.String.compareTo:(Ljava/lang/String;)I
            ifgt 8
         4: .line 506
            iconst_1
            putstatic org.apache.batik.gvt.font.AWTGVTGlyphVector.outlinesPositioned:Z
         5: .line 507
            iconst_0
            putstatic org.apache.batik.gvt.font.AWTGVTGlyphVector.drawGlyphVectorWorks:Z
         6: .line 508
            iconst_1
            putstatic org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphVectorTransformWorks:Z
         7: .line 509
            goto 21
      StackMap locals: java.lang.String
      StackMap stack:
         8: ldc "1.4"
            aload 0 /* s */
            invokevirtual java.lang.String.compareTo:(Ljava/lang/String;)I
            ifgt 13
         9: .line 511
            iconst_1
            putstatic org.apache.batik.gvt.font.AWTGVTGlyphVector.outlinesPositioned:Z
        10: .line 512
            iconst_1
            putstatic org.apache.batik.gvt.font.AWTGVTGlyphVector.drawGlyphVectorWorks:Z
        11: .line 513
            iconst_1
            putstatic org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphVectorTransformWorks:Z
        12: .line 514
            goto 21
      StackMap locals:
      StackMap stack:
        13: getstatic org.apache.batik.util.Platform.isOSX:Z
            ifeq 18
        14: .line 515
            iconst_1
            putstatic org.apache.batik.gvt.font.AWTGVTGlyphVector.outlinesPositioned:Z
        15: .line 516
            iconst_0
            putstatic org.apache.batik.gvt.font.AWTGVTGlyphVector.drawGlyphVectorWorks:Z
        16: .line 517
            iconst_0
            putstatic org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphVectorTransformWorks:Z
        17: .line 518
            goto 21
        18: .line 519
      StackMap locals:
      StackMap stack:
            iconst_0
            putstatic org.apache.batik.gvt.font.AWTGVTGlyphVector.outlinesPositioned:Z
        19: .line 520
            iconst_1
            putstatic org.apache.batik.gvt.font.AWTGVTGlyphVector.drawGlyphVectorWorks:Z
        20: .line 521
            iconst_0
            putstatic org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphVectorTransformWorks:Z
        end local 0 // java.lang.String s
        21: .line 523
      StackMap locals:
      StackMap stack:
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            3   21     0     s  Ljava/lang/String;

  public void <init>(java.awt.font.GlyphVector, org.apache.batik.gvt.font.AWTGVTFont, double, java.text.CharacterIterator);
    descriptor: (Ljava/awt/font/GlyphVector;Lorg/apache/batik/gvt/font/AWTGVTFont;DLjava/text/CharacterIterator;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=9, args_size=5
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
        start local 1 // java.awt.font.GlyphVector glyphVector
        start local 2 // org.apache.batik.gvt.font.AWTGVTFont font
        start local 3 // double scaleFactor
        start local 5 // java.text.CharacterIterator ci
         0: .line 94
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 99
            aload 0 /* this */
            aload 1 /* glyphVector */
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.awtGlyphVector:Ljava/awt/font/GlyphVector;
         2: .line 100
            aload 0 /* this */
            aload 2 /* font */
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.gvtFont:Lorg/apache/batik/gvt/font/AWTGVTFont;
         3: .line 101
            aload 0 /* this */
            dload 3 /* scaleFactor */
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.scaleFactor:D
         4: .line 102
            aload 0 /* this */
            aload 5 /* ci */
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.ci:Ljava/text/CharacterIterator;
         5: .line 104
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.gvtFont:Lorg/apache/batik/gvt/font/AWTGVTFont;
         6: .line 105
            ldc "By"
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.awtGlyphVector:Ljava/awt/font/GlyphVector;
            invokevirtual java.awt.font.GlyphVector.getFontRenderContext:()Ljava/awt/font/FontRenderContext;
         7: .line 104
            invokevirtual org.apache.batik.gvt.font.AWTGVTFont.getLineMetrics:(Ljava/lang/String;Ljava/awt/font/FontRenderContext;)Lorg/apache/batik/gvt/font/GVTLineMetrics;
            astore 6 /* lineMetrics */
        start local 6 // org.apache.batik.gvt.font.GVTLineMetrics lineMetrics
         8: .line 107
            aload 0 /* this */
            aload 6 /* lineMetrics */
            invokevirtual org.apache.batik.gvt.font.GVTLineMetrics.getAscent:()F
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.ascent:F
         9: .line 108
            aload 0 /* this */
            aload 6 /* lineMetrics */
            invokevirtual org.apache.batik.gvt.font.GVTLineMetrics.getDescent:()F
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.descent:F
        10: .line 110
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
        11: .line 111
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.visualBounds:Ljava/awt/geom/Rectangle2D;
        12: .line 112
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
        13: .line 113
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
        14: .line 114
            aload 1 /* glyphVector */
            invokevirtual java.awt.font.GlyphVector.getNumGlyphs:()I
            istore 7 /* numGlyphs */
        start local 7 // int numGlyphs
        15: .line 115
            aload 0 /* this */
            iload 7 /* numGlyphs */
            iconst_1
            iadd
            anewarray java.awt.geom.Point2D$Float
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphPositions:[Ljava/awt/geom/Point2D$Float;
        16: .line 116
            aload 0 /* this */
            iload 7 /* numGlyphs */
            anewarray java.awt.geom.AffineTransform
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphTransforms:[Ljava/awt/geom/AffineTransform;
        17: .line 117
            aload 0 /* this */
            iload 7 /* numGlyphs */
            anewarray java.awt.Shape
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphOutlines:[Ljava/awt/Shape;
        18: .line 118
            aload 0 /* this */
            iload 7 /* numGlyphs */
            anewarray java.awt.Shape
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphVisualBounds:[Ljava/awt/Shape;
        19: .line 119
            aload 0 /* this */
            iload 7 /* numGlyphs */
            anewarray java.awt.Shape
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
        20: .line 120
            aload 0 /* this */
            iload 7 /* numGlyphs */
            newarray 4
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphVisible:[Z
        21: .line 121
            aload 0 /* this */
            iload 7 /* numGlyphs */
            anewarray org.apache.batik.gvt.font.GVTGlyphMetrics
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphMetrics:[Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
        22: .line 123
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        23: goto 26
        24: .line 124
      StackMap locals: org.apache.batik.gvt.font.AWTGVTGlyphVector java.awt.font.GlyphVector org.apache.batik.gvt.font.AWTGVTFont double java.text.CharacterIterator org.apache.batik.gvt.font.GVTLineMetrics int int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphVisible:[Z
            iload 8 /* i */
            iconst_1
            bastore
        25: .line 123
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        26: iload 8 /* i */
            iload 7 /* numGlyphs */
            if_icmplt 24
        end local 8 // int i
        27: .line 126
            return
        end local 7 // int numGlyphs
        end local 6 // org.apache.batik.gvt.font.GVTLineMetrics lineMetrics
        end local 5 // java.text.CharacterIterator ci
        end local 3 // double scaleFactor
        end local 2 // org.apache.batik.gvt.font.AWTGVTFont font
        end local 1 // java.awt.font.GlyphVector glyphVector
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   28     0         this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;
            0   28     1  glyphVector  Ljava/awt/font/GlyphVector;
            0   28     2         font  Lorg/apache/batik/gvt/font/AWTGVTFont;
            0   28     3  scaleFactor  D
            0   28     5           ci  Ljava/text/CharacterIterator;
            8   28     6  lineMetrics  Lorg/apache/batik/gvt/font/GVTLineMetrics;
           15   28     7    numGlyphs  I
           23   27     8            i  I
    MethodParameters:
             Name  Flags
      glyphVector  
      font         
      scaleFactor  
      ci           

  public org.apache.batik.gvt.font.GVTFont getFont();
    descriptor: ()Lorg/apache/batik/gvt/font/GVTFont;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
         0: .line 132
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.gvtFont:Lorg/apache/batik/gvt/font/AWTGVTFont;
            areturn
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;

  public java.awt.font.FontRenderContext getFontRenderContext();
    descriptor: ()Ljava/awt/font/FontRenderContext;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
         0: .line 139
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.awtGlyphVector:Ljava/awt/font/GlyphVector;
            invokevirtual java.awt.font.GlyphVector.getFontRenderContext:()Ljava/awt/font/FontRenderContext;
            areturn
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;

  public int getGlyphCode(int);
    descriptor: (I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
        start local 1 // int glyphIndex
         0: .line 146
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.awtGlyphVector:Ljava/awt/font/GlyphVector;
            iload 1 /* glyphIndex */
            invokevirtual java.awt.font.GlyphVector.getGlyphCode:(I)I
            ireturn
        end local 1 // int glyphIndex
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;
            0    1     1  glyphIndex  I
    MethodParameters:
            Name  Flags
      glyphIndex  

  public int[] getGlyphCodes(int, int, int[]);
    descriptor: (II[I)[I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
        start local 1 // int beginGlyphIndex
        start local 2 // int numEntries
        start local 3 // int[] codeReturn
         0: .line 154
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.awtGlyphVector:Ljava/awt/font/GlyphVector;
            iload 1 /* beginGlyphIndex */
            iload 2 /* numEntries */
         1: .line 155
            aload 3 /* codeReturn */
         2: .line 154
            invokevirtual java.awt.font.GlyphVector.getGlyphCodes:(II[I)[I
            areturn
        end local 3 // int[] codeReturn
        end local 2 // int numEntries
        end local 1 // int beginGlyphIndex
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    3     0             this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;
            0    3     1  beginGlyphIndex  I
            0    3     2       numEntries  I
            0    3     3       codeReturn  [I
    MethodParameters:
                 Name  Flags
      beginGlyphIndex  
      numEntries       
      codeReturn       

  public java.awt.font.GlyphJustificationInfo getGlyphJustificationInfo(int);
    descriptor: (I)Ljava/awt/font/GlyphJustificationInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
        start local 1 // int glyphIndex
         0: .line 163
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.awtGlyphVector:Ljava/awt/font/GlyphVector;
            iload 1 /* glyphIndex */
            invokevirtual java.awt.font.GlyphVector.getGlyphJustificationInfo:(I)Ljava/awt/font/GlyphJustificationInfo;
            areturn
        end local 1 // int glyphIndex
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;
            0    1     1  glyphIndex  I
    MethodParameters:
            Name  Flags
      glyphIndex  

  public java.awt.geom.Rectangle2D getBounds2D(java.text.AttributedCharacterIterator);
    descriptor: (Ljava/text/AttributedCharacterIterator;)Ljava/awt/geom/Rectangle2D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
        start local 1 // java.text.AttributedCharacterIterator aci
         0: .line 170
            aload 1 /* aci */
            invokeinterface java.text.AttributedCharacterIterator.first:()C
            pop
         1: .line 171
            aload 1 /* aci */
            getstatic org.apache.batik.gvt.font.AWTGVTGlyphVector.PAINT_INFO:Ljava/text/AttributedCharacterIterator$Attribute;
            invokeinterface java.text.AttributedCharacterIterator.getAttribute:(Ljava/text/AttributedCharacterIterator$Attribute;)Ljava/lang/Object;
            checkcast org.apache.batik.gvt.text.TextPaintInfo
            astore 2 /* tpi */
        start local 2 // org.apache.batik.gvt.text.TextPaintInfo tpi
         2: .line 172
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
            ifnull 5
         3: .line 173
            aload 2 /* tpi */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.cacheTPI:Lorg/apache/batik/gvt/text/TextPaintInfo;
            invokestatic org.apache.batik.gvt.text.TextPaintInfo.equivilent:(Lorg/apache/batik/gvt/text/TextPaintInfo;Lorg/apache/batik/gvt/text/TextPaintInfo;)Z
            ifeq 5
         4: .line 174
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
            areturn
         5: .line 176
      StackMap locals: org.apache.batik.gvt.text.TextPaintInfo
      StackMap stack:
            aload 2 /* tpi */
            ifnonnull 7
         6: .line 177
            aconst_null
            areturn
         7: .line 178
      StackMap locals:
      StackMap stack:
            aload 2 /* tpi */
            getfield org.apache.batik.gvt.text.TextPaintInfo.visible:Z
            ifne 9
         8: .line 179
            aconst_null
            areturn
         9: .line 181
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.apache.batik.gvt.text.TextPaintInfo
            dup
            aload 2 /* tpi */
            invokespecial org.apache.batik.gvt.text.TextPaintInfo.<init>:(Lorg/apache/batik/gvt/text/TextPaintInfo;)V
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.cacheTPI:Lorg/apache/batik/gvt/text/TextPaintInfo;
        10: .line 182
            aconst_null
            astore 3 /* outline */
        start local 3 // java.awt.Shape outline
        11: .line 183
            aload 2 /* tpi */
            getfield org.apache.batik.gvt.text.TextPaintInfo.fillPaint:Ljava/awt/Paint;
            ifnull 14
        12: .line 184
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getOutline:()Ljava/awt/Shape;
            astore 3 /* outline */
        13: .line 185
            aload 0 /* this */
            aload 3 /* outline */
            invokeinterface java.awt.Shape.getBounds2D:()Ljava/awt/geom/Rectangle2D;
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
        14: .line 190
      StackMap locals: java.awt.Shape
      StackMap stack:
            aload 2 /* tpi */
            getfield org.apache.batik.gvt.text.TextPaintInfo.strokeStroke:Ljava/awt/Stroke;
            astore 4 /* stroke */
        start local 4 // java.awt.Stroke stroke
        15: .line 191
            aload 2 /* tpi */
            getfield org.apache.batik.gvt.text.TextPaintInfo.strokePaint:Ljava/awt/Paint;
            astore 5 /* paint */
        start local 5 // java.awt.Paint paint
        16: .line 192
            aload 4 /* stroke */
            ifnull 24
            aload 5 /* paint */
            ifnull 24
        17: .line 193
            aload 3 /* outline */
            ifnonnull 19
        18: .line 194
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getOutline:()Ljava/awt/Shape;
            astore 3 /* outline */
        19: .line 196
      StackMap locals: java.awt.Stroke java.awt.Paint
      StackMap stack:
            aload 4 /* stroke */
            aload 3 /* outline */
            invokeinterface java.awt.Stroke.createStrokedShape:(Ljava/awt/Shape;)Ljava/awt/Shape;
            invokeinterface java.awt.Shape.getBounds2D:()Ljava/awt/geom/Rectangle2D;
        20: .line 195
            astore 6 /* strokeBounds */
        start local 6 // java.awt.geom.Rectangle2D strokeBounds
        21: .line 197
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
            ifnonnull 23
        22: .line 198
            aload 0 /* this */
            aload 6 /* strokeBounds */
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
            goto 24
        23: .line 201
      StackMap locals: java.awt.geom.Rectangle2D
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
            aload 6 /* strokeBounds */
            invokevirtual java.awt.geom.Rectangle2D.add:(Ljava/awt/geom/Rectangle2D;)V
        end local 6 // java.awt.geom.Rectangle2D strokeBounds
        24: .line 203
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
            ifnonnull 26
        25: .line 204
            aconst_null
            areturn
        26: .line 206
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
            invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
            dconst_0
            dcmpl
            ifeq 28
        27: .line 207
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
            invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
            dconst_0
            dcmpl
            ifne 29
        28: .line 208
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
        29: .line 210
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
            areturn
        end local 5 // java.awt.Paint paint
        end local 4 // java.awt.Stroke stroke
        end local 3 // java.awt.Shape outline
        end local 2 // org.apache.batik.gvt.text.TextPaintInfo tpi
        end local 1 // java.text.AttributedCharacterIterator aci
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   30     0          this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;
            0   30     1           aci  Ljava/text/AttributedCharacterIterator;
            2   30     2           tpi  Lorg/apache/batik/gvt/text/TextPaintInfo;
           11   30     3       outline  Ljava/awt/Shape;
           15   30     4        stroke  Ljava/awt/Stroke;
           16   30     5         paint  Ljava/awt/Paint;
           21   24     6  strokeBounds  Ljava/awt/geom/Rectangle2D;
    MethodParameters:
      Name  Flags
      aci   

  public java.awt.geom.Rectangle2D getLogicalBounds();
    descriptor: ()Ljava/awt/geom/Rectangle2D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
         0: .line 218
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
            ifnonnull 2
         1: .line 220
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.computeGlyphLogicalBounds:()V
         2: .line 222
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
            areturn
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;

  public java.awt.Shape getGlyphLogicalBounds(int);
    descriptor: (I)Ljava/awt/Shape;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
        start local 1 // int glyphIndex
         0: .line 230
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
            iload 1 /* glyphIndex */
            aaload
            ifnonnull 3
         1: .line 231
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphVisible:[Z
            iload 1 /* glyphIndex */
            baload
            ifeq 3
         2: .line 233
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.computeGlyphLogicalBounds:()V
         3: .line 235
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
            iload 1 /* glyphIndex */
            aaload
            areturn
        end local 1 // int glyphIndex
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;
            0    4     1  glyphIndex  I
    MethodParameters:
            Name  Flags
      glyphIndex  

  private void computeGlyphLogicalBounds();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=12, locals=32, args_size=1
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
         0: .line 245
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getNumGlyphs:()I
            anewarray java.awt.Shape
            astore 1 /* tempLogicalBounds */
        start local 1 // java.awt.Shape[] tempLogicalBounds
         1: .line 246
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getNumGlyphs:()I
            newarray 4
            astore 2 /* rotated */
        start local 2 // boolean[] rotated
         2: .line 248
            ldc -1.0
            dstore 3 /* maxWidth */
        start local 3 // double maxWidth
         3: .line 249
            ldc -1.0
            dstore 5 /* maxHeight */
        start local 5 // double maxHeight
         4: .line 250
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         5: goto 67
         6: .line 252
      StackMap locals: org.apache.batik.gvt.font.AWTGVTGlyphVector java.awt.Shape[] boolean[] double double int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphVisible:[Z
            iload 7 /* i */
            baload
            ifne 9
         7: .line 254
            aload 1 /* tempLogicalBounds */
            iload 7 /* i */
            aconst_null
            aastore
         8: .line 255
            goto 66
         9: .line 258
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 7 /* i */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getGlyphTransform:(I)Ljava/awt/geom/AffineTransform;
            astore 8 /* glyphTransform */
        start local 8 // java.awt.geom.AffineTransform glyphTransform
        10: .line 259
            aload 0 /* this */
            iload 7 /* i */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getGlyphMetrics:(I)Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
            astore 9 /* glyphMetrics */
        start local 9 // org.apache.batik.gvt.font.GVTGlyphMetrics glyphMetrics
        11: .line 261
            fconst_0
            fstore 10 /* glyphX */
        start local 10 // float glyphX
        12: .line 262
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.ascent:F
            fneg
            f2d
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.scaleFactor:D
            ddiv
            d2f
            fstore 11 /* glyphY */
        start local 11 // float glyphY
        13: .line 263
            aload 9 /* glyphMetrics */
            invokevirtual org.apache.batik.gvt.font.GVTGlyphMetrics.getHorizontalAdvance:()F
            f2d
        14: .line 264
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.scaleFactor:D
        15: .line 263
            ddiv
            d2f
            fstore 12 /* glyphWidth */
        start local 12 // float glyphWidth
        16: .line 265
            aload 9 /* glyphMetrics */
            invokevirtual org.apache.batik.gvt.font.GVTGlyphMetrics.getVerticalAdvance:()F
            f2d
        17: .line 266
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.scaleFactor:D
        18: .line 265
            ddiv
            d2f
            fstore 13 /* glyphHeight */
        start local 13 // float glyphHeight
        19: .line 267
            new java.awt.geom.Rectangle2D$Double
            dup
            fload 10 /* glyphX */
            f2d
        20: .line 268
            fload 11 /* glyphY */
            f2d
        21: .line 269
            fload 12 /* glyphWidth */
            f2d
        22: .line 270
            fload 13 /* glyphHeight */
            f2d
        23: .line 267
            invokespecial java.awt.geom.Rectangle2D$Double.<init>:(DDDD)V
            astore 14 /* glyphBounds */
        start local 14 // java.awt.geom.Rectangle2D glyphBounds
        24: .line 272
            aload 14 /* glyphBounds */
            invokevirtual java.awt.geom.Rectangle2D.isEmpty:()Z
            ifeq 30
        25: .line 273
            iload 7 /* i */
            ifle 28
        26: .line 276
            aload 2 /* rotated */
            iload 7 /* i */
            aload 2 /* rotated */
            iload 7 /* i */
            iconst_1
            isub
            baload
            bastore
        27: .line 277
            goto 66
        28: .line 278
      StackMap locals: org.apache.batik.gvt.font.AWTGVTGlyphVector java.awt.Shape[] boolean[] double double int java.awt.geom.AffineTransform org.apache.batik.gvt.font.GVTGlyphMetrics float float float float java.awt.geom.Rectangle2D
      StackMap stack:
            aload 2 /* rotated */
            iload 7 /* i */
            iconst_1
            bastore
        29: .line 280
            goto 66
        30: .line 283
      StackMap locals:
      StackMap stack:
            new java.awt.geom.Point2D$Double
            dup
            aload 14 /* glyphBounds */
            invokevirtual java.awt.geom.Rectangle2D.getMinX:()D
        31: .line 284
            aload 14 /* glyphBounds */
            invokevirtual java.awt.geom.Rectangle2D.getMinY:()D
        32: .line 283
            invokespecial java.awt.geom.Point2D$Double.<init>:(DD)V
            astore 15 /* p1 */
        start local 15 // java.awt.geom.Point2D p1
        33: .line 285
            new java.awt.geom.Point2D$Double
            dup
            aload 14 /* glyphBounds */
            invokevirtual java.awt.geom.Rectangle2D.getMaxX:()D
        34: .line 286
            aload 14 /* glyphBounds */
            invokevirtual java.awt.geom.Rectangle2D.getMinY:()D
        35: .line 285
            invokespecial java.awt.geom.Point2D$Double.<init>:(DD)V
            astore 16 /* p2 */
        start local 16 // java.awt.geom.Point2D p2
        36: .line 287
            new java.awt.geom.Point2D$Double
            dup
            aload 14 /* glyphBounds */
            invokevirtual java.awt.geom.Rectangle2D.getMinX:()D
        37: .line 288
            aload 14 /* glyphBounds */
            invokevirtual java.awt.geom.Rectangle2D.getMaxY:()D
        38: .line 287
            invokespecial java.awt.geom.Point2D$Double.<init>:(DD)V
            astore 17 /* p3 */
        start local 17 // java.awt.geom.Point2D p3
        39: .line 290
            aload 0 /* this */
            iload 7 /* i */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getGlyphPosition:(I)Ljava/awt/geom/Point2D;
            astore 18 /* gpos */
        start local 18 // java.awt.geom.Point2D gpos
        40: .line 292
            aload 18 /* gpos */
            invokevirtual java.awt.geom.Point2D.getX:()D
            aload 18 /* gpos */
            invokevirtual java.awt.geom.Point2D.getY:()D
        41: .line 291
            invokestatic java.awt.geom.AffineTransform.getTranslateInstance:(DD)Ljava/awt/geom/AffineTransform;
            astore 19 /* tr */
        start local 19 // java.awt.geom.AffineTransform tr
        42: .line 294
            aload 8 /* glyphTransform */
            ifnull 44
        43: .line 295
            aload 19 /* tr */
            aload 8 /* glyphTransform */
            invokevirtual java.awt.geom.AffineTransform.concatenate:(Ljava/awt/geom/AffineTransform;)V
        44: .line 296
      StackMap locals: org.apache.batik.gvt.font.AWTGVTGlyphVector java.awt.Shape[] boolean[] double double int java.awt.geom.AffineTransform org.apache.batik.gvt.font.GVTGlyphMetrics float float float float java.awt.geom.Rectangle2D java.awt.geom.Point2D java.awt.geom.Point2D java.awt.geom.Point2D java.awt.geom.Point2D java.awt.geom.AffineTransform
      StackMap stack:
            aload 19 /* tr */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.scaleFactor:D
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.scaleFactor:D
            invokevirtual java.awt.geom.AffineTransform.scale:(DD)V
        45: .line 298
            aload 1 /* tempLogicalBounds */
            iload 7 /* i */
            aload 19 /* tr */
            aload 14 /* glyphBounds */
            invokevirtual java.awt.geom.AffineTransform.createTransformedShape:(Ljava/awt/Shape;)Ljava/awt/Shape;
            aastore
        46: .line 300
            new java.awt.geom.Point2D$Double
            dup
            invokespecial java.awt.geom.Point2D$Double.<init>:()V
            astore 20 /* tp1 */
        start local 20 // java.awt.geom.Point2D tp1
        47: .line 301
            new java.awt.geom.Point2D$Double
            dup
            invokespecial java.awt.geom.Point2D$Double.<init>:()V
            astore 21 /* tp2 */
        start local 21 // java.awt.geom.Point2D tp2
        48: .line 302
            new java.awt.geom.Point2D$Double
            dup
            invokespecial java.awt.geom.Point2D$Double.<init>:()V
            astore 22 /* tp3 */
        start local 22 // java.awt.geom.Point2D tp3
        49: .line 303
            aload 19 /* tr */
            aload 15 /* p1 */
            aload 20 /* tp1 */
            invokevirtual java.awt.geom.AffineTransform.transform:(Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;)Ljava/awt/geom/Point2D;
            pop
        50: .line 304
            aload 19 /* tr */
            aload 16 /* p2 */
            aload 21 /* tp2 */
            invokevirtual java.awt.geom.AffineTransform.transform:(Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;)Ljava/awt/geom/Point2D;
            pop
        51: .line 305
            aload 19 /* tr */
            aload 17 /* p3 */
            aload 22 /* tp3 */
            invokevirtual java.awt.geom.AffineTransform.transform:(Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;)Ljava/awt/geom/Point2D;
            pop
        52: .line 306
            aload 20 /* tp1 */
            invokevirtual java.awt.geom.Point2D.getX:()D
            aload 21 /* tp2 */
            invokevirtual java.awt.geom.Point2D.getX:()D
            dsub
            dstore 23 /* tdx12 */
        start local 23 // double tdx12
        53: .line 307
            aload 20 /* tp1 */
            invokevirtual java.awt.geom.Point2D.getX:()D
            aload 22 /* tp3 */
            invokevirtual java.awt.geom.Point2D.getX:()D
            dsub
            dstore 25 /* tdx13 */
        start local 25 // double tdx13
        54: .line 308
            aload 20 /* tp1 */
            invokevirtual java.awt.geom.Point2D.getY:()D
            aload 21 /* tp2 */
            invokevirtual java.awt.geom.Point2D.getY:()D
            dsub
            dstore 27 /* tdy12 */
        start local 27 // double tdy12
        55: .line 309
            aload 20 /* tp1 */
            invokevirtual java.awt.geom.Point2D.getY:()D
            aload 22 /* tp3 */
            invokevirtual java.awt.geom.Point2D.getY:()D
            dsub
            dstore 29 /* tdy13 */
        start local 29 // double tdy13
        56: .line 311
            dload 23 /* tdx12 */
            invokestatic java.lang.Math.abs:(D)D
            ldc 0.001
            dcmpg
            ifge 57
            dload 29 /* tdy13 */
            invokestatic java.lang.Math.abs:(D)D
            ldc 0.001
            dcmpg
            iflt 58
        57: .line 312
      StackMap locals: org.apache.batik.gvt.font.AWTGVTGlyphVector java.awt.Shape[] boolean[] double double int java.awt.geom.AffineTransform org.apache.batik.gvt.font.GVTGlyphMetrics float float float float java.awt.geom.Rectangle2D java.awt.geom.Point2D java.awt.geom.Point2D java.awt.geom.Point2D java.awt.geom.Point2D java.awt.geom.AffineTransform java.awt.geom.Point2D java.awt.geom.Point2D java.awt.geom.Point2D double double double double
      StackMap stack:
            dload 25 /* tdx13 */
            invokestatic java.lang.Math.abs:(D)D
            ldc 0.001
            dcmpg
            ifge 60
            dload 27 /* tdy12 */
            invokestatic java.lang.Math.abs:(D)D
            ldc 0.001
            dcmpg
            ifge 60
        58: .line 314
      StackMap locals:
      StackMap stack:
            aload 2 /* rotated */
            iload 7 /* i */
            iconst_0
            bastore
        59: .line 315
            goto 61
        60: .line 316
      StackMap locals:
      StackMap stack:
            aload 2 /* rotated */
            iload 7 /* i */
            iconst_1
            bastore
        61: .line 320
      StackMap locals:
      StackMap stack:
            aload 1 /* tempLogicalBounds */
            iload 7 /* i */
            aaload
            invokeinterface java.awt.Shape.getBounds2D:()Ljava/awt/geom/Rectangle2D;
            astore 31 /* rectBounds */
        start local 31 // java.awt.geom.Rectangle2D rectBounds
        62: .line 321
            aload 31 /* rectBounds */
            invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
            dload 3 /* maxWidth */
            dcmpl
            ifle 64
        63: .line 322
            aload 31 /* rectBounds */
            invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
            dstore 3 /* maxWidth */
        64: .line 323
      StackMap locals: java.awt.geom.Rectangle2D
      StackMap stack:
            aload 31 /* rectBounds */
            invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
            dload 5 /* maxHeight */
            dcmpl
            ifle 66
        65: .line 324
            aload 31 /* rectBounds */
            invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
            dstore 5 /* maxHeight */
        end local 31 // java.awt.geom.Rectangle2D rectBounds
        end local 29 // double tdy13
        end local 27 // double tdy12
        end local 25 // double tdx13
        end local 23 // double tdx12
        end local 22 // java.awt.geom.Point2D tp3
        end local 21 // java.awt.geom.Point2D tp2
        end local 20 // java.awt.geom.Point2D tp1
        end local 19 // java.awt.geom.AffineTransform tr
        end local 18 // java.awt.geom.Point2D gpos
        end local 17 // java.awt.geom.Point2D p3
        end local 16 // java.awt.geom.Point2D p2
        end local 15 // java.awt.geom.Point2D p1
        end local 14 // java.awt.geom.Rectangle2D glyphBounds
        end local 13 // float glyphHeight
        end local 12 // float glyphWidth
        end local 11 // float glyphY
        end local 10 // float glyphX
        end local 9 // org.apache.batik.gvt.font.GVTGlyphMetrics glyphMetrics
        end local 8 // java.awt.geom.AffineTransform glyphTransform
        66: .line 250
      StackMap locals: org.apache.batik.gvt.font.AWTGVTGlyphVector java.awt.Shape[] boolean[] double double int
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        67: iload 7 /* i */
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getNumGlyphs:()I
            if_icmplt 6
        end local 7 // int i
        68: .line 329
            new java.awt.geom.GeneralPath
            dup
            invokespecial java.awt.geom.GeneralPath.<init>:()V
            astore 7 /* logicalBoundsPath */
        start local 7 // java.awt.geom.GeneralPath logicalBoundsPath
        69: .line 330
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        70: goto 74
        71: .line 331
      StackMap locals: org.apache.batik.gvt.font.AWTGVTGlyphVector java.awt.Shape[] boolean[] double double java.awt.geom.GeneralPath int
      StackMap stack:
            aload 1 /* tempLogicalBounds */
            iload 8 /* i */
            aaload
            ifnull 73
        72: .line 332
            aload 7 /* logicalBoundsPath */
            aload 1 /* tempLogicalBounds */
            iload 8 /* i */
            aaload
            iconst_0
            invokevirtual java.awt.geom.GeneralPath.append:(Ljava/awt/Shape;Z)V
        73: .line 330
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        74: iload 8 /* i */
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getNumGlyphs:()I
            if_icmplt 71
        end local 8 // int i
        75: .line 336
            aload 0 /* this */
            aload 7 /* logicalBoundsPath */
            invokevirtual java.awt.geom.GeneralPath.getBounds2D:()Ljava/awt/geom/Rectangle2D;
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
        76: .line 338
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
            invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
            dload 5 /* maxHeight */
            ldc 1.5
            dmul
            dcmpg
            ifge 102
        77: .line 340
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        78: goto 100
        79: .line 343
      StackMap locals:
      StackMap stack:
            aload 2 /* rotated */
            iload 8 /* i */
            baload
            ifeq 80
            goto 99
        80: .line 344
      StackMap locals:
      StackMap stack:
            aload 1 /* tempLogicalBounds */
            iload 8 /* i */
            aaload
            ifnonnull 81
            goto 99
        81: .line 346
      StackMap locals:
      StackMap stack:
            aload 1 /* tempLogicalBounds */
            iload 8 /* i */
            aaload
            invokeinterface java.awt.Shape.getBounds2D:()Ljava/awt/geom/Rectangle2D;
            astore 9 /* glyphBounds */
        start local 9 // java.awt.geom.Rectangle2D glyphBounds
        82: .line 348
            aload 9 /* glyphBounds */
            invokevirtual java.awt.geom.Rectangle2D.getMinX:()D
            dstore 10 /* x */
        start local 10 // double x
        83: .line 349
            aload 9 /* glyphBounds */
            invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
            dstore 12 /* width */
        start local 12 // double width
        84: .line 351
            iload 8 /* i */
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getNumGlyphs:()I
            iconst_1
            isub
            if_icmpge 95
        85: .line 352
            aload 1 /* tempLogicalBounds */
            iload 8 /* i */
            iconst_1
            iadd
            aaload
            ifnull 95
        86: .line 354
            aload 1 /* tempLogicalBounds */
            iload 8 /* i */
            iconst_1
            iadd
            aaload
            invokeinterface java.awt.Shape.getBounds2D:()Ljava/awt/geom/Rectangle2D;
            astore 14 /* ngb */
        start local 14 // java.awt.geom.Rectangle2D ngb
        87: .line 356
            aload 14 /* ngb */
            invokevirtual java.awt.geom.Rectangle2D.getX:()D
            dload 10 /* x */
            dcmpl
            ifle 95
        88: .line 357
            aload 14 /* ngb */
            invokevirtual java.awt.geom.Rectangle2D.getX:()D
            dload 10 /* x */
            dsub
            dstore 15 /* nw */
        start local 15 // double nw
        89: .line 358
            dload 15 /* nw */
            dload 12 /* width */
            ldc 1.15
            dmul
            dcmpg
            ifge 95
            dload 15 /* nw */
            dload 12 /* width */
            ldc 0.85
            dmul
            dcmpl
            ifle 95
        90: .line 359
            dload 15 /* nw */
            dload 12 /* width */
            dsub
            ldc 0.5
            dmul
            dstore 17 /* delta */
        start local 17 // double delta
        91: .line 360
            dload 12 /* width */
            dload 17 /* delta */
            dadd
            dstore 12 /* width */
        92: .line 361
            aload 14 /* ngb */
            aload 14 /* ngb */
            invokevirtual java.awt.geom.Rectangle2D.getX:()D
            dload 17 /* delta */
            dsub
            aload 14 /* ngb */
            invokevirtual java.awt.geom.Rectangle2D.getY:()D
        93: .line 362
            aload 14 /* ngb */
            invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
            dload 17 /* delta */
            dadd
            aload 14 /* ngb */
            invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
        94: .line 361
            invokevirtual java.awt.geom.Rectangle2D.setRect:(DDDD)V
        end local 17 // double delta
        end local 15 // double nw
        end local 14 // java.awt.geom.Rectangle2D ngb
        95: .line 366
      StackMap locals: java.awt.geom.Rectangle2D double double
      StackMap stack:
            aload 1 /* tempLogicalBounds */
            iload 8 /* i */
            new java.awt.geom.Rectangle2D$Double
            dup
        96: .line 367
            dload 10 /* x */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
            invokevirtual java.awt.geom.Rectangle2D.getMinY:()D
        97: .line 368
            dload 12 /* width */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
            invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
            invokespecial java.awt.geom.Rectangle2D$Double.<init>:(DDDD)V
        98: .line 366
            aastore
        end local 12 // double width
        end local 10 // double x
        end local 9 // java.awt.geom.Rectangle2D glyphBounds
        99: .line 340
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
       100: iload 8 /* i */
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getNumGlyphs:()I
            if_icmplt 79
        end local 8 // int i
       101: .line 370
            goto 127
      StackMap locals:
      StackMap stack:
       102: aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
            invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
            dload 3 /* maxWidth */
            ldc 1.5
            dmul
            dcmpg
            ifge 127
       103: .line 372
            iconst_0
            istore 8 /* i */
        start local 8 // int i
       104: goto 126
       105: .line 375
      StackMap locals: int
      StackMap stack:
            aload 2 /* rotated */
            iload 8 /* i */
            baload
            ifeq 106
            goto 125
       106: .line 376
      StackMap locals:
      StackMap stack:
            aload 1 /* tempLogicalBounds */
            iload 8 /* i */
            aaload
            ifnonnull 107
            goto 125
       107: .line 378
      StackMap locals:
      StackMap stack:
            aload 1 /* tempLogicalBounds */
            iload 8 /* i */
            aaload
            invokeinterface java.awt.Shape.getBounds2D:()Ljava/awt/geom/Rectangle2D;
            astore 9 /* glyphBounds */
        start local 9 // java.awt.geom.Rectangle2D glyphBounds
       108: .line 379
            aload 9 /* glyphBounds */
            invokevirtual java.awt.geom.Rectangle2D.getMinY:()D
            dstore 10 /* y */
        start local 10 // double y
       109: .line 380
            aload 9 /* glyphBounds */
            invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
            dstore 12 /* height */
        start local 12 // double height
       110: .line 382
            iload 8 /* i */
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getNumGlyphs:()I
            iconst_1
            isub
            if_icmpge 121
       111: .line 383
            aload 1 /* tempLogicalBounds */
            iload 8 /* i */
            iconst_1
            iadd
            aaload
            ifnull 121
       112: .line 385
            aload 1 /* tempLogicalBounds */
            iload 8 /* i */
            iconst_1
            iadd
            aaload
            invokeinterface java.awt.Shape.getBounds2D:()Ljava/awt/geom/Rectangle2D;
            astore 14 /* ngb */
        start local 14 // java.awt.geom.Rectangle2D ngb
       113: .line 386
            aload 14 /* ngb */
            invokevirtual java.awt.geom.Rectangle2D.getY:()D
            dload 10 /* y */
            dcmpl
            ifle 121
       114: .line 387
            aload 14 /* ngb */
            invokevirtual java.awt.geom.Rectangle2D.getY:()D
            dload 10 /* y */
            dsub
            dstore 15 /* nh */
        start local 15 // double nh
       115: .line 388
            dload 15 /* nh */
            dload 12 /* height */
            ldc 1.15
            dmul
            dcmpg
            ifge 121
            dload 15 /* nh */
            dload 12 /* height */
            ldc 0.85
            dmul
            dcmpl
            ifle 121
       116: .line 389
            dload 15 /* nh */
            dload 12 /* height */
            dsub
            ldc 0.5
            dmul
            dstore 17 /* delta */
        start local 17 // double delta
       117: .line 390
            dload 12 /* height */
            dload 17 /* delta */
            dadd
            dstore 12 /* height */
       118: .line 391
            aload 14 /* ngb */
            aload 14 /* ngb */
            invokevirtual java.awt.geom.Rectangle2D.getX:()D
            aload 14 /* ngb */
            invokevirtual java.awt.geom.Rectangle2D.getY:()D
            dload 17 /* delta */
            dsub
       119: .line 392
            aload 14 /* ngb */
            invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
            aload 14 /* ngb */
            invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
            dload 17 /* delta */
            dadd
       120: .line 391
            invokevirtual java.awt.geom.Rectangle2D.setRect:(DDDD)V
        end local 17 // double delta
        end local 15 // double nh
        end local 14 // java.awt.geom.Rectangle2D ngb
       121: .line 396
      StackMap locals: java.awt.geom.Rectangle2D double double
      StackMap stack:
            aload 1 /* tempLogicalBounds */
            iload 8 /* i */
            new java.awt.geom.Rectangle2D$Double
            dup
       122: .line 397
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
            invokevirtual java.awt.geom.Rectangle2D.getMinX:()D
            dload 10 /* y */
       123: .line 398
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
            invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
            dload 12 /* height */
            invokespecial java.awt.geom.Rectangle2D$Double.<init>:(DDDD)V
       124: .line 396
            aastore
        end local 12 // double height
        end local 10 // double y
        end local 9 // java.awt.geom.Rectangle2D glyphBounds
       125: .line 372
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
       126: iload 8 /* i */
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getNumGlyphs:()I
            if_icmplt 105
        end local 8 // int i
       127: .line 402
      StackMap locals:
      StackMap stack:
            aload 1 /* tempLogicalBounds */
            iconst_0
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
            iconst_0
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getNumGlyphs:()I
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
       128: .line 403
            return
        end local 7 // java.awt.geom.GeneralPath logicalBoundsPath
        end local 5 // double maxHeight
        end local 3 // double maxWidth
        end local 2 // boolean[] rotated
        end local 1 // java.awt.Shape[] tempLogicalBounds
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0  129     0               this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;
            1  129     1  tempLogicalBounds  [Ljava/awt/Shape;
            2  129     2            rotated  [Z
            3  129     3           maxWidth  D
            4  129     5          maxHeight  D
            5   68     7                  i  I
           10   66     8     glyphTransform  Ljava/awt/geom/AffineTransform;
           11   66     9       glyphMetrics  Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
           12   66    10             glyphX  F
           13   66    11             glyphY  F
           16   66    12         glyphWidth  F
           19   66    13        glyphHeight  F
           24   66    14        glyphBounds  Ljava/awt/geom/Rectangle2D;
           33   66    15                 p1  Ljava/awt/geom/Point2D;
           36   66    16                 p2  Ljava/awt/geom/Point2D;
           39   66    17                 p3  Ljava/awt/geom/Point2D;
           40   66    18               gpos  Ljava/awt/geom/Point2D;
           42   66    19                 tr  Ljava/awt/geom/AffineTransform;
           47   66    20                tp1  Ljava/awt/geom/Point2D;
           48   66    21                tp2  Ljava/awt/geom/Point2D;
           49   66    22                tp3  Ljava/awt/geom/Point2D;
           53   66    23              tdx12  D
           54   66    25              tdx13  D
           55   66    27              tdy12  D
           56   66    29              tdy13  D
           62   66    31         rectBounds  Ljava/awt/geom/Rectangle2D;
           69  129     7  logicalBoundsPath  Ljava/awt/geom/GeneralPath;
           70   75     8                  i  I
           78  101     8                  i  I
           82   99     9        glyphBounds  Ljava/awt/geom/Rectangle2D;
           83   99    10                  x  D
           84   99    12              width  D
           87   95    14                ngb  Ljava/awt/geom/Rectangle2D;
           89   95    15                 nw  D
           91   95    17              delta  D
          104  127     8                  i  I
          108  125     9        glyphBounds  Ljava/awt/geom/Rectangle2D;
          109  125    10                  y  D
          110  125    12             height  D
          113  121    14                ngb  Ljava/awt/geom/Rectangle2D;
          115  121    15                 nh  D
          117  121    17              delta  D

  public org.apache.batik.gvt.font.GVTGlyphMetrics getGlyphMetrics(int);
    descriptor: (I)Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=12, locals=8, args_size=2
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
        start local 1 // int glyphIndex
         0: .line 410
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphMetrics:[Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
            iload 1 /* glyphIndex */
            aaload
            ifnull 2
         1: .line 411
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphMetrics:[Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
            iload 1 /* glyphIndex */
            aaload
            areturn
         2: .line 414
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.defaultGlyphPositions:[Ljava/awt/geom/Point2D;
            iload 1 /* glyphIndex */
            aaload
            astore 2 /* glyphPos */
        start local 2 // java.awt.geom.Point2D glyphPos
         3: .line 415
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.ci:Ljava/text/CharacterIterator;
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.ci:Ljava/text/CharacterIterator;
            invokeinterface java.text.CharacterIterator.getBeginIndex:()I
            iload 1 /* glyphIndex */
            iadd
            invokeinterface java.text.CharacterIterator.setIndex:(I)C
            istore 3 /* c */
        start local 3 // char c
         4: .line 416
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.ci:Ljava/text/CharacterIterator;
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.ci:Ljava/text/CharacterIterator;
            invokeinterface java.text.CharacterIterator.getBeginIndex:()I
            invokeinterface java.text.CharacterIterator.setIndex:(I)C
            pop
         5: .line 418
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.gvtFont:Lorg/apache/batik/gvt/font/AWTGVTFont;
            iload 3 /* c */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.awtGlyphVector:Ljava/awt/font/GlyphVector;
            iload 1 /* glyphIndex */
            aload 2 /* glyphPos */
         6: .line 417
            invokestatic org.apache.batik.gvt.font.AWTGVTFont.getGlyphGeometry:(Lorg/apache/batik/gvt/font/AWTGVTFont;CLjava/awt/font/GlyphVector;ILjava/awt/geom/Point2D;)Lorg/apache/batik/gvt/font/AWTGlyphGeometryCache$Value;
            astore 4 /* v */
        start local 4 // org.apache.batik.gvt.font.AWTGlyphGeometryCache$Value v
         7: .line 419
            aload 4 /* v */
            invokevirtual org.apache.batik.gvt.font.AWTGlyphGeometryCache$Value.getBounds2D:()Ljava/awt/geom/Rectangle2D;
            astore 5 /* gmB */
        start local 5 // java.awt.geom.Rectangle2D gmB
         8: .line 422
            new java.awt.geom.Rectangle2D$Double
            dup
         9: .line 423
            aload 5 /* gmB */
            invokevirtual java.awt.geom.Rectangle2D.getX:()D
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.scaleFactor:D
            dmul
            aload 5 /* gmB */
            invokevirtual java.awt.geom.Rectangle2D.getY:()D
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.scaleFactor:D
            dmul
        10: .line 424
            aload 5 /* gmB */
            invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.scaleFactor:D
            dmul
            aload 5 /* gmB */
            invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.scaleFactor:D
            dmul
        11: .line 422
            invokespecial java.awt.geom.Rectangle2D$Double.<init>:(DDDD)V
            astore 6 /* bounds */
        start local 6 // java.awt.geom.Rectangle2D bounds
        12: .line 429
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.defaultGlyphPositions:[Ljava/awt/geom/Point2D;
            iload 1 /* glyphIndex */
            iconst_1
            iadd
            aaload
            invokevirtual java.awt.geom.Point2D.getX:()D
        13: .line 430
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.defaultGlyphPositions:[Ljava/awt/geom/Point2D;
            iload 1 /* glyphIndex */
            aaload
            invokevirtual java.awt.geom.Point2D.getX:()D
        14: .line 429
            dsub
            d2f
            fstore 7 /* adv */
        start local 7 // float adv
        15: .line 431
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphMetrics:[Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
            iload 1 /* glyphIndex */
            new org.apache.batik.gvt.font.GVTGlyphMetrics
            dup
        16: .line 432
            fload 7 /* adv */
            f2d
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.scaleFactor:D
            dmul
            d2f
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.ascent:F
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.descent:F
            fadd
        17: .line 433
            aload 6 /* bounds */
            iconst_0
            invokespecial org.apache.batik.gvt.font.GVTGlyphMetrics.<init>:(FFLjava/awt/geom/Rectangle2D;B)V
        18: .line 431
            aastore
        19: .line 435
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphMetrics:[Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
            iload 1 /* glyphIndex */
            aaload
            areturn
        end local 7 // float adv
        end local 6 // java.awt.geom.Rectangle2D bounds
        end local 5 // java.awt.geom.Rectangle2D gmB
        end local 4 // org.apache.batik.gvt.font.AWTGlyphGeometryCache$Value v
        end local 3 // char c
        end local 2 // java.awt.geom.Point2D glyphPos
        end local 1 // int glyphIndex
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   20     0        this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;
            0   20     1  glyphIndex  I
            3   20     2    glyphPos  Ljava/awt/geom/Point2D;
            4   20     3           c  C
            7   20     4           v  Lorg/apache/batik/gvt/font/AWTGlyphGeometryCache$Value;
            8   20     5         gmB  Ljava/awt/geom/Rectangle2D;
           12   20     6      bounds  Ljava/awt/geom/Rectangle2D;
           15   20     7         adv  F
    MethodParameters:
            Name  Flags
      glyphIndex  

  public java.awt.Shape getGlyphOutline(int);
    descriptor: (I)Ljava/awt/Shape;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=2
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
        start local 1 // int glyphIndex
         0: .line 443
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphOutlines:[Ljava/awt/Shape;
            iload 1 /* glyphIndex */
            aaload
            ifnonnull 15
         1: .line 448
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.defaultGlyphPositions:[Ljava/awt/geom/Point2D;
            iload 1 /* glyphIndex */
            aaload
            astore 2 /* glyphPos */
        start local 2 // java.awt.geom.Point2D glyphPos
         2: .line 449
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.ci:Ljava/text/CharacterIterator;
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.ci:Ljava/text/CharacterIterator;
            invokeinterface java.text.CharacterIterator.getBeginIndex:()I
            iload 1 /* glyphIndex */
            iadd
            invokeinterface java.text.CharacterIterator.setIndex:(I)C
            istore 3 /* c */
        start local 3 // char c
         3: .line 450
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.ci:Ljava/text/CharacterIterator;
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.ci:Ljava/text/CharacterIterator;
            invokeinterface java.text.CharacterIterator.getBeginIndex:()I
            invokeinterface java.text.CharacterIterator.setIndex:(I)C
            pop
         4: .line 452
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.gvtFont:Lorg/apache/batik/gvt/font/AWTGVTFont;
            iload 3 /* c */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.awtGlyphVector:Ljava/awt/font/GlyphVector;
            iload 1 /* glyphIndex */
            aload 2 /* glyphPos */
         5: .line 451
            invokestatic org.apache.batik.gvt.font.AWTGVTFont.getGlyphGeometry:(Lorg/apache/batik/gvt/font/AWTGVTFont;CLjava/awt/font/GlyphVector;ILjava/awt/geom/Point2D;)Lorg/apache/batik/gvt/font/AWTGlyphGeometryCache$Value;
            astore 4 /* v */
        start local 4 // org.apache.batik.gvt.font.AWTGlyphGeometryCache$Value v
         6: .line 453
            aload 4 /* v */
            invokevirtual org.apache.batik.gvt.font.AWTGlyphGeometryCache$Value.getOutline:()Ljava/awt/Shape;
            astore 5 /* glyphOutline */
        start local 5 // java.awt.Shape glyphOutline
         7: .line 457
            aload 0 /* this */
            iload 1 /* glyphIndex */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getGlyphPosition:(I)Ljava/awt/geom/Point2D;
            invokevirtual java.awt.geom.Point2D.getX:()D
         8: .line 458
            aload 0 /* this */
            iload 1 /* glyphIndex */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getGlyphPosition:(I)Ljava/awt/geom/Point2D;
            invokevirtual java.awt.geom.Point2D.getY:()D
         9: .line 456
            invokestatic java.awt.geom.AffineTransform.getTranslateInstance:(DD)Ljava/awt/geom/AffineTransform;
            astore 6 /* tr */
        start local 6 // java.awt.geom.AffineTransform tr
        10: .line 460
            aload 0 /* this */
            iload 1 /* glyphIndex */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getGlyphTransform:(I)Ljava/awt/geom/AffineTransform;
            astore 7 /* glyphTransform */
        start local 7 // java.awt.geom.AffineTransform glyphTransform
        11: .line 462
            aload 7 /* glyphTransform */
            ifnull 13
        12: .line 463
            aload 6 /* tr */
            aload 7 /* glyphTransform */
            invokevirtual java.awt.geom.AffineTransform.concatenate:(Ljava/awt/geom/AffineTransform;)V
        13: .line 486
      StackMap locals: org.apache.batik.gvt.font.AWTGVTGlyphVector int java.awt.geom.Point2D int org.apache.batik.gvt.font.AWTGlyphGeometryCache$Value java.awt.Shape java.awt.geom.AffineTransform java.awt.geom.AffineTransform
      StackMap stack:
            aload 6 /* tr */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.scaleFactor:D
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.scaleFactor:D
            invokevirtual java.awt.geom.AffineTransform.scale:(DD)V
        14: .line 487
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphOutlines:[Ljava/awt/Shape;
            iload 1 /* glyphIndex */
            aload 6 /* tr */
            aload 5 /* glyphOutline */
            invokevirtual java.awt.geom.AffineTransform.createTransformedShape:(Ljava/awt/Shape;)Ljava/awt/Shape;
            aastore
        end local 7 // java.awt.geom.AffineTransform glyphTransform
        end local 6 // java.awt.geom.AffineTransform tr
        end local 5 // java.awt.Shape glyphOutline
        end local 4 // org.apache.batik.gvt.font.AWTGlyphGeometryCache$Value v
        end local 3 // char c
        end local 2 // java.awt.geom.Point2D glyphPos
        15: .line 490
      StackMap locals: org.apache.batik.gvt.font.AWTGVTGlyphVector int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphOutlines:[Ljava/awt/Shape;
            iload 1 /* glyphIndex */
            aaload
            areturn
        end local 1 // int glyphIndex
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   16     0            this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;
            0   16     1      glyphIndex  I
            2   15     2        glyphPos  Ljava/awt/geom/Point2D;
            3   15     3               c  C
            6   15     4               v  Lorg/apache/batik/gvt/font/AWTGlyphGeometryCache$Value;
            7   15     5    glyphOutline  Ljava/awt/Shape;
           10   15     6              tr  Ljava/awt/geom/AffineTransform;
           11   15     7  glyphTransform  Ljava/awt/geom/AffineTransform;
    MethodParameters:
            Name  Flags
      glyphIndex  

  static boolean outlinesPositioned();
    descriptor: ()Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 528
            getstatic org.apache.batik.gvt.font.AWTGVTGlyphVector.outlinesPositioned:Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.awt.geom.Rectangle2D getGlyphCellBounds(int);
    descriptor: (I)Ljava/awt/geom/Rectangle2D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
        start local 1 // int glyphIndex
         0: .line 537
            aload 0 /* this */
            iload 1 /* glyphIndex */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getGlyphLogicalBounds:(I)Ljava/awt/Shape;
            invokeinterface java.awt.Shape.getBounds2D:()Ljava/awt/geom/Rectangle2D;
            areturn
        end local 1 // int glyphIndex
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;
            0    1     1  glyphIndex  I
    MethodParameters:
            Name  Flags
      glyphIndex  

  public java.awt.geom.Point2D getGlyphPosition(int);
    descriptor: (I)Ljava/awt/geom/Point2D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
        start local 1 // int glyphIndex
         0: .line 544
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphPositions:[Ljava/awt/geom/Point2D$Float;
            iload 1 /* glyphIndex */
            aaload
            areturn
        end local 1 // int glyphIndex
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;
            0    1     1  glyphIndex  I
    MethodParameters:
            Name  Flags
      glyphIndex  

  public float[] getGlyphPositions(int, int, float[]);
    descriptor: (II[F)[F
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
        start local 1 // int beginGlyphIndex
        start local 2 // int numEntries
        start local 3 // float[] positionReturn
         0: .line 554
            aload 3 /* positionReturn */
            ifnonnull 2
         1: .line 555
            iload 2 /* numEntries */
            iconst_2
            imul
            newarray 6
            astore 3 /* positionReturn */
         2: .line 558
      StackMap locals:
      StackMap stack:
            iload 1 /* beginGlyphIndex */
            istore 4 /* i */
        start local 4 // int i
         3: goto 8
         4: .line 559
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 4 /* i */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getGlyphPosition:(I)Ljava/awt/geom/Point2D;
            astore 5 /* glyphPos */
        start local 5 // java.awt.geom.Point2D glyphPos
         5: .line 560
            aload 3 /* positionReturn */
            iload 4 /* i */
            iload 1 /* beginGlyphIndex */
            isub
            iconst_2
            imul
            aload 5 /* glyphPos */
            invokevirtual java.awt.geom.Point2D.getX:()D
            d2f
            fastore
         6: .line 561
            aload 3 /* positionReturn */
            iload 4 /* i */
            iload 1 /* beginGlyphIndex */
            isub
            iconst_2
            imul
            iconst_1
            iadd
            aload 5 /* glyphPos */
            invokevirtual java.awt.geom.Point2D.getY:()D
            d2f
            fastore
        end local 5 // java.awt.geom.Point2D glyphPos
         7: .line 558
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 4 /* i */
            iload 1 /* beginGlyphIndex */
            iload 2 /* numEntries */
            iadd
            if_icmplt 4
        end local 4 // int i
         9: .line 564
            aload 3 /* positionReturn */
            areturn
        end local 3 // float[] positionReturn
        end local 2 // int numEntries
        end local 1 // int beginGlyphIndex
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   10     0             this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;
            0   10     1  beginGlyphIndex  I
            0   10     2       numEntries  I
            0   10     3   positionReturn  [F
            3    9     4                i  I
            5    7     5         glyphPos  Ljava/awt/geom/Point2D;
    MethodParameters:
                 Name  Flags
      beginGlyphIndex  
      numEntries       
      positionReturn   

  public java.awt.geom.AffineTransform getGlyphTransform(int);
    descriptor: (I)Ljava/awt/geom/AffineTransform;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
        start local 1 // int glyphIndex
         0: .line 571
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphTransforms:[Ljava/awt/geom/AffineTransform;
            iload 1 /* glyphIndex */
            aaload
            areturn
        end local 1 // int glyphIndex
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;
            0    1     1  glyphIndex  I
    MethodParameters:
            Name  Flags
      glyphIndex  

  public java.awt.Shape getGlyphVisualBounds(int);
    descriptor: (I)Ljava/awt/Shape;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=2
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
        start local 1 // int glyphIndex
         0: .line 578
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphVisualBounds:[Ljava/awt/Shape;
            iload 1 /* glyphIndex */
            aaload
            ifnonnull 17
         1: .line 584
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.defaultGlyphPositions:[Ljava/awt/geom/Point2D;
            iload 1 /* glyphIndex */
            aaload
            astore 2 /* glyphPos */
        start local 2 // java.awt.geom.Point2D glyphPos
         2: .line 585
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.ci:Ljava/text/CharacterIterator;
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.ci:Ljava/text/CharacterIterator;
            invokeinterface java.text.CharacterIterator.getBeginIndex:()I
            iload 1 /* glyphIndex */
            iadd
            invokeinterface java.text.CharacterIterator.setIndex:(I)C
            istore 3 /* c */
        start local 3 // char c
         3: .line 586
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.ci:Ljava/text/CharacterIterator;
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.ci:Ljava/text/CharacterIterator;
            invokeinterface java.text.CharacterIterator.getBeginIndex:()I
            invokeinterface java.text.CharacterIterator.setIndex:(I)C
            pop
         4: .line 588
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.gvtFont:Lorg/apache/batik/gvt/font/AWTGVTFont;
            iload 3 /* c */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.awtGlyphVector:Ljava/awt/font/GlyphVector;
            iload 1 /* glyphIndex */
            aload 2 /* glyphPos */
         5: .line 587
            invokestatic org.apache.batik.gvt.font.AWTGVTFont.getGlyphGeometry:(Lorg/apache/batik/gvt/font/AWTGVTFont;CLjava/awt/font/GlyphVector;ILjava/awt/geom/Point2D;)Lorg/apache/batik/gvt/font/AWTGlyphGeometryCache$Value;
            astore 4 /* v */
        start local 4 // org.apache.batik.gvt.font.AWTGlyphGeometryCache$Value v
         6: .line 589
            aload 4 /* v */
            invokevirtual org.apache.batik.gvt.font.AWTGlyphGeometryCache$Value.getOutlineBounds2D:()Ljava/awt/geom/Rectangle2D;
            astore 5 /* glyphBounds */
        start local 5 // java.awt.geom.Rectangle2D glyphBounds
         7: .line 593
            aload 0 /* this */
            iload 1 /* glyphIndex */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getGlyphPosition:(I)Ljava/awt/geom/Point2D;
            invokevirtual java.awt.geom.Point2D.getX:()D
         8: .line 594
            aload 0 /* this */
            iload 1 /* glyphIndex */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getGlyphPosition:(I)Ljava/awt/geom/Point2D;
            invokevirtual java.awt.geom.Point2D.getY:()D
         9: .line 592
            invokestatic java.awt.geom.AffineTransform.getTranslateInstance:(DD)Ljava/awt/geom/AffineTransform;
            astore 6 /* tr */
        start local 6 // java.awt.geom.AffineTransform tr
        10: .line 596
            aload 0 /* this */
            iload 1 /* glyphIndex */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getGlyphTransform:(I)Ljava/awt/geom/AffineTransform;
            astore 7 /* glyphTransform */
        start local 7 // java.awt.geom.AffineTransform glyphTransform
        11: .line 597
            aload 7 /* glyphTransform */
            ifnull 13
        12: .line 598
            aload 6 /* tr */
            aload 7 /* glyphTransform */
            invokevirtual java.awt.geom.AffineTransform.concatenate:(Ljava/awt/geom/AffineTransform;)V
        13: .line 600
      StackMap locals: org.apache.batik.gvt.font.AWTGVTGlyphVector int java.awt.geom.Point2D int org.apache.batik.gvt.font.AWTGlyphGeometryCache$Value java.awt.geom.Rectangle2D java.awt.geom.AffineTransform java.awt.geom.AffineTransform
      StackMap stack:
            aload 6 /* tr */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.scaleFactor:D
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.scaleFactor:D
            invokevirtual java.awt.geom.AffineTransform.scale:(DD)V
        14: .line 601
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphVisualBounds:[Ljava/awt/Shape;
            iload 1 /* glyphIndex */
        15: .line 602
            aload 6 /* tr */
            aload 5 /* glyphBounds */
            invokevirtual java.awt.geom.AffineTransform.createTransformedShape:(Ljava/awt/Shape;)Ljava/awt/Shape;
        16: .line 601
            aastore
        end local 7 // java.awt.geom.AffineTransform glyphTransform
        end local 6 // java.awt.geom.AffineTransform tr
        end local 5 // java.awt.geom.Rectangle2D glyphBounds
        end local 4 // org.apache.batik.gvt.font.AWTGlyphGeometryCache$Value v
        end local 3 // char c
        end local 2 // java.awt.geom.Point2D glyphPos
        17: .line 605
      StackMap locals: org.apache.batik.gvt.font.AWTGVTGlyphVector int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphVisualBounds:[Ljava/awt/Shape;
            iload 1 /* glyphIndex */
            aaload
            areturn
        end local 1 // int glyphIndex
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   18     0            this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;
            0   18     1      glyphIndex  I
            2   17     2        glyphPos  Ljava/awt/geom/Point2D;
            3   17     3               c  C
            6   17     4               v  Lorg/apache/batik/gvt/font/AWTGlyphGeometryCache$Value;
            7   17     5     glyphBounds  Ljava/awt/geom/Rectangle2D;
           10   17     6              tr  Ljava/awt/geom/AffineTransform;
           11   17     7  glyphTransform  Ljava/awt/geom/AffineTransform;
    MethodParameters:
            Name  Flags
      glyphIndex  

  public int getNumGlyphs();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
         0: .line 612
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.awtGlyphVector:Ljava/awt/font/GlyphVector;
            invokevirtual java.awt.font.GlyphVector.getNumGlyphs:()I
            ireturn
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;

  public java.awt.Shape getOutline();
    descriptor: ()Ljava/awt/Shape;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
         0: .line 620
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
            ifnull 2
         1: .line 621
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
            areturn
         2: .line 623
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.awt.geom.GeneralPath
            dup
            invokespecial java.awt.geom.GeneralPath.<init>:()V
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
         3: .line 624
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         4: goto 9
         5: .line 625
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphVisible:[Z
            iload 1 /* i */
            baload
            ifeq 8
         6: .line 626
            aload 0 /* this */
            iload 1 /* i */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getGlyphOutline:(I)Ljava/awt/Shape;
            astore 2 /* glyphOutline */
        start local 2 // java.awt.Shape glyphOutline
         7: .line 627
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
            aload 2 /* glyphOutline */
            iconst_0
            invokevirtual java.awt.geom.GeneralPath.append:(Ljava/awt/Shape;Z)V
        end local 2 // java.awt.Shape glyphOutline
         8: .line 624
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 1 /* i */
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getNumGlyphs:()I
            if_icmplt 5
        end local 1 // int i
        10: .line 630
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
            areturn
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   11     0          this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;
            4   10     1             i  I
            7    8     2  glyphOutline  Ljava/awt/Shape;

  public java.awt.Shape getOutline(float, float);
    descriptor: (FF)Ljava/awt/Shape;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
        start local 1 // float x
        start local 2 // float y
         0: .line 638
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getOutline:()Ljava/awt/Shape;
            astore 3 /* outline */
        start local 3 // java.awt.Shape outline
         1: .line 639
            fload 1 /* x */
            f2d
            fload 2 /* y */
            f2d
            invokestatic java.awt.geom.AffineTransform.getTranslateInstance:(DD)Ljava/awt/geom/AffineTransform;
            astore 4 /* tr */
        start local 4 // java.awt.geom.AffineTransform tr
         2: .line 640
            aload 4 /* tr */
            aload 3 /* outline */
            invokevirtual java.awt.geom.AffineTransform.createTransformedShape:(Ljava/awt/Shape;)Ljava/awt/Shape;
            astore 3 /* outline */
         3: .line 641
            aload 3 /* outline */
            areturn
        end local 4 // java.awt.geom.AffineTransform tr
        end local 3 // java.awt.Shape outline
        end local 2 // float y
        end local 1 // float x
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;
            0    4     1        x  F
            0    4     2        y  F
            1    4     3  outline  Ljava/awt/Shape;
            2    4     4       tr  Ljava/awt/geom/AffineTransform;
    MethodParameters:
      Name  Flags
      x     
      y     

  public java.awt.geom.Rectangle2D getGeometricBounds();
    descriptor: ()Ljava/awt/geom/Rectangle2D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
         0: .line 650
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.visualBounds:Ljava/awt/geom/Rectangle2D;
            ifnonnull 3
         1: .line 651
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getOutline:()Ljava/awt/Shape;
            astore 1 /* outline */
        start local 1 // java.awt.Shape outline
         2: .line 652
            aload 0 /* this */
            aload 1 /* outline */
            invokeinterface java.awt.Shape.getBounds2D:()Ljava/awt/geom/Rectangle2D;
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.visualBounds:Ljava/awt/geom/Rectangle2D;
        end local 1 // java.awt.Shape outline
         3: .line 654
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.visualBounds:Ljava/awt/geom/Rectangle2D;
            areturn
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;
            2    3     1  outline  Ljava/awt/Shape;

  public void performDefaultLayout();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=6, args_size=1
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
         0: .line 661
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.defaultGlyphPositions:[Ljava/awt/geom/Point2D;
            ifnonnull 8
         1: .line 662
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.awtGlyphVector:Ljava/awt/font/GlyphVector;
            invokevirtual java.awt.font.GlyphVector.performDefaultLayout:()V
         2: .line 663
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getNumGlyphs:()I
            iconst_1
            iadd
            anewarray java.awt.geom.Point2D$Float
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.defaultGlyphPositions:[Ljava/awt/geom/Point2D;
         3: .line 664
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         4: goto 7
         5: .line 665
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.defaultGlyphPositions:[Ljava/awt/geom/Point2D;
            iload 1 /* i */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.awtGlyphVector:Ljava/awt/font/GlyphVector;
            iload 1 /* i */
            invokevirtual java.awt.font.GlyphVector.getGlyphPosition:(I)Ljava/awt/geom/Point2D;
            aastore
         6: .line 664
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 1 /* i */
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getNumGlyphs:()I
            if_icmple 5
        end local 1 // int i
         8: .line 668
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
         9: .line 669
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.visualBounds:Ljava/awt/geom/Rectangle2D;
        10: .line 670
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
        11: .line 671
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
        12: .line 672
            fconst_0
            fstore 1 /* shiftLeft */
        start local 1 // float shiftLeft
        13: .line 673
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        14: .line 674
            goto 30
        15: .line 675
      StackMap locals: float int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphTransforms:[Ljava/awt/geom/AffineTransform;
            iload 2 /* i */
            aconst_null
            aastore
        16: .line 676
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphVisualBounds:[Ljava/awt/Shape;
            iload 2 /* i */
            aconst_null
            aastore
        17: .line 677
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
            iload 2 /* i */
            aconst_null
            aastore
        18: .line 678
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphOutlines:[Ljava/awt/Shape;
            iload 2 /* i */
            aconst_null
            aastore
        19: .line 679
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphMetrics:[Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
            iload 2 /* i */
            aconst_null
            aastore
        20: .line 680
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.defaultGlyphPositions:[Ljava/awt/geom/Point2D;
            iload 2 /* i */
            aaload
            astore 3 /* glyphPos */
        start local 3 // java.awt.geom.Point2D glyphPos
        21: .line 681
            aload 3 /* glyphPos */
            invokevirtual java.awt.geom.Point2D.getX:()D
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.scaleFactor:D
            dmul
            fload 1 /* shiftLeft */
            f2d
            dsub
            d2f
            fstore 4 /* x */
        start local 4 // float x
        22: .line 682
            aload 3 /* glyphPos */
            invokevirtual java.awt.geom.Point2D.getY:()D
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.scaleFactor:D
            dmul
            d2f
            fstore 5 /* y */
        start local 5 // float y
        23: .line 686
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.ci:Ljava/text/CharacterIterator;
            iload 2 /* i */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.ci:Ljava/text/CharacterIterator;
            invokeinterface java.text.CharacterIterator.getBeginIndex:()I
            iadd
            invokeinterface java.text.CharacterIterator.setIndex:(I)C
            pop
        24: .line 719
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphPositions:[Ljava/awt/geom/Point2D$Float;
            iload 2 /* i */
            aaload
            ifnonnull 27
        25: .line 720
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphPositions:[Ljava/awt/geom/Point2D$Float;
            iload 2 /* i */
            new java.awt.geom.Point2D$Float
            dup
            fload 4 /* x */
            fload 5 /* y */
            invokespecial java.awt.geom.Point2D$Float.<init>:(FF)V
            aastore
        26: .line 721
            goto 29
        27: .line 722
      StackMap locals: java.awt.geom.Point2D float float
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphPositions:[Ljava/awt/geom/Point2D$Float;
            iload 2 /* i */
            aaload
            fload 4 /* x */
            putfield java.awt.geom.Point2D$Float.x:F
        28: .line 723
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphPositions:[Ljava/awt/geom/Point2D$Float;
            iload 2 /* i */
            aaload
            fload 5 /* y */
            putfield java.awt.geom.Point2D$Float.y:F
        end local 5 // float y
        end local 4 // float x
        end local 3 // java.awt.geom.Point2D glyphPos
        29: .line 674
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        30: iload 2 /* i */
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getNumGlyphs:()I
            if_icmplt 15
        31: .line 730
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.defaultGlyphPositions:[Ljava/awt/geom/Point2D;
            iload 2 /* i */
            aaload
            astore 3 /* glyphPos */
        start local 3 // java.awt.geom.Point2D glyphPos
        32: .line 731
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphPositions:[Ljava/awt/geom/Point2D$Float;
            iload 2 /* i */
            new java.awt.geom.Point2D$Float
            dup
        33: .line 732
            aload 3 /* glyphPos */
            invokevirtual java.awt.geom.Point2D.getX:()D
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.scaleFactor:D
            dmul
            fload 1 /* shiftLeft */
            f2d
            dsub
            d2f
        34: .line 733
            aload 3 /* glyphPos */
            invokevirtual java.awt.geom.Point2D.getY:()D
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.scaleFactor:D
            dmul
            d2f
            invokespecial java.awt.geom.Point2D$Float.<init>:(FF)V
        35: .line 731
            aastore
        36: .line 734
            return
        end local 3 // java.awt.geom.Point2D glyphPos
        end local 2 // int i
        end local 1 // float shiftLeft
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   37     0       this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;
            4    8     1          i  I
           13   37     1  shiftLeft  F
           14   37     2          i  I
           21   29     3   glyphPos  Ljava/awt/geom/Point2D;
           22   29     4          x  F
           23   29     5          y  F
           32   37     3   glyphPos  Ljava/awt/geom/Point2D;

  public void setGlyphPosition(int, java.awt.geom.Point2D);
    descriptor: (ILjava/awt/geom/Point2D;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
        start local 1 // int glyphIndex
        start local 2 // java.awt.geom.Point2D newPos
         0: .line 740
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphPositions:[Ljava/awt/geom/Point2D$Float;
            iload 1 /* glyphIndex */
            aaload
            aload 2 /* newPos */
            invokevirtual java.awt.geom.Point2D.getX:()D
            d2f
            putfield java.awt.geom.Point2D$Float.x:F
         1: .line 741
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphPositions:[Ljava/awt/geom/Point2D$Float;
            iload 1 /* glyphIndex */
            aaload
            aload 2 /* newPos */
            invokevirtual java.awt.geom.Point2D.getY:()D
            d2f
            putfield java.awt.geom.Point2D$Float.y:F
         2: .line 742
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
         3: .line 743
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.visualBounds:Ljava/awt/geom/Rectangle2D;
         4: .line 744
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
         5: .line 745
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
         6: .line 747
            iload 1 /* glyphIndex */
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getNumGlyphs:()I
            if_icmpeq 11
         7: .line 748
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphVisualBounds:[Ljava/awt/Shape;
            iload 1 /* glyphIndex */
            aconst_null
            aastore
         8: .line 749
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
            iload 1 /* glyphIndex */
            aconst_null
            aastore
         9: .line 750
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphOutlines:[Ljava/awt/Shape;
            iload 1 /* glyphIndex */
            aconst_null
            aastore
        10: .line 751
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphMetrics:[Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
            iload 1 /* glyphIndex */
            aconst_null
            aastore
        11: .line 753
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.awt.geom.Point2D newPos
        end local 1 // int glyphIndex
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0        this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;
            0   12     1  glyphIndex  I
            0   12     2      newPos  Ljava/awt/geom/Point2D;
    MethodParameters:
            Name  Flags
      glyphIndex  
      newPos      

  public void setGlyphTransform(int, java.awt.geom.AffineTransform);
    descriptor: (ILjava/awt/geom/AffineTransform;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
        start local 1 // int glyphIndex
        start local 2 // java.awt.geom.AffineTransform newTX
         0: .line 759
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphTransforms:[Ljava/awt/geom/AffineTransform;
            iload 1 /* glyphIndex */
            aload 2 /* newTX */
            aastore
         1: .line 760
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
         2: .line 761
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.visualBounds:Ljava/awt/geom/Rectangle2D;
         3: .line 762
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
         4: .line 763
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
         5: .line 765
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphVisualBounds:[Ljava/awt/Shape;
            iload 1 /* glyphIndex */
            aconst_null
            aastore
         6: .line 766
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
            iload 1 /* glyphIndex */
            aconst_null
            aastore
         7: .line 767
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphOutlines:[Ljava/awt/Shape;
            iload 1 /* glyphIndex */
            aconst_null
            aastore
         8: .line 768
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphMetrics:[Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
            iload 1 /* glyphIndex */
            aconst_null
            aastore
         9: .line 769
            return
        end local 2 // java.awt.geom.AffineTransform newTX
        end local 1 // int glyphIndex
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;
            0   10     1  glyphIndex  I
            0   10     2       newTX  Ljava/awt/geom/AffineTransform;
    MethodParameters:
            Name  Flags
      glyphIndex  
      newTX       

  public void setGlyphVisible(int, boolean);
    descriptor: (IZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
        start local 1 // int glyphIndex
        start local 2 // boolean visible
         0: .line 775
            iload 2 /* visible */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphVisible:[Z
            iload 1 /* glyphIndex */
            baload
            if_icmpne 2
         1: .line 776
            return
         2: .line 777
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphVisible:[Z
            iload 1 /* glyphIndex */
            iload 2 /* visible */
            bastore
         3: .line 778
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
         4: .line 779
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.visualBounds:Ljava/awt/geom/Rectangle2D;
         5: .line 780
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
         6: .line 781
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.AWTGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
         7: .line 783
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphVisualBounds:[Ljava/awt/Shape;
            iload 1 /* glyphIndex */
            aconst_null
            aastore
         8: .line 784
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
            iload 1 /* glyphIndex */
            aconst_null
            aastore
         9: .line 785
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphOutlines:[Ljava/awt/Shape;
            iload 1 /* glyphIndex */
            aconst_null
            aastore
        10: .line 786
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphMetrics:[Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
            iload 1 /* glyphIndex */
            aconst_null
            aastore
        11: .line 787
            return
        end local 2 // boolean visible
        end local 1 // int glyphIndex
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0        this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;
            0   12     1  glyphIndex  I
            0   12     2     visible  Z
    MethodParameters:
            Name  Flags
      glyphIndex  
      visible     

  public boolean isGlyphVisible(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
        start local 1 // int glyphIndex
         0: .line 793
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphVisible:[Z
            iload 1 /* glyphIndex */
            baload
            ireturn
        end local 1 // int glyphIndex
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;
            0    1     1  glyphIndex  I
    MethodParameters:
            Name  Flags
      glyphIndex  

  public int getCharacterCount(int, int);
    descriptor: (II)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=7, args_size=3
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
        start local 1 // int startGlyphIndex
        start local 2 // int endGlyphIndex
         0: .line 805
            iload 1 /* startGlyphIndex */
            ifge 2
         1: .line 806
            iconst_0
            istore 1 /* startGlyphIndex */
         2: .line 808
      StackMap locals:
      StackMap stack:
            iload 2 /* endGlyphIndex */
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getNumGlyphs:()I
            if_icmplt 4
         3: .line 809
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getNumGlyphs:()I
            iconst_1
            isub
            istore 2 /* endGlyphIndex */
         4: .line 811
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* charCount */
        start local 3 // int charCount
         5: .line 812
            iload 1 /* startGlyphIndex */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.ci:Ljava/text/CharacterIterator;
            invokeinterface java.text.CharacterIterator.getBeginIndex:()I
            iadd
            istore 4 /* start */
        start local 4 // int start
         6: .line 813
            iload 2 /* endGlyphIndex */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.ci:Ljava/text/CharacterIterator;
            invokeinterface java.text.CharacterIterator.getBeginIndex:()I
            iadd
            istore 5 /* end */
        start local 5 // int end
         7: .line 815
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.ci:Ljava/text/CharacterIterator;
            iload 4 /* start */
            invokeinterface java.text.CharacterIterator.setIndex:(I)C
            istore 6 /* c */
        start local 6 // char c
         8: goto 11
         9: .line 816
      StackMap locals: org.apache.batik.gvt.font.AWTGVTGlyphVector int int int int int int
      StackMap stack:
            iload 3 /* charCount */
            iload 6 /* c */
            invokestatic org.apache.batik.gvt.text.ArabicTextHandler.getNumChars:(C)I
            iadd
            istore 3 /* charCount */
        10: .line 815
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.ci:Ljava/text/CharacterIterator;
            invokeinterface java.text.CharacterIterator.next:()C
            istore 6 /* c */
      StackMap locals:
      StackMap stack:
        11: aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.ci:Ljava/text/CharacterIterator;
            invokeinterface java.text.CharacterIterator.getIndex:()I
            iload 5 /* end */
            if_icmple 9
        end local 6 // char c
        12: .line 819
            iload 3 /* charCount */
            ireturn
        end local 5 // int end
        end local 4 // int start
        end local 3 // int charCount
        end local 2 // int endGlyphIndex
        end local 1 // int startGlyphIndex
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   13     0             this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;
            0   13     1  startGlyphIndex  I
            0   13     2    endGlyphIndex  I
            5   13     3        charCount  I
            6   13     4            start  I
            7   13     5              end  I
            8   12     6                c  C
    MethodParameters:
                 Name  Flags
      startGlyphIndex  
      endGlyphIndex    

  public boolean isReversed();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
         0: .line 824
            iconst_0
            ireturn
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;

  public void maybeReverse(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
        start local 1 // boolean mirror
         0: .line 829
            return
        end local 1 // boolean mirror
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;
            0    1     1  mirror  Z
    MethodParameters:
        Name  Flags
      mirror  

  public void draw(java.awt.Graphics2D, java.text.AttributedCharacterIterator);
    descriptor: (Ljava/awt/Graphics2D;Ljava/text/AttributedCharacterIterator;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=19, args_size=3
        start local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
        start local 1 // java.awt.Graphics2D graphics2D
        start local 2 // java.text.AttributedCharacterIterator aci
         0: .line 836
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getNumGlyphs:()I
            istore 3 /* numGlyphs */
        start local 3 // int numGlyphs
         1: .line 838
            aload 2 /* aci */
            invokeinterface java.text.AttributedCharacterIterator.first:()C
            pop
         2: .line 839
            aload 2 /* aci */
         3: .line 840
            getstatic org.apache.batik.gvt.text.GVTAttributedCharacterIterator$TextAttribute.PAINT_INFO:Lorg/apache/batik/gvt/text/GVTAttributedCharacterIterator$TextAttribute;
         4: .line 839
            invokeinterface java.text.AttributedCharacterIterator.getAttribute:(Ljava/text/AttributedCharacterIterator$Attribute;)Ljava/lang/Object;
            checkcast org.apache.batik.gvt.text.TextPaintInfo
            astore 4 /* tpi */
        start local 4 // org.apache.batik.gvt.text.TextPaintInfo tpi
         5: .line 841
            aload 4 /* tpi */
            ifnonnull 6
            return
         6: .line 842
      StackMap locals: int org.apache.batik.gvt.text.TextPaintInfo
      StackMap stack:
            aload 4 /* tpi */
            getfield org.apache.batik.gvt.text.TextPaintInfo.visible:Z
            ifne 7
            return
         7: .line 844
      StackMap locals:
      StackMap stack:
            aload 4 /* tpi */
            getfield org.apache.batik.gvt.text.TextPaintInfo.fillPaint:Ljava/awt/Paint;
            astore 5 /* fillPaint */
        start local 5 // java.awt.Paint fillPaint
         8: .line 845
            aload 4 /* tpi */
            getfield org.apache.batik.gvt.text.TextPaintInfo.strokeStroke:Ljava/awt/Stroke;
            astore 6 /* stroke */
        start local 6 // java.awt.Stroke stroke
         9: .line 846
            aload 4 /* tpi */
            getfield org.apache.batik.gvt.text.TextPaintInfo.strokePaint:Ljava/awt/Paint;
            astore 7 /* strokePaint */
        start local 7 // java.awt.Paint strokePaint
        10: .line 848
            aload 5 /* fillPaint */
            ifnonnull 13
            aload 7 /* strokePaint */
            ifnull 12
        11: .line 849
            aload 6 /* stroke */
            ifnonnull 13
        12: .line 850
      StackMap locals: java.awt.Paint java.awt.Stroke java.awt.Paint
      StackMap stack:
            return
        13: .line 852
      StackMap locals:
      StackMap stack:
            getstatic org.apache.batik.gvt.font.AWTGVTGlyphVector.drawGlyphVectorWorks:Z
            istore 8 /* useHinting */
        start local 8 // boolean useHinting
        14: .line 853
            iload 8 /* useHinting */
            ifeq 16
            aload 6 /* stroke */
            ifnull 16
            aload 7 /* strokePaint */
            ifnull 16
        15: .line 855
            iconst_0
            istore 8 /* useHinting */
        16: .line 857
      StackMap locals: int
      StackMap stack:
            iload 8 /* useHinting */
            ifeq 19
        17: .line 858
            aload 5 /* fillPaint */
            ifnull 19
            aload 5 /* fillPaint */
            instanceof java.awt.Color
            ifne 19
        18: .line 861
            iconst_0
            istore 8 /* useHinting */
        19: .line 863
      StackMap locals:
      StackMap stack:
            iload 8 /* useHinting */
            ifeq 29
        20: .line 864
            aload 1 /* graphics2D */
        21: .line 865
            getstatic java.awt.RenderingHints.KEY_TEXT_ANTIALIASING:Ljava/awt/RenderingHints$Key;
        22: .line 864
            invokevirtual java.awt.Graphics2D.getRenderingHint:(Ljava/awt/RenderingHints$Key;)Ljava/lang/Object;
            astore 9 /* v1 */
        start local 9 // java.lang.Object v1
        23: .line 866
            aload 1 /* graphics2D */
        24: .line 867
            getstatic java.awt.RenderingHints.KEY_STROKE_CONTROL:Ljava/awt/RenderingHints$Key;
        25: .line 866
            invokevirtual java.awt.Graphics2D.getRenderingHint:(Ljava/awt/RenderingHints$Key;)Ljava/lang/Object;
            astore 10 /* v2 */
        start local 10 // java.lang.Object v2
        26: .line 869
            aload 9 /* v1 */
            getstatic java.awt.RenderingHints.VALUE_TEXT_ANTIALIAS_ON:Ljava/lang/Object;
            if_acmpne 29
        27: .line 870
            aload 10 /* v2 */
            getstatic java.awt.RenderingHints.VALUE_STROKE_PURE:Ljava/lang/Object;
            if_acmpne 29
        28: .line 871
            iconst_0
            istore 8 /* useHinting */
        end local 10 // java.lang.Object v2
        end local 9 // java.lang.Object v1
        29: .line 877
      StackMap locals:
      StackMap stack:
            iload 8 /* useHinting */
            ifeq 34
        30: .line 880
            aload 1 /* graphics2D */
            invokevirtual java.awt.Graphics2D.getTransform:()Ljava/awt/geom/AffineTransform;
            astore 9 /* at */
        start local 9 // java.awt.geom.AffineTransform at
        31: .line 881
            aload 9 /* at */
            invokevirtual java.awt.geom.AffineTransform.getType:()I
            istore 10 /* type */
        start local 10 // int type
        32: .line 882
            iload 10 /* type */
            bipush 32
            iand
            ifne 33
            iload 10 /* type */
            bipush 16
            iand
            ifeq 34
        33: .line 883
      StackMap locals: java.awt.geom.AffineTransform int
      StackMap stack:
            iconst_0
            istore 8 /* useHinting */
        end local 10 // int type
        end local 9 // java.awt.geom.AffineTransform at
        34: .line 886
      StackMap locals:
      StackMap stack:
            iload 8 /* useHinting */
            ifeq 51
        35: .line 887
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        36: goto 50
        37: .line 888
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphVisible:[Z
            iload 9 /* i */
            baload
            ifne 40
        38: .line 889
            iconst_0
            istore 8 /* useHinting */
        39: .line 890
            goto 51
        40: .line 892
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphTransforms:[Ljava/awt/geom/AffineTransform;
            iload 9 /* i */
            aaload
            astore 10 /* at */
        start local 10 // java.awt.geom.AffineTransform at
        41: .line 893
            aload 10 /* at */
            ifnull 49
        42: .line 894
            aload 10 /* at */
            invokevirtual java.awt.geom.AffineTransform.getType:()I
            istore 11 /* type */
        start local 11 // int type
        43: .line 895
            iload 11 /* type */
            bipush -2
            iand
            ifeq 49
        44: .line 897
            getstatic org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphVectorTransformWorks:Z
            ifeq 47
        45: .line 898
            iload 11 /* type */
            bipush 32
            iand
            ifne 47
        46: .line 899
            iload 11 /* type */
            bipush 16
            iand
            ifeq 49
        47: .line 905
      StackMap locals: java.awt.geom.AffineTransform int
      StackMap stack:
            iconst_0
            istore 8 /* useHinting */
        48: .line 906
            goto 51
        end local 11 // int type
        end local 10 // java.awt.geom.AffineTransform at
        49: .line 887
      StackMap locals:
      StackMap stack:
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        50: iload 9 /* i */
            iload 3 /* numGlyphs */
            if_icmplt 37
        end local 9 // int i
        51: .line 912
      StackMap locals:
      StackMap stack:
            iload 8 /* useHinting */
            ifeq 87
        52: .line 913
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.scaleFactor:D
            dstore 9 /* sf */
        start local 9 // double sf
        53: .line 914
            bipush 6
            newarray 7
            astore 11 /* mat */
        start local 11 // double[] mat
        54: .line 915
            iconst_0
            istore 12 /* i */
        start local 12 // int i
        55: goto 74
        56: .line 916
      StackMap locals: double double[] int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphPositions:[Ljava/awt/geom/Point2D$Float;
            iload 12 /* i */
            aaload
            astore 13 /* pos */
        start local 13 // java.awt.geom.Point2D pos
        57: .line 917
            aload 13 /* pos */
            invokevirtual java.awt.geom.Point2D.getX:()D
            dstore 14 /* x */
        start local 14 // double x
        58: .line 918
            aload 13 /* pos */
            invokevirtual java.awt.geom.Point2D.getY:()D
            dstore 16 /* y */
        start local 16 // double y
        59: .line 919
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.glyphTransforms:[Ljava/awt/geom/AffineTransform;
            iload 12 /* i */
            aaload
            astore 18 /* at */
        start local 18 // java.awt.geom.AffineTransform at
        60: .line 920
            aload 18 /* at */
            ifnull 70
        61: .line 923
            aload 18 /* at */
            aload 11 /* mat */
            invokevirtual java.awt.geom.AffineTransform.getMatrix:([D)V
        62: .line 924
            dload 14 /* x */
            aload 11 /* mat */
            iconst_4
            daload
            dadd
            dstore 14 /* x */
        63: .line 925
            dload 16 /* y */
            aload 11 /* mat */
            iconst_5
            daload
            dadd
            dstore 16 /* y */
        64: .line 926
            aload 11 /* mat */
            iconst_0
            daload
            dconst_1
            dcmpl
            ifne 66
            aload 11 /* mat */
            iconst_1
            daload
            dconst_0
            dcmpl
            ifne 66
        65: .line 927
            aload 11 /* mat */
            iconst_2
            daload
            dconst_0
            dcmpl
            ifne 66
            aload 11 /* mat */
            iconst_3
            daload
            dconst_1
            dcmpl
            ifeq 69
        66: .line 929
      StackMap locals: org.apache.batik.gvt.font.AWTGVTGlyphVector java.awt.Graphics2D java.text.AttributedCharacterIterator int org.apache.batik.gvt.text.TextPaintInfo java.awt.Paint java.awt.Stroke java.awt.Paint int double double[] int java.awt.geom.Point2D double double java.awt.geom.AffineTransform
      StackMap stack:
            aload 11 /* mat */
            iconst_4
            dconst_0
            dastore
            aload 11 /* mat */
            iconst_5
            dconst_0
            dastore
        67: .line 930
            new java.awt.geom.AffineTransform
            dup
            aload 11 /* mat */
            invokespecial java.awt.geom.AffineTransform.<init>:([D)V
            astore 18 /* at */
        68: .line 931
            goto 70
        69: .line 932
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 18 /* at */
        70: .line 935
      StackMap locals:
      StackMap stack:
            new java.awt.geom.Point2D$Double
            dup
            dload 14 /* x */
            dload 9 /* sf */
            ddiv
            dload 16 /* y */
            dload 9 /* sf */
            ddiv
            invokespecial java.awt.geom.Point2D$Double.<init>:(DD)V
            astore 13 /* pos */
        71: .line 936
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.awtGlyphVector:Ljava/awt/font/GlyphVector;
            iload 12 /* i */
            aload 13 /* pos */
            invokevirtual java.awt.font.GlyphVector.setGlyphPosition:(ILjava/awt/geom/Point2D;)V
        72: .line 937
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.awtGlyphVector:Ljava/awt/font/GlyphVector;
            iload 12 /* i */
            aload 18 /* at */
            invokevirtual java.awt.font.GlyphVector.setGlyphTransform:(ILjava/awt/geom/AffineTransform;)V
        end local 18 // java.awt.geom.AffineTransform at
        end local 16 // double y
        end local 14 // double x
        end local 13 // java.awt.geom.Point2D pos
        73: .line 915
            iinc 12 /* i */ 1
      StackMap locals: org.apache.batik.gvt.font.AWTGVTGlyphVector java.awt.Graphics2D java.text.AttributedCharacterIterator int org.apache.batik.gvt.text.TextPaintInfo java.awt.Paint java.awt.Stroke java.awt.Paint int double double[] int
      StackMap stack:
        74: iload 12 /* i */
            iload 3 /* numGlyphs */
            if_icmplt 56
        end local 12 // int i
        75: .line 939
            aload 1 /* graphics2D */
            dload 9 /* sf */
            dload 9 /* sf */
            invokevirtual java.awt.Graphics2D.scale:(DD)V
        76: .line 940
            aload 1 /* graphics2D */
            aload 5 /* fillPaint */
            invokevirtual java.awt.Graphics2D.setPaint:(Ljava/awt/Paint;)V
        77: .line 941
            aload 1 /* graphics2D */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.awtGlyphVector:Ljava/awt/font/GlyphVector;
            fconst_0
            fconst_0
            invokevirtual java.awt.Graphics2D.drawGlyphVector:(Ljava/awt/font/GlyphVector;FF)V
        78: .line 942
            aload 1 /* graphics2D */
            dconst_1
            dload 9 /* sf */
            ddiv
            dconst_1
            dload 9 /* sf */
            ddiv
            invokevirtual java.awt.Graphics2D.scale:(DD)V
        79: .line 944
            iconst_0
            istore 12 /* i */
        start local 12 // int i
        80: goto 85
        81: .line 945
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.defaultGlyphPositions:[Ljava/awt/geom/Point2D;
            iload 12 /* i */
            aaload
            astore 13 /* pos */
        start local 13 // java.awt.geom.Point2D pos
        82: .line 946
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.awtGlyphVector:Ljava/awt/font/GlyphVector;
            iload 12 /* i */
            aload 13 /* pos */
            invokevirtual java.awt.font.GlyphVector.setGlyphPosition:(ILjava/awt/geom/Point2D;)V
        83: .line 947
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.AWTGVTGlyphVector.awtGlyphVector:Ljava/awt/font/GlyphVector;
            iload 12 /* i */
            aconst_null
            invokevirtual java.awt.font.GlyphVector.setGlyphTransform:(ILjava/awt/geom/AffineTransform;)V
        end local 13 // java.awt.geom.Point2D pos
        84: .line 944
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
        85: iload 12 /* i */
            iload 3 /* numGlyphs */
            if_icmplt 81
        end local 12 // int i
        end local 11 // double[] mat
        end local 9 // double sf
        86: .line 950
            goto 95
        87: .line 951
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.AWTGVTGlyphVector.getOutline:()Ljava/awt/Shape;
            astore 9 /* outline */
        start local 9 // java.awt.Shape outline
        88: .line 954
            aload 5 /* fillPaint */
            ifnull 91
        89: .line 955
            aload 1 /* graphics2D */
            aload 5 /* fillPaint */
            invokevirtual java.awt.Graphics2D.setPaint:(Ljava/awt/Paint;)V
        90: .line 956
            aload 1 /* graphics2D */
            aload 9 /* outline */
            invokevirtual java.awt.Graphics2D.fill:(Ljava/awt/Shape;)V
        91: .line 960
      StackMap locals: java.awt.Shape
      StackMap stack:
            aload 6 /* stroke */
            ifnull 95
            aload 7 /* strokePaint */
            ifnull 95
        92: .line 961
            aload 1 /* graphics2D */
            aload 6 /* stroke */
            invokevirtual java.awt.Graphics2D.setStroke:(Ljava/awt/Stroke;)V
        93: .line 962
            aload 1 /* graphics2D */
            aload 7 /* strokePaint */
            invokevirtual java.awt.Graphics2D.setPaint:(Ljava/awt/Paint;)V
        94: .line 963
            aload 1 /* graphics2D */
            aload 9 /* outline */
            invokevirtual java.awt.Graphics2D.draw:(Ljava/awt/Shape;)V
        end local 9 // java.awt.Shape outline
        95: .line 966
      StackMap locals:
      StackMap stack:
            return
        end local 8 // boolean useHinting
        end local 7 // java.awt.Paint strokePaint
        end local 6 // java.awt.Stroke stroke
        end local 5 // java.awt.Paint fillPaint
        end local 4 // org.apache.batik.gvt.text.TextPaintInfo tpi
        end local 3 // int numGlyphs
        end local 2 // java.text.AttributedCharacterIterator aci
        end local 1 // java.awt.Graphics2D graphics2D
        end local 0 // org.apache.batik.gvt.font.AWTGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   96     0         this  Lorg/apache/batik/gvt/font/AWTGVTGlyphVector;
            0   96     1   graphics2D  Ljava/awt/Graphics2D;
            0   96     2          aci  Ljava/text/AttributedCharacterIterator;
            1   96     3    numGlyphs  I
            5   96     4          tpi  Lorg/apache/batik/gvt/text/TextPaintInfo;
            8   96     5    fillPaint  Ljava/awt/Paint;
            9   96     6       stroke  Ljava/awt/Stroke;
           10   96     7  strokePaint  Ljava/awt/Paint;
           14   96     8   useHinting  Z
           23   29     9           v1  Ljava/lang/Object;
           26   29    10           v2  Ljava/lang/Object;
           31   34     9           at  Ljava/awt/geom/AffineTransform;
           32   34    10         type  I
           36   51     9            i  I
           41   49    10           at  Ljava/awt/geom/AffineTransform;
           43   49    11         type  I
           53   86     9           sf  D
           54   86    11          mat  [D
           55   75    12            i  I
           57   73    13          pos  Ljava/awt/geom/Point2D;
           58   73    14            x  D
           59   73    16            y  D
           60   73    18           at  Ljava/awt/geom/AffineTransform;
           80   86    12            i  I
           82   84    13          pos  Ljava/awt/geom/Point2D;
           88   95     9      outline  Ljava/awt/Shape;
    MethodParameters:
            Name  Flags
      graphics2D  
      aci         
}
SourceFile: "AWTGVTGlyphVector.java"
InnerClasses:
  public abstract Key = java.awt.RenderingHints$Key of java.awt.RenderingHints
  public Double = java.awt.geom.Point2D$Double of java.awt.geom.Point2D
  public Float = java.awt.geom.Point2D$Float of java.awt.geom.Point2D
  public Double = java.awt.geom.Rectangle2D$Double of java.awt.geom.Rectangle2D
  public Attribute = java.text.AttributedCharacterIterator$Attribute of java.text.AttributedCharacterIterator
  public Value = org.apache.batik.gvt.font.AWTGlyphGeometryCache$Value of org.apache.batik.gvt.font.AWTGlyphGeometryCache
  public TextAttribute = org.apache.batik.gvt.text.GVTAttributedCharacterIterator$TextAttribute of org.apache.batik.gvt.text.GVTAttributedCharacterIterator