final class sun.java2d.marlin.Stroker implements sun.awt.geom.PathConsumer2D, sun.java2d.marlin.MarlinConst
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: sun.java2d.marlin.Stroker
  super_class: java.lang.Object
{
  private static final int MOVE_TO;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final int DRAWING_OP_TO;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  private static final int CLOSE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final int JOIN_MITER;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final int JOIN_ROUND;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final int JOIN_BEVEL;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final int CAP_BUTT;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final int CAP_ROUND;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final int CAP_SQUARE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static final float ROUND_JOIN_THRESHOLD;
    descriptor: F
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0.015258789

  private static final float C;
    descriptor: F
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0.5522848

  private static final int MAX_N_CURVES;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 11

  private sun.awt.geom.PathConsumer2D out;
    descriptor: Lsun/awt/geom/PathConsumer2D;
    flags: (0x0002) ACC_PRIVATE

  private int capStyle;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int joinStyle;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

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

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

  private final float[] offset0;
    descriptor: [F
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final float[] offset1;
    descriptor: [F
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final float[] offset2;
    descriptor: [F
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final float[] miter;
    descriptor: [F
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  private int prev;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

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

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

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

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

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

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

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

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

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

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

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

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

  private final sun.java2d.marlin.Stroker$PolyStack reverse;
    descriptor: Lsun/java2d/marlin/Stroker$PolyStack;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final float[] middle;
    descriptor: [F
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final float[] lp;
    descriptor: [F
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final float[] rp;
    descriptor: [F
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final float[] subdivTs;
    descriptor: [F
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  final sun.java2d.marlin.RendererContext rdrCtx;
    descriptor: Lsun/java2d/marlin/RendererContext;
    flags: (0x0010) ACC_FINAL

  final sun.java2d.marlin.Curve curve;
    descriptor: Lsun/java2d/marlin/Curve;
    flags: (0x0010) ACC_FINAL

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 39
            ldc Lsun/java2d/marlin/Stroker;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic sun.java2d.marlin.Stroker.$assertionsDisabled:Z
         3: .line 82
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(sun.java2d.marlin.RendererContext);
    descriptor: (Lsun/java2d/marlin/RendererContext;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // sun.java2d.marlin.Stroker this
        start local 1 // sun.java2d.marlin.RendererContext rdrCtx
         0: .line 132
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 92
            aload 0 /* this */
            iconst_2
            newarray 6
            putfield sun.java2d.marlin.Stroker.offset0:[F
         2: .line 93
            aload 0 /* this */
            iconst_2
            newarray 6
            putfield sun.java2d.marlin.Stroker.offset1:[F
         3: .line 94
            aload 0 /* this */
            iconst_2
            newarray 6
            putfield sun.java2d.marlin.Stroker.offset2:[F
         4: .line 95
            aload 0 /* this */
            iconst_2
            newarray 6
            putfield sun.java2d.marlin.Stroker.miter:[F
         5: .line 117
            aload 0 /* this */
            bipush 16
            newarray 6
            putfield sun.java2d.marlin.Stroker.middle:[F
         6: .line 118
            aload 0 /* this */
            bipush 8
            newarray 6
            putfield sun.java2d.marlin.Stroker.lp:[F
         7: .line 119
            aload 0 /* this */
            bipush 8
            newarray 6
            putfield sun.java2d.marlin.Stroker.rp:[F
         8: .line 120
            aload 0 /* this */
            bipush 10
            newarray 6
            putfield sun.java2d.marlin.Stroker.subdivTs:[F
         9: .line 133
            aload 0 /* this */
            aload 1 /* rdrCtx */
            putfield sun.java2d.marlin.Stroker.rdrCtx:Lsun/java2d/marlin/RendererContext;
        10: .line 135
            aload 0 /* this */
            new sun.java2d.marlin.Stroker$PolyStack
            dup
            aload 1 /* rdrCtx */
            invokespecial sun.java2d.marlin.Stroker$PolyStack.<init>:(Lsun/java2d/marlin/RendererContext;)V
            putfield sun.java2d.marlin.Stroker.reverse:Lsun/java2d/marlin/Stroker$PolyStack;
        11: .line 136
            aload 0 /* this */
            aload 1 /* rdrCtx */
            getfield sun.java2d.marlin.RendererContext.curve:Lsun/java2d/marlin/Curve;
            putfield sun.java2d.marlin.Stroker.curve:Lsun/java2d/marlin/Curve;
        12: .line 137
            return
        end local 1 // sun.java2d.marlin.RendererContext rdrCtx
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   13     0    this  Lsun/java2d/marlin/Stroker;
            0   13     1  rdrCtx  Lsun/java2d/marlin/RendererContext;
    MethodParameters:
        Name  Flags
      rdrCtx  final

  sun.java2d.marlin.Stroker init(sun.awt.geom.PathConsumer2D, float, int, int, float);
    descriptor: (Lsun/awt/geom/PathConsumer2D;FIIF)Lsun/java2d/marlin/Stroker;
    flags: (0x0000) 
    Code:
      stack=4, locals=7, args_size=6
        start local 0 // sun.java2d.marlin.Stroker this
        start local 1 // sun.awt.geom.PathConsumer2D pc2d
        start local 2 // float lineWidth
        start local 3 // int capStyle
        start local 4 // int joinStyle
        start local 5 // float miterLimit
         0: .line 159
            aload 0 /* this */
            aload 1 /* pc2d */
            putfield sun.java2d.marlin.Stroker.out:Lsun/awt/geom/PathConsumer2D;
         1: .line 161
            aload 0 /* this */
            fload 2 /* lineWidth */
            fconst_2
            fdiv
            putfield sun.java2d.marlin.Stroker.lineWidth2:F
         2: .line 162
            aload 0 /* this */
            fconst_1
            fconst_2
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.lineWidth2:F
            fmul
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.lineWidth2:F
            fmul
            fdiv
            putfield sun.java2d.marlin.Stroker.invHalfLineWidth2Sq:F
         3: .line 163
            aload 0 /* this */
            iload 3 /* capStyle */
            putfield sun.java2d.marlin.Stroker.capStyle:I
         4: .line 164
            aload 0 /* this */
            iload 4 /* joinStyle */
            putfield sun.java2d.marlin.Stroker.joinStyle:I
         5: .line 166
            fload 5 /* miterLimit */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.lineWidth2:F
            fmul
            fstore 6 /* limit */
        start local 6 // float limit
         6: .line 167
            aload 0 /* this */
            fload 6 /* limit */
            fload 6 /* limit */
            fmul
            putfield sun.java2d.marlin.Stroker.miterLimitSq:F
         7: .line 169
            aload 0 /* this */
            iconst_2
            putfield sun.java2d.marlin.Stroker.prev:I
         8: .line 171
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.rdrCtx:Lsun/java2d/marlin/RendererContext;
            iconst_1
            putfield sun.java2d.marlin.RendererContext.stroking:I
         9: .line 173
            aload 0 /* this */
            areturn
        end local 6 // float limit
        end local 5 // float miterLimit
        end local 4 // int joinStyle
        end local 3 // int capStyle
        end local 2 // float lineWidth
        end local 1 // sun.awt.geom.PathConsumer2D pc2d
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lsun/java2d/marlin/Stroker;
            0   10     1        pc2d  Lsun/awt/geom/PathConsumer2D;
            0   10     2   lineWidth  F
            0   10     3    capStyle  I
            0   10     4   joinStyle  I
            0   10     5  miterLimit  F
            6   10     6       limit  F
    MethodParameters:
            Name  Flags
      pc2d        
      lineWidth   
      capStyle    
      joinStyle   
      miterLimit  

  void dispose();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.java2d.marlin.Stroker this
         0: .line 181
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.reverse:Lsun/java2d/marlin/Stroker$PolyStack;
            invokevirtual sun.java2d.marlin.Stroker$PolyStack.dispose:()V
         1: .line 194
            return
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/java2d/marlin/Stroker;

  private static void computeOffset(float, float, float, float[]);
    descriptor: (FFF[F)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // float lx
        start local 1 // float ly
        start local 2 // float w
        start local 3 // float[] m
         0: .line 199
            fload 0 /* lx */
            fload 0 /* lx */
            fmul
            fload 1 /* ly */
            fload 1 /* ly */
            fmul
            fadd
            fstore 4 /* len */
        start local 4 // float len
         1: .line 200
            fload 4 /* len */
            fconst_0
            fcmpl
            ifne 5
         2: .line 201
            aload 3 /* m */
            iconst_0
            fconst_0
            fastore
         3: .line 202
            aload 3 /* m */
            iconst_1
            fconst_0
            fastore
         4: .line 203
            goto 8
         5: .line 204
      StackMap locals: float
      StackMap stack:
            fload 4 /* len */
            f2d
            invokestatic java.lang.Math.sqrt:(D)D
            d2f
            fstore 4 /* len */
         6: .line 205
            aload 3 /* m */
            iconst_0
            fload 1 /* ly */
            fload 2 /* w */
            fmul
            fload 4 /* len */
            fdiv
            fastore
         7: .line 206
            aload 3 /* m */
            iconst_1
            fload 0 /* lx */
            fload 2 /* w */
            fmul
            fneg
            fload 4 /* len */
            fdiv
            fastore
         8: .line 208
      StackMap locals:
      StackMap stack:
            return
        end local 4 // float len
        end local 3 // float[] m
        end local 2 // float w
        end local 1 // float ly
        end local 0 // float lx
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0    lx  F
            0    9     1    ly  F
            0    9     2     w  F
            0    9     3     m  [F
            1    9     4   len  F
    MethodParameters:
      Name  Flags
      lx    final
      ly    final
      w     final
      m     final

  private static boolean isCW(float, float, float, float);
    descriptor: (FFFF)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // float dx1
        start local 1 // float dy1
        start local 2 // float dx2
        start local 3 // float dy2
         0: .line 221
            fload 0 /* dx1 */
            fload 3 /* dy2 */
            fmul
            fload 1 /* dy1 */
            fload 2 /* dx2 */
            fmul
            fcmpg
            ifgt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 3 // float dy2
        end local 2 // float dx2
        end local 1 // float dy1
        end local 0 // float dx1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0   dx1  F
            0    2     1   dy1  F
            0    2     2   dx2  F
            0    2     3   dy2  F
    MethodParameters:
      Name  Flags
      dx1   final
      dy1   final
      dx2   final
      dy2   final

  private void drawRoundJoin(float, float, float, float, float, float, boolean, float);
    descriptor: (FFFFFFZF)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=12, args_size=9
        start local 0 // sun.java2d.marlin.Stroker this
        start local 1 // float x
        start local 2 // float y
        start local 3 // float omx
        start local 4 // float omy
        start local 5 // float mx
        start local 6 // float my
        start local 7 // boolean rev
        start local 8 // float threshold
         0: .line 229
            fload 3 /* omx */
            fconst_0
            fcmpl
            ifne 1
            fload 4 /* omy */
            fconst_0
            fcmpl
            ifeq 2
      StackMap locals:
      StackMap stack:
         1: fload 5 /* mx */
            fconst_0
            fcmpl
            ifne 3
            fload 6 /* my */
            fconst_0
            fcmpl
            ifne 3
         2: .line 230
      StackMap locals:
      StackMap stack:
            return
         3: .line 233
      StackMap locals:
      StackMap stack:
            fload 3 /* omx */
            fload 5 /* mx */
            fsub
            fstore 9 /* domx */
        start local 9 // float domx
         4: .line 234
            fload 4 /* omy */
            fload 6 /* my */
            fsub
            fstore 10 /* domy */
        start local 10 // float domy
         5: .line 235
            fload 9 /* domx */
            fload 9 /* domx */
            fmul
            fload 10 /* domy */
            fload 10 /* domy */
            fmul
            fadd
            fstore 11 /* len */
        start local 11 // float len
         6: .line 236
            fload 11 /* len */
            fload 8 /* threshold */
            fcmpg
            ifge 8
         7: .line 237
            return
         8: .line 240
      StackMap locals: float float float
      StackMap stack:
            iload 7 /* rev */
            ifeq 13
         9: .line 241
            fload 3 /* omx */
            fneg
            fstore 3 /* omx */
        10: .line 242
            fload 4 /* omy */
            fneg
            fstore 4 /* omy */
        11: .line 243
            fload 5 /* mx */
            fneg
            fstore 5 /* mx */
        12: .line 244
            fload 6 /* my */
            fneg
            fstore 6 /* my */
        13: .line 246
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            fload 1 /* x */
            fload 2 /* y */
            fload 3 /* omx */
            fload 4 /* omy */
            fload 5 /* mx */
            fload 6 /* my */
            iload 7 /* rev */
            invokevirtual sun.java2d.marlin.Stroker.drawRoundJoin:(FFFFFFZ)V
        14: .line 247
            return
        end local 11 // float len
        end local 10 // float domy
        end local 9 // float domx
        end local 8 // float threshold
        end local 7 // boolean rev
        end local 6 // float my
        end local 5 // float mx
        end local 4 // float omy
        end local 3 // float omx
        end local 2 // float y
        end local 1 // float x
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   15     0       this  Lsun/java2d/marlin/Stroker;
            0   15     1          x  F
            0   15     2          y  F
            0   15     3        omx  F
            0   15     4        omy  F
            0   15     5         mx  F
            0   15     6         my  F
            0   15     7        rev  Z
            0   15     8  threshold  F
            4   15     9       domx  F
            5   15    10       domy  F
            6   15    11        len  F
    MethodParameters:
           Name  Flags
      x          
      y          
      omx        
      omy        
      mx         
      my         
      rev        
      threshold  

  private void drawRoundJoin(float, float, float, float, float, float, boolean);
    descriptor: (FFFFFFZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=16, args_size=8
        start local 0 // sun.java2d.marlin.Stroker this
        start local 1 // float cx
        start local 2 // float cy
        start local 3 // float omx
        start local 4 // float omy
        start local 5 // float mx
        start local 6 // float my
        start local 7 // boolean rev
         0: .line 257
            fload 3 /* omx */
            fload 5 /* mx */
            fmul
            fload 4 /* omy */
            fload 6 /* my */
            fmul
            fadd
            fstore 8 /* cosext */
        start local 8 // float cosext
         1: .line 261
            fload 8 /* cosext */
            fconst_0
            fcmpl
            iflt 2
            iconst_1
            goto 3
      StackMap locals: float
      StackMap stack:
         2: iconst_2
      StackMap locals:
      StackMap stack: int
         3: istore 9 /* numCurves */
        start local 9 // int numCurves
         4: .line 263
            iload 9 /* numCurves */
            tableswitch { // 1 - 2
                    1: 5
                    2: 7
              default: 18
          }
         5: .line 265
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            fload 1 /* cx */
            fload 2 /* cy */
            fload 3 /* omx */
            fload 4 /* omy */
            fload 5 /* mx */
            fload 6 /* my */
            iload 7 /* rev */
            invokevirtual sun.java2d.marlin.Stroker.drawBezApproxForArc:(FFFFFFZ)V
         6: .line 266
            goto 18
         7: .line 282
      StackMap locals:
      StackMap stack:
            fload 6 /* my */
            fload 4 /* omy */
            fsub
            fstore 10 /* nx */
        start local 10 // float nx
         8: fload 3 /* omx */
            fload 5 /* mx */
            fsub
            fstore 11 /* ny */
        start local 11 // float ny
         9: .line 283
            fload 10 /* nx */
            fload 10 /* nx */
            fmul
            fload 11 /* ny */
            fload 11 /* ny */
            fmul
            fadd
            f2d
            invokestatic java.lang.Math.sqrt:(D)D
            d2f
            fstore 12 /* nlen */
        start local 12 // float nlen
        10: .line 284
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.lineWidth2:F
            fload 12 /* nlen */
            fdiv
            fstore 13 /* scale */
        start local 13 // float scale
        11: .line 285
            fload 10 /* nx */
            fload 13 /* scale */
            fmul
            fstore 14 /* mmx */
        start local 14 // float mmx
        12: fload 11 /* ny */
            fload 13 /* scale */
            fmul
            fstore 15 /* mmy */
        start local 15 // float mmy
        13: .line 290
            iload 7 /* rev */
            ifeq 16
        14: .line 291
            fload 14 /* mmx */
            fneg
            fstore 14 /* mmx */
        15: .line 292
            fload 15 /* mmy */
            fneg
            fstore 15 /* mmy */
        16: .line 294
      StackMap locals: sun.java2d.marlin.Stroker float float float float float float int float int float float float float float float
      StackMap stack:
            aload 0 /* this */
            fload 1 /* cx */
            fload 2 /* cy */
            fload 3 /* omx */
            fload 4 /* omy */
            fload 14 /* mmx */
            fload 15 /* mmy */
            iload 7 /* rev */
            invokevirtual sun.java2d.marlin.Stroker.drawBezApproxForArc:(FFFFFFZ)V
        17: .line 295
            aload 0 /* this */
            fload 1 /* cx */
            fload 2 /* cy */
            fload 14 /* mmx */
            fload 15 /* mmy */
            fload 5 /* mx */
            fload 6 /* my */
            iload 7 /* rev */
            invokevirtual sun.java2d.marlin.Stroker.drawBezApproxForArc:(FFFFFFZ)V
        end local 15 // float mmy
        end local 14 // float mmx
        end local 13 // float scale
        end local 12 // float nlen
        end local 11 // float ny
        end local 10 // float nx
        18: .line 299
      StackMap locals: sun.java2d.marlin.Stroker float float float float float float int float int
      StackMap stack:
            return
        end local 9 // int numCurves
        end local 8 // float cosext
        end local 7 // boolean rev
        end local 6 // float my
        end local 5 // float mx
        end local 4 // float omy
        end local 3 // float omx
        end local 2 // float cy
        end local 1 // float cx
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   19     0       this  Lsun/java2d/marlin/Stroker;
            0   19     1         cx  F
            0   19     2         cy  F
            0   19     3        omx  F
            0   19     4        omy  F
            0   19     5         mx  F
            0   19     6         my  F
            0   19     7        rev  Z
            1   19     8     cosext  F
            4   19     9  numCurves  I
            8   18    10         nx  F
            9   18    11         ny  F
           10   18    12       nlen  F
           11   18    13      scale  F
           12   18    14        mmx  F
           13   18    15        mmy  F
    MethodParameters:
      Name  Flags
      cx    
      cy    
      omx   
      omy   
      mx    
      my    
      rev   

  private void drawBezApproxForArc(float, float, float, float, float, float, boolean);
    descriptor: (FFFFFFZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=18, args_size=8
        start local 0 // sun.java2d.marlin.Stroker this
        start local 1 // float cx
        start local 2 // float cy
        start local 3 // float omx
        start local 4 // float omy
        start local 5 // float mx
        start local 6 // float my
        start local 7 // boolean rev
         0: .line 307
            fload 3 /* omx */
            fload 5 /* mx */
            fmul
            fload 4 /* omy */
            fload 6 /* my */
            fmul
            fadd
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.invHalfLineWidth2Sq:F
            fmul
            fstore 8 /* cosext2 */
        start local 8 // float cosext2
         1: .line 311
            fload 8 /* cosext2 */
            ldc 0.5
            fcmpl
            iflt 3
         2: .line 313
            return
         3: .line 321
      StackMap locals: float
      StackMap stack:
            ldc 1.3333333333333333
            ldc 0.5
            fload 8 /* cosext2 */
            f2d
            dsub
            invokestatic java.lang.Math.sqrt:(D)D
            dmul
         4: .line 322
            dconst_1
            fload 8 /* cosext2 */
            f2d
            ldc 0.5
            dadd
            invokestatic java.lang.Math.sqrt:(D)D
            dadd
         5: .line 321
            ddiv
            d2f
            fstore 9 /* cv */
        start local 9 // float cv
         6: .line 324
            iload 7 /* rev */
            ifeq 8
         7: .line 325
            fload 9 /* cv */
            fneg
            fstore 9 /* cv */
         8: .line 327
      StackMap locals: float
      StackMap stack:
            fload 1 /* cx */
            fload 3 /* omx */
            fadd
            fstore 10 /* x1 */
        start local 10 // float x1
         9: .line 328
            fload 2 /* cy */
            fload 4 /* omy */
            fadd
            fstore 11 /* y1 */
        start local 11 // float y1
        10: .line 329
            fload 10 /* x1 */
            fload 9 /* cv */
            fload 4 /* omy */
            fmul
            fsub
            fstore 12 /* x2 */
        start local 12 // float x2
        11: .line 330
            fload 11 /* y1 */
            fload 9 /* cv */
            fload 3 /* omx */
            fmul
            fadd
            fstore 13 /* y2 */
        start local 13 // float y2
        12: .line 332
            fload 1 /* cx */
            fload 5 /* mx */
            fadd
            fstore 14 /* x4 */
        start local 14 // float x4
        13: .line 333
            fload 2 /* cy */
            fload 6 /* my */
            fadd
            fstore 15 /* y4 */
        start local 15 // float y4
        14: .line 334
            fload 14 /* x4 */
            fload 9 /* cv */
            fload 6 /* my */
            fmul
            fadd
            fstore 16 /* x3 */
        start local 16 // float x3
        15: .line 335
            fload 15 /* y4 */
            fload 9 /* cv */
            fload 5 /* mx */
            fmul
            fsub
            fstore 17 /* y3 */
        start local 17 // float y3
        16: .line 337
            aload 0 /* this */
            fload 10 /* x1 */
            fload 11 /* y1 */
            fload 12 /* x2 */
            fload 13 /* y2 */
            fload 16 /* x3 */
            fload 17 /* y3 */
            fload 14 /* x4 */
            fload 15 /* y4 */
            iload 7 /* rev */
            invokevirtual sun.java2d.marlin.Stroker.emitCurveTo:(FFFFFFFFZ)V
        17: .line 338
            return
        end local 17 // float y3
        end local 16 // float x3
        end local 15 // float y4
        end local 14 // float x4
        end local 13 // float y2
        end local 12 // float x2
        end local 11 // float y1
        end local 10 // float x1
        end local 9 // float cv
        end local 8 // float cosext2
        end local 7 // boolean rev
        end local 6 // float my
        end local 5 // float mx
        end local 4 // float omy
        end local 3 // float omx
        end local 2 // float cy
        end local 1 // float cx
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   18     0     this  Lsun/java2d/marlin/Stroker;
            0   18     1       cx  F
            0   18     2       cy  F
            0   18     3      omx  F
            0   18     4      omy  F
            0   18     5       mx  F
            0   18     6       my  F
            0   18     7      rev  Z
            1   18     8  cosext2  F
            6   18     9       cv  F
            9   18    10       x1  F
           10   18    11       y1  F
           11   18    12       x2  F
           12   18    13       y2  F
           13   18    14       x4  F
           14   18    15       y4  F
           15   18    16       x3  F
           16   18    17       y3  F
    MethodParameters:
      Name  Flags
      cx    final
      cy    final
      omx   final
      omy   final
      mx    final
      my    final
      rev   

  private void drawRoundCap(float, float, float, float);
    descriptor: (FFFF)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=5, args_size=5
        start local 0 // sun.java2d.marlin.Stroker this
        start local 1 // float cx
        start local 2 // float cy
        start local 3 // float mx
        start local 4 // float my
         0: .line 346
            aload 0 /* this */
            fload 1 /* cx */
            fload 3 /* mx */
            fadd
            ldc 0.5522848
            fload 4 /* my */
            fmul
            fsub
            fload 2 /* cy */
            fload 4 /* my */
            fadd
            ldc 0.5522848
            fload 3 /* mx */
            fmul
            fadd
         1: .line 347
            fload 1 /* cx */
            fload 4 /* my */
            fsub
            ldc 0.5522848
            fload 3 /* mx */
            fmul
            fadd
            fload 2 /* cy */
            fload 3 /* mx */
            fadd
            ldc 0.5522848
            fload 4 /* my */
            fmul
            fadd
         2: .line 348
            fload 1 /* cx */
            fload 4 /* my */
            fsub
            fload 2 /* cy */
            fload 3 /* mx */
            fadd
         3: .line 346
            invokevirtual sun.java2d.marlin.Stroker.emitCurveTo:(FFFFFF)V
         4: .line 349
            aload 0 /* this */
            fload 1 /* cx */
            fload 4 /* my */
            fsub
            ldc 0.5522848
            fload 3 /* mx */
            fmul
            fsub
            fload 2 /* cy */
            fload 3 /* mx */
            fadd
            ldc 0.5522848
            fload 4 /* my */
            fmul
            fsub
         5: .line 350
            fload 1 /* cx */
            fload 3 /* mx */
            fsub
            ldc 0.5522848
            fload 4 /* my */
            fmul
            fsub
            fload 2 /* cy */
            fload 4 /* my */
            fsub
            ldc 0.5522848
            fload 3 /* mx */
            fmul
            fadd
         6: .line 351
            fload 1 /* cx */
            fload 3 /* mx */
            fsub
            fload 2 /* cy */
            fload 4 /* my */
            fsub
         7: .line 349
            invokevirtual sun.java2d.marlin.Stroker.emitCurveTo:(FFFFFF)V
         8: .line 352
            return
        end local 4 // float my
        end local 3 // float mx
        end local 2 // float cy
        end local 1 // float cx
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lsun/java2d/marlin/Stroker;
            0    9     1    cx  F
            0    9     2    cy  F
            0    9     3    mx  F
            0    9     4    my  F
    MethodParameters:
      Name  Flags
      cx    
      cy    
      mx    
      my    

  private static void computeIntersection(float, float, float, float, float, float, float, float, float[], int);
    descriptor: (FFFFFFFF[FI)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=16, args_size=10
        start local 0 // float x0
        start local 1 // float y0
        start local 2 // float x1
        start local 3 // float y1
        start local 4 // float x0p
        start local 5 // float y0p
        start local 6 // float x1p
        start local 7 // float y1p
        start local 8 // float[] m
        start local 9 // int off
         0: .line 363
            fload 2 /* x1 */
            fload 0 /* x0 */
            fsub
            fstore 10 /* x10 */
        start local 10 // float x10
         1: .line 364
            fload 3 /* y1 */
            fload 1 /* y0 */
            fsub
            fstore 11 /* y10 */
        start local 11 // float y10
         2: .line 365
            fload 6 /* x1p */
            fload 4 /* x0p */
            fsub
            fstore 12 /* x10p */
        start local 12 // float x10p
         3: .line 366
            fload 7 /* y1p */
            fload 5 /* y0p */
            fsub
            fstore 13 /* y10p */
        start local 13 // float y10p
         4: .line 368
            fload 10 /* x10 */
            fload 13 /* y10p */
            fmul
            fload 12 /* x10p */
            fload 11 /* y10 */
            fmul
            fsub
            fstore 14 /* den */
        start local 14 // float den
         5: .line 369
            fload 12 /* x10p */
            fload 1 /* y0 */
            fload 5 /* y0p */
            fsub
            fmul
            fload 13 /* y10p */
            fload 0 /* x0 */
            fload 4 /* x0p */
            fsub
            fmul
            fsub
            fstore 15 /* t */
        start local 15 // float t
         6: .line 370
            fload 15 /* t */
            fload 14 /* den */
            fdiv
            fstore 15 /* t */
         7: .line 371
            aload 8 /* m */
            iload 9 /* off */
            iinc 9 /* off */ 1
            fload 0 /* x0 */
            fload 15 /* t */
            fload 10 /* x10 */
            fmul
            fadd
            fastore
         8: .line 372
            aload 8 /* m */
            iload 9 /* off */
            fload 1 /* y0 */
            fload 15 /* t */
            fload 11 /* y10 */
            fmul
            fadd
            fastore
         9: .line 373
            return
        end local 15 // float t
        end local 14 // float den
        end local 13 // float y10p
        end local 12 // float x10p
        end local 11 // float y10
        end local 10 // float x10
        end local 9 // int off
        end local 8 // float[] m
        end local 7 // float y1p
        end local 6 // float x1p
        end local 5 // float y0p
        end local 4 // float x0p
        end local 3 // float y1
        end local 2 // float x1
        end local 1 // float y0
        end local 0 // float x0
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0    x0  F
            0   10     1    y0  F
            0   10     2    x1  F
            0   10     3    y1  F
            0   10     4   x0p  F
            0   10     5   y0p  F
            0   10     6   x1p  F
            0   10     7   y1p  F
            0   10     8     m  [F
            0   10     9   off  I
            1   10    10   x10  F
            2   10    11   y10  F
            3   10    12  x10p  F
            4   10    13  y10p  F
            5   10    14   den  F
            6   10    15     t  F
    MethodParameters:
      Name  Flags
      x0    final
      y0    final
      x1    final
      y1    final
      x0p   final
      y0p   final
      x1p   final
      y1p   final
      m     final
      off   

  private void drawMiter(float, float, float, float, float, float, float, float, float, float, boolean);
    descriptor: (FFFFFFFFFFZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=15, args_size=12
        start local 0 // sun.java2d.marlin.Stroker this
        start local 1 // float pdx
        start local 2 // float pdy
        start local 3 // float x0
        start local 4 // float y0
        start local 5 // float dx
        start local 6 // float dy
        start local 7 // float omx
        start local 8 // float omy
        start local 9 // float mx
        start local 10 // float my
        start local 11 // boolean rev
         0: .line 381
            fload 9 /* mx */
            fload 7 /* omx */
            fcmpl
            ifne 1
            fload 10 /* my */
            fload 8 /* omy */
            fcmpl
            ifeq 3
         1: .line 382
      StackMap locals:
      StackMap stack:
            fload 1 /* pdx */
            fconst_0
            fcmpl
            ifne 2
            fload 2 /* pdy */
            fconst_0
            fcmpl
            ifeq 3
         2: .line 383
      StackMap locals:
      StackMap stack:
            fload 5 /* dx */
            fconst_0
            fcmpl
            ifne 4
            fload 6 /* dy */
            fconst_0
            fcmpl
            ifne 4
         3: .line 385
      StackMap locals:
      StackMap stack:
            return
         4: .line 388
      StackMap locals:
      StackMap stack:
            iload 11 /* rev */
            ifeq 9
         5: .line 389
            fload 7 /* omx */
            fneg
            fstore 7 /* omx */
         6: .line 390
            fload 8 /* omy */
            fneg
            fstore 8 /* omy */
         7: .line 391
            fload 9 /* mx */
            fneg
            fstore 9 /* mx */
         8: .line 392
            fload 10 /* my */
            fneg
            fstore 10 /* my */
         9: .line 395
      StackMap locals:
      StackMap stack:
            fload 3 /* x0 */
            fload 1 /* pdx */
            fsub
            fload 7 /* omx */
            fadd
            fload 4 /* y0 */
            fload 2 /* pdy */
            fsub
            fload 8 /* omy */
            fadd
            fload 3 /* x0 */
            fload 7 /* omx */
            fadd
            fload 4 /* y0 */
            fload 8 /* omy */
            fadd
        10: .line 396
            fload 5 /* dx */
            fload 3 /* x0 */
            fadd
            fload 9 /* mx */
            fadd
            fload 6 /* dy */
            fload 4 /* y0 */
            fadd
            fload 10 /* my */
            fadd
            fload 3 /* x0 */
            fload 9 /* mx */
            fadd
            fload 4 /* y0 */
            fload 10 /* my */
            fadd
        11: .line 397
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.miter:[F
            iconst_0
        12: .line 395
            invokestatic sun.java2d.marlin.Stroker.computeIntersection:(FFFFFFFF[FI)V
        13: .line 399
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.miter:[F
            iconst_0
            faload
            fstore 12 /* miterX */
        start local 12 // float miterX
        14: .line 400
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.miter:[F
            iconst_1
            faload
            fstore 13 /* miterY */
        start local 13 // float miterY
        15: .line 401
            fload 12 /* miterX */
            fload 3 /* x0 */
            fsub
            fload 12 /* miterX */
            fload 3 /* x0 */
            fsub
            fmul
            fload 13 /* miterY */
            fload 4 /* y0 */
            fsub
            fload 13 /* miterY */
            fload 4 /* y0 */
            fsub
            fmul
            fadd
            fstore 14 /* lenSq */
        start local 14 // float lenSq
        16: .line 408
            fload 14 /* lenSq */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.miterLimitSq:F
            fcmpg
            ifge 18
        17: .line 409
            aload 0 /* this */
            fload 12 /* miterX */
            fload 13 /* miterY */
            iload 11 /* rev */
            invokevirtual sun.java2d.marlin.Stroker.emitLineTo:(FFZ)V
        18: .line 411
      StackMap locals: float float float
      StackMap stack:
            return
        end local 14 // float lenSq
        end local 13 // float miterY
        end local 12 // float miterX
        end local 11 // boolean rev
        end local 10 // float my
        end local 9 // float mx
        end local 8 // float omy
        end local 7 // float omx
        end local 6 // float dy
        end local 5 // float dx
        end local 4 // float y0
        end local 3 // float x0
        end local 2 // float pdy
        end local 1 // float pdx
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   19     0    this  Lsun/java2d/marlin/Stroker;
            0   19     1     pdx  F
            0   19     2     pdy  F
            0   19     3      x0  F
            0   19     4      y0  F
            0   19     5      dx  F
            0   19     6      dy  F
            0   19     7     omx  F
            0   19     8     omy  F
            0   19     9      mx  F
            0   19    10      my  F
            0   19    11     rev  Z
           14   19    12  miterX  F
           15   19    13  miterY  F
           16   19    14   lenSq  F
    MethodParameters:
      Name  Flags
      pdx   final
      pdy   final
      x0    final
      y0    final
      dx    final
      dy    final
      omx   
      omy   
      mx    
      my    
      rev   

  public void moveTo(float, float);
    descriptor: (FF)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // sun.java2d.marlin.Stroker this
        start local 1 // float x0
        start local 2 // float y0
         0: .line 415
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.prev:I
            iconst_1
            if_icmpne 2
         1: .line 416
            aload 0 /* this */
            invokevirtual sun.java2d.marlin.Stroker.finish:()V
         2: .line 418
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            fload 1 /* x0 */
            dup_x1
            putfield sun.java2d.marlin.Stroker.cx0:F
            putfield sun.java2d.marlin.Stroker.sx0:F
         3: .line 419
            aload 0 /* this */
            aload 0 /* this */
            fload 2 /* y0 */
            dup_x1
            putfield sun.java2d.marlin.Stroker.cy0:F
            putfield sun.java2d.marlin.Stroker.sy0:F
         4: .line 420
            aload 0 /* this */
            aload 0 /* this */
            fconst_1
            dup_x1
            putfield sun.java2d.marlin.Stroker.sdx:F
            putfield sun.java2d.marlin.Stroker.cdx:F
         5: .line 421
            aload 0 /* this */
            aload 0 /* this */
            fconst_0
            dup_x1
            putfield sun.java2d.marlin.Stroker.sdy:F
            putfield sun.java2d.marlin.Stroker.cdy:F
         6: .line 422
            aload 0 /* this */
            iconst_0
            putfield sun.java2d.marlin.Stroker.prev:I
         7: .line 423
            return
        end local 2 // float y0
        end local 1 // float x0
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lsun/java2d/marlin/Stroker;
            0    8     1    x0  F
            0    8     2    y0  F
    MethodParameters:
      Name  Flags
      x0    
      y0    

  public void lineTo(float, float);
    descriptor: (FF)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=11, locals=7, args_size=3
        start local 0 // sun.java2d.marlin.Stroker this
        start local 1 // float x1
        start local 2 // float y1
         0: .line 427
            fload 1 /* x1 */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cx0:F
            fsub
            fstore 3 /* dx */
        start local 3 // float dx
         1: .line 428
            fload 2 /* y1 */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cy0:F
            fsub
            fstore 4 /* dy */
        start local 4 // float dy
         2: .line 429
            fload 3 /* dx */
            fconst_0
            fcmpl
            ifne 4
            fload 4 /* dy */
            fconst_0
            fcmpl
            ifne 4
         3: .line 430
            fconst_1
            fstore 3 /* dx */
         4: .line 432
      StackMap locals: float float
      StackMap stack:
            fload 3 /* dx */
            fload 4 /* dy */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.lineWidth2:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset0:[F
            invokestatic sun.java2d.marlin.Stroker.computeOffset:(FFF[F)V
         5: .line 433
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset0:[F
            iconst_0
            faload
            fstore 5 /* mx */
        start local 5 // float mx
         6: .line 434
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset0:[F
            iconst_1
            faload
            fstore 6 /* my */
        start local 6 // float my
         7: .line 436
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cdx:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cdy:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cx0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cy0:F
            fload 3 /* dx */
            fload 4 /* dy */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cmx:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cmy:F
            fload 5 /* mx */
            fload 6 /* my */
            invokevirtual sun.java2d.marlin.Stroker.drawJoin:(FFFFFFFFFF)V
         8: .line 438
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cx0:F
            fload 5 /* mx */
            fadd
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cy0:F
            fload 6 /* my */
            fadd
            invokevirtual sun.java2d.marlin.Stroker.emitLineTo:(FF)V
         9: .line 439
            aload 0 /* this */
            fload 1 /* x1 */
            fload 5 /* mx */
            fadd
            fload 2 /* y1 */
            fload 6 /* my */
            fadd
            invokevirtual sun.java2d.marlin.Stroker.emitLineTo:(FF)V
        10: .line 441
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cx0:F
            fload 5 /* mx */
            fsub
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cy0:F
            fload 6 /* my */
            fsub
            invokevirtual sun.java2d.marlin.Stroker.emitLineToRev:(FF)V
        11: .line 442
            aload 0 /* this */
            fload 1 /* x1 */
            fload 5 /* mx */
            fsub
            fload 2 /* y1 */
            fload 6 /* my */
            fsub
            invokevirtual sun.java2d.marlin.Stroker.emitLineToRev:(FF)V
        12: .line 444
            aload 0 /* this */
            fload 5 /* mx */
            putfield sun.java2d.marlin.Stroker.cmx:F
        13: .line 445
            aload 0 /* this */
            fload 6 /* my */
            putfield sun.java2d.marlin.Stroker.cmy:F
        14: .line 446
            aload 0 /* this */
            fload 3 /* dx */
            putfield sun.java2d.marlin.Stroker.cdx:F
        15: .line 447
            aload 0 /* this */
            fload 4 /* dy */
            putfield sun.java2d.marlin.Stroker.cdy:F
        16: .line 448
            aload 0 /* this */
            fload 1 /* x1 */
            putfield sun.java2d.marlin.Stroker.cx0:F
        17: .line 449
            aload 0 /* this */
            fload 2 /* y1 */
            putfield sun.java2d.marlin.Stroker.cy0:F
        18: .line 450
            aload 0 /* this */
            iconst_1
            putfield sun.java2d.marlin.Stroker.prev:I
        19: .line 451
            return
        end local 6 // float my
        end local 5 // float mx
        end local 4 // float dy
        end local 3 // float dx
        end local 2 // float y1
        end local 1 // float x1
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   20     0  this  Lsun/java2d/marlin/Stroker;
            0   20     1    x1  F
            0   20     2    y1  F
            1   20     3    dx  F
            2   20     4    dy  F
            6   20     5    mx  F
            7   20     6    my  F
    MethodParameters:
      Name  Flags
      x1    
      y1    

  public void closePath();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=11, locals=1, args_size=1
        start local 0 // sun.java2d.marlin.Stroker this
         0: .line 455
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.prev:I
            iconst_1
            if_icmpeq 10
         1: .line 456
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.prev:I
            iconst_2
            if_icmpne 3
         2: .line 457
            return
         3: .line 459
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cx0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cy0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.lineWidth2:F
            fsub
            invokevirtual sun.java2d.marlin.Stroker.emitMoveTo:(FF)V
         4: .line 460
            aload 0 /* this */
            aload 0 /* this */
            fconst_0
            dup_x1
            putfield sun.java2d.marlin.Stroker.smx:F
            putfield sun.java2d.marlin.Stroker.cmx:F
         5: .line 461
            aload 0 /* this */
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.lineWidth2:F
            fneg
            dup_x1
            putfield sun.java2d.marlin.Stroker.smy:F
            putfield sun.java2d.marlin.Stroker.cmy:F
         6: .line 462
            aload 0 /* this */
            aload 0 /* this */
            fconst_1
            dup_x1
            putfield sun.java2d.marlin.Stroker.sdx:F
            putfield sun.java2d.marlin.Stroker.cdx:F
         7: .line 463
            aload 0 /* this */
            aload 0 /* this */
            fconst_0
            dup_x1
            putfield sun.java2d.marlin.Stroker.sdy:F
            putfield sun.java2d.marlin.Stroker.cdy:F
         8: .line 464
            aload 0 /* this */
            invokevirtual sun.java2d.marlin.Stroker.finish:()V
         9: .line 465
            return
        10: .line 468
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cx0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.sx0:F
            fcmpl
            ifne 11
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cy0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.sy0:F
            fcmpl
            ifeq 12
        11: .line 469
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.sx0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.sy0:F
            invokevirtual sun.java2d.marlin.Stroker.lineTo:(FF)V
        12: .line 472
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cdx:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cdy:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cx0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cy0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.sdx:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.sdy:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cmx:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cmy:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.smx:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.smy:F
            invokevirtual sun.java2d.marlin.Stroker.drawJoin:(FFFFFFFFFF)V
        13: .line 474
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.sx0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.smx:F
            fadd
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.sy0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.smy:F
            fadd
            invokevirtual sun.java2d.marlin.Stroker.emitLineTo:(FF)V
        14: .line 476
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.sx0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.smx:F
            fsub
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.sy0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.smy:F
            fsub
            invokevirtual sun.java2d.marlin.Stroker.emitMoveTo:(FF)V
        15: .line 477
            aload 0 /* this */
            invokevirtual sun.java2d.marlin.Stroker.emitReverse:()V
        16: .line 479
            aload 0 /* this */
            iconst_2
            putfield sun.java2d.marlin.Stroker.prev:I
        17: .line 480
            aload 0 /* this */
            invokevirtual sun.java2d.marlin.Stroker.emitClose:()V
        18: .line 481
            return
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   19     0  this  Lsun/java2d/marlin/Stroker;

  private void emitReverse();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.java2d.marlin.Stroker this
         0: .line 484
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.reverse:Lsun/java2d/marlin/Stroker$PolyStack;
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.out:Lsun/awt/geom/PathConsumer2D;
            invokevirtual sun.java2d.marlin.Stroker$PolyStack.popAll:(Lsun/awt/geom/PathConsumer2D;)V
         1: .line 485
            return
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/java2d/marlin/Stroker;

  public void pathDone();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.java2d.marlin.Stroker this
         0: .line 489
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.prev:I
            iconst_1
            if_icmpne 2
         1: .line 490
            aload 0 /* this */
            invokevirtual sun.java2d.marlin.Stroker.finish:()V
         2: .line 493
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.out:Lsun/awt/geom/PathConsumer2D;
            invokeinterface sun.awt.geom.PathConsumer2D.pathDone:()V
         3: .line 497
            aload 0 /* this */
            iconst_2
            putfield sun.java2d.marlin.Stroker.prev:I
         4: .line 500
            aload 0 /* this */
            invokevirtual sun.java2d.marlin.Stroker.dispose:()V
         5: .line 501
            return
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lsun/java2d/marlin/Stroker;

  private void finish();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // sun.java2d.marlin.Stroker this
         0: .line 504
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.capStyle:I
            iconst_1
            if_icmpne 3
         1: .line 505
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cx0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cy0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cmx:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cmy:F
            invokevirtual sun.java2d.marlin.Stroker.drawRoundCap:(FFFF)V
         2: .line 506
            goto 6
      StackMap locals:
      StackMap stack:
         3: aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.capStyle:I
            iconst_2
            if_icmpne 6
         4: .line 507
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cx0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cmy:F
            fsub
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cmx:F
            fadd
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cy0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cmx:F
            fadd
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cmy:F
            fadd
            invokevirtual sun.java2d.marlin.Stroker.emitLineTo:(FF)V
         5: .line 508
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cx0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cmy:F
            fsub
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cmx:F
            fsub
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cy0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cmx:F
            fadd
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cmy:F
            fsub
            invokevirtual sun.java2d.marlin.Stroker.emitLineTo:(FF)V
         6: .line 511
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.java2d.marlin.Stroker.emitReverse:()V
         7: .line 513
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.capStyle:I
            iconst_1
            if_icmpne 10
         8: .line 514
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.sx0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.sy0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.smx:F
            fneg
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.smy:F
            fneg
            invokevirtual sun.java2d.marlin.Stroker.drawRoundCap:(FFFF)V
         9: .line 515
            goto 13
      StackMap locals:
      StackMap stack:
        10: aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.capStyle:I
            iconst_2
            if_icmpne 13
        11: .line 516
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.sx0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.smy:F
            fadd
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.smx:F
            fsub
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.sy0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.smx:F
            fsub
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.smy:F
            fsub
            invokevirtual sun.java2d.marlin.Stroker.emitLineTo:(FF)V
        12: .line 517
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.sx0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.smy:F
            fadd
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.smx:F
            fadd
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.sy0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.smx:F
            fsub
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.smy:F
            fadd
            invokevirtual sun.java2d.marlin.Stroker.emitLineTo:(FF)V
        13: .line 520
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.java2d.marlin.Stroker.emitClose:()V
        14: .line 521
            return
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0  this  Lsun/java2d/marlin/Stroker;

  private void emitMoveTo(float, float);
    descriptor: (FF)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // sun.java2d.marlin.Stroker this
        start local 1 // float x0
        start local 2 // float y0
         0: .line 524
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.out:Lsun/awt/geom/PathConsumer2D;
            fload 1 /* x0 */
            fload 2 /* y0 */
            invokeinterface sun.awt.geom.PathConsumer2D.moveTo:(FF)V
         1: .line 525
            return
        end local 2 // float y0
        end local 1 // float x0
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/java2d/marlin/Stroker;
            0    2     1    x0  F
            0    2     2    y0  F
    MethodParameters:
      Name  Flags
      x0    final
      y0    final

  private void emitLineTo(float, float);
    descriptor: (FF)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // sun.java2d.marlin.Stroker this
        start local 1 // float x1
        start local 2 // float y1
         0: .line 528
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.out:Lsun/awt/geom/PathConsumer2D;
            fload 1 /* x1 */
            fload 2 /* y1 */
            invokeinterface sun.awt.geom.PathConsumer2D.lineTo:(FF)V
         1: .line 529
            return
        end local 2 // float y1
        end local 1 // float x1
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/java2d/marlin/Stroker;
            0    2     1    x1  F
            0    2     2    y1  F
    MethodParameters:
      Name  Flags
      x1    final
      y1    final

  private void emitLineToRev(float, float);
    descriptor: (FF)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // sun.java2d.marlin.Stroker this
        start local 1 // float x1
        start local 2 // float y1
         0: .line 532
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.reverse:Lsun/java2d/marlin/Stroker$PolyStack;
            fload 1 /* x1 */
            fload 2 /* y1 */
            invokevirtual sun.java2d.marlin.Stroker$PolyStack.pushLine:(FF)V
         1: .line 533
            return
        end local 2 // float y1
        end local 1 // float x1
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/java2d/marlin/Stroker;
            0    2     1    x1  F
            0    2     2    y1  F
    MethodParameters:
      Name  Flags
      x1    final
      y1    final

  private void emitLineTo(float, float, boolean);
    descriptor: (FFZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // sun.java2d.marlin.Stroker this
        start local 1 // float x1
        start local 2 // float y1
        start local 3 // boolean rev
         0: .line 538
            iload 3 /* rev */
            ifeq 3
         1: .line 539
            aload 0 /* this */
            fload 1 /* x1 */
            fload 2 /* y1 */
            invokevirtual sun.java2d.marlin.Stroker.emitLineToRev:(FF)V
         2: .line 540
            goto 4
         3: .line 541
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            fload 1 /* x1 */
            fload 2 /* y1 */
            invokevirtual sun.java2d.marlin.Stroker.emitLineTo:(FF)V
         4: .line 543
      StackMap locals:
      StackMap stack:
            return
        end local 3 // boolean rev
        end local 2 // float y1
        end local 1 // float x1
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lsun/java2d/marlin/Stroker;
            0    5     1    x1  F
            0    5     2    y1  F
            0    5     3   rev  Z
    MethodParameters:
      Name  Flags
      x1    final
      y1    final
      rev   final

  private void emitQuadTo(float, float, float, float);
    descriptor: (FFFF)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // sun.java2d.marlin.Stroker this
        start local 1 // float x1
        start local 2 // float y1
        start local 3 // float x2
        start local 4 // float y2
         0: .line 548
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.out:Lsun/awt/geom/PathConsumer2D;
            fload 1 /* x1 */
            fload 2 /* y1 */
            fload 3 /* x2 */
            fload 4 /* y2 */
            invokeinterface sun.awt.geom.PathConsumer2D.quadTo:(FFFF)V
         1: .line 549
            return
        end local 4 // float y2
        end local 3 // float x2
        end local 2 // float y1
        end local 1 // float x1
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/java2d/marlin/Stroker;
            0    2     1    x1  F
            0    2     2    y1  F
            0    2     3    x2  F
            0    2     4    y2  F
    MethodParameters:
      Name  Flags
      x1    final
      y1    final
      x2    final
      y2    final

  private void emitQuadToRev(float, float, float, float);
    descriptor: (FFFF)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // sun.java2d.marlin.Stroker this
        start local 1 // float x0
        start local 2 // float y0
        start local 3 // float x1
        start local 4 // float y1
         0: .line 554
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.reverse:Lsun/java2d/marlin/Stroker$PolyStack;
            fload 1 /* x0 */
            fload 2 /* y0 */
            fload 3 /* x1 */
            fload 4 /* y1 */
            invokevirtual sun.java2d.marlin.Stroker$PolyStack.pushQuad:(FFFF)V
         1: .line 555
            return
        end local 4 // float y1
        end local 3 // float x1
        end local 2 // float y0
        end local 1 // float x0
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/java2d/marlin/Stroker;
            0    2     1    x0  F
            0    2     2    y0  F
            0    2     3    x1  F
            0    2     4    y1  F
    MethodParameters:
      Name  Flags
      x0    final
      y0    final
      x1    final
      y1    final

  private void emitCurveTo(float, float, float, float, float, float);
    descriptor: (FFFFFF)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=7, args_size=7
        start local 0 // sun.java2d.marlin.Stroker this
        start local 1 // float x1
        start local 2 // float y1
        start local 3 // float x2
        start local 4 // float y2
        start local 5 // float x3
        start local 6 // float y3
         0: .line 561
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.out:Lsun/awt/geom/PathConsumer2D;
            fload 1 /* x1 */
            fload 2 /* y1 */
            fload 3 /* x2 */
            fload 4 /* y2 */
            fload 5 /* x3 */
            fload 6 /* y3 */
            invokeinterface sun.awt.geom.PathConsumer2D.curveTo:(FFFFFF)V
         1: .line 562
            return
        end local 6 // float y3
        end local 5 // float x3
        end local 4 // float y2
        end local 3 // float x2
        end local 2 // float y1
        end local 1 // float x1
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/java2d/marlin/Stroker;
            0    2     1    x1  F
            0    2     2    y1  F
            0    2     3    x2  F
            0    2     4    y2  F
            0    2     5    x3  F
            0    2     6    y3  F
    MethodParameters:
      Name  Flags
      x1    final
      y1    final
      x2    final
      y2    final
      x3    final
      y3    final

  private void emitCurveToRev(float, float, float, float, float, float);
    descriptor: (FFFFFF)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=7, args_size=7
        start local 0 // sun.java2d.marlin.Stroker this
        start local 1 // float x0
        start local 2 // float y0
        start local 3 // float x1
        start local 4 // float y1
        start local 5 // float x2
        start local 6 // float y2
         0: .line 568
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.reverse:Lsun/java2d/marlin/Stroker$PolyStack;
            fload 1 /* x0 */
            fload 2 /* y0 */
            fload 3 /* x1 */
            fload 4 /* y1 */
            fload 5 /* x2 */
            fload 6 /* y2 */
            invokevirtual sun.java2d.marlin.Stroker$PolyStack.pushCubic:(FFFFFF)V
         1: .line 569
            return
        end local 6 // float y2
        end local 5 // float x2
        end local 4 // float y1
        end local 3 // float x1
        end local 2 // float y0
        end local 1 // float x0
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/java2d/marlin/Stroker;
            0    2     1    x0  F
            0    2     2    y0  F
            0    2     3    x1  F
            0    2     4    y1  F
            0    2     5    x2  F
            0    2     6    y2  F
    MethodParameters:
      Name  Flags
      x0    final
      y0    final
      x1    final
      y1    final
      x2    final
      y2    final

  private void emitCurveTo(float, float, float, float, float, float, float, float, boolean);
    descriptor: (FFFFFFFFZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=10, args_size=10
        start local 0 // sun.java2d.marlin.Stroker this
        start local 1 // float x0
        start local 2 // float y0
        start local 3 // float x1
        start local 4 // float y1
        start local 5 // float x2
        start local 6 // float y2
        start local 7 // float x3
        start local 8 // float y3
        start local 9 // boolean rev
         0: .line 576
            iload 9 /* rev */
            ifeq 3
         1: .line 577
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.reverse:Lsun/java2d/marlin/Stroker$PolyStack;
            fload 1 /* x0 */
            fload 2 /* y0 */
            fload 3 /* x1 */
            fload 4 /* y1 */
            fload 5 /* x2 */
            fload 6 /* y2 */
            invokevirtual sun.java2d.marlin.Stroker$PolyStack.pushCubic:(FFFFFF)V
         2: .line 578
            goto 4
         3: .line 579
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.out:Lsun/awt/geom/PathConsumer2D;
            fload 3 /* x1 */
            fload 4 /* y1 */
            fload 5 /* x2 */
            fload 6 /* y2 */
            fload 7 /* x3 */
            fload 8 /* y3 */
            invokeinterface sun.awt.geom.PathConsumer2D.curveTo:(FFFFFF)V
         4: .line 581
      StackMap locals:
      StackMap stack:
            return
        end local 9 // boolean rev
        end local 8 // float y3
        end local 7 // float x3
        end local 6 // float y2
        end local 5 // float x2
        end local 4 // float y1
        end local 3 // float x1
        end local 2 // float y0
        end local 1 // float x0
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lsun/java2d/marlin/Stroker;
            0    5     1    x0  F
            0    5     2    y0  F
            0    5     3    x1  F
            0    5     4    y1  F
            0    5     5    x2  F
            0    5     6    y2  F
            0    5     7    x3  F
            0    5     8    y3  F
            0    5     9   rev  Z
    MethodParameters:
      Name  Flags
      x0    final
      y0    final
      x1    final
      y1    final
      x2    final
      y2    final
      x3    final
      y3    final
      rev   final

  private void emitClose();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.java2d.marlin.Stroker this
         0: .line 584
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.out:Lsun/awt/geom/PathConsumer2D;
            invokeinterface sun.awt.geom.PathConsumer2D.closePath:()V
         1: .line 585
            return
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/java2d/marlin/Stroker;

  private void drawJoin(float, float, float, float, float, float, float, float, float, float);
    descriptor: (FFFFFFFFFF)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=12, locals=12, args_size=11
        start local 0 // sun.java2d.marlin.Stroker this
        start local 1 // float pdx
        start local 2 // float pdy
        start local 3 // float x0
        start local 4 // float y0
        start local 5 // float dx
        start local 6 // float dy
        start local 7 // float omx
        start local 8 // float omy
        start local 9 // float mx
        start local 10 // float my
         0: .line 593
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.prev:I
            iconst_1
            if_icmpeq 7
         1: .line 594
            aload 0 /* this */
            fload 3 /* x0 */
            fload 9 /* mx */
            fadd
            fload 4 /* y0 */
            fload 10 /* my */
            fadd
            invokevirtual sun.java2d.marlin.Stroker.emitMoveTo:(FF)V
         2: .line 595
            aload 0 /* this */
            fload 5 /* dx */
            putfield sun.java2d.marlin.Stroker.sdx:F
         3: .line 596
            aload 0 /* this */
            fload 6 /* dy */
            putfield sun.java2d.marlin.Stroker.sdy:F
         4: .line 597
            aload 0 /* this */
            fload 9 /* mx */
            putfield sun.java2d.marlin.Stroker.smx:F
         5: .line 598
            aload 0 /* this */
            fload 10 /* my */
            putfield sun.java2d.marlin.Stroker.smy:F
         6: .line 599
            goto 20
         7: .line 600
      StackMap locals:
      StackMap stack:
            fload 1 /* pdx */
            fload 2 /* pdy */
            fload 5 /* dx */
            fload 6 /* dy */
            invokestatic sun.java2d.marlin.Stroker.isCW:(FFFF)Z
            istore 11 /* cw */
        start local 11 // boolean cw
         8: .line 601
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.joinStyle:I
            ifne 11
         9: .line 602
            aload 0 /* this */
            fload 1 /* pdx */
            fload 2 /* pdy */
            fload 3 /* x0 */
            fload 4 /* y0 */
            fload 5 /* dx */
            fload 6 /* dy */
            fload 7 /* omx */
            fload 8 /* omy */
            fload 9 /* mx */
            fload 10 /* my */
            iload 11 /* cw */
            invokevirtual sun.java2d.marlin.Stroker.drawMiter:(FFFFFFFFFFZ)V
        10: .line 603
            goto 17
      StackMap locals: int
      StackMap stack:
        11: aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.joinStyle:I
            iconst_1
            if_icmpne 17
        12: .line 604
            aload 0 /* this */
            fload 3 /* x0 */
            fload 4 /* y0 */
        13: .line 605
            fload 7 /* omx */
            fload 8 /* omy */
        14: .line 606
            fload 9 /* mx */
            fload 10 /* my */
            iload 11 /* cw */
        15: .line 607
            ldc 0.015258789
        16: .line 604
            invokevirtual sun.java2d.marlin.Stroker.drawRoundJoin:(FFFFFFZF)V
        17: .line 609
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            fload 3 /* x0 */
            fload 4 /* y0 */
            iload 11 /* cw */
            ifeq 18
            iconst_0
            goto 19
      StackMap locals: sun.java2d.marlin.Stroker float float float float float float float float float float int
      StackMap stack: sun.java2d.marlin.Stroker float float
        18: iconst_1
      StackMap locals: sun.java2d.marlin.Stroker float float float float float float float float float float int
      StackMap stack: sun.java2d.marlin.Stroker float float int
        19: invokevirtual sun.java2d.marlin.Stroker.emitLineTo:(FFZ)V
        end local 11 // boolean cw
        20: .line 611
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield sun.java2d.marlin.Stroker.prev:I
        21: .line 612
            return
        end local 10 // float my
        end local 9 // float mx
        end local 8 // float omy
        end local 7 // float omx
        end local 6 // float dy
        end local 5 // float dx
        end local 4 // float y0
        end local 3 // float x0
        end local 2 // float pdy
        end local 1 // float pdx
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   22     0  this  Lsun/java2d/marlin/Stroker;
            0   22     1   pdx  F
            0   22     2   pdy  F
            0   22     3    x0  F
            0   22     4    y0  F
            0   22     5    dx  F
            0   22     6    dy  F
            0   22     7   omx  F
            0   22     8   omy  F
            0   22     9    mx  F
            0   22    10    my  F
            8   20    11    cw  Z
    MethodParameters:
      Name  Flags
      pdx   
      pdy   
      x0    
      y0    
      dx    
      dy    
      omx   
      omy   
      mx    
      my    

  private static boolean within(float, float, float, float, float);
    descriptor: (FFFFF)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // float x1
        start local 1 // float y1
        start local 2 // float x2
        start local 3 // float y2
        start local 4 // float ERR
         0: .line 618
            getstatic sun.java2d.marlin.Stroker.$assertionsDisabled:Z
            ifne 1
            fload 4 /* ERR */
            fconst_0
            fcmpl
            ifgt 1
            new java.lang.AssertionError
            dup
            ldc ""
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 621
      StackMap locals:
      StackMap stack:
            fload 0 /* x1 */
            fload 2 /* x2 */
            fload 4 /* ERR */
            invokestatic sun.java2d.marlin.Helpers.within:(FFF)Z
            ifeq 4
         2: .line 622
            fload 1 /* y1 */
            fload 3 /* y2 */
            fload 4 /* ERR */
            invokestatic sun.java2d.marlin.Helpers.within:(FFF)Z
            ifeq 4
         3: .line 621
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         4: iconst_0
            ireturn
        end local 4 // float ERR
        end local 3 // float y2
        end local 2 // float x2
        end local 1 // float y1
        end local 0 // float x1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0    x1  F
            0    5     1    y1  F
            0    5     2    x2  F
            0    5     3    y2  F
            0    5     4   ERR  F
    MethodParameters:
      Name  Flags
      x1    final
      y1    final
      x2    final
      y2    final
      ERR   final

  private void getLineOffsets(float, float, float, float, float[], float[]);
    descriptor: (FFFF[F[F)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=9, args_size=7
        start local 0 // sun.java2d.marlin.Stroker this
        start local 1 // float x1
        start local 2 // float y1
        start local 3 // float x2
        start local 4 // float y2
        start local 5 // float[] left
        start local 6 // float[] right
         0: .line 628
            fload 3 /* x2 */
            fload 1 /* x1 */
            fsub
            fload 4 /* y2 */
            fload 2 /* y1 */
            fsub
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.lineWidth2:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset0:[F
            invokestatic sun.java2d.marlin.Stroker.computeOffset:(FFF[F)V
         1: .line 629
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset0:[F
            iconst_0
            faload
            fstore 7 /* mx */
        start local 7 // float mx
         2: .line 630
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset0:[F
            iconst_1
            faload
            fstore 8 /* my */
        start local 8 // float my
         3: .line 631
            aload 5 /* left */
            iconst_0
            fload 1 /* x1 */
            fload 7 /* mx */
            fadd
            fastore
         4: .line 632
            aload 5 /* left */
            iconst_1
            fload 2 /* y1 */
            fload 8 /* my */
            fadd
            fastore
         5: .line 633
            aload 5 /* left */
            iconst_2
            fload 3 /* x2 */
            fload 7 /* mx */
            fadd
            fastore
         6: .line 634
            aload 5 /* left */
            iconst_3
            fload 4 /* y2 */
            fload 8 /* my */
            fadd
            fastore
         7: .line 635
            aload 6 /* right */
            iconst_0
            fload 1 /* x1 */
            fload 7 /* mx */
            fsub
            fastore
         8: .line 636
            aload 6 /* right */
            iconst_1
            fload 2 /* y1 */
            fload 8 /* my */
            fsub
            fastore
         9: .line 637
            aload 6 /* right */
            iconst_2
            fload 3 /* x2 */
            fload 7 /* mx */
            fsub
            fastore
        10: .line 638
            aload 6 /* right */
            iconst_3
            fload 4 /* y2 */
            fload 8 /* my */
            fsub
            fastore
        11: .line 639
            return
        end local 8 // float my
        end local 7 // float mx
        end local 6 // float[] right
        end local 5 // float[] left
        end local 4 // float y2
        end local 3 // float x2
        end local 2 // float y1
        end local 1 // float x1
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   12     0   this  Lsun/java2d/marlin/Stroker;
            0   12     1     x1  F
            0   12     2     y1  F
            0   12     3     x2  F
            0   12     4     y2  F
            0   12     5   left  [F
            0   12     6  right  [F
            2   12     7     mx  F
            3   12     8     my  F
    MethodParameters:
       Name  Flags
      x1     
      y1     
      x2     
      y2     
      left   
      right  

  private int computeOffsetCubic(float[], int, float[], float[]);
    descriptor: ([FI[F[F)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=41, args_size=5
        start local 0 // sun.java2d.marlin.Stroker this
        start local 1 // float[] pts
        start local 2 // int off
        start local 3 // float[] leftOff
        start local 4 // float[] rightOff
         0: .line 651
            aload 1 /* pts */
            iload 2 /* off */
            iconst_0
            iadd
            faload
            fstore 5 /* x1 */
        start local 5 // float x1
         1: aload 1 /* pts */
            iload 2 /* off */
            iconst_1
            iadd
            faload
            fstore 6 /* y1 */
        start local 6 // float y1
         2: .line 652
            aload 1 /* pts */
            iload 2 /* off */
            iconst_2
            iadd
            faload
            fstore 7 /* x2 */
        start local 7 // float x2
         3: aload 1 /* pts */
            iload 2 /* off */
            iconst_3
            iadd
            faload
            fstore 8 /* y2 */
        start local 8 // float y2
         4: .line 653
            aload 1 /* pts */
            iload 2 /* off */
            iconst_4
            iadd
            faload
            fstore 9 /* x3 */
        start local 9 // float x3
         5: aload 1 /* pts */
            iload 2 /* off */
            iconst_5
            iadd
            faload
            fstore 10 /* y3 */
        start local 10 // float y3
         6: .line 654
            aload 1 /* pts */
            iload 2 /* off */
            bipush 6
            iadd
            faload
            fstore 11 /* x4 */
        start local 11 // float x4
         7: aload 1 /* pts */
            iload 2 /* off */
            bipush 7
            iadd
            faload
            fstore 12 /* y4 */
        start local 12 // float y4
         8: .line 656
            fload 11 /* x4 */
            fload 9 /* x3 */
            fsub
            fstore 13 /* dx4 */
        start local 13 // float dx4
         9: .line 657
            fload 12 /* y4 */
            fload 10 /* y3 */
            fsub
            fstore 14 /* dy4 */
        start local 14 // float dy4
        10: .line 658
            fload 7 /* x2 */
            fload 5 /* x1 */
            fsub
            fstore 15 /* dx1 */
        start local 15 // float dx1
        11: .line 659
            fload 8 /* y2 */
            fload 6 /* y1 */
            fsub
            fstore 16 /* dy1 */
        start local 16 // float dy1
        12: .line 663
            fload 5 /* x1 */
            fload 6 /* y1 */
            fload 7 /* x2 */
            fload 8 /* y2 */
            ldc 6.0
            fload 8 /* y2 */
            invokestatic java.lang.Math.ulp:(F)F
            fmul
            invokestatic sun.java2d.marlin.Stroker.within:(FFFFF)Z
            istore 17 /* p1eqp2 */
        start local 17 // boolean p1eqp2
        13: .line 664
            fload 9 /* x3 */
            fload 10 /* y3 */
            fload 11 /* x4 */
            fload 12 /* y4 */
            ldc 6.0
            fload 12 /* y4 */
            invokestatic java.lang.Math.ulp:(F)F
            fmul
            invokestatic sun.java2d.marlin.Stroker.within:(FFFFF)Z
            istore 18 /* p3eqp4 */
        start local 18 // boolean p3eqp4
        14: .line 665
            iload 17 /* p1eqp2 */
            ifeq 17
            iload 18 /* p3eqp4 */
            ifeq 17
        15: .line 666
            aload 0 /* this */
            fload 5 /* x1 */
            fload 6 /* y1 */
            fload 11 /* x4 */
            fload 12 /* y4 */
            aload 3 /* leftOff */
            aload 4 /* rightOff */
            invokevirtual sun.java2d.marlin.Stroker.getLineOffsets:(FFFF[F[F)V
        16: .line 667
            iconst_4
            ireturn
        17: .line 668
      StackMap locals: sun.java2d.marlin.Stroker float[] int float[] float[] float float float float float float float float float float float float int int
      StackMap stack:
            iload 17 /* p1eqp2 */
            ifeq 21
        18: .line 669
            fload 9 /* x3 */
            fload 5 /* x1 */
            fsub
            fstore 15 /* dx1 */
        19: .line 670
            fload 10 /* y3 */
            fload 6 /* y1 */
            fsub
            fstore 16 /* dy1 */
        20: .line 671
            goto 24
      StackMap locals:
      StackMap stack:
        21: iload 18 /* p3eqp4 */
            ifeq 24
        22: .line 672
            fload 11 /* x4 */
            fload 7 /* x2 */
            fsub
            fstore 13 /* dx4 */
        23: .line 673
            fload 12 /* y4 */
            fload 8 /* y2 */
            fsub
            fstore 14 /* dy4 */
        24: .line 677
      StackMap locals:
      StackMap stack:
            fload 15 /* dx1 */
            fload 13 /* dx4 */
            fmul
            fload 16 /* dy1 */
            fload 14 /* dy4 */
            fmul
            fadd
            fstore 19 /* dotsq */
        start local 19 // float dotsq
        25: .line 678
            fload 19 /* dotsq */
            fload 19 /* dotsq */
            fmul
            fstore 19 /* dotsq */
        26: .line 679
            fload 15 /* dx1 */
            fload 15 /* dx1 */
            fmul
            fload 16 /* dy1 */
            fload 16 /* dy1 */
            fmul
            fadd
            fstore 20 /* l1sq */
        start local 20 // float l1sq
        27: fload 13 /* dx4 */
            fload 13 /* dx4 */
            fmul
            fload 14 /* dy4 */
            fload 14 /* dy4 */
            fmul
            fadd
            fstore 21 /* l4sq */
        start local 21 // float l4sq
        28: .line 680
            fload 19 /* dotsq */
            fload 20 /* l1sq */
            fload 21 /* l4sq */
            fmul
            ldc 4.0
            fload 19 /* dotsq */
            invokestatic java.lang.Math.ulp:(F)F
            fmul
            invokestatic sun.java2d.marlin.Helpers.within:(FFF)Z
            ifeq 31
        29: .line 681
            aload 0 /* this */
            fload 5 /* x1 */
            fload 6 /* y1 */
            fload 11 /* x4 */
            fload 12 /* y4 */
            aload 3 /* leftOff */
            aload 4 /* rightOff */
            invokevirtual sun.java2d.marlin.Stroker.getLineOffsets:(FFFF[F[F)V
        30: .line 682
            iconst_4
            ireturn
        31: .line 732
      StackMap locals: float float float
      StackMap stack:
            fload 5 /* x1 */
            ldc 3.0
            fload 7 /* x2 */
            fload 9 /* x3 */
            fadd
            fmul
            fadd
            fload 11 /* x4 */
            fadd
            ldc 8.0
            fdiv
            fstore 22 /* x */
        start local 22 // float x
        32: .line 733
            fload 6 /* y1 */
            ldc 3.0
            fload 8 /* y2 */
            fload 10 /* y3 */
            fadd
            fmul
            fadd
            fload 12 /* y4 */
            fadd
            ldc 8.0
            fdiv
            fstore 23 /* y */
        start local 23 // float y
        33: .line 736
            fload 9 /* x3 */
            fload 11 /* x4 */
            fadd
            fload 5 /* x1 */
            fsub
            fload 7 /* x2 */
            fsub
            fstore 24 /* dxm */
        start local 24 // float dxm
        34: fload 10 /* y3 */
            fload 12 /* y4 */
            fadd
            fload 6 /* y1 */
            fsub
            fload 8 /* y2 */
            fsub
            fstore 25 /* dym */
        start local 25 // float dym
        35: .line 741
            fload 15 /* dx1 */
            fload 16 /* dy1 */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.lineWidth2:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset0:[F
            invokestatic sun.java2d.marlin.Stroker.computeOffset:(FFF[F)V
        36: .line 742
            fload 24 /* dxm */
            fload 25 /* dym */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.lineWidth2:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset1:[F
            invokestatic sun.java2d.marlin.Stroker.computeOffset:(FFF[F)V
        37: .line 743
            fload 13 /* dx4 */
            fload 14 /* dy4 */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.lineWidth2:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset2:[F
            invokestatic sun.java2d.marlin.Stroker.computeOffset:(FFF[F)V
        38: .line 744
            fload 5 /* x1 */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset0:[F
            iconst_0
            faload
            fadd
            fstore 26 /* x1p */
        start local 26 // float x1p
        39: .line 745
            fload 6 /* y1 */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset0:[F
            iconst_1
            faload
            fadd
            fstore 27 /* y1p */
        start local 27 // float y1p
        40: .line 746
            fload 22 /* x */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset1:[F
            iconst_0
            faload
            fadd
            fstore 28 /* xi */
        start local 28 // float xi
        41: .line 747
            fload 23 /* y */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset1:[F
            iconst_1
            faload
            fadd
            fstore 29 /* yi */
        start local 29 // float yi
        42: .line 748
            fload 11 /* x4 */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset2:[F
            iconst_0
            faload
            fadd
            fstore 30 /* x4p */
        start local 30 // float x4p
        43: .line 749
            fload 12 /* y4 */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset2:[F
            iconst_1
            faload
            fadd
            fstore 31 /* y4p */
        start local 31 // float y4p
        44: .line 751
            ldc 4.0
            ldc 3.0
            fload 15 /* dx1 */
            fload 14 /* dy4 */
            fmul
            fload 16 /* dy1 */
            fload 13 /* dx4 */
            fmul
            fsub
            fmul
            fdiv
            fstore 32 /* invdet43 */
        start local 32 // float invdet43
        45: .line 753
            fconst_2
            fload 28 /* xi */
            fmul
            fload 26 /* x1p */
            fsub
            fload 30 /* x4p */
            fsub
            fstore 33 /* two_pi_m_p1_m_p4x */
        start local 33 // float two_pi_m_p1_m_p4x
        46: .line 754
            fconst_2
            fload 29 /* yi */
            fmul
            fload 27 /* y1p */
            fsub
            fload 31 /* y4p */
            fsub
            fstore 34 /* two_pi_m_p1_m_p4y */
        start local 34 // float two_pi_m_p1_m_p4y
        47: .line 755
            fload 32 /* invdet43 */
            fload 14 /* dy4 */
            fload 33 /* two_pi_m_p1_m_p4x */
            fmul
            fload 13 /* dx4 */
            fload 34 /* two_pi_m_p1_m_p4y */
            fmul
            fsub
            fmul
            fstore 35 /* c1 */
        start local 35 // float c1
        48: .line 756
            fload 32 /* invdet43 */
            fload 15 /* dx1 */
            fload 34 /* two_pi_m_p1_m_p4y */
            fmul
            fload 16 /* dy1 */
            fload 33 /* two_pi_m_p1_m_p4x */
            fmul
            fsub
            fmul
            fstore 36 /* c2 */
        start local 36 // float c2
        49: .line 759
            fload 26 /* x1p */
            fload 35 /* c1 */
            fload 15 /* dx1 */
            fmul
            fadd
            fstore 37 /* x2p */
        start local 37 // float x2p
        50: .line 760
            fload 27 /* y1p */
            fload 35 /* c1 */
            fload 16 /* dy1 */
            fmul
            fadd
            fstore 38 /* y2p */
        start local 38 // float y2p
        51: .line 761
            fload 30 /* x4p */
            fload 36 /* c2 */
            fload 13 /* dx4 */
            fmul
            fadd
            fstore 39 /* x3p */
        start local 39 // float x3p
        52: .line 762
            fload 31 /* y4p */
            fload 36 /* c2 */
            fload 14 /* dy4 */
            fmul
            fadd
            fstore 40 /* y3p */
        start local 40 // float y3p
        53: .line 764
            aload 3 /* leftOff */
            iconst_0
            fload 26 /* x1p */
            fastore
            aload 3 /* leftOff */
            iconst_1
            fload 27 /* y1p */
            fastore
        54: .line 765
            aload 3 /* leftOff */
            iconst_2
            fload 37 /* x2p */
            fastore
            aload 3 /* leftOff */
            iconst_3
            fload 38 /* y2p */
            fastore
        55: .line 766
            aload 3 /* leftOff */
            iconst_4
            fload 39 /* x3p */
            fastore
            aload 3 /* leftOff */
            iconst_5
            fload 40 /* y3p */
            fastore
        56: .line 767
            aload 3 /* leftOff */
            bipush 6
            fload 30 /* x4p */
            fastore
            aload 3 /* leftOff */
            bipush 7
            fload 31 /* y4p */
            fastore
        57: .line 769
            fload 5 /* x1 */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset0:[F
            iconst_0
            faload
            fsub
            fstore 26 /* x1p */
            fload 6 /* y1 */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset0:[F
            iconst_1
            faload
            fsub
            fstore 27 /* y1p */
        58: .line 770
            fload 28 /* xi */
            fconst_2
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset1:[F
            iconst_0
            faload
            fmul
            fsub
            fstore 28 /* xi */
            fload 29 /* yi */
            fconst_2
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset1:[F
            iconst_1
            faload
            fmul
            fsub
            fstore 29 /* yi */
        59: .line 771
            fload 11 /* x4 */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset2:[F
            iconst_0
            faload
            fsub
            fstore 30 /* x4p */
            fload 12 /* y4 */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset2:[F
            iconst_1
            faload
            fsub
            fstore 31 /* y4p */
        60: .line 773
            fconst_2
            fload 28 /* xi */
            fmul
            fload 26 /* x1p */
            fsub
            fload 30 /* x4p */
            fsub
            fstore 33 /* two_pi_m_p1_m_p4x */
        61: .line 774
            fconst_2
            fload 29 /* yi */
            fmul
            fload 27 /* y1p */
            fsub
            fload 31 /* y4p */
            fsub
            fstore 34 /* two_pi_m_p1_m_p4y */
        62: .line 775
            fload 32 /* invdet43 */
            fload 14 /* dy4 */
            fload 33 /* two_pi_m_p1_m_p4x */
            fmul
            fload 13 /* dx4 */
            fload 34 /* two_pi_m_p1_m_p4y */
            fmul
            fsub
            fmul
            fstore 35 /* c1 */
        63: .line 776
            fload 32 /* invdet43 */
            fload 15 /* dx1 */
            fload 34 /* two_pi_m_p1_m_p4y */
            fmul
            fload 16 /* dy1 */
            fload 33 /* two_pi_m_p1_m_p4x */
            fmul
            fsub
            fmul
            fstore 36 /* c2 */
        64: .line 778
            fload 26 /* x1p */
            fload 35 /* c1 */
            fload 15 /* dx1 */
            fmul
            fadd
            fstore 37 /* x2p */
        65: .line 779
            fload 27 /* y1p */
            fload 35 /* c1 */
            fload 16 /* dy1 */
            fmul
            fadd
            fstore 38 /* y2p */
        66: .line 780
            fload 30 /* x4p */
            fload 36 /* c2 */
            fload 13 /* dx4 */
            fmul
            fadd
            fstore 39 /* x3p */
        67: .line 781
            fload 31 /* y4p */
            fload 36 /* c2 */
            fload 14 /* dy4 */
            fmul
            fadd
            fstore 40 /* y3p */
        68: .line 783
            aload 4 /* rightOff */
            iconst_0
            fload 26 /* x1p */
            fastore
            aload 4 /* rightOff */
            iconst_1
            fload 27 /* y1p */
            fastore
        69: .line 784
            aload 4 /* rightOff */
            iconst_2
            fload 37 /* x2p */
            fastore
            aload 4 /* rightOff */
            iconst_3
            fload 38 /* y2p */
            fastore
        70: .line 785
            aload 4 /* rightOff */
            iconst_4
            fload 39 /* x3p */
            fastore
            aload 4 /* rightOff */
            iconst_5
            fload 40 /* y3p */
            fastore
        71: .line 786
            aload 4 /* rightOff */
            bipush 6
            fload 30 /* x4p */
            fastore
            aload 4 /* rightOff */
            bipush 7
            fload 31 /* y4p */
            fastore
        72: .line 787
            bipush 8
            ireturn
        end local 40 // float y3p
        end local 39 // float x3p
        end local 38 // float y2p
        end local 37 // float x2p
        end local 36 // float c2
        end local 35 // float c1
        end local 34 // float two_pi_m_p1_m_p4y
        end local 33 // float two_pi_m_p1_m_p4x
        end local 32 // float invdet43
        end local 31 // float y4p
        end local 30 // float x4p
        end local 29 // float yi
        end local 28 // float xi
        end local 27 // float y1p
        end local 26 // float x1p
        end local 25 // float dym
        end local 24 // float dxm
        end local 23 // float y
        end local 22 // float x
        end local 21 // float l4sq
        end local 20 // float l1sq
        end local 19 // float dotsq
        end local 18 // boolean p3eqp4
        end local 17 // boolean p1eqp2
        end local 16 // float dy1
        end local 15 // float dx1
        end local 14 // float dy4
        end local 13 // float dx4
        end local 12 // float y4
        end local 11 // float x4
        end local 10 // float y3
        end local 9 // float x3
        end local 8 // float y2
        end local 7 // float x2
        end local 6 // float y1
        end local 5 // float x1
        end local 4 // float[] rightOff
        end local 3 // float[] leftOff
        end local 2 // int off
        end local 1 // float[] pts
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   73     0               this  Lsun/java2d/marlin/Stroker;
            0   73     1                pts  [F
            0   73     2                off  I
            0   73     3            leftOff  [F
            0   73     4           rightOff  [F
            1   73     5                 x1  F
            2   73     6                 y1  F
            3   73     7                 x2  F
            4   73     8                 y2  F
            5   73     9                 x3  F
            6   73    10                 y3  F
            7   73    11                 x4  F
            8   73    12                 y4  F
            9   73    13                dx4  F
           10   73    14                dy4  F
           11   73    15                dx1  F
           12   73    16                dy1  F
           13   73    17             p1eqp2  Z
           14   73    18             p3eqp4  Z
           25   73    19              dotsq  F
           27   73    20               l1sq  F
           28   73    21               l4sq  F
           32   73    22                  x  F
           33   73    23                  y  F
           34   73    24                dxm  F
           35   73    25                dym  F
           39   73    26                x1p  F
           40   73    27                y1p  F
           41   73    28                 xi  F
           42   73    29                 yi  F
           43   73    30                x4p  F
           44   73    31                y4p  F
           45   73    32           invdet43  F
           46   73    33  two_pi_m_p1_m_p4x  F
           47   73    34  two_pi_m_p1_m_p4y  F
           48   73    35                 c1  F
           49   73    36                 c2  F
           50   73    37                x2p  F
           51   73    38                y2p  F
           52   73    39                x3p  F
           53   73    40                y3p  F
    MethodParameters:
          Name  Flags
      pts       
      off       final
      leftOff   
      rightOff  

  private int computeOffsetQuad(float[], int, float[], float[]);
    descriptor: ([FI[F[F)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=21, args_size=5
        start local 0 // sun.java2d.marlin.Stroker this
        start local 1 // float[] pts
        start local 2 // int off
        start local 3 // float[] leftOff
        start local 4 // float[] rightOff
         0: .line 794
            aload 1 /* pts */
            iload 2 /* off */
            iconst_0
            iadd
            faload
            fstore 5 /* x1 */
        start local 5 // float x1
         1: aload 1 /* pts */
            iload 2 /* off */
            iconst_1
            iadd
            faload
            fstore 6 /* y1 */
        start local 6 // float y1
         2: .line 795
            aload 1 /* pts */
            iload 2 /* off */
            iconst_2
            iadd
            faload
            fstore 7 /* x2 */
        start local 7 // float x2
         3: aload 1 /* pts */
            iload 2 /* off */
            iconst_3
            iadd
            faload
            fstore 8 /* y2 */
        start local 8 // float y2
         4: .line 796
            aload 1 /* pts */
            iload 2 /* off */
            iconst_4
            iadd
            faload
            fstore 9 /* x3 */
        start local 9 // float x3
         5: aload 1 /* pts */
            iload 2 /* off */
            iconst_5
            iadd
            faload
            fstore 10 /* y3 */
        start local 10 // float y3
         6: .line 798
            fload 9 /* x3 */
            fload 7 /* x2 */
            fsub
            fstore 11 /* dx3 */
        start local 11 // float dx3
         7: .line 799
            fload 10 /* y3 */
            fload 8 /* y2 */
            fsub
            fstore 12 /* dy3 */
        start local 12 // float dy3
         8: .line 800
            fload 7 /* x2 */
            fload 5 /* x1 */
            fsub
            fstore 13 /* dx1 */
        start local 13 // float dx1
         9: .line 801
            fload 8 /* y2 */
            fload 6 /* y1 */
            fsub
            fstore 14 /* dy1 */
        start local 14 // float dy1
        10: .line 804
            fload 13 /* dx1 */
            fload 14 /* dy1 */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.lineWidth2:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset0:[F
            invokestatic sun.java2d.marlin.Stroker.computeOffset:(FFF[F)V
        11: .line 805
            fload 11 /* dx3 */
            fload 12 /* dy3 */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.lineWidth2:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset1:[F
            invokestatic sun.java2d.marlin.Stroker.computeOffset:(FFF[F)V
        12: .line 807
            aload 3 /* leftOff */
            iconst_0
            fload 5 /* x1 */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset0:[F
            iconst_0
            faload
            fadd
            fastore
            aload 3 /* leftOff */
            iconst_1
            fload 6 /* y1 */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset0:[F
            iconst_1
            faload
            fadd
            fastore
        13: .line 808
            aload 3 /* leftOff */
            iconst_4
            fload 9 /* x3 */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset1:[F
            iconst_0
            faload
            fadd
            fastore
            aload 3 /* leftOff */
            iconst_5
            fload 10 /* y3 */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset1:[F
            iconst_1
            faload
            fadd
            fastore
        14: .line 809
            aload 4 /* rightOff */
            iconst_0
            fload 5 /* x1 */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset0:[F
            iconst_0
            faload
            fsub
            fastore
            aload 4 /* rightOff */
            iconst_1
            fload 6 /* y1 */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset0:[F
            iconst_1
            faload
            fsub
            fastore
        15: .line 810
            aload 4 /* rightOff */
            iconst_4
            fload 9 /* x3 */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset1:[F
            iconst_0
            faload
            fsub
            fastore
            aload 4 /* rightOff */
            iconst_5
            fload 10 /* y3 */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset1:[F
            iconst_1
            faload
            fsub
            fastore
        16: .line 812
            aload 3 /* leftOff */
            iconst_0
            faload
            fstore 15 /* x1p */
        start local 15 // float x1p
        17: .line 813
            aload 3 /* leftOff */
            iconst_1
            faload
            fstore 16 /* y1p */
        start local 16 // float y1p
        18: .line 814
            aload 3 /* leftOff */
            iconst_4
            faload
            fstore 17 /* x3p */
        start local 17 // float x3p
        19: .line 815
            aload 3 /* leftOff */
            iconst_5
            faload
            fstore 18 /* y3p */
        start local 18 // float y3p
        20: .line 826
            fload 15 /* x1p */
            fload 16 /* y1p */
            fload 15 /* x1p */
            fload 13 /* dx1 */
            fadd
            fload 16 /* y1p */
            fload 14 /* dy1 */
            fadd
            fload 17 /* x3p */
            fload 18 /* y3p */
            fload 17 /* x3p */
            fload 11 /* dx3 */
            fsub
            fload 18 /* y3p */
            fload 12 /* dy3 */
            fsub
            aload 3 /* leftOff */
            iconst_2
            invokestatic sun.java2d.marlin.Stroker.computeIntersection:(FFFFFFFF[FI)V
        21: .line 827
            aload 3 /* leftOff */
            iconst_2
            faload
            fstore 19 /* cx */
        start local 19 // float cx
        22: .line 828
            aload 3 /* leftOff */
            iconst_3
            faload
            fstore 20 /* cy */
        start local 20 // float cy
        23: .line 830
            fload 19 /* cx */
            invokestatic sun.java2d.marlin.Stroker.isFinite:(F)Z
            ifeq 24
            fload 20 /* cy */
            invokestatic sun.java2d.marlin.Stroker.isFinite:(F)Z
            ifne 37
        24: .line 832
      StackMap locals: sun.java2d.marlin.Stroker float[] int float[] float[] float float float float float float float float float float float float float float float float
      StackMap stack:
            aload 4 /* rightOff */
            iconst_0
            faload
            fstore 15 /* x1p */
        25: .line 833
            aload 4 /* rightOff */
            iconst_1
            faload
            fstore 16 /* y1p */
        26: .line 834
            aload 4 /* rightOff */
            iconst_4
            faload
            fstore 17 /* x3p */
        27: .line 835
            aload 4 /* rightOff */
            iconst_5
            faload
            fstore 18 /* y3p */
        28: .line 836
            fload 15 /* x1p */
            fload 16 /* y1p */
            fload 15 /* x1p */
            fload 13 /* dx1 */
            fadd
            fload 16 /* y1p */
            fload 14 /* dy1 */
            fadd
            fload 17 /* x3p */
            fload 18 /* y3p */
            fload 17 /* x3p */
            fload 11 /* dx3 */
            fsub
            fload 18 /* y3p */
            fload 12 /* dy3 */
            fsub
            aload 4 /* rightOff */
            iconst_2
            invokestatic sun.java2d.marlin.Stroker.computeIntersection:(FFFFFFFF[FI)V
        29: .line 837
            aload 4 /* rightOff */
            iconst_2
            faload
            fstore 19 /* cx */
        30: .line 838
            aload 4 /* rightOff */
            iconst_3
            faload
            fstore 20 /* cy */
        31: .line 839
            fload 19 /* cx */
            invokestatic sun.java2d.marlin.Stroker.isFinite:(F)Z
            ifeq 32
            fload 20 /* cy */
            invokestatic sun.java2d.marlin.Stroker.isFinite:(F)Z
            ifne 34
        32: .line 841
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            fload 5 /* x1 */
            fload 6 /* y1 */
            fload 9 /* x3 */
            fload 10 /* y3 */
            aload 3 /* leftOff */
            aload 4 /* rightOff */
            invokevirtual sun.java2d.marlin.Stroker.getLineOffsets:(FFFF[F[F)V
        33: .line 842
            iconst_4
            ireturn
        34: .line 845
      StackMap locals:
      StackMap stack:
            aload 3 /* leftOff */
            iconst_2
            fconst_2
            fload 7 /* x2 */
            fmul
            fload 19 /* cx */
            fsub
            fastore
        35: .line 846
            aload 3 /* leftOff */
            iconst_3
            fconst_2
            fload 8 /* y2 */
            fmul
            fload 20 /* cy */
            fsub
            fastore
        36: .line 847
            bipush 6
            ireturn
        37: .line 852
      StackMap locals:
      StackMap stack:
            aload 4 /* rightOff */
            iconst_2
            fconst_2
            fload 7 /* x2 */
            fmul
            fload 19 /* cx */
            fsub
            fastore
        38: .line 853
            aload 4 /* rightOff */
            iconst_3
            fconst_2
            fload 8 /* y2 */
            fmul
            fload 20 /* cy */
            fsub
            fastore
        39: .line 854
            bipush 6
            ireturn
        end local 20 // float cy
        end local 19 // float cx
        end local 18 // float y3p
        end local 17 // float x3p
        end local 16 // float y1p
        end local 15 // float x1p
        end local 14 // float dy1
        end local 13 // float dx1
        end local 12 // float dy3
        end local 11 // float dx3
        end local 10 // float y3
        end local 9 // float x3
        end local 8 // float y2
        end local 7 // float x2
        end local 6 // float y1
        end local 5 // float x1
        end local 4 // float[] rightOff
        end local 3 // float[] leftOff
        end local 2 // int off
        end local 1 // float[] pts
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   40     0      this  Lsun/java2d/marlin/Stroker;
            0   40     1       pts  [F
            0   40     2       off  I
            0   40     3   leftOff  [F
            0   40     4  rightOff  [F
            1   40     5        x1  F
            2   40     6        y1  F
            3   40     7        x2  F
            4   40     8        y2  F
            5   40     9        x3  F
            6   40    10        y3  F
            7   40    11       dx3  F
            8   40    12       dy3  F
            9   40    13       dx1  F
           10   40    14       dy1  F
           17   40    15       x1p  F
           18   40    16       y1p  F
           19   40    17       x3p  F
           20   40    18       y3p  F
           22   40    19        cx  F
           23   40    20        cy  F
    MethodParameters:
          Name  Flags
      pts       
      off       final
      leftOff   
      rightOff  

  private static boolean isFinite(float);
    descriptor: (F)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // float x
         0: .line 858
            ldc -Infinity
            fload 0 /* x */
            fcmpg
            ifge 1
            fload 0 /* x */
            ldc Infinity
            fcmpg
            ifge 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // float x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     x  F
    MethodParameters:
      Name  Flags
      x     

  private static int findSubdivPoints(sun.java2d.marlin.Curve, float[], float[], int, float);
    descriptor: (Lsun/java2d/marlin/Curve;[F[FIF)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=9, locals=18, args_size=5
        start local 0 // sun.java2d.marlin.Curve c
        start local 1 // float[] pts
        start local 2 // float[] ts
        start local 3 // int type
        start local 4 // float w
         0: .line 973
            aload 1 /* pts */
            iconst_2
            faload
            aload 1 /* pts */
            iconst_0
            faload
            fsub
            fstore 5 /* x12 */
        start local 5 // float x12
         1: .line 974
            aload 1 /* pts */
            iconst_3
            faload
            aload 1 /* pts */
            iconst_1
            faload
            fsub
            fstore 6 /* y12 */
        start local 6 // float y12
         2: .line 977
            fload 6 /* y12 */
            fconst_0
            fcmpl
            ifeq 19
            fload 5 /* x12 */
            fconst_0
            fcmpl
            ifeq 19
         3: .line 981
            fload 5 /* x12 */
            fload 5 /* x12 */
            fmul
            fload 6 /* y12 */
            fload 6 /* y12 */
            fmul
            fadd
            f2d
            invokestatic java.lang.Math.sqrt:(D)D
            d2f
            fstore 7 /* hypot */
        start local 7 // float hypot
         4: .line 982
            fload 5 /* x12 */
            fload 7 /* hypot */
            fdiv
            fstore 8 /* cos */
        start local 8 // float cos
         5: .line 983
            fload 6 /* y12 */
            fload 7 /* hypot */
            fdiv
            fstore 9 /* sin */
        start local 9 // float sin
         6: .line 984
            fload 8 /* cos */
            aload 1 /* pts */
            iconst_0
            faload
            fmul
            fload 9 /* sin */
            aload 1 /* pts */
            iconst_1
            faload
            fmul
            fadd
            fstore 10 /* x1 */
        start local 10 // float x1
         7: .line 985
            fload 8 /* cos */
            aload 1 /* pts */
            iconst_1
            faload
            fmul
            fload 9 /* sin */
            aload 1 /* pts */
            iconst_0
            faload
            fmul
            fsub
            fstore 11 /* y1 */
        start local 11 // float y1
         8: .line 986
            fload 8 /* cos */
            aload 1 /* pts */
            iconst_2
            faload
            fmul
            fload 9 /* sin */
            aload 1 /* pts */
            iconst_3
            faload
            fmul
            fadd
            fstore 12 /* x2 */
        start local 12 // float x2
         9: .line 987
            fload 8 /* cos */
            aload 1 /* pts */
            iconst_3
            faload
            fmul
            fload 9 /* sin */
            aload 1 /* pts */
            iconst_2
            faload
            fmul
            fsub
            fstore 13 /* y2 */
        start local 13 // float y2
        10: .line 988
            fload 8 /* cos */
            aload 1 /* pts */
            iconst_4
            faload
            fmul
            fload 9 /* sin */
            aload 1 /* pts */
            iconst_5
            faload
            fmul
            fadd
            fstore 14 /* x3 */
        start local 14 // float x3
        11: .line 989
            fload 8 /* cos */
            aload 1 /* pts */
            iconst_5
            faload
            fmul
            fload 9 /* sin */
            aload 1 /* pts */
            iconst_4
            faload
            fmul
            fsub
            fstore 15 /* y3 */
        start local 15 // float y3
        12: .line 991
            iload 3 /* type */
            tableswitch { // 6 - 8
                    6: 17
                    7: 18
                    8: 13
              default: 18
          }
        13: .line 993
      StackMap locals: sun.java2d.marlin.Curve float[] float[] int float float float float float float float float float float float float
      StackMap stack:
            fload 8 /* cos */
            aload 1 /* pts */
            bipush 6
            faload
            fmul
            fload 9 /* sin */
            aload 1 /* pts */
            bipush 7
            faload
            fmul
            fadd
            fstore 16 /* x4 */
        start local 16 // float x4
        14: .line 994
            fload 8 /* cos */
            aload 1 /* pts */
            bipush 7
            faload
            fmul
            fload 9 /* sin */
            aload 1 /* pts */
            bipush 6
            faload
            fmul
            fsub
            fstore 17 /* y4 */
        start local 17 // float y4
        15: .line 995
            aload 0 /* c */
            fload 10 /* x1 */
            fload 11 /* y1 */
            fload 12 /* x2 */
            fload 13 /* y2 */
            fload 14 /* x3 */
            fload 15 /* y3 */
            fload 16 /* x4 */
            fload 17 /* y4 */
            invokevirtual sun.java2d.marlin.Curve.set:(FFFFFFFF)V
        16: .line 996
            goto 20
        end local 17 // float y4
        end local 16 // float x4
        17: .line 998
      StackMap locals:
      StackMap stack:
            aload 0 /* c */
            fload 10 /* x1 */
            fload 11 /* y1 */
            fload 12 /* x2 */
            fload 13 /* y2 */
            fload 14 /* x3 */
            fload 15 /* y3 */
            invokevirtual sun.java2d.marlin.Curve.set:(FFFFFF)V
        end local 15 // float y3
        end local 14 // float x3
        end local 13 // float y2
        end local 12 // float x2
        end local 11 // float y1
        end local 10 // float x1
        end local 9 // float sin
        end local 8 // float cos
        end local 7 // float hypot
        18: .line 1002
      StackMap locals: sun.java2d.marlin.Curve float[] float[] int float float float
      StackMap stack:
            goto 20
        19: .line 1003
      StackMap locals:
      StackMap stack:
            aload 0 /* c */
            aload 1 /* pts */
            iload 3 /* type */
            invokevirtual sun.java2d.marlin.Curve.set:([FI)V
        20: .line 1006
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 7 /* ret */
        start local 7 // int ret
        21: .line 1009
            iload 7 /* ret */
            aload 0 /* c */
            aload 2 /* ts */
            iload 7 /* ret */
            invokevirtual sun.java2d.marlin.Curve.dxRoots:([FI)I
            iadd
            istore 7 /* ret */
        22: .line 1010
            iload 7 /* ret */
            aload 0 /* c */
            aload 2 /* ts */
            iload 7 /* ret */
            invokevirtual sun.java2d.marlin.Curve.dyRoots:([FI)I
            iadd
            istore 7 /* ret */
        23: .line 1012
            iload 3 /* type */
            bipush 8
            if_icmpne 25
        24: .line 1014
            iload 7 /* ret */
            aload 0 /* c */
            aload 2 /* ts */
            iload 7 /* ret */
            invokevirtual sun.java2d.marlin.Curve.infPoints:([FI)I
            iadd
            istore 7 /* ret */
        25: .line 1019
      StackMap locals: int
      StackMap stack:
            iload 7 /* ret */
            aload 0 /* c */
            aload 2 /* ts */
            iload 7 /* ret */
            fload 4 /* w */
            ldc 1.0E-4
            invokevirtual sun.java2d.marlin.Curve.rootsOfROCMinusW:([FIFF)I
            iadd
            istore 7 /* ret */
        26: .line 1021
            aload 2 /* ts */
            iconst_0
            iload 7 /* ret */
            ldc 1.0E-4
            ldc 0.9999
            invokestatic sun.java2d.marlin.Helpers.filterOutNotInAB:([FIIFF)I
            istore 7 /* ret */
        27: .line 1022
            aload 2 /* ts */
            iconst_0
            iload 7 /* ret */
            invokestatic sun.java2d.marlin.Helpers.isort:([FII)V
        28: .line 1023
            iload 7 /* ret */
            ireturn
        end local 7 // int ret
        end local 6 // float y12
        end local 5 // float x12
        end local 4 // float w
        end local 3 // int type
        end local 2 // float[] ts
        end local 1 // float[] pts
        end local 0 // sun.java2d.marlin.Curve c
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   29     0      c  Lsun/java2d/marlin/Curve;
            0   29     1    pts  [F
            0   29     2     ts  [F
            0   29     3   type  I
            0   29     4      w  F
            1   29     5    x12  F
            2   29     6    y12  F
            4   18     7  hypot  F
            5   18     8    cos  F
            6   18     9    sin  F
            7   18    10     x1  F
            8   18    11     y1  F
            9   18    12     x2  F
           10   18    13     y2  F
           11   18    14     x3  F
           12   18    15     y3  F
           14   17    16     x4  F
           15   17    17     y4  F
           21   29     7    ret  I
    MethodParameters:
      Name  Flags
      c     final
      pts   
      ts    
      type  final
      w     final

  public void curveTo(float, float, float, float, float, float);
    descriptor: (FFFFFF)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=12, locals=22, args_size=7
        start local 0 // sun.java2d.marlin.Stroker this
        start local 1 // float x1
        start local 2 // float y1
        start local 3 // float x2
        start local 4 // float y2
        start local 5 // float x3
        start local 6 // float y3
         0: .line 1030
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.middle:[F
            astore 7 /* mid */
        start local 7 // float[] mid
         1: .line 1032
            aload 7 /* mid */
            iconst_0
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cx0:F
            fastore
            aload 7 /* mid */
            iconst_1
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cy0:F
            fastore
         2: .line 1033
            aload 7 /* mid */
            iconst_2
            fload 1 /* x1 */
            fastore
            aload 7 /* mid */
            iconst_3
            fload 2 /* y1 */
            fastore
         3: .line 1034
            aload 7 /* mid */
            iconst_4
            fload 3 /* x2 */
            fastore
            aload 7 /* mid */
            iconst_5
            fload 4 /* y2 */
            fastore
         4: .line 1035
            aload 7 /* mid */
            bipush 6
            fload 5 /* x3 */
            fastore
            aload 7 /* mid */
            bipush 7
            fload 6 /* y3 */
            fastore
         5: .line 1041
            aload 7 /* mid */
            bipush 6
            faload
            fstore 8 /* xf */
        start local 8 // float xf
         6: aload 7 /* mid */
            bipush 7
            faload
            fstore 9 /* yf */
        start local 9 // float yf
         7: .line 1042
            aload 7 /* mid */
            iconst_2
            faload
            aload 7 /* mid */
            iconst_0
            faload
            fsub
            fstore 10 /* dxs */
        start local 10 // float dxs
         8: .line 1043
            aload 7 /* mid */
            iconst_3
            faload
            aload 7 /* mid */
            iconst_1
            faload
            fsub
            fstore 11 /* dys */
        start local 11 // float dys
         9: .line 1044
            aload 7 /* mid */
            bipush 6
            faload
            aload 7 /* mid */
            iconst_4
            faload
            fsub
            fstore 12 /* dxf */
        start local 12 // float dxf
        10: .line 1045
            aload 7 /* mid */
            bipush 7
            faload
            aload 7 /* mid */
            iconst_5
            faload
            fsub
            fstore 13 /* dyf */
        start local 13 // float dyf
        11: .line 1047
            fload 10 /* dxs */
            fconst_0
            fcmpl
            ifne 12
            fload 11 /* dys */
            fconst_0
            fcmpl
            ifne 12
            iconst_1
            goto 13
      StackMap locals: sun.java2d.marlin.Stroker float float float float float float float[] float float float float float float
      StackMap stack:
        12: iconst_0
      StackMap locals:
      StackMap stack: int
        13: istore 14 /* p1eqp2 */
        start local 14 // boolean p1eqp2
        14: .line 1048
            fload 12 /* dxf */
            fconst_0
            fcmpl
            ifne 15
            fload 13 /* dyf */
            fconst_0
            fcmpl
            ifne 15
            iconst_1
            goto 16
      StackMap locals: int
      StackMap stack:
        15: iconst_0
      StackMap locals:
      StackMap stack: int
        16: istore 15 /* p3eqp4 */
        start local 15 // boolean p3eqp4
        17: .line 1049
            iload 14 /* p1eqp2 */
            ifeq 23
        18: .line 1050
            aload 7 /* mid */
            iconst_4
            faload
            aload 7 /* mid */
            iconst_0
            faload
            fsub
            fstore 10 /* dxs */
        19: .line 1051
            aload 7 /* mid */
            iconst_5
            faload
            aload 7 /* mid */
            iconst_1
            faload
            fsub
            fstore 11 /* dys */
        20: .line 1052
            fload 10 /* dxs */
            fconst_0
            fcmpl
            ifne 23
            fload 11 /* dys */
            fconst_0
            fcmpl
            ifne 23
        21: .line 1053
            aload 7 /* mid */
            bipush 6
            faload
            aload 7 /* mid */
            iconst_0
            faload
            fsub
            fstore 10 /* dxs */
        22: .line 1054
            aload 7 /* mid */
            bipush 7
            faload
            aload 7 /* mid */
            iconst_1
            faload
            fsub
            fstore 11 /* dys */
        23: .line 1057
      StackMap locals: int
      StackMap stack:
            iload 15 /* p3eqp4 */
            ifeq 29
        24: .line 1058
            aload 7 /* mid */
            bipush 6
            faload
            aload 7 /* mid */
            iconst_2
            faload
            fsub
            fstore 12 /* dxf */
        25: .line 1059
            aload 7 /* mid */
            bipush 7
            faload
            aload 7 /* mid */
            iconst_3
            faload
            fsub
            fstore 13 /* dyf */
        26: .line 1060
            fload 12 /* dxf */
            fconst_0
            fcmpl
            ifne 29
            fload 13 /* dyf */
            fconst_0
            fcmpl
            ifne 29
        27: .line 1061
            aload 7 /* mid */
            bipush 6
            faload
            aload 7 /* mid */
            iconst_0
            faload
            fsub
            fstore 12 /* dxf */
        28: .line 1062
            aload 7 /* mid */
            bipush 7
            faload
            aload 7 /* mid */
            iconst_1
            faload
            fsub
            fstore 13 /* dyf */
        29: .line 1065
      StackMap locals:
      StackMap stack:
            fload 10 /* dxs */
            fconst_0
            fcmpl
            ifne 32
            fload 11 /* dys */
            fconst_0
            fcmpl
            ifne 32
        30: .line 1067
            aload 0 /* this */
            aload 7 /* mid */
            iconst_0
            faload
            aload 7 /* mid */
            iconst_1
            faload
            invokevirtual sun.java2d.marlin.Stroker.lineTo:(FF)V
        31: .line 1068
            return
        32: .line 1073
      StackMap locals:
      StackMap stack:
            fload 10 /* dxs */
            invokestatic java.lang.Math.abs:(F)F
            ldc 0.1
            fcmpg
            ifge 36
            fload 11 /* dys */
            invokestatic java.lang.Math.abs:(F)F
            ldc 0.1
            fcmpg
            ifge 36
        33: .line 1074
            fload 10 /* dxs */
            fload 10 /* dxs */
            fmul
            fload 11 /* dys */
            fload 11 /* dys */
            fmul
            fadd
            f2d
            invokestatic java.lang.Math.sqrt:(D)D
            d2f
            fstore 16 /* len */
        start local 16 // float len
        34: .line 1075
            fload 10 /* dxs */
            fload 16 /* len */
            fdiv
            fstore 10 /* dxs */
        35: .line 1076
            fload 11 /* dys */
            fload 16 /* len */
            fdiv
            fstore 11 /* dys */
        end local 16 // float len
        36: .line 1078
      StackMap locals:
      StackMap stack:
            fload 12 /* dxf */
            invokestatic java.lang.Math.abs:(F)F
            ldc 0.1
            fcmpg
            ifge 40
            fload 13 /* dyf */
            invokestatic java.lang.Math.abs:(F)F
            ldc 0.1
            fcmpg
            ifge 40
        37: .line 1079
            fload 12 /* dxf */
            fload 12 /* dxf */
            fmul
            fload 13 /* dyf */
            fload 13 /* dyf */
            fmul
            fadd
            f2d
            invokestatic java.lang.Math.sqrt:(D)D
            d2f
            fstore 16 /* len */
        start local 16 // float len
        38: .line 1080
            fload 12 /* dxf */
            fload 16 /* len */
            fdiv
            fstore 12 /* dxf */
        39: .line 1081
            fload 13 /* dyf */
            fload 16 /* len */
            fdiv
            fstore 13 /* dyf */
        end local 16 // float len
        40: .line 1084
      StackMap locals:
      StackMap stack:
            fload 10 /* dxs */
            fload 11 /* dys */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.lineWidth2:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset0:[F
            invokestatic sun.java2d.marlin.Stroker.computeOffset:(FFF[F)V
        41: .line 1085
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cdx:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cdy:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cx0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cy0:F
            fload 10 /* dxs */
            fload 11 /* dys */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cmx:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cmy:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset0:[F
            iconst_0
            faload
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset0:[F
            iconst_1
            faload
            invokevirtual sun.java2d.marlin.Stroker.drawJoin:(FFFFFFFFFF)V
        42: .line 1087
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.curve:Lsun/java2d/marlin/Curve;
            aload 7 /* mid */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.subdivTs:[F
            bipush 8
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.lineWidth2:F
            invokestatic sun.java2d.marlin.Stroker.findSubdivPoints:(Lsun/java2d/marlin/Curve;[F[FIF)I
            istore 16 /* nSplits */
        start local 16 // int nSplits
        43: .line 1089
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.lp:[F
            astore 17 /* l */
        start local 17 // float[] l
        44: .line 1090
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.rp:[F
            astore 18 /* r */
        start local 18 // float[] r
        45: .line 1092
            iconst_0
            istore 19 /* kind */
        start local 19 // int kind
        46: .line 1093
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.curve:Lsun/java2d/marlin/Curve;
            aload 7 /* mid */
            bipush 8
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.subdivTs:[F
            iload 16 /* nSplits */
            invokevirtual sun.java2d.marlin.Curve.breakPtsAtTs:([FI[FI)Lsun/java2d/marlin/Curve$BreakPtrIterator;
            astore 20 /* it */
        start local 20 // sun.java2d.marlin.Curve$BreakPtrIterator it
        47: .line 1094
            goto 58
        48: .line 1095
      StackMap locals: sun.java2d.marlin.Stroker float float float float float float float[] float float float float float float int int int float[] float[] int sun.java2d.marlin.Curve$BreakPtrIterator
      StackMap stack:
            aload 20 /* it */
            invokevirtual sun.java2d.marlin.Curve$BreakPtrIterator.next:()I
            istore 21 /* curCurveOff */
        start local 21 // int curCurveOff
        49: .line 1097
            aload 0 /* this */
            aload 7 /* mid */
            iload 21 /* curCurveOff */
            aload 17 /* l */
            aload 18 /* r */
            invokevirtual sun.java2d.marlin.Stroker.computeOffsetCubic:([FI[F[F)I
            istore 19 /* kind */
        50: .line 1098
            aload 0 /* this */
            aload 17 /* l */
            iconst_0
            faload
            aload 17 /* l */
            iconst_1
            faload
            invokevirtual sun.java2d.marlin.Stroker.emitLineTo:(FF)V
        51: .line 1100
            iload 19 /* kind */
            tableswitch { // 4 - 8
                    4: 55
                    5: 57
                    6: 57
                    7: 57
                    8: 52
              default: 57
          }
        52: .line 1102
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 17 /* l */
            iconst_2
            faload
            aload 17 /* l */
            iconst_3
            faload
            aload 17 /* l */
            iconst_4
            faload
            aload 17 /* l */
            iconst_5
            faload
            aload 17 /* l */
            bipush 6
            faload
            aload 17 /* l */
            bipush 7
            faload
            invokevirtual sun.java2d.marlin.Stroker.emitCurveTo:(FFFFFF)V
        53: .line 1103
            aload 0 /* this */
            aload 18 /* r */
            iconst_0
            faload
            aload 18 /* r */
            iconst_1
            faload
            aload 18 /* r */
            iconst_2
            faload
            aload 18 /* r */
            iconst_3
            faload
            aload 18 /* r */
            iconst_4
            faload
            aload 18 /* r */
            iconst_5
            faload
            invokevirtual sun.java2d.marlin.Stroker.emitCurveToRev:(FFFFFF)V
        54: .line 1104
            goto 57
        55: .line 1106
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 17 /* l */
            iconst_2
            faload
            aload 17 /* l */
            iconst_3
            faload
            invokevirtual sun.java2d.marlin.Stroker.emitLineTo:(FF)V
        56: .line 1107
            aload 0 /* this */
            aload 18 /* r */
            iconst_0
            faload
            aload 18 /* r */
            iconst_1
            faload
            invokevirtual sun.java2d.marlin.Stroker.emitLineToRev:(FF)V
        57: .line 1111
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 18 /* r */
            iload 19 /* kind */
            iconst_2
            isub
            faload
            aload 18 /* r */
            iload 19 /* kind */
            iconst_1
            isub
            faload
            invokevirtual sun.java2d.marlin.Stroker.emitLineToRev:(FF)V
        end local 21 // int curCurveOff
        58: .line 1094
      StackMap locals:
      StackMap stack:
            aload 20 /* it */
            invokevirtual sun.java2d.marlin.Curve$BreakPtrIterator.hasNext:()Z
            ifne 48
        59: .line 1114
            aload 0 /* this */
            aload 17 /* l */
            iload 19 /* kind */
            iconst_2
            isub
            faload
            aload 18 /* r */
            iload 19 /* kind */
            iconst_2
            isub
            faload
            fsub
            fconst_2
            fdiv
            putfield sun.java2d.marlin.Stroker.cmx:F
        60: .line 1115
            aload 0 /* this */
            aload 17 /* l */
            iload 19 /* kind */
            iconst_1
            isub
            faload
            aload 18 /* r */
            iload 19 /* kind */
            iconst_1
            isub
            faload
            fsub
            fconst_2
            fdiv
            putfield sun.java2d.marlin.Stroker.cmy:F
        61: .line 1116
            aload 0 /* this */
            fload 12 /* dxf */
            putfield sun.java2d.marlin.Stroker.cdx:F
        62: .line 1117
            aload 0 /* this */
            fload 13 /* dyf */
            putfield sun.java2d.marlin.Stroker.cdy:F
        63: .line 1118
            aload 0 /* this */
            fload 8 /* xf */
            putfield sun.java2d.marlin.Stroker.cx0:F
        64: .line 1119
            aload 0 /* this */
            fload 9 /* yf */
            putfield sun.java2d.marlin.Stroker.cy0:F
        65: .line 1120
            aload 0 /* this */
            iconst_1
            putfield sun.java2d.marlin.Stroker.prev:I
        66: .line 1121
            return
        end local 20 // sun.java2d.marlin.Curve$BreakPtrIterator it
        end local 19 // int kind
        end local 18 // float[] r
        end local 17 // float[] l
        end local 16 // int nSplits
        end local 15 // boolean p3eqp4
        end local 14 // boolean p1eqp2
        end local 13 // float dyf
        end local 12 // float dxf
        end local 11 // float dys
        end local 10 // float dxs
        end local 9 // float yf
        end local 8 // float xf
        end local 7 // float[] mid
        end local 6 // float y3
        end local 5 // float x3
        end local 4 // float y2
        end local 3 // float x2
        end local 2 // float y1
        end local 1 // float x1
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   67     0         this  Lsun/java2d/marlin/Stroker;
            0   67     1           x1  F
            0   67     2           y1  F
            0   67     3           x2  F
            0   67     4           y2  F
            0   67     5           x3  F
            0   67     6           y3  F
            1   67     7          mid  [F
            6   67     8           xf  F
            7   67     9           yf  F
            8   67    10          dxs  F
            9   67    11          dys  F
           10   67    12          dxf  F
           11   67    13          dyf  F
           14   67    14       p1eqp2  Z
           17   67    15       p3eqp4  Z
           34   36    16          len  F
           38   40    16          len  F
           43   67    16      nSplits  I
           44   67    17            l  [F
           45   67    18            r  [F
           46   67    19         kind  I
           47   67    20           it  Lsun/java2d/marlin/Curve$BreakPtrIterator;
           49   58    21  curCurveOff  I
    MethodParameters:
      Name  Flags
      x1    
      y1    
      x2    
      y2    
      x3    
      y3    

  public void quadTo(float, float, float, float);
    descriptor: (FFFF)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=12, locals=18, args_size=5
        start local 0 // sun.java2d.marlin.Stroker this
        start local 1 // float x1
        start local 2 // float y1
        start local 3 // float x2
        start local 4 // float y2
         0: .line 1124
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.middle:[F
            astore 5 /* mid */
        start local 5 // float[] mid
         1: .line 1126
            aload 5 /* mid */
            iconst_0
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cx0:F
            fastore
            aload 5 /* mid */
            iconst_1
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cy0:F
            fastore
         2: .line 1127
            aload 5 /* mid */
            iconst_2
            fload 1 /* x1 */
            fastore
            aload 5 /* mid */
            iconst_3
            fload 2 /* y1 */
            fastore
         3: .line 1128
            aload 5 /* mid */
            iconst_4
            fload 3 /* x2 */
            fastore
            aload 5 /* mid */
            iconst_5
            fload 4 /* y2 */
            fastore
         4: .line 1134
            aload 5 /* mid */
            iconst_4
            faload
            fstore 6 /* xf */
        start local 6 // float xf
         5: aload 5 /* mid */
            iconst_5
            faload
            fstore 7 /* yf */
        start local 7 // float yf
         6: .line 1135
            aload 5 /* mid */
            iconst_2
            faload
            aload 5 /* mid */
            iconst_0
            faload
            fsub
            fstore 8 /* dxs */
        start local 8 // float dxs
         7: .line 1136
            aload 5 /* mid */
            iconst_3
            faload
            aload 5 /* mid */
            iconst_1
            faload
            fsub
            fstore 9 /* dys */
        start local 9 // float dys
         8: .line 1137
            aload 5 /* mid */
            iconst_4
            faload
            aload 5 /* mid */
            iconst_2
            faload
            fsub
            fstore 10 /* dxf */
        start local 10 // float dxf
         9: .line 1138
            aload 5 /* mid */
            iconst_5
            faload
            aload 5 /* mid */
            iconst_3
            faload
            fsub
            fstore 11 /* dyf */
        start local 11 // float dyf
        10: .line 1139
            fload 8 /* dxs */
            fconst_0
            fcmpl
            ifne 11
            fload 9 /* dys */
            fconst_0
            fcmpl
            ifeq 12
      StackMap locals: sun.java2d.marlin.Stroker float float float float float[] float float float float float float
      StackMap stack:
        11: fload 10 /* dxf */
            fconst_0
            fcmpl
            ifne 14
            fload 11 /* dyf */
            fconst_0
            fcmpl
            ifne 14
        12: .line 1140
      StackMap locals:
      StackMap stack:
            aload 5 /* mid */
            iconst_4
            faload
            aload 5 /* mid */
            iconst_0
            faload
            fsub
            dup
            fstore 10 /* dxf */
            fstore 8 /* dxs */
        13: .line 1141
            aload 5 /* mid */
            iconst_5
            faload
            aload 5 /* mid */
            iconst_1
            faload
            fsub
            dup
            fstore 11 /* dyf */
            fstore 9 /* dys */
        14: .line 1143
      StackMap locals:
      StackMap stack:
            fload 8 /* dxs */
            fconst_0
            fcmpl
            ifne 17
            fload 9 /* dys */
            fconst_0
            fcmpl
            ifne 17
        15: .line 1145
            aload 0 /* this */
            aload 5 /* mid */
            iconst_0
            faload
            aload 5 /* mid */
            iconst_1
            faload
            invokevirtual sun.java2d.marlin.Stroker.lineTo:(FF)V
        16: .line 1146
            return
        17: .line 1150
      StackMap locals:
      StackMap stack:
            fload 8 /* dxs */
            invokestatic java.lang.Math.abs:(F)F
            ldc 0.1
            fcmpg
            ifge 21
            fload 9 /* dys */
            invokestatic java.lang.Math.abs:(F)F
            ldc 0.1
            fcmpg
            ifge 21
        18: .line 1151
            fload 8 /* dxs */
            fload 8 /* dxs */
            fmul
            fload 9 /* dys */
            fload 9 /* dys */
            fmul
            fadd
            f2d
            invokestatic java.lang.Math.sqrt:(D)D
            d2f
            fstore 12 /* len */
        start local 12 // float len
        19: .line 1152
            fload 8 /* dxs */
            fload 12 /* len */
            fdiv
            fstore 8 /* dxs */
        20: .line 1153
            fload 9 /* dys */
            fload 12 /* len */
            fdiv
            fstore 9 /* dys */
        end local 12 // float len
        21: .line 1155
      StackMap locals:
      StackMap stack:
            fload 10 /* dxf */
            invokestatic java.lang.Math.abs:(F)F
            ldc 0.1
            fcmpg
            ifge 25
            fload 11 /* dyf */
            invokestatic java.lang.Math.abs:(F)F
            ldc 0.1
            fcmpg
            ifge 25
        22: .line 1156
            fload 10 /* dxf */
            fload 10 /* dxf */
            fmul
            fload 11 /* dyf */
            fload 11 /* dyf */
            fmul
            fadd
            f2d
            invokestatic java.lang.Math.sqrt:(D)D
            d2f
            fstore 12 /* len */
        start local 12 // float len
        23: .line 1157
            fload 10 /* dxf */
            fload 12 /* len */
            fdiv
            fstore 10 /* dxf */
        24: .line 1158
            fload 11 /* dyf */
            fload 12 /* len */
            fdiv
            fstore 11 /* dyf */
        end local 12 // float len
        25: .line 1161
      StackMap locals:
      StackMap stack:
            fload 8 /* dxs */
            fload 9 /* dys */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.lineWidth2:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset0:[F
            invokestatic sun.java2d.marlin.Stroker.computeOffset:(FFF[F)V
        26: .line 1162
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cdx:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cdy:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cx0:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cy0:F
            fload 8 /* dxs */
            fload 9 /* dys */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cmx:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.cmy:F
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset0:[F
            iconst_0
            faload
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.offset0:[F
            iconst_1
            faload
            invokevirtual sun.java2d.marlin.Stroker.drawJoin:(FFFFFFFFFF)V
        27: .line 1164
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.curve:Lsun/java2d/marlin/Curve;
            aload 5 /* mid */
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.subdivTs:[F
            bipush 6
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.lineWidth2:F
            invokestatic sun.java2d.marlin.Stroker.findSubdivPoints:(Lsun/java2d/marlin/Curve;[F[FIF)I
            istore 12 /* nSplits */
        start local 12 // int nSplits
        28: .line 1166
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.lp:[F
            astore 13 /* l */
        start local 13 // float[] l
        29: .line 1167
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.rp:[F
            astore 14 /* r */
        start local 14 // float[] r
        30: .line 1169
            iconst_0
            istore 15 /* kind */
        start local 15 // int kind
        31: .line 1170
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.curve:Lsun/java2d/marlin/Curve;
            aload 5 /* mid */
            bipush 6
            aload 0 /* this */
            getfield sun.java2d.marlin.Stroker.subdivTs:[F
            iload 12 /* nSplits */
            invokevirtual sun.java2d.marlin.Curve.breakPtsAtTs:([FI[FI)Lsun/java2d/marlin/Curve$BreakPtrIterator;
            astore 16 /* it */
        start local 16 // sun.java2d.marlin.Curve$BreakPtrIterator it
        32: .line 1171
            goto 43
        33: .line 1172
      StackMap locals: sun.java2d.marlin.Stroker float float float float float[] float float float float float float int float[] float[] int sun.java2d.marlin.Curve$BreakPtrIterator
      StackMap stack:
            aload 16 /* it */
            invokevirtual sun.java2d.marlin.Curve$BreakPtrIterator.next:()I
            istore 17 /* curCurveOff */
        start local 17 // int curCurveOff
        34: .line 1174
            aload 0 /* this */
            aload 5 /* mid */
            iload 17 /* curCurveOff */
            aload 13 /* l */
            aload 14 /* r */
            invokevirtual sun.java2d.marlin.Stroker.computeOffsetQuad:([FI[F[F)I
            istore 15 /* kind */
        35: .line 1175
            aload 0 /* this */
            aload 13 /* l */
            iconst_0
            faload
            aload 13 /* l */
            iconst_1
            faload
            invokevirtual sun.java2d.marlin.Stroker.emitLineTo:(FF)V
        36: .line 1177
            iload 15 /* kind */
            tableswitch { // 4 - 6
                    4: 40
                    5: 42
                    6: 37
              default: 42
          }
        37: .line 1179
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 13 /* l */
            iconst_2
            faload
            aload 13 /* l */
            iconst_3
            faload
            aload 13 /* l */
            iconst_4
            faload
            aload 13 /* l */
            iconst_5
            faload
            invokevirtual sun.java2d.marlin.Stroker.emitQuadTo:(FFFF)V
        38: .line 1180
            aload 0 /* this */
            aload 14 /* r */
            iconst_0
            faload
            aload 14 /* r */
            iconst_1
            faload
            aload 14 /* r */
            iconst_2
            faload
            aload 14 /* r */
            iconst_3
            faload
            invokevirtual sun.java2d.marlin.Stroker.emitQuadToRev:(FFFF)V
        39: .line 1181
            goto 42
        40: .line 1183
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 13 /* l */
            iconst_2
            faload
            aload 13 /* l */
            iconst_3
            faload
            invokevirtual sun.java2d.marlin.Stroker.emitLineTo:(FF)V
        41: .line 1184
            aload 0 /* this */
            aload 14 /* r */
            iconst_0
            faload
            aload 14 /* r */
            iconst_1
            faload
            invokevirtual sun.java2d.marlin.Stroker.emitLineToRev:(FF)V
        42: .line 1188
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 14 /* r */
            iload 15 /* kind */
            iconst_2
            isub
            faload
            aload 14 /* r */
            iload 15 /* kind */
            iconst_1
            isub
            faload
            invokevirtual sun.java2d.marlin.Stroker.emitLineToRev:(FF)V
        end local 17 // int curCurveOff
        43: .line 1171
      StackMap locals:
      StackMap stack:
            aload 16 /* it */
            invokevirtual sun.java2d.marlin.Curve$BreakPtrIterator.hasNext:()Z
            ifne 33
        44: .line 1191
            aload 0 /* this */
            aload 13 /* l */
            iload 15 /* kind */
            iconst_2
            isub
            faload
            aload 14 /* r */
            iload 15 /* kind */
            iconst_2
            isub
            faload
            fsub
            fconst_2
            fdiv
            putfield sun.java2d.marlin.Stroker.cmx:F
        45: .line 1192
            aload 0 /* this */
            aload 13 /* l */
            iload 15 /* kind */
            iconst_1
            isub
            faload
            aload 14 /* r */
            iload 15 /* kind */
            iconst_1
            isub
            faload
            fsub
            fconst_2
            fdiv
            putfield sun.java2d.marlin.Stroker.cmy:F
        46: .line 1193
            aload 0 /* this */
            fload 10 /* dxf */
            putfield sun.java2d.marlin.Stroker.cdx:F
        47: .line 1194
            aload 0 /* this */
            fload 11 /* dyf */
            putfield sun.java2d.marlin.Stroker.cdy:F
        48: .line 1195
            aload 0 /* this */
            fload 6 /* xf */
            putfield sun.java2d.marlin.Stroker.cx0:F
        49: .line 1196
            aload 0 /* this */
            fload 7 /* yf */
            putfield sun.java2d.marlin.Stroker.cy0:F
        50: .line 1197
            aload 0 /* this */
            iconst_1
            putfield sun.java2d.marlin.Stroker.prev:I
        51: .line 1198
            return
        end local 16 // sun.java2d.marlin.Curve$BreakPtrIterator it
        end local 15 // int kind
        end local 14 // float[] r
        end local 13 // float[] l
        end local 12 // int nSplits
        end local 11 // float dyf
        end local 10 // float dxf
        end local 9 // float dys
        end local 8 // float dxs
        end local 7 // float yf
        end local 6 // float xf
        end local 5 // float[] mid
        end local 4 // float y2
        end local 3 // float x2
        end local 2 // float y1
        end local 1 // float x1
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   52     0         this  Lsun/java2d/marlin/Stroker;
            0   52     1           x1  F
            0   52     2           y1  F
            0   52     3           x2  F
            0   52     4           y2  F
            1   52     5          mid  [F
            5   52     6           xf  F
            6   52     7           yf  F
            7   52     8          dxs  F
            8   52     9          dys  F
            9   52    10          dxf  F
           10   52    11          dyf  F
           19   21    12          len  F
           23   25    12          len  F
           28   52    12      nSplits  I
           29   52    13            l  [F
           30   52    14            r  [F
           31   52    15         kind  I
           32   52    16           it  Lsun/java2d/marlin/Curve$BreakPtrIterator;
           34   43    17  curCurveOff  I
    MethodParameters:
      Name  Flags
      x1    
      y1    
      x2    
      y2    

  public long getNativeConsumer();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.java2d.marlin.Stroker this
         0: .line 1201
            new java.lang.InternalError
            dup
            ldc "Stroker doesn't use a native consumer"
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // sun.java2d.marlin.Stroker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/java2d/marlin/Stroker;
}
SourceFile: "Stroker.java"
NestMembers:
  sun.java2d.marlin.Stroker$PolyStack
InnerClasses:
  final BreakPtrIterator = sun.java2d.marlin.Curve$BreakPtrIterator of sun.java2d.marlin.Curve
  final PolyStack = sun.java2d.marlin.Stroker$PolyStack of sun.java2d.marlin.Stroker