public final class org.apache.batik.gvt.font.SVGGVTGlyphVector implements org.apache.batik.gvt.font.GVTGlyphVector
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.apache.batik.gvt.font.SVGGVTGlyphVector
  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 org.apache.batik.gvt.font.GVTFont font;
    descriptor: Lorg/apache/batik/gvt/font/GVTFont;
    flags: (0x0002) ACC_PRIVATE

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

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

  private java.awt.geom.GeneralPath outline;
    descriptor: Ljava/awt/geom/GeneralPath;
    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 java.awt.Shape[] glyphLogicalBounds;
    descriptor: [Ljava/awt/Shape;
    flags: (0x0002) ACC_PRIVATE

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

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

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 44
            getstatic org.apache.batik.gvt.text.GVTAttributedCharacterIterator$TextAttribute.PAINT_INFO:Lorg/apache/batik/gvt/text/GVTAttributedCharacterIterator$TextAttribute;
         1: .line 43
            putstatic org.apache.batik.gvt.font.SVGGVTGlyphVector.PAINT_INFO:Ljava/text/AttributedCharacterIterator$Attribute;
         2: .line 44
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(org.apache.batik.gvt.font.GVTFont, org.apache.batik.gvt.font.Glyph[], java.awt.font.FontRenderContext);
    descriptor: (Lorg/apache/batik/gvt/font/GVTFont;[Lorg/apache/batik/gvt/font/Glyph;Ljava/awt/font/FontRenderContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=5, args_size=4
        start local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
        start local 1 // org.apache.batik.gvt.font.GVTFont font
        start local 2 // org.apache.batik.gvt.font.Glyph[] glyphs
        start local 3 // java.awt.font.FontRenderContext frc
         0: .line 65
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 67
            aload 0 /* this */
            aload 1 /* font */
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.font:Lorg/apache/batik/gvt/font/GVTFont;
         2: .line 68
            aload 0 /* this */
            aload 2 /* glyphs */
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
         3: .line 69
            aload 0 /* this */
            aload 3 /* frc */
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.frc:Ljava/awt/font/FontRenderContext;
         4: .line 70
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
         5: .line 71
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
         6: .line 72
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
         7: .line 73
            aload 0 /* this */
            aload 2 /* glyphs */
            arraylength
            anewarray java.awt.Shape
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
         8: .line 74
            aload 0 /* this */
            aload 2 /* glyphs */
            arraylength
            newarray 4
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphVisible:[Z
         9: .line 75
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        10: goto 13
        11: .line 76
      StackMap locals: org.apache.batik.gvt.font.SVGGVTGlyphVector org.apache.batik.gvt.font.GVTFont org.apache.batik.gvt.font.Glyph[] java.awt.font.FontRenderContext int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphVisible:[Z
            iload 4 /* i */
            iconst_1
            bastore
        12: .line 75
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 4 /* i */
            aload 2 /* glyphs */
            arraylength
            if_icmplt 11
        end local 4 // int i
        14: .line 79
            aload 0 /* this */
            aload 2 /* glyphs */
            aload 2 /* glyphs */
            arraylength
            iconst_1
            isub
            aaload
            invokevirtual org.apache.batik.gvt.font.Glyph.getPosition:()Ljava/awt/geom/Point2D;
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.endPos:Ljava/awt/geom/Point2D;
        15: .line 80
            aload 0 /* this */
            new java.awt.geom.Point2D$Float
            dup
        16: .line 81
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.endPos:Ljava/awt/geom/Point2D;
            invokevirtual java.awt.geom.Point2D.getX:()D
            aload 2 /* glyphs */
            aload 2 /* glyphs */
            arraylength
            iconst_1
            isub
            aaload
            invokevirtual org.apache.batik.gvt.font.Glyph.getHorizAdvX:()F
            f2d
            dadd
            d2f
        17: .line 82
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.endPos:Ljava/awt/geom/Point2D;
            invokevirtual java.awt.geom.Point2D.getY:()D
            d2f
            invokespecial java.awt.geom.Point2D$Float.<init>:(FF)V
        18: .line 80
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.endPos:Ljava/awt/geom/Point2D;
        19: .line 83
            return
        end local 3 // java.awt.font.FontRenderContext frc
        end local 2 // org.apache.batik.gvt.font.Glyph[] glyphs
        end local 1 // org.apache.batik.gvt.font.GVTFont font
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   20     0    this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
            0   20     1    font  Lorg/apache/batik/gvt/font/GVTFont;
            0   20     2  glyphs  [Lorg/apache/batik/gvt/font/Glyph;
            0   20     3     frc  Ljava/awt/font/FontRenderContext;
           10   14     4       i  I
    MethodParameters:
        Name  Flags
      font    
      glyphs  
      frc     

  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.SVGGVTGlyphVector this
         0: .line 89
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.font:Lorg/apache/batik/gvt/font/GVTFont;
            areturn
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;

  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.SVGGVTGlyphVector this
         0: .line 96
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.frc:Ljava/awt/font/FontRenderContext;
            areturn
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;

  public int getGlyphCode(int);
    descriptor: (I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
        start local 1 // int glyphIndex
         0: .line 103
            iload 1 /* glyphIndex */
            iflt 1
            iload 1 /* glyphIndex */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            iconst_1
            isub
            if_icmple 5
         1: .line 104
      StackMap locals:
      StackMap stack:
            new java.lang.IndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "glyphIndex "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* glyphIndex */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         2: .line 105
            ldc " is out of bounds, should be between 0 and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 106
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            iconst_1
            isub
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 104
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 108
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            iload 1 /* glyphIndex */
            aaload
            invokevirtual org.apache.batik.gvt.font.Glyph.getGlyphCode:()I
            ireturn
        end local 1 // int glyphIndex
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
            0    6     1  glyphIndex  I
    Exceptions:
      throws java.lang.IndexOutOfBoundsException
    MethodParameters:
            Name  Flags
      glyphIndex  

  public int[] getGlyphCodes(int, int, int[]);
    descriptor: (II[I)[I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
        start local 1 // int beginGlyphIndex
        start local 2 // int numEntries
        start local 3 // int[] codeReturn
         0: .line 118
            iload 2 /* numEntries */
            ifge 4
         1: .line 119
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "numEntries argument value, "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         2: .line 120
            iload 2 /* numEntries */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ", is illegal. It must be > 0."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 119
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 122
      StackMap locals:
      StackMap stack:
            iload 1 /* beginGlyphIndex */
            ifge 9
         5: .line 123
            new java.lang.IndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "beginGlyphIndex "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* beginGlyphIndex */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         6: .line 124
            ldc " is out of bounds, should be between 0 and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 125
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            iconst_1
            isub
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         8: .line 123
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 127
      StackMap locals:
      StackMap stack:
            iload 1 /* beginGlyphIndex */
            iload 2 /* numEntries */
            iadd
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            if_icmple 14
        10: .line 128
            new java.lang.IndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "beginGlyphIndex + numEntries ("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        11: .line 129
            iload 1 /* beginGlyphIndex */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "+"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 2 /* numEntries */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        12: .line 130
            ldc ") exceeds the number of glpyhs in this GlyphVector"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        13: .line 128
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
        14: .line 132
      StackMap locals:
      StackMap stack:
            aload 3 /* codeReturn */
            ifnonnull 16
        15: .line 133
            iload 2 /* numEntries */
            newarray 10
            astore 3 /* codeReturn */
        16: .line 135
      StackMap locals:
      StackMap stack:
            iload 1 /* beginGlyphIndex */
            istore 4 /* i */
        start local 4 // int i
        17: goto 20
        18: .line 136
      StackMap locals: int
      StackMap stack:
            aload 3 /* codeReturn */
            iload 4 /* i */
            iload 1 /* beginGlyphIndex */
            isub
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            iload 4 /* i */
            aaload
            invokevirtual org.apache.batik.gvt.font.Glyph.getGlyphCode:()I
            iastore
        19: .line 135
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        20: iload 4 /* i */
            iload 1 /* beginGlyphIndex */
            iload 2 /* numEntries */
            iadd
            if_icmplt 18
        end local 4 // int i
        21: .line 138
            aload 3 /* codeReturn */
            areturn
        end local 3 // int[] codeReturn
        end local 2 // int numEntries
        end local 1 // int beginGlyphIndex
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   22     0             this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
            0   22     1  beginGlyphIndex  I
            0   22     2       numEntries  I
            0   22     3       codeReturn  [I
           17   21     4                i  I
    Exceptions:
      throws java.lang.IndexOutOfBoundsException, java.lang.IllegalArgumentException
    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=5, locals=2, args_size=2
        start local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
        start local 1 // int glyphIndex
         0: .line 146
            iload 1 /* glyphIndex */
            iflt 1
            iload 1 /* glyphIndex */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            iconst_1
            isub
            if_icmple 4
         1: .line 147
      StackMap locals:
      StackMap stack:
            new java.lang.IndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "glyphIndex: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* glyphIndex */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         2: .line 148
            ldc ", is out of bounds. Should be between 0 and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            iconst_1
            isub
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 147
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 150
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // int glyphIndex
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
            0    5     1  glyphIndex  I
    MethodParameters:
            Name  Flags
      glyphIndex  

  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.SVGGVTGlyphVector this
        start local 1 // int glyphIndex
         0: .line 158
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
            iload 1 /* glyphIndex */
            aaload
            ifnonnull 2
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphVisible:[Z
            iload 1 /* glyphIndex */
            baload
            ifeq 2
         1: .line 159
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.computeGlyphLogicalBounds:()V
         2: .line 161
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
            iload 1 /* glyphIndex */
            aaload
            areturn
        end local 1 // int glyphIndex
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
            0    3     1  glyphIndex  I
    MethodParameters:
            Name  Flags
      glyphIndex  

  private void computeGlyphLogicalBounds();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=12, locals=30, args_size=1
        start local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
         0: .line 167
            fconst_0
            fstore 1 /* ascent */
        start local 1 // float ascent
         1: .line 168
            fconst_0
            fstore 2 /* descent */
        start local 2 // float descent
         2: .line 169
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.font:Lorg/apache/batik/gvt/font/GVTFont;
            ifnull 8
         3: .line 171
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.font:Lorg/apache/batik/gvt/font/GVTFont;
            ldc "By"
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.frc:Ljava/awt/font/FontRenderContext;
            invokeinterface org.apache.batik.gvt.font.GVTFont.getLineMetrics:(Ljava/lang/String;Ljava/awt/font/FontRenderContext;)Lorg/apache/batik/gvt/font/GVTLineMetrics;
            astore 3 /* lineMetrics */
        start local 3 // org.apache.batik.gvt.font.GVTLineMetrics lineMetrics
         4: .line 172
            aload 3 /* lineMetrics */
            invokevirtual org.apache.batik.gvt.font.GVTLineMetrics.getAscent:()F
            fstore 1 /* ascent */
         5: .line 173
            aload 3 /* lineMetrics */
            invokevirtual org.apache.batik.gvt.font.GVTLineMetrics.getDescent:()F
            fstore 2 /* descent */
         6: .line 174
            fload 2 /* descent */
            fconst_0
            fcmpg
            ifge 8
         7: .line 176
            fload 2 /* descent */
            fneg
            fstore 2 /* descent */
        end local 3 // org.apache.batik.gvt.font.GVTLineMetrics lineMetrics
         8: .line 180
      StackMap locals: float float
      StackMap stack:
            fload 1 /* ascent */
            fconst_0
            fcmpl
            ifne 24
         9: .line 181
            fconst_0
            fstore 3 /* maxAscent */
        start local 3 // float maxAscent
        10: .line 182
            fconst_0
            fstore 4 /* maxDescent */
        start local 4 // float maxDescent
        11: .line 183
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        12: goto 21
        13: .line 184
      StackMap locals: float float int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphVisible:[Z
            iload 5 /* i */
            baload
            ifne 14
            goto 20
        14: .line 185
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 5 /* i */
            invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getGlyphMetrics:(I)Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
            astore 6 /* glyphMetrics */
        start local 6 // org.apache.batik.gvt.font.GVTGlyphMetrics glyphMetrics
        15: .line 186
            aload 6 /* glyphMetrics */
            invokevirtual org.apache.batik.gvt.font.GVTGlyphMetrics.getBounds2D:()Ljava/awt/geom/Rectangle2D;
            astore 7 /* glyphBounds */
        start local 7 // java.awt.geom.Rectangle2D glyphBounds
        16: .line 187
            aload 7 /* glyphBounds */
            invokevirtual java.awt.geom.Rectangle2D.getMinY:()D
            dneg
            d2f
            fstore 1 /* ascent */
        17: .line 188
            aload 7 /* glyphBounds */
            invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
            fload 1 /* ascent */
            f2d
            dsub
            d2f
            fstore 2 /* descent */
        18: .line 189
            fload 1 /* ascent */
            fload 3 /* maxAscent */
            fcmpl
            ifle 19
            fload 1 /* ascent */
            fstore 3 /* maxAscent */
        19: .line 190
      StackMap locals: org.apache.batik.gvt.font.GVTGlyphMetrics java.awt.geom.Rectangle2D
      StackMap stack:
            fload 2 /* descent */
            fload 4 /* maxDescent */
            fcmpl
            ifle 20
            fload 2 /* descent */
            fstore 4 /* maxDescent */
        end local 7 // java.awt.geom.Rectangle2D glyphBounds
        end local 6 // org.apache.batik.gvt.font.GVTGlyphMetrics glyphMetrics
        20: .line 183
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        21: iload 5 /* i */
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getNumGlyphs:()I
            if_icmplt 13
        end local 5 // int i
        22: .line 192
            fload 3 /* maxAscent */
            fstore 1 /* ascent */
        23: .line 193
            fload 4 /* maxDescent */
            fstore 2 /* descent */
        end local 4 // float maxDescent
        end local 3 // float maxAscent
        24: .line 196
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getNumGlyphs:()I
            anewarray java.awt.Shape
            astore 3 /* tempLogicalBounds */
        start local 3 // java.awt.Shape[] tempLogicalBounds
        25: .line 197
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getNumGlyphs:()I
            newarray 4
            astore 4 /* rotated */
        start local 4 // boolean[] rotated
        26: .line 199
            ldc -1.0
            dstore 5 /* maxWidth */
        start local 5 // double maxWidth
        27: .line 200
            ldc -1.0
            dstore 7 /* maxHeight */
        start local 7 // double maxHeight
        28: .line 202
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        29: goto 87
        30: .line 204
      StackMap locals: org.apache.batik.gvt.font.SVGGVTGlyphVector float float java.awt.Shape[] boolean[] double double int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphVisible:[Z
            iload 9 /* i */
            baload
            ifne 33
        31: .line 206
            aload 3 /* tempLogicalBounds */
            iload 9 /* i */
            aconst_null
            aastore
        32: .line 207
            goto 86
        33: .line 210
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 9 /* i */
            invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getGlyphTransform:(I)Ljava/awt/geom/AffineTransform;
            astore 10 /* glyphTransform */
        start local 10 // java.awt.geom.AffineTransform glyphTransform
        34: .line 211
            aload 0 /* this */
            iload 9 /* i */
            invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getGlyphMetrics:(I)Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
            astore 11 /* glyphMetrics */
        start local 11 // org.apache.batik.gvt.font.GVTGlyphMetrics glyphMetrics
        35: .line 212
            new java.awt.geom.Rectangle2D$Double
            dup
        36: .line 213
            dconst_0
            fload 1 /* ascent */
            fneg
            f2d
            aload 11 /* glyphMetrics */
            invokevirtual org.apache.batik.gvt.font.GVTGlyphMetrics.getHorizontalAdvance:()F
            f2d
        37: .line 214
            fload 1 /* ascent */
            fload 2 /* descent */
            fadd
            f2d
        38: .line 212
            invokespecial java.awt.geom.Rectangle2D$Double.<init>:(DDDD)V
            astore 12 /* glyphBounds */
        start local 12 // java.awt.geom.Rectangle2D glyphBounds
        39: .line 216
            aload 12 /* glyphBounds */
            invokevirtual java.awt.geom.Rectangle2D.isEmpty:()Z
            ifeq 45
        40: .line 219
            iload 9 /* i */
            ifle 43
        41: .line 220
            aload 4 /* rotated */
            iload 9 /* i */
            aload 4 /* rotated */
            iload 9 /* i */
            iconst_1
            isub
            baload
            bastore
        42: .line 221
            goto 86
        43: .line 222
      StackMap locals: java.awt.geom.AffineTransform org.apache.batik.gvt.font.GVTGlyphMetrics java.awt.geom.Rectangle2D
      StackMap stack:
            aload 4 /* rotated */
            iload 9 /* i */
            iconst_1
            bastore
        44: .line 224
            goto 86
        45: .line 227
      StackMap locals:
      StackMap stack:
            new java.awt.geom.Point2D$Double
            dup
            aload 12 /* glyphBounds */
            invokevirtual java.awt.geom.Rectangle2D.getMinX:()D
        46: .line 228
            aload 12 /* glyphBounds */
            invokevirtual java.awt.geom.Rectangle2D.getMinY:()D
        47: .line 227
            invokespecial java.awt.geom.Point2D$Double.<init>:(DD)V
            astore 13 /* p1 */
        start local 13 // java.awt.geom.Point2D p1
        48: .line 229
            new java.awt.geom.Point2D$Double
            dup
            aload 12 /* glyphBounds */
            invokevirtual java.awt.geom.Rectangle2D.getMaxX:()D
        49: .line 230
            aload 12 /* glyphBounds */
            invokevirtual java.awt.geom.Rectangle2D.getMinY:()D
        50: .line 229
            invokespecial java.awt.geom.Point2D$Double.<init>:(DD)V
            astore 14 /* p2 */
        start local 14 // java.awt.geom.Point2D p2
        51: .line 231
            new java.awt.geom.Point2D$Double
            dup
            aload 12 /* glyphBounds */
            invokevirtual java.awt.geom.Rectangle2D.getMinX:()D
        52: .line 232
            aload 12 /* glyphBounds */
            invokevirtual java.awt.geom.Rectangle2D.getMaxY:()D
        53: .line 231
            invokespecial java.awt.geom.Point2D$Double.<init>:(DD)V
            astore 15 /* p3 */
        start local 15 // java.awt.geom.Point2D p3
        54: .line 233
            aload 0 /* this */
            iload 9 /* i */
            invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getGlyphPosition:(I)Ljava/awt/geom/Point2D;
            astore 16 /* gpos */
        start local 16 // java.awt.geom.Point2D gpos
        55: .line 235
            aload 16 /* gpos */
            invokevirtual java.awt.geom.Point2D.getX:()D
            aload 16 /* gpos */
            invokevirtual java.awt.geom.Point2D.getY:()D
        56: .line 234
            invokestatic java.awt.geom.AffineTransform.getTranslateInstance:(DD)Ljava/awt/geom/AffineTransform;
            astore 17 /* tr */
        start local 17 // java.awt.geom.AffineTransform tr
        57: .line 237
            aload 10 /* glyphTransform */
            ifnull 59
        58: .line 238
            aload 17 /* tr */
            aload 10 /* glyphTransform */
            invokevirtual java.awt.geom.AffineTransform.concatenate:(Ljava/awt/geom/AffineTransform;)V
        59: .line 240
      StackMap locals: org.apache.batik.gvt.font.SVGGVTGlyphVector float float java.awt.Shape[] boolean[] double double int java.awt.geom.AffineTransform org.apache.batik.gvt.font.GVTGlyphMetrics 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 3 /* tempLogicalBounds */
            iload 9 /* i */
        60: .line 241
            aload 17 /* tr */
            aload 12 /* glyphBounds */
            invokevirtual java.awt.geom.AffineTransform.createTransformedShape:(Ljava/awt/Shape;)Ljava/awt/Shape;
        61: .line 240
            aastore
        62: .line 243
            new java.awt.geom.Point2D$Double
            dup
            invokespecial java.awt.geom.Point2D$Double.<init>:()V
            astore 18 /* tp1 */
        start local 18 // java.awt.geom.Point2D tp1
        63: .line 244
            new java.awt.geom.Point2D$Double
            dup
            invokespecial java.awt.geom.Point2D$Double.<init>:()V
            astore 19 /* tp2 */
        start local 19 // java.awt.geom.Point2D tp2
        64: .line 245
            new java.awt.geom.Point2D$Double
            dup
            invokespecial java.awt.geom.Point2D$Double.<init>:()V
            astore 20 /* tp3 */
        start local 20 // java.awt.geom.Point2D tp3
        65: .line 246
            aload 17 /* tr */
            aload 13 /* p1 */
            aload 18 /* tp1 */
            invokevirtual java.awt.geom.AffineTransform.transform:(Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;)Ljava/awt/geom/Point2D;
            pop
        66: .line 247
            aload 17 /* tr */
            aload 14 /* p2 */
            aload 19 /* tp2 */
            invokevirtual java.awt.geom.AffineTransform.transform:(Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;)Ljava/awt/geom/Point2D;
            pop
        67: .line 248
            aload 17 /* tr */
            aload 15 /* p3 */
            aload 20 /* tp3 */
            invokevirtual java.awt.geom.AffineTransform.transform:(Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;)Ljava/awt/geom/Point2D;
            pop
        68: .line 249
            aload 18 /* tp1 */
            invokevirtual java.awt.geom.Point2D.getX:()D
            aload 19 /* tp2 */
            invokevirtual java.awt.geom.Point2D.getX:()D
            dsub
            dstore 21 /* tdx12 */
        start local 21 // double tdx12
        69: .line 250
            aload 18 /* tp1 */
            invokevirtual java.awt.geom.Point2D.getX:()D
            aload 20 /* tp3 */
            invokevirtual java.awt.geom.Point2D.getX:()D
            dsub
            dstore 23 /* tdx13 */
        start local 23 // double tdx13
        70: .line 251
            aload 18 /* tp1 */
            invokevirtual java.awt.geom.Point2D.getY:()D
            aload 19 /* tp2 */
            invokevirtual java.awt.geom.Point2D.getY:()D
            dsub
            dstore 25 /* tdy12 */
        start local 25 // double tdy12
        71: .line 252
            aload 18 /* tp1 */
            invokevirtual java.awt.geom.Point2D.getY:()D
            aload 20 /* tp3 */
            invokevirtual java.awt.geom.Point2D.getY:()D
            dsub
            dstore 27 /* tdy13 */
        start local 27 // double tdy13
        72: .line 254
            dload 21 /* tdx12 */
            invokestatic java.lang.Math.abs:(D)D
            ldc 0.001
            dcmpg
            ifge 76
        73: .line 255
            dload 27 /* tdy13 */
            invokestatic java.lang.Math.abs:(D)D
            ldc 0.001
            dcmpg
            ifge 76
        74: .line 258
            aload 4 /* rotated */
            iload 9 /* i */
            iconst_0
            bastore
        75: .line 259
            goto 81
      StackMap locals: org.apache.batik.gvt.font.SVGGVTGlyphVector float float java.awt.Shape[] boolean[] double double int java.awt.geom.AffineTransform org.apache.batik.gvt.font.GVTGlyphMetrics 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:
        76: dload 23 /* tdx13 */
            invokestatic java.lang.Math.abs:(D)D
            ldc 0.001
            dcmpg
            ifge 80
        77: .line 260
            dload 25 /* tdy12 */
            invokestatic java.lang.Math.abs:(D)D
            ldc 0.001
            dcmpg
            ifge 80
        78: .line 263
            aload 4 /* rotated */
            iload 9 /* i */
            iconst_0
            bastore
        79: .line 264
            goto 81
        80: .line 265
      StackMap locals:
      StackMap stack:
            aload 4 /* rotated */
            iload 9 /* i */
            iconst_1
            bastore
        81: .line 269
      StackMap locals:
      StackMap stack:
            aload 3 /* tempLogicalBounds */
            iload 9 /* i */
            aaload
            invokeinterface java.awt.Shape.getBounds2D:()Ljava/awt/geom/Rectangle2D;
            astore 29 /* rectBounds */
        start local 29 // java.awt.geom.Rectangle2D rectBounds
        82: .line 270
            aload 29 /* rectBounds */
            invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
            dload 5 /* maxWidth */
            dcmpl
            ifle 84
        83: .line 271
            aload 29 /* rectBounds */
            invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
            dstore 5 /* maxWidth */
        84: .line 272
      StackMap locals: java.awt.geom.Rectangle2D
      StackMap stack:
            aload 29 /* rectBounds */
            invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
            dload 7 /* maxHeight */
            dcmpl
            ifle 86
        85: .line 273
            aload 29 /* rectBounds */
            invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
            dstore 7 /* maxHeight */
        end local 29 // java.awt.geom.Rectangle2D rectBounds
        end local 27 // double tdy13
        end local 25 // double tdy12
        end local 23 // double tdx13
        end local 21 // double tdx12
        end local 20 // java.awt.geom.Point2D tp3
        end local 19 // java.awt.geom.Point2D tp2
        end local 18 // java.awt.geom.Point2D tp1
        end local 17 // java.awt.geom.AffineTransform tr
        end local 16 // java.awt.geom.Point2D gpos
        end local 15 // java.awt.geom.Point2D p3
        end local 14 // java.awt.geom.Point2D p2
        end local 13 // java.awt.geom.Point2D p1
        end local 12 // java.awt.geom.Rectangle2D glyphBounds
        end local 11 // org.apache.batik.gvt.font.GVTGlyphMetrics glyphMetrics
        end local 10 // java.awt.geom.AffineTransform glyphTransform
        86: .line 202
      StackMap locals: org.apache.batik.gvt.font.SVGGVTGlyphVector float float java.awt.Shape[] boolean[] double double int
      StackMap stack:
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        87: iload 9 /* i */
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getNumGlyphs:()I
            if_icmplt 30
        end local 9 // int i
        88: .line 278
            new java.awt.geom.GeneralPath
            dup
            invokespecial java.awt.geom.GeneralPath.<init>:()V
            astore 9 /* logicalBoundsPath */
        start local 9 // java.awt.geom.GeneralPath logicalBoundsPath
        89: .line 279
            iconst_0
            istore 10 /* i */
        start local 10 // int i
        90: goto 94
        91: .line 280
      StackMap locals: org.apache.batik.gvt.font.SVGGVTGlyphVector float float java.awt.Shape[] boolean[] double double java.awt.geom.GeneralPath int
      StackMap stack:
            aload 3 /* tempLogicalBounds */
            iload 10 /* i */
            aaload
            ifnull 93
        92: .line 281
            aload 9 /* logicalBoundsPath */
            aload 3 /* tempLogicalBounds */
            iload 10 /* i */
            aaload
            iconst_0
            invokevirtual java.awt.geom.GeneralPath.append:(Ljava/awt/Shape;Z)V
        93: .line 279
      StackMap locals:
      StackMap stack:
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        94: iload 10 /* i */
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getNumGlyphs:()I
            if_icmplt 91
        end local 10 // int i
        95: .line 284
            aload 9 /* logicalBoundsPath */
            invokevirtual java.awt.geom.GeneralPath.getBounds2D:()Ljava/awt/geom/Rectangle2D;
            astore 10 /* fullBounds */
        start local 10 // java.awt.geom.Rectangle2D fullBounds
        96: .line 286
            aload 10 /* fullBounds */
            invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
            dload 7 /* maxHeight */
            ldc 1.5
            dmul
            dcmpg
            ifge 122
        97: .line 288
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        98: goto 120
        99: .line 291
      StackMap locals: org.apache.batik.gvt.font.SVGGVTGlyphVector float float java.awt.Shape[] boolean[] double double java.awt.geom.GeneralPath java.awt.geom.Rectangle2D int
      StackMap stack:
            aload 4 /* rotated */
            iload 11 /* i */
            baload
            ifeq 100
            goto 119
       100: .line 292
      StackMap locals:
      StackMap stack:
            aload 3 /* tempLogicalBounds */
            iload 11 /* i */
            aaload
            ifnonnull 101
            goto 119
       101: .line 294
      StackMap locals:
      StackMap stack:
            aload 3 /* tempLogicalBounds */
            iload 11 /* i */
            aaload
            invokeinterface java.awt.Shape.getBounds2D:()Ljava/awt/geom/Rectangle2D;
            astore 12 /* glyphBounds */
        start local 12 // java.awt.geom.Rectangle2D glyphBounds
       102: .line 296
            aload 12 /* glyphBounds */
            invokevirtual java.awt.geom.Rectangle2D.getMinX:()D
            dstore 13 /* x */
        start local 13 // double x
       103: .line 297
            aload 12 /* glyphBounds */
            invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
            dstore 15 /* width */
        start local 15 // double width
       104: .line 299
            iload 11 /* i */
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getNumGlyphs:()I
            iconst_1
            isub
            if_icmpge 115
       105: .line 300
            aload 3 /* tempLogicalBounds */
            iload 11 /* i */
            iconst_1
            iadd
            aaload
            ifnull 115
       106: .line 302
            aload 3 /* tempLogicalBounds */
            iload 11 /* i */
            iconst_1
            iadd
            aaload
            invokeinterface java.awt.Shape.getBounds2D:()Ljava/awt/geom/Rectangle2D;
            astore 17 /* ngb */
        start local 17 // java.awt.geom.Rectangle2D ngb
       107: .line 304
            aload 17 /* ngb */
            invokevirtual java.awt.geom.Rectangle2D.getX:()D
            dload 13 /* x */
            dcmpl
            ifle 115
       108: .line 305
            aload 17 /* ngb */
            invokevirtual java.awt.geom.Rectangle2D.getX:()D
            dload 13 /* x */
            dsub
            dstore 18 /* nw */
        start local 18 // double nw
       109: .line 306
            dload 18 /* nw */
            dload 15 /* width */
            ldc 1.15
            dmul
            dcmpg
            ifge 115
            dload 18 /* nw */
            dload 15 /* width */
            ldc 0.85
            dmul
            dcmpl
            ifle 115
       110: .line 307
            dload 18 /* nw */
            dload 15 /* width */
            dsub
            ldc 0.5
            dmul
            dstore 20 /* delta */
        start local 20 // double delta
       111: .line 308
            dload 15 /* width */
            dload 20 /* delta */
            dadd
            dstore 15 /* width */
       112: .line 309
            aload 17 /* ngb */
            aload 17 /* ngb */
            invokevirtual java.awt.geom.Rectangle2D.getX:()D
            dload 20 /* delta */
            dsub
            aload 17 /* ngb */
            invokevirtual java.awt.geom.Rectangle2D.getY:()D
       113: .line 310
            aload 17 /* ngb */
            invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
            dload 20 /* delta */
            dadd
            aload 17 /* ngb */
            invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
       114: .line 309
            invokevirtual java.awt.geom.Rectangle2D.setRect:(DDDD)V
        end local 20 // double delta
        end local 18 // double nw
        end local 17 // java.awt.geom.Rectangle2D ngb
       115: .line 314
      StackMap locals: java.awt.geom.Rectangle2D double double
      StackMap stack:
            aload 3 /* tempLogicalBounds */
            iload 11 /* i */
            new java.awt.geom.Rectangle2D$Double
            dup
       116: .line 315
            dload 13 /* x */
            aload 10 /* fullBounds */
            invokevirtual java.awt.geom.Rectangle2D.getMinY:()D
       117: .line 316
            dload 15 /* width */
            aload 10 /* fullBounds */
            invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
            invokespecial java.awt.geom.Rectangle2D$Double.<init>:(DDDD)V
       118: .line 314
            aastore
        end local 15 // double width
        end local 13 // double x
        end local 12 // java.awt.geom.Rectangle2D glyphBounds
       119: .line 288
      StackMap locals:
      StackMap stack:
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
       120: iload 11 /* i */
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getNumGlyphs:()I
            if_icmplt 99
        end local 11 // int i
       121: .line 318
            goto 147
      StackMap locals:
      StackMap stack:
       122: aload 10 /* fullBounds */
            invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
            dload 5 /* maxWidth */
            ldc 1.5
            dmul
            dcmpg
            ifge 147
       123: .line 320
            iconst_0
            istore 11 /* i */
        start local 11 // int i
       124: goto 146
       125: .line 323
      StackMap locals: int
      StackMap stack:
            aload 4 /* rotated */
            iload 11 /* i */
            baload
            ifeq 126
            goto 145
       126: .line 324
      StackMap locals:
      StackMap stack:
            aload 3 /* tempLogicalBounds */
            iload 11 /* i */
            aaload
            ifnonnull 127
            goto 145
       127: .line 326
      StackMap locals:
      StackMap stack:
            aload 3 /* tempLogicalBounds */
            iload 11 /* i */
            aaload
            invokeinterface java.awt.Shape.getBounds2D:()Ljava/awt/geom/Rectangle2D;
            astore 12 /* glyphBounds */
        start local 12 // java.awt.geom.Rectangle2D glyphBounds
       128: .line 327
            aload 12 /* glyphBounds */
            invokevirtual java.awt.geom.Rectangle2D.getMinY:()D
            dstore 13 /* y */
        start local 13 // double y
       129: .line 328
            aload 12 /* glyphBounds */
            invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
            dstore 15 /* height */
        start local 15 // double height
       130: .line 330
            iload 11 /* i */
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getNumGlyphs:()I
            iconst_1
            isub
            if_icmpge 141
       131: .line 331
            aload 3 /* tempLogicalBounds */
            iload 11 /* i */
            iconst_1
            iadd
            aaload
            ifnull 141
       132: .line 333
            aload 3 /* tempLogicalBounds */
            iload 11 /* i */
            iconst_1
            iadd
            aaload
            invokeinterface java.awt.Shape.getBounds2D:()Ljava/awt/geom/Rectangle2D;
            astore 17 /* ngb */
        start local 17 // java.awt.geom.Rectangle2D ngb
       133: .line 334
            aload 17 /* ngb */
            invokevirtual java.awt.geom.Rectangle2D.getY:()D
            dload 13 /* y */
            dcmpl
            ifle 141
       134: .line 335
            aload 17 /* ngb */
            invokevirtual java.awt.geom.Rectangle2D.getY:()D
            dload 13 /* y */
            dsub
            dstore 18 /* nh */
        start local 18 // double nh
       135: .line 336
            dload 18 /* nh */
            dload 15 /* height */
            ldc 1.15
            dmul
            dcmpg
            ifge 141
            dload 18 /* nh */
            dload 15 /* height */
            ldc 0.85
            dmul
            dcmpl
            ifle 141
       136: .line 337
            dload 18 /* nh */
            dload 15 /* height */
            dsub
            ldc 0.5
            dmul
            dstore 20 /* delta */
        start local 20 // double delta
       137: .line 338
            dload 15 /* height */
            dload 20 /* delta */
            dadd
            dstore 15 /* height */
       138: .line 339
            aload 17 /* ngb */
            aload 17 /* ngb */
            invokevirtual java.awt.geom.Rectangle2D.getX:()D
            aload 17 /* ngb */
            invokevirtual java.awt.geom.Rectangle2D.getY:()D
            dload 20 /* delta */
            dsub
       139: .line 340
            aload 17 /* ngb */
            invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
            aload 17 /* ngb */
            invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
            dload 20 /* delta */
            dadd
       140: .line 339
            invokevirtual java.awt.geom.Rectangle2D.setRect:(DDDD)V
        end local 20 // double delta
        end local 18 // double nh
        end local 17 // java.awt.geom.Rectangle2D ngb
       141: .line 344
      StackMap locals: java.awt.geom.Rectangle2D double double
      StackMap stack:
            aload 3 /* tempLogicalBounds */
            iload 11 /* i */
            new java.awt.geom.Rectangle2D$Double
            dup
       142: .line 345
            aload 10 /* fullBounds */
            invokevirtual java.awt.geom.Rectangle2D.getMinX:()D
            dload 13 /* y */
       143: .line 346
            aload 10 /* fullBounds */
            invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
            dload 15 /* height */
            invokespecial java.awt.geom.Rectangle2D$Double.<init>:(DDDD)V
       144: .line 344
            aastore
        end local 15 // double height
        end local 13 // double y
        end local 12 // java.awt.geom.Rectangle2D glyphBounds
       145: .line 320
      StackMap locals:
      StackMap stack:
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
       146: iload 11 /* i */
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getNumGlyphs:()I
            if_icmplt 125
        end local 11 // int i
       147: .line 350
      StackMap locals:
      StackMap stack:
            aload 3 /* tempLogicalBounds */
            iconst_0
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
            iconst_0
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getNumGlyphs:()I
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
       148: .line 351
            return
        end local 10 // java.awt.geom.Rectangle2D fullBounds
        end local 9 // java.awt.geom.GeneralPath logicalBoundsPath
        end local 7 // double maxHeight
        end local 5 // double maxWidth
        end local 4 // boolean[] rotated
        end local 3 // java.awt.Shape[] tempLogicalBounds
        end local 2 // float descent
        end local 1 // float ascent
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0  149     0               this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
            1  149     1             ascent  F
            2  149     2            descent  F
            4    8     3        lineMetrics  Lorg/apache/batik/gvt/font/GVTLineMetrics;
           10   24     3          maxAscent  F
           11   24     4         maxDescent  F
           12   22     5                  i  I
           15   20     6       glyphMetrics  Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
           16   20     7        glyphBounds  Ljava/awt/geom/Rectangle2D;
           25  149     3  tempLogicalBounds  [Ljava/awt/Shape;
           26  149     4            rotated  [Z
           27  149     5           maxWidth  D
           28  149     7          maxHeight  D
           29   88     9                  i  I
           34   86    10     glyphTransform  Ljava/awt/geom/AffineTransform;
           35   86    11       glyphMetrics  Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
           39   86    12        glyphBounds  Ljava/awt/geom/Rectangle2D;
           48   86    13                 p1  Ljava/awt/geom/Point2D;
           51   86    14                 p2  Ljava/awt/geom/Point2D;
           54   86    15                 p3  Ljava/awt/geom/Point2D;
           55   86    16               gpos  Ljava/awt/geom/Point2D;
           57   86    17                 tr  Ljava/awt/geom/AffineTransform;
           63   86    18                tp1  Ljava/awt/geom/Point2D;
           64   86    19                tp2  Ljava/awt/geom/Point2D;
           65   86    20                tp3  Ljava/awt/geom/Point2D;
           69   86    21              tdx12  D
           70   86    23              tdx13  D
           71   86    25              tdy12  D
           72   86    27              tdy13  D
           82   86    29         rectBounds  Ljava/awt/geom/Rectangle2D;
           89  149     9  logicalBoundsPath  Ljava/awt/geom/GeneralPath;
           90   95    10                  i  I
           96  149    10         fullBounds  Ljava/awt/geom/Rectangle2D;
           98  121    11                  i  I
          102  119    12        glyphBounds  Ljava/awt/geom/Rectangle2D;
          103  119    13                  x  D
          104  119    15              width  D
          107  115    17                ngb  Ljava/awt/geom/Rectangle2D;
          109  115    18                 nw  D
          111  115    20              delta  D
          124  147    11                  i  I
          128  145    12        glyphBounds  Ljava/awt/geom/Rectangle2D;
          129  145    13                  y  D
          130  145    15             height  D
          133  141    17                ngb  Ljava/awt/geom/Rectangle2D;
          135  141    18                 nh  D
          137  141    20              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=5, locals=4, args_size=2
        start local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
        start local 1 // int idx
         0: .line 359
            iload 1 /* idx */
            iflt 1
            iload 1 /* idx */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            iconst_1
            isub
            if_icmple 6
         1: .line 360
      StackMap locals:
      StackMap stack:
            new java.lang.IndexOutOfBoundsException
            dup
         2: .line 361
            new java.lang.StringBuilder
            dup
            ldc "idx: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* idx */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ", is out of bounds. Should be between 0 and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 362
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            iconst_1
            isub
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            bipush 46
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
         4: .line 361
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 360
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 368
      StackMap locals:
      StackMap stack:
            iload 1 /* idx */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            iconst_1
            isub
            if_icmpge 15
         7: .line 370
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.font:Lorg/apache/batik/gvt/font/GVTFont;
            ifnull 15
         8: .line 371
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.font:Lorg/apache/batik/gvt/font/GVTFont;
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            iload 1 /* idx */
            aaload
            invokevirtual org.apache.batik.gvt.font.Glyph.getGlyphCode:()I
         9: .line 372
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            iload 1 /* idx */
            iconst_1
            iadd
            aaload
            invokevirtual org.apache.batik.gvt.font.Glyph.getGlyphCode:()I
        10: .line 371
            invokeinterface org.apache.batik.gvt.font.GVTFont.getHKern:(II)F
            fstore 2 /* hkern */
        start local 2 // float hkern
        11: .line 373
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.font:Lorg/apache/batik/gvt/font/GVTFont;
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            iload 1 /* idx */
            aaload
            invokevirtual org.apache.batik.gvt.font.Glyph.getGlyphCode:()I
        12: .line 374
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            iload 1 /* idx */
            iconst_1
            iadd
            aaload
            invokevirtual org.apache.batik.gvt.font.Glyph.getGlyphCode:()I
        13: .line 373
            invokeinterface org.apache.batik.gvt.font.GVTFont.getVKern:(II)F
            fstore 3 /* vkern */
        start local 3 // float vkern
        14: .line 375
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            iload 1 /* idx */
            aaload
            fload 2 /* hkern */
            fload 3 /* vkern */
            invokevirtual org.apache.batik.gvt.font.Glyph.getGlyphMetrics:(FF)Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
            areturn
        end local 3 // float vkern
        end local 2 // float hkern
        15: .line 380
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            iload 1 /* idx */
            aaload
            invokevirtual org.apache.batik.gvt.font.Glyph.getGlyphMetrics:()Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
            areturn
        end local 1 // int idx
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   16     0   this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
            0   16     1    idx  I
           11   15     2  hkern  F
           14   15     3  vkern  F
    MethodParameters:
      Name  Flags
      idx   

  public java.awt.Shape getGlyphOutline(int);
    descriptor: (I)Ljava/awt/Shape;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
        start local 1 // int glyphIndex
         0: .line 388
            iload 1 /* glyphIndex */
            iflt 1
            iload 1 /* glyphIndex */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            iconst_1
            isub
            if_icmple 4
         1: .line 389
      StackMap locals:
      StackMap stack:
            new java.lang.IndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "glyphIndex: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* glyphIndex */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         2: .line 390
            ldc ", is out of bounds. Should be between 0 and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            iconst_1
            isub
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 389
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 392
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            iload 1 /* glyphIndex */
            aaload
            invokevirtual org.apache.batik.gvt.font.Glyph.getOutline:()Ljava/awt/Shape;
            areturn
        end local 1 // int glyphIndex
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
            0    5     1  glyphIndex  I
    MethodParameters:
            Name  Flags
      glyphIndex  

  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.SVGGVTGlyphVector this
        start local 1 // int glyphIndex
         0: .line 401
            aload 0 /* this */
            iload 1 /* glyphIndex */
            invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.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.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
            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=5, locals=2, args_size=2
        start local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
        start local 1 // int glyphIndex
         0: .line 408
            iload 1 /* glyphIndex */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            if_icmpne 2
         1: .line 409
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.endPos:Ljava/awt/geom/Point2D;
            areturn
         2: .line 411
      StackMap locals:
      StackMap stack:
            iload 1 /* glyphIndex */
            iflt 3
            iload 1 /* glyphIndex */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            iconst_1
            isub
            if_icmple 6
         3: .line 412
      StackMap locals:
      StackMap stack:
            new java.lang.IndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "glyphIndex: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* glyphIndex */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         4: .line 413
            ldc ", is out of bounds. Should be between 0 and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            iconst_1
            isub
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            bipush 46
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 412
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 415
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            iload 1 /* glyphIndex */
            aaload
            invokevirtual org.apache.batik.gvt.font.Glyph.getPosition:()Ljava/awt/geom/Point2D;
            areturn
        end local 1 // int glyphIndex
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0        this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
            0    7     1  glyphIndex  I
    MethodParameters:
            Name  Flags
      glyphIndex  

  public float[] getGlyphPositions(int, int, float[]);
    descriptor: (II[F)[F
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=4
        start local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
        start local 1 // int beginGlyphIndex
        start local 2 // int numEntries
        start local 3 // float[] positionReturn
         0: .line 424
            iload 2 /* numEntries */
            ifge 4
         1: .line 425
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "numEntries argument value, "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         2: .line 426
            iload 2 /* numEntries */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ", is illegal. It must be > 0."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 425
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 428
      StackMap locals:
      StackMap stack:
            iload 1 /* beginGlyphIndex */
            ifge 9
         5: .line 429
            new java.lang.IndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "beginGlyphIndex "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* beginGlyphIndex */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         6: .line 430
            ldc " is out of bounds, should be between 0 and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 431
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            iconst_1
            isub
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         8: .line 429
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 433
      StackMap locals:
      StackMap stack:
            iload 1 /* beginGlyphIndex */
            iload 2 /* numEntries */
            iadd
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            iconst_1
            iadd
            if_icmple 14
        10: .line 434
            new java.lang.IndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "beginGlyphIndex + numEntries ("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        11: .line 435
            iload 1 /* beginGlyphIndex */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            bipush 43
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            iload 2 /* numEntries */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        12: .line 436
            ldc ") exceeds the number of glpyhs in this GlyphVector"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        13: .line 434
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
        14: .line 438
      StackMap locals:
      StackMap stack:
            aload 3 /* positionReturn */
            ifnonnull 16
        15: .line 439
            iload 2 /* numEntries */
            iconst_2
            imul
            newarray 6
            astore 3 /* positionReturn */
        16: .line 441
      StackMap locals:
      StackMap stack:
            iload 1 /* beginGlyphIndex */
            iload 2 /* numEntries */
            iadd
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            iconst_1
            iadd
            if_icmpne 20
        17: .line 442
            iinc 2 /* numEntries */ -1
        18: .line 443
            aload 3 /* positionReturn */
            iload 2 /* numEntries */
            iconst_2
            imul
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.endPos:Ljava/awt/geom/Point2D;
            invokevirtual java.awt.geom.Point2D.getX:()D
            d2f
            fastore
        19: .line 444
            aload 3 /* positionReturn */
            iload 2 /* numEntries */
            iconst_2
            imul
            iconst_1
            iadd
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.endPos:Ljava/awt/geom/Point2D;
            invokevirtual java.awt.geom.Point2D.getY:()D
            d2f
            fastore
        20: .line 446
      StackMap locals:
      StackMap stack:
            iload 1 /* beginGlyphIndex */
            istore 4 /* i */
        start local 4 // int i
        21: goto 26
        22: .line 448
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            iload 4 /* i */
            aaload
            invokevirtual org.apache.batik.gvt.font.Glyph.getPosition:()Ljava/awt/geom/Point2D;
            astore 5 /* glyphPos */
        start local 5 // java.awt.geom.Point2D glyphPos
        23: .line 449
            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
        24: .line 450
            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
        25: .line 446
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        26: iload 4 /* i */
            iload 1 /* beginGlyphIndex */
            iload 2 /* numEntries */
            iadd
            if_icmplt 22
        end local 4 // int i
        27: .line 452
            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.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   28     0             this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
            0   28     1  beginGlyphIndex  I
            0   28     2       numEntries  I
            0   28     3   positionReturn  [F
           21   27     4                i  I
           23   25     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=5, locals=2, args_size=2
        start local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
        start local 1 // int glyphIndex
         0: .line 459
            iload 1 /* glyphIndex */
            iflt 1
            iload 1 /* glyphIndex */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            iconst_1
            isub
            if_icmple 4
         1: .line 460
      StackMap locals:
      StackMap stack:
            new java.lang.IndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "glyphIndex: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* glyphIndex */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         2: .line 461
            ldc ", is out of bounds. Should be between 0 and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            iconst_1
            isub
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            bipush 46
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 460
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 463
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            iload 1 /* glyphIndex */
            aaload
            invokevirtual org.apache.batik.gvt.font.Glyph.getTransform:()Ljava/awt/geom/AffineTransform;
            areturn
        end local 1 // int glyphIndex
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
            0    5     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=2, args_size=2
        start local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
        start local 1 // int glyphIndex
         0: .line 470
            iload 1 /* glyphIndex */
            iflt 1
            iload 1 /* glyphIndex */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            iconst_1
            isub
            if_icmple 4
         1: .line 471
      StackMap locals:
      StackMap stack:
            new java.lang.IndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "glyphIndex: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* glyphIndex */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         2: .line 472
            ldc ", is out of bounds. Should be between 0 and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            iconst_1
            isub
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            bipush 46
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 471
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 474
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            iload 1 /* glyphIndex */
            aaload
            invokevirtual org.apache.batik.gvt.font.Glyph.getOutline:()Ljava/awt/Shape;
            areturn
        end local 1 // int glyphIndex
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
            0    5     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=6, args_size=2
        start local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
        start local 1 // java.text.AttributedCharacterIterator aci
         0: .line 482
            aload 1 /* aci */
            invokeinterface java.text.AttributedCharacterIterator.first:()C
            pop
         1: .line 483
            aload 1 /* aci */
            getstatic org.apache.batik.gvt.font.SVGGVTGlyphVector.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 484
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
            ifnull 5
         3: .line 485
            aload 2 /* tpi */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.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 486
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
            areturn
         5: .line 488
      StackMap locals: org.apache.batik.gvt.text.TextPaintInfo
      StackMap stack:
            aconst_null
            astore 3 /* b */
        start local 3 // java.awt.geom.Rectangle2D b
         6: .line 489
            aload 2 /* tpi */
            getfield org.apache.batik.gvt.text.TextPaintInfo.visible:Z
            ifeq 16
         7: .line 490
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         8: goto 15
         9: .line 491
      StackMap locals: java.awt.geom.Rectangle2D int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphVisible:[Z
            iload 4 /* i */
            baload
            ifne 10
            goto 14
        10: .line 493
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            iload 4 /* i */
            aaload
            invokevirtual org.apache.batik.gvt.font.Glyph.getBounds2D:()Ljava/awt/geom/Rectangle2D;
            astore 5 /* glyphBounds */
        start local 5 // java.awt.geom.Rectangle2D glyphBounds
        11: .line 495
            aload 5 /* glyphBounds */
            ifnonnull 12
            goto 14
        12: .line 496
      StackMap locals: java.awt.geom.Rectangle2D
      StackMap stack:
            aload 3 /* b */
            ifnonnull 13
            aload 5 /* glyphBounds */
            astore 3 /* b */
            goto 14
        13: .line 498
      StackMap locals:
      StackMap stack:
            aload 3 /* b */
            aload 5 /* glyphBounds */
            invokevirtual java.awt.geom.Rectangle2D.add:(Ljava/awt/geom/Rectangle2D;)V
        end local 5 // java.awt.geom.Rectangle2D glyphBounds
        14: .line 490
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 4 /* i */
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getNumGlyphs:()I
            if_icmplt 9
        end local 4 // int i
        16: .line 502
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* b */
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
        17: .line 503
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
            ifnonnull 19
        18: .line 504
            aload 0 /* this */
            new java.awt.geom.Rectangle2D$Float
            dup
            invokespecial java.awt.geom.Rectangle2D$Float.<init>:()V
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
        19: .line 506
      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.SVGGVTGlyphVector.cacheTPI:Lorg/apache/batik/gvt/text/TextPaintInfo;
        20: .line 507
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
            areturn
        end local 3 // java.awt.geom.Rectangle2D b
        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.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   21     0         this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
            0   21     1          aci  Ljava/text/AttributedCharacterIterator;
            2   21     2          tpi  Lorg/apache/batik/gvt/text/TextPaintInfo;
            6   21     3            b  Ljava/awt/geom/Rectangle2D;
            8   16     4            i  I
           11   14     5  glyphBounds  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=3, locals=4, args_size=1
        start local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
         0: .line 515
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
            ifnonnull 10
         1: .line 516
            new java.awt.geom.GeneralPath
            dup
            invokespecial java.awt.geom.GeneralPath.<init>:()V
            astore 1 /* logicalBoundsPath */
        start local 1 // java.awt.geom.GeneralPath logicalBoundsPath
         2: .line 517
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: goto 8
         4: .line 518
      StackMap locals: java.awt.geom.GeneralPath int
      StackMap stack:
            aload 0 /* this */
            iload 2 /* i */
            invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getGlyphLogicalBounds:(I)Ljava/awt/Shape;
            astore 3 /* glyphLogicalBounds */
        start local 3 // java.awt.Shape glyphLogicalBounds
         5: .line 519
            aload 3 /* glyphLogicalBounds */
            ifnull 7
         6: .line 520
            aload 1 /* logicalBoundsPath */
            aload 3 /* glyphLogicalBounds */
            iconst_0
            invokevirtual java.awt.geom.GeneralPath.append:(Ljava/awt/Shape;Z)V
        end local 3 // java.awt.Shape glyphLogicalBounds
         7: .line 517
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 2 /* i */
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getNumGlyphs:()I
            if_icmplt 4
        end local 2 // int i
         9: .line 523
            aload 0 /* this */
            aload 1 /* logicalBoundsPath */
            invokevirtual java.awt.geom.GeneralPath.getBounds2D:()Ljava/awt/geom/Rectangle2D;
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
        end local 1 // java.awt.geom.GeneralPath logicalBoundsPath
        10: .line 525
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
            areturn
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   11     0                this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
            2   10     1   logicalBoundsPath  Ljava/awt/geom/GeneralPath;
            3    9     2                   i  I
            5    7     3  glyphLogicalBounds  Ljava/awt/Shape;

  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.SVGGVTGlyphVector this
         0: .line 532
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            ifnull 2
         1: .line 533
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            ireturn
         2: .line 535
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;

  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.SVGGVTGlyphVector this
         0: .line 543
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
            ifnonnull 10
         1: .line 544
            aload 0 /* this */
            new java.awt.geom.GeneralPath
            dup
            invokespecial java.awt.geom.GeneralPath.<init>:()V
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
         2: .line 545
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         3: goto 9
         4: .line 546
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphVisible:[Z
            iload 1 /* i */
            baload
            ifeq 8
         5: .line 547
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            iload 1 /* i */
            aaload
            invokevirtual org.apache.batik.gvt.font.Glyph.getOutline:()Ljava/awt/Shape;
            astore 2 /* glyphOutline */
        start local 2 // java.awt.Shape glyphOutline
         6: .line 548
            aload 2 /* glyphOutline */
            ifnull 8
         7: .line 549
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.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 545
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 1 /* i */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            if_icmplt 4
        end local 1 // int i
        10: .line 554
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
            areturn
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   11     0          this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
            3   10     1             i  I
            6    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=6, args_size=3
        start local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
        start local 1 // float x
        start local 2 // float y
         0: .line 562
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getOutline:()Ljava/awt/Shape;
            astore 3 /* outline */
        start local 3 // java.awt.Shape outline
         1: .line 563
            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 564
            aload 4 /* tr */
            aload 3 /* outline */
            invokevirtual java.awt.geom.AffineTransform.createTransformedShape:(Ljava/awt/Shape;)Ljava/awt/Shape;
            astore 5 /* translatedOutline */
        start local 5 // java.awt.Shape translatedOutline
         3: .line 565
            aload 5 /* translatedOutline */
            areturn
        end local 5 // java.awt.Shape translatedOutline
        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.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    4     0               this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
            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;
            3    4     5  translatedOutline  Ljava/awt/Shape;
    MethodParameters:
      Name  Flags
      x     
      y     

  public java.awt.geom.Rectangle2D getGeometricBounds();
    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.SVGGVTGlyphVector this
         0: .line 574
            aload 0 /* this */
            invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getOutline:()Ljava/awt/Shape;
            invokeinterface java.awt.Shape.getBounds2D:()Ljava/awt/geom/Rectangle2D;
            areturn
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;

  public void performDefaultLayout();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=10, args_size=1
        start local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
         0: .line 582
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
         1: .line 583
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
         2: .line 584
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
         3: .line 586
            fconst_0
            fstore 1 /* currentX */
        start local 1 // float currentX
         4: .line 587
            fconst_0
            fstore 2 /* currentY */
        start local 2 // float currentY
         5: .line 588
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         6: goto 40
         7: .line 589
      StackMap locals: float float int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            iload 3 /* i */
            aaload
            astore 4 /* g */
        start local 4 // org.apache.batik.gvt.font.Glyph g
         8: .line 590
            aload 4 /* g */
            aconst_null
            invokevirtual org.apache.batik.gvt.font.Glyph.setTransform:(Ljava/awt/geom/AffineTransform;)V
         9: .line 591
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
            iload 3 /* i */
            aconst_null
            aastore
        10: .line 593
            aload 4 /* g */
            invokevirtual org.apache.batik.gvt.font.Glyph.getUnicode:()Ljava/lang/String;
            astore 5 /* uni */
        start local 5 // java.lang.String uni
        11: .line 594
            aload 5 /* uni */
            ifnull 37
            aload 5 /* uni */
            invokevirtual java.lang.String.length:()I
            ifeq 37
        12: .line 595
            aload 5 /* uni */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic org.apache.batik.gvt.text.ArabicTextHandler.arabicCharTransparent:(C)Z
            ifeq 37
        13: .line 597
            iload 3 /* i */
            iconst_1
            iadd
            istore 6 /* j */
        start local 6 // int j
        14: goto 21
        15: .line 598
      StackMap locals: org.apache.batik.gvt.font.Glyph java.lang.String int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            iload 6 /* j */
            aaload
            invokevirtual org.apache.batik.gvt.font.Glyph.getUnicode:()Ljava/lang/String;
            astore 5 /* uni */
        16: .line 599
            aload 5 /* uni */
            ifnull 22
            aload 5 /* uni */
            invokevirtual java.lang.String.length:()I
            ifne 17
            goto 22
        17: .line 600
      StackMap locals:
      StackMap stack:
            aload 5 /* uni */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            istore 7 /* ch */
        start local 7 // char ch
        18: .line 601
            iload 7 /* ch */
            invokestatic org.apache.batik.gvt.text.ArabicTextHandler.arabicCharTransparent:(C)Z
            ifne 20
        19: .line 602
            goto 22
        end local 7 // char ch
        20: .line 597
      StackMap locals:
      StackMap stack:
            iinc 6 /* j */ 1
      StackMap locals:
      StackMap stack:
        21: iload 6 /* j */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            if_icmplt 15
        22: .line 604
      StackMap locals:
      StackMap stack:
            iload 6 /* j */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            if_icmpeq 37
        23: .line 605
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            iload 6 /* j */
            aaload
            astore 7 /* bg */
        start local 7 // org.apache.batik.gvt.font.Glyph bg
        24: .line 606
            fload 1 /* currentX */
            aload 7 /* bg */
            invokevirtual org.apache.batik.gvt.font.Glyph.getHorizAdvX:()F
            fadd
            fstore 8 /* rEdge */
        start local 8 // float rEdge
        25: .line 607
            iload 3 /* i */
            istore 9 /* k */
        start local 9 // int k
        26: goto 34
        27: .line 608
      StackMap locals: org.apache.batik.gvt.font.Glyph float int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            iload 9 /* k */
            aaload
            astore 4 /* g */
        28: .line 609
            aload 4 /* g */
            aconst_null
            invokevirtual org.apache.batik.gvt.font.Glyph.setTransform:(Ljava/awt/geom/AffineTransform;)V
        29: .line 610
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
            iload 3 /* i */
            aconst_null
            aastore
        30: .line 611
            aload 4 /* g */
            new java.awt.geom.Point2D$Float
            dup
            fload 8 /* rEdge */
            aload 4 /* g */
            invokevirtual org.apache.batik.gvt.font.Glyph.getHorizAdvX:()F
            fsub
        31: .line 612
            fload 2 /* currentY */
            invokespecial java.awt.geom.Point2D$Float.<init>:(FF)V
        32: .line 611
            invokevirtual org.apache.batik.gvt.font.Glyph.setPosition:(Ljava/awt/geom/Point2D;)V
        33: .line 607
            iinc 9 /* k */ 1
      StackMap locals:
      StackMap stack:
        34: iload 9 /* k */
            iload 6 /* j */
            if_icmplt 27
        end local 9 // int k
        35: .line 614
            iload 6 /* j */
            istore 3 /* i */
        36: .line 615
            aload 7 /* bg */
            astore 4 /* g */
        end local 8 // float rEdge
        end local 7 // org.apache.batik.gvt.font.Glyph bg
        end local 6 // int j
        37: .line 619
      StackMap locals: org.apache.batik.gvt.font.SVGGVTGlyphVector float float int org.apache.batik.gvt.font.Glyph java.lang.String
      StackMap stack:
            aload 4 /* g */
            new java.awt.geom.Point2D$Float
            dup
            fload 1 /* currentX */
            fload 2 /* currentY */
            invokespecial java.awt.geom.Point2D$Float.<init>:(FF)V
            invokevirtual org.apache.batik.gvt.font.Glyph.setPosition:(Ljava/awt/geom/Point2D;)V
        38: .line 620
            fload 1 /* currentX */
            aload 4 /* g */
            invokevirtual org.apache.batik.gvt.font.Glyph.getHorizAdvX:()F
            fadd
            fstore 1 /* currentX */
        end local 5 // java.lang.String uni
        end local 4 // org.apache.batik.gvt.font.Glyph g
        39: .line 588
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        40: iload 3 /* i */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            if_icmplt 7
        end local 3 // int i
        41: .line 622
            aload 0 /* this */
            new java.awt.geom.Point2D$Float
            dup
            fload 1 /* currentX */
            fload 2 /* currentY */
            invokespecial java.awt.geom.Point2D$Float.<init>:(FF)V
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.endPos:Ljava/awt/geom/Point2D;
        42: .line 623
            return
        end local 2 // float currentY
        end local 1 // float currentX
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   43     0      this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
            4   43     1  currentX  F
            5   43     2  currentY  F
            6   41     3         i  I
            8   39     4         g  Lorg/apache/batik/gvt/font/Glyph;
           11   39     5       uni  Ljava/lang/String;
           14   37     6         j  I
           18   20     7        ch  C
           24   37     7        bg  Lorg/apache/batik/gvt/font/Glyph;
           25   37     8     rEdge  F
           26   35     9         k  I

  public void setGlyphPosition(int, java.awt.geom.Point2D);
    descriptor: (ILjava/awt/geom/Point2D;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
        start local 1 // int glyphIndex
        start local 2 // java.awt.geom.Point2D newPos
         0: .line 630
            iload 1 /* glyphIndex */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            if_icmpne 3
         1: .line 631
            aload 0 /* this */
            aload 2 /* newPos */
            invokevirtual java.awt.geom.Point2D.clone:()Ljava/lang/Object;
            checkcast java.awt.geom.Point2D
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.endPos:Ljava/awt/geom/Point2D;
         2: .line 632
            return
         3: .line 635
      StackMap locals:
      StackMap stack:
            iload 1 /* glyphIndex */
            iflt 4
            iload 1 /* glyphIndex */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            iconst_1
            isub
            if_icmple 7
         4: .line 636
      StackMap locals:
      StackMap stack:
            new java.lang.IndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "glyphIndex: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* glyphIndex */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         5: .line 637
            ldc ", is out of bounds. Should be between 0 and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            iconst_1
            isub
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            bipush 46
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         6: .line 636
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 639
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            iload 1 /* glyphIndex */
            aaload
            aload 2 /* newPos */
            invokevirtual org.apache.batik.gvt.font.Glyph.setPosition:(Ljava/awt/geom/Point2D;)V
         8: .line 640
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
            iload 1 /* glyphIndex */
            aconst_null
            aastore
         9: .line 641
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
        10: .line 642
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
        11: .line 643
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
        12: .line 644
            return
        end local 2 // java.awt.geom.Point2D newPos
        end local 1 // int glyphIndex
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   13     0        this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
            0   13     1  glyphIndex  I
            0   13     2      newPos  Ljava/awt/geom/Point2D;
    Exceptions:
      throws java.lang.IndexOutOfBoundsException
    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=5, locals=3, args_size=3
        start local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
        start local 1 // int glyphIndex
        start local 2 // java.awt.geom.AffineTransform newTX
         0: .line 650
            iload 1 /* glyphIndex */
            iflt 1
            iload 1 /* glyphIndex */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            iconst_1
            isub
            if_icmple 4
         1: .line 651
      StackMap locals:
      StackMap stack:
            new java.lang.IndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "glyphIndex: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* glyphIndex */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         2: .line 652
            ldc ", is out of bounds. Should be between 0 and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            iconst_1
            isub
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            bipush 46
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 651
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 654
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            iload 1 /* glyphIndex */
            aaload
            aload 2 /* newTX */
            invokevirtual org.apache.batik.gvt.font.Glyph.setTransform:(Ljava/awt/geom/AffineTransform;)V
         5: .line 655
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
            iload 1 /* glyphIndex */
            aconst_null
            aastore
         6: .line 656
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
         7: .line 657
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
         8: .line 658
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
         9: .line 659
            return
        end local 2 // java.awt.geom.AffineTransform newTX
        end local 1 // int glyphIndex
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
            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.SVGGVTGlyphVector this
        start local 1 // int glyphIndex
        start local 2 // boolean visible
         0: .line 665
            iload 2 /* visible */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphVisible:[Z
            iload 1 /* glyphIndex */
            baload
            if_icmpne 2
         1: .line 666
            return
         2: .line 668
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphVisible:[Z
            iload 1 /* glyphIndex */
            iload 2 /* visible */
            bastore
         3: .line 669
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
         4: .line 670
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
         5: .line 671
            aload 0 /* this */
            aconst_null
            putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
         6: .line 672
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
            iload 1 /* glyphIndex */
            aconst_null
            aastore
         7: .line 673
            return
        end local 2 // boolean visible
        end local 1 // int glyphIndex
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0        this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
            0    8     1  glyphIndex  I
            0    8     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.SVGGVTGlyphVector this
        start local 1 // int glyphIndex
         0: .line 679
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphVisible:[Z
            iload 1 /* glyphIndex */
            baload
            ireturn
        end local 1 // int glyphIndex
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
            0    1     1  glyphIndex  I
    MethodParameters:
            Name  Flags
      glyphIndex  

  public int getCharacterCount(int, int);
    descriptor: (II)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=3
        start local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
        start local 1 // int startGlyphIndex
        start local 2 // int endGlyphIndex
         0: .line 690
            iconst_0
            istore 3 /* numChars */
        start local 3 // int numChars
         1: .line 691
            iload 1 /* startGlyphIndex */
            ifge 3
         2: .line 692
            iconst_0
            istore 1 /* startGlyphIndex */
         3: .line 694
      StackMap locals: int
      StackMap stack:
            iload 2 /* endGlyphIndex */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            iconst_1
            isub
            if_icmple 5
         4: .line 695
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            iconst_1
            isub
            istore 2 /* endGlyphIndex */
         5: .line 697
      StackMap locals:
      StackMap stack:
            iload 1 /* startGlyphIndex */
            istore 4 /* i */
        start local 4 // int i
         6: goto 14
         7: .line 698
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            iload 4 /* i */
            aaload
            astore 5 /* glyph */
        start local 5 // org.apache.batik.gvt.font.Glyph glyph
         8: .line 699
            aload 5 /* glyph */
            invokevirtual org.apache.batik.gvt.font.Glyph.getGlyphCode:()I
            iconst_m1
            if_icmpne 11
         9: .line 701
            iinc 3 /* numChars */ 1
        10: .line 702
            goto 13
        11: .line 703
      StackMap locals: org.apache.batik.gvt.font.Glyph
      StackMap stack:
            aload 5 /* glyph */
            invokevirtual org.apache.batik.gvt.font.Glyph.getUnicode:()Ljava/lang/String;
            astore 6 /* glyphUnicode */
        start local 6 // java.lang.String glyphUnicode
        12: .line 704
            iload 3 /* numChars */
            aload 6 /* glyphUnicode */
            invokevirtual java.lang.String.length:()I
            iadd
            istore 3 /* numChars */
        end local 6 // java.lang.String glyphUnicode
        end local 5 // org.apache.batik.gvt.font.Glyph glyph
        13: .line 697
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 4 /* i */
            iload 2 /* endGlyphIndex */
            if_icmple 7
        end local 4 // int i
        15: .line 707
            iload 3 /* numChars */
            ireturn
        end local 3 // int numChars
        end local 2 // int endGlyphIndex
        end local 1 // int startGlyphIndex
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   16     0             this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
            0   16     1  startGlyphIndex  I
            0   16     2    endGlyphIndex  I
            1   16     3         numChars  I
            6   15     4                i  I
            8   13     5            glyph  Lorg/apache/batik/gvt/font/Glyph;
           12   13     6     glyphUnicode  Ljava/lang/String;
    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.SVGGVTGlyphVector this
         0: .line 712
            iconst_0
            ireturn
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;

  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.SVGGVTGlyphVector this
        start local 1 // boolean mirror
         0: .line 717
            return
        end local 1 // boolean mirror
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
            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=2, locals=5, args_size=3
        start local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
        start local 1 // java.awt.Graphics2D graphics2D
        start local 2 // java.text.AttributedCharacterIterator aci
         0: .line 724
            aload 2 /* aci */
            invokeinterface java.text.AttributedCharacterIterator.first:()C
            pop
         1: .line 725
            aload 2 /* aci */
            getstatic org.apache.batik.gvt.font.SVGGVTGlyphVector.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 3 /* tpi */
        start local 3 // org.apache.batik.gvt.text.TextPaintInfo tpi
         2: .line 726
            aload 3 /* tpi */
            getfield org.apache.batik.gvt.text.TextPaintInfo.visible:Z
            ifne 3
            return
         3: .line 728
      StackMap locals: org.apache.batik.gvt.text.TextPaintInfo
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         4: goto 8
         5: .line 729
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphVisible:[Z
            iload 4 /* i */
            baload
            ifeq 7
         6: .line 730
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            iload 4 /* i */
            aaload
            aload 1 /* graphics2D */
            invokevirtual org.apache.batik.gvt.font.Glyph.draw:(Ljava/awt/Graphics2D;)V
         7: .line 728
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 4 /* i */
            aload 0 /* this */
            getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
            arraylength
            if_icmplt 5
        end local 4 // int i
         9: .line 733
            return
        end local 3 // org.apache.batik.gvt.text.TextPaintInfo tpi
        end local 2 // java.text.AttributedCharacterIterator aci
        end local 1 // java.awt.Graphics2D graphics2D
        end local 0 // org.apache.batik.gvt.font.SVGGVTGlyphVector this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
            0   10     1  graphics2D  Ljava/awt/Graphics2D;
            0   10     2         aci  Ljava/text/AttributedCharacterIterator;
            2   10     3         tpi  Lorg/apache/batik/gvt/text/TextPaintInfo;
            4    9     4           i  I
    MethodParameters:
            Name  Flags
      graphics2D  
      aci         
}
SourceFile: "SVGGVTGlyphVector.java"
InnerClasses:
  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 Float = java.awt.geom.Rectangle2D$Float of java.awt.geom.Rectangle2D
  public Attribute = java.text.AttributedCharacterIterator$Attribute of java.text.AttributedCharacterIterator
  public TextAttribute = org.apache.batik.gvt.text.GVTAttributedCharacterIterator$TextAttribute of org.apache.batik.gvt.text.GVTAttributedCharacterIterator