public abstract class java.awt.geom.Path2D implements java.awt.Shape, java.lang.Cloneable
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: java.awt.geom.Path2D
  super_class: java.lang.Object
{
  public static final int WIND_EVEN_ODD;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

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

  private static final byte SEG_MOVETO;
    descriptor: B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final byte SEG_LINETO;
    descriptor: B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  private static final byte SEG_QUADTO;
    descriptor: B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static final byte SEG_CUBICTO;
    descriptor: B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  private static final byte SEG_CLOSE;
    descriptor: B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 4

  transient byte[] pointTypes;
    descriptor: [B
    flags: (0x0080) ACC_TRANSIENT

  transient int numTypes;
    descriptor: I
    flags: (0x0080) ACC_TRANSIENT

  transient int numCoords;
    descriptor: I
    flags: (0x0080) ACC_TRANSIENT

  transient int windingRule;
    descriptor: I
    flags: (0x0080) ACC_TRANSIENT

  static final int INIT_SIZE;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 20

  static final int EXPAND_MAX;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 500

  static final int EXPAND_MAX_COORDS;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 1000

  static final int EXPAND_MIN;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 10

  private static final byte SERIAL_STORAGE_FLT_ARRAY;
    descriptor: B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 48

  private static final byte SERIAL_STORAGE_DBL_ARRAY;
    descriptor: B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 49

  private static final byte SERIAL_SEG_FLT_MOVETO;
    descriptor: B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 64

  private static final byte SERIAL_SEG_FLT_LINETO;
    descriptor: B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 65

  private static final byte SERIAL_SEG_FLT_QUADTO;
    descriptor: B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 66

  private static final byte SERIAL_SEG_FLT_CUBICTO;
    descriptor: B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 67

  private static final byte SERIAL_SEG_DBL_MOVETO;
    descriptor: B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 80

  private static final byte SERIAL_SEG_DBL_LINETO;
    descriptor: B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 81

  private static final byte SERIAL_SEG_DBL_QUADTO;
    descriptor: B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 82

  private static final byte SERIAL_SEG_DBL_CUBICTO;
    descriptor: B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 83

  private static final byte SERIAL_SEG_CLOSE;
    descriptor: B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 96

  private static final byte SERIAL_PATH_END;
    descriptor: B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 97

  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 71
            ldc Ljava/awt/geom/Path2D;
            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 java.awt.geom.Path2D.$assertionsDisabled:Z
         3: .line 2491
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.awt.geom.Path2D this
         0: .line 116
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 117
            return
        end local 0 // java.awt.geom.Path2D this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/awt/geom/Path2D;

  void <init>(int, int);
    descriptor: (II)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // java.awt.geom.Path2D this
        start local 1 // int rule
        start local 2 // int initialTypes
         0: .line 132
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 133
            aload 0 /* this */
            iload 1 /* rule */
            invokevirtual java.awt.geom.Path2D.setWindingRule:(I)V
         2: .line 134
            aload 0 /* this */
            iload 2 /* initialTypes */
            newarray 8
            putfield java.awt.geom.Path2D.pointTypes:[B
         3: .line 135
            return
        end local 2 // int initialTypes
        end local 1 // int rule
        end local 0 // java.awt.geom.Path2D this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Ljava/awt/geom/Path2D;
            0    4     1          rule  I
            0    4     2  initialTypes  I
    MethodParameters:
              Name  Flags
      rule          
      initialTypes  

  abstract float[] cloneCoordsFloat(java.awt.geom.AffineTransform);
    descriptor: (Ljava/awt/geom/AffineTransform;)[F
    flags: (0x0400) ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      at    

  abstract double[] cloneCoordsDouble(java.awt.geom.AffineTransform);
    descriptor: (Ljava/awt/geom/AffineTransform;)[D
    flags: (0x0400) ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      at    

  abstract void append(float, float);
    descriptor: (FF)V
    flags: (0x0400) ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      x     
      y     

  abstract void append(double, double);
    descriptor: (DD)V
    flags: (0x0400) ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      x     
      y     

  abstract java.awt.geom.Point2D getPoint(int);
    descriptor: (I)Ljava/awt/geom/Point2D;
    flags: (0x0400) ACC_ABSTRACT
    MethodParameters:
            Name  Flags
      coordindex  

  abstract void needRoom(boolean, int);
    descriptor: (ZI)V
    flags: (0x0400) ACC_ABSTRACT
    MethodParameters:
           Name  Flags
      needMove   
      newCoords  

  abstract int pointCrossings(double, double);
    descriptor: (DD)I
    flags: (0x0400) ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      px    
      py    

  abstract int rectCrossings(double, double, double, double);
    descriptor: (DDDD)I
    flags: (0x0400) ACC_ABSTRACT
    MethodParameters:
       Name  Flags
      rxmin  
      rymin  
      rxmax  
      rymax  

  static byte[] expandPointTypes(byte[], int);
    descriptor: ([BI)[B
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // byte[] oldPointTypes
        start local 1 // int needed
         0: .line 148
            aload 0 /* oldPointTypes */
            arraylength
            istore 2 /* oldSize */
        start local 2 // int oldSize
         1: .line 149
            iload 2 /* oldSize */
            iload 1 /* needed */
            iadd
            istore 3 /* newSizeMin */
        start local 3 // int newSizeMin
         2: .line 150
            iload 3 /* newSizeMin */
            iload 2 /* oldSize */
            if_icmpge 6
         3: .line 153
            new java.lang.ArrayIndexOutOfBoundsException
            dup
         4: .line 154
            ldc "pointTypes exceeds maximum capacity !"
         5: .line 153
            invokespecial java.lang.ArrayIndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 157
      StackMap locals: int int
      StackMap stack:
            iload 2 /* oldSize */
            istore 4 /* grow */
        start local 4 // int grow
         7: .line 158
            iload 4 /* grow */
            sipush 500
            if_icmple 10
         8: .line 159
            sipush 500
            iload 2 /* oldSize */
            iconst_3
            ishr
            invokestatic java.lang.Math.max:(II)I
            istore 4 /* grow */
         9: .line 160
            goto 12
      StackMap locals: int
      StackMap stack:
        10: iload 4 /* grow */
            bipush 10
            if_icmpge 12
        11: .line 161
            bipush 10
            istore 4 /* grow */
        12: .line 163
      StackMap locals:
      StackMap stack:
            getstatic java.awt.geom.Path2D.$assertionsDisabled:Z
            ifne 13
            iload 4 /* grow */
            ifgt 13
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        13: .line 165
      StackMap locals:
      StackMap stack:
            iload 2 /* oldSize */
            iload 4 /* grow */
            iadd
            istore 5 /* newSize */
        start local 5 // int newSize
        14: .line 166
            iload 5 /* newSize */
            iload 3 /* newSizeMin */
            if_icmpge 16
        15: .line 168
            ldc 2147483647
            istore 5 /* newSize */
        16: .line 173
      StackMap locals: int
      StackMap stack:
            aload 0 /* oldPointTypes */
            iload 5 /* newSize */
            invokestatic java.util.Arrays.copyOf:([BI)[B
        17: areturn
        18: .line 174
      StackMap locals:
      StackMap stack: java.lang.OutOfMemoryError
            astore 6 /* oome */
        start local 6 // java.lang.OutOfMemoryError oome
        19: .line 175
            iload 5 /* newSize */
            iload 3 /* newSizeMin */
            if_icmpne 21
        20: .line 176
            aload 6 /* oome */
            athrow
        end local 6 // java.lang.OutOfMemoryError oome
        21: .line 179
      StackMap locals:
      StackMap stack:
            iload 3 /* newSizeMin */
            iload 5 /* newSize */
            iload 3 /* newSizeMin */
            isub
            iconst_2
            idiv
            iadd
            istore 5 /* newSize */
        22: .line 170
            goto 16
        end local 5 // int newSize
        end local 4 // int grow
        end local 3 // int newSizeMin
        end local 2 // int oldSize
        end local 1 // int needed
        end local 0 // byte[] oldPointTypes
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   23     0  oldPointTypes  [B
            0   23     1         needed  I
            1   23     2        oldSize  I
            2   23     3     newSizeMin  I
            7   23     4           grow  I
           14   23     5        newSize  I
           19   21     6           oome  Ljava/lang/OutOfMemoryError;
      Exception table:
        from    to  target  type
          16    17      18  Class java.lang.OutOfMemoryError
    MethodParameters:
               Name  Flags
      oldPointTypes  
      needed         

  public abstract void moveTo(double, double);
    descriptor: (DD)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      x     
      y     

  public abstract void lineTo(double, double);
    descriptor: (DD)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      x     
      y     

  public abstract void quadTo(double, double, double, double);
    descriptor: (DDDD)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      x1    
      y1    
      x2    
      y2    

  public abstract void curveTo(double, double, double, double, double, double);
    descriptor: (DDDDDD)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      x1    
      y1    
      x2    
      y2    
      x3    
      y3    

  public final synchronized void closePath();
    descriptor: ()V
    flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SYNCHRONIZED
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // java.awt.geom.Path2D this
         0: .line 1876
            aload 0 /* this */
            getfield java.awt.geom.Path2D.numTypes:I
            ifeq 1
            aload 0 /* this */
            getfield java.awt.geom.Path2D.pointTypes:[B
            aload 0 /* this */
            getfield java.awt.geom.Path2D.numTypes:I
            iconst_1
            isub
            baload
            iconst_4
            if_icmpeq 3
         1: .line 1877
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            iconst_0
            invokevirtual java.awt.geom.Path2D.needRoom:(ZI)V
         2: .line 1878
            aload 0 /* this */
            getfield java.awt.geom.Path2D.pointTypes:[B
            aload 0 /* this */
            dup
            getfield java.awt.geom.Path2D.numTypes:I
            dup_x1
            iconst_1
            iadd
            putfield java.awt.geom.Path2D.numTypes:I
            iconst_4
            bastore
         3: .line 1880
      StackMap locals:
      StackMap stack:
            return
        end local 0 // java.awt.geom.Path2D this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/awt/geom/Path2D;

  public final void append(java.awt.Shape, boolean);
    descriptor: (Ljava/awt/Shape;Z)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.awt.geom.Path2D this
        start local 1 // java.awt.Shape s
        start local 2 // boolean connect
         0: .line 1905
            aload 0 /* this */
            aload 1 /* s */
            aconst_null
            invokeinterface java.awt.Shape.getPathIterator:(Ljava/awt/geom/AffineTransform;)Ljava/awt/geom/PathIterator;
            iload 2 /* connect */
            invokevirtual java.awt.geom.Path2D.append:(Ljava/awt/geom/PathIterator;Z)V
         1: .line 1906
            return
        end local 2 // boolean connect
        end local 1 // java.awt.Shape s
        end local 0 // java.awt.geom.Path2D this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Ljava/awt/geom/Path2D;
            0    2     1        s  Ljava/awt/Shape;
            0    2     2  connect  Z
    MethodParameters:
         Name  Flags
      s        
      connect  

  public abstract void append(java.awt.geom.PathIterator, boolean);
    descriptor: (Ljava/awt/geom/PathIterator;Z)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
         Name  Flags
      pi       
      connect  

  public final synchronized int getWindingRule();
    descriptor: ()I
    flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.awt.geom.Path2D this
         0: .line 1943
            aload 0 /* this */
            getfield java.awt.geom.Path2D.windingRule:I
            ireturn
        end local 0 // java.awt.geom.Path2D this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/geom/Path2D;

  public final void setWindingRule(int);
    descriptor: (I)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.awt.geom.Path2D this
        start local 1 // int rule
         0: .line 1959
            iload 1 /* rule */
            ifeq 2
            iload 1 /* rule */
            iconst_1
            if_icmpeq 2
         1: .line 1960
            new java.lang.IllegalArgumentException
            dup
            ldc "winding rule must be WIND_EVEN_ODD or WIND_NON_ZERO"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1964
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* rule */
            putfield java.awt.geom.Path2D.windingRule:I
         3: .line 1965
            return
        end local 1 // int rule
        end local 0 // java.awt.geom.Path2D this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/awt/geom/Path2D;
            0    4     1  rule  I
    MethodParameters:
      Name  Flags
      rule  

  public final synchronized java.awt.geom.Point2D getCurrentPoint();
    descriptor: ()Ljava/awt/geom/Point2D;
    flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // java.awt.geom.Path2D this
         0: .line 1976
            aload 0 /* this */
            getfield java.awt.geom.Path2D.numCoords:I
            istore 1 /* index */
        start local 1 // int index
         1: .line 1977
            aload 0 /* this */
            getfield java.awt.geom.Path2D.numTypes:I
            iconst_1
            if_icmplt 2
            iload 1 /* index */
            iconst_1
            if_icmpge 3
         2: .line 1978
      StackMap locals: int
      StackMap stack:
            aconst_null
            areturn
         3: .line 1980
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.geom.Path2D.pointTypes:[B
            aload 0 /* this */
            getfield java.awt.geom.Path2D.numTypes:I
            iconst_1
            isub
            baload
            iconst_4
            if_icmpne 16
         4: .line 1982
            aload 0 /* this */
            getfield java.awt.geom.Path2D.numTypes:I
            iconst_2
            isub
            istore 2 /* i */
        start local 2 // int i
         5: goto 15
         6: .line 1983
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.geom.Path2D.pointTypes:[B
            iload 2 /* i */
            baload
            tableswitch { // 0 - 4
                    0: 7
                    1: 8
                    2: 10
                    3: 12
                    4: 14
              default: 14
          }
         7: .line 1985
      StackMap locals:
      StackMap stack:
            goto 16
         8: .line 1987
      StackMap locals:
      StackMap stack:
            iinc 1 /* index */ -2
         9: .line 1988
            goto 14
        10: .line 1990
      StackMap locals:
      StackMap stack:
            iinc 1 /* index */ -4
        11: .line 1991
            goto 14
        12: .line 1993
      StackMap locals:
      StackMap stack:
            iinc 1 /* index */ -6
        13: .line 1994
            goto 14
        14: .line 1982
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ -1
      StackMap locals:
      StackMap stack:
        15: iload 2 /* i */
            ifgt 6
        end local 2 // int i
        16: .line 2000
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* index */
            iconst_2
            isub
            invokevirtual java.awt.geom.Path2D.getPoint:(I)Ljava/awt/geom/Point2D;
            areturn
        end local 1 // int index
        end local 0 // java.awt.geom.Path2D this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   17     0   this  Ljava/awt/geom/Path2D;
            1   17     1  index  I
            5   16     2      i  I

  public final synchronized void reset();
    descriptor: ()V
    flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // java.awt.geom.Path2D this
         0: .line 2011
            aload 0 /* this */
            aload 0 /* this */
            iconst_0
            dup_x1
            putfield java.awt.geom.Path2D.numCoords:I
            putfield java.awt.geom.Path2D.numTypes:I
         1: .line 2012
            return
        end local 0 // java.awt.geom.Path2D this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/awt/geom/Path2D;

  public abstract void transform(java.awt.geom.AffineTransform);
    descriptor: (Ljava/awt/geom/AffineTransform;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      at    

  public final synchronized java.awt.Shape createTransformedShape(java.awt.geom.AffineTransform);
    descriptor: (Ljava/awt/geom/AffineTransform;)Ljava/awt/Shape;
    flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.awt.geom.Path2D this
        start local 1 // java.awt.geom.AffineTransform at
         0: .line 2047
            aload 0 /* this */
            invokevirtual java.awt.geom.Path2D.clone:()Ljava/lang/Object;
            checkcast java.awt.geom.Path2D
            astore 2 /* p2d */
        start local 2 // java.awt.geom.Path2D p2d
         1: .line 2048
            aload 1 /* at */
            ifnull 3
         2: .line 2049
            aload 2 /* p2d */
            aload 1 /* at */
            invokevirtual java.awt.geom.Path2D.transform:(Ljava/awt/geom/AffineTransform;)V
         3: .line 2051
      StackMap locals: java.awt.geom.Path2D
      StackMap stack:
            aload 2 /* p2d */
            areturn
        end local 2 // java.awt.geom.Path2D p2d
        end local 1 // java.awt.geom.AffineTransform at
        end local 0 // java.awt.geom.Path2D this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/awt/geom/Path2D;
            0    4     1    at  Ljava/awt/geom/AffineTransform;
            1    4     2   p2d  Ljava/awt/geom/Path2D;
    MethodParameters:
      Name  Flags
      at    

  public final java.awt.Rectangle getBounds();
    descriptor: ()Ljava/awt/Rectangle;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.awt.geom.Path2D this
         0: .line 2059
            aload 0 /* this */
            invokevirtual java.awt.geom.Path2D.getBounds2D:()Ljava/awt/geom/Rectangle2D;
            invokevirtual java.awt.geom.Rectangle2D.getBounds:()Ljava/awt/Rectangle;
            areturn
        end local 0 // java.awt.geom.Path2D this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/geom/Path2D;

  public static boolean contains(java.awt.geom.PathIterator, double, double);
    descriptor: (Ljava/awt/geom/PathIterator;DD)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=7, args_size=3
        start local 0 // java.awt.geom.PathIterator pi
        start local 1 // double x
        start local 3 // double y
         0: .line 2078
            dload 1 /* x */
            dconst_0
            dmul
            dload 3 /* y */
            dconst_0
            dmul
            dadd
            dconst_0
            dcmpl
            ifne 7
         1: .line 2082
            aload 0 /* pi */
            invokeinterface java.awt.geom.PathIterator.getWindingRule:()I
            iconst_1
            if_icmpne 2
            iconst_m1
            goto 3
      StackMap locals:
      StackMap stack:
         2: iconst_1
      StackMap locals:
      StackMap stack: int
         3: istore 5 /* mask */
        start local 5 // int mask
         4: .line 2083
            aload 0 /* pi */
            dload 1 /* x */
            dload 3 /* y */
            invokestatic sun.awt.geom.Curve.pointCrossingsForPath:(Ljava/awt/geom/PathIterator;DD)I
            istore 6 /* cross */
        start local 6 // int cross
         5: .line 2084
            iload 6 /* cross */
            iload 5 /* mask */
            iand
            ifeq 6
            iconst_1
            ireturn
      StackMap locals: int int
      StackMap stack:
         6: iconst_0
            ireturn
        end local 6 // int cross
        end local 5 // int mask
         7: .line 2091
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 3 // double y
        end local 1 // double x
        end local 0 // java.awt.geom.PathIterator pi
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0     pi  Ljava/awt/geom/PathIterator;
            0    8     1      x  D
            0    8     3      y  D
            4    7     5   mask  I
            5    7     6  cross  I
    MethodParameters:
      Name  Flags
      pi    
      x     
      y     

  public static boolean contains(java.awt.geom.PathIterator, java.awt.geom.Point2D);
    descriptor: (Ljava/awt/geom/PathIterator;Ljava/awt/geom/Point2D;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.awt.geom.PathIterator pi
        start local 1 // java.awt.geom.Point2D p
         0: .line 2110
            aload 0 /* pi */
            aload 1 /* p */
            invokevirtual java.awt.geom.Point2D.getX:()D
            aload 1 /* p */
            invokevirtual java.awt.geom.Point2D.getY:()D
            invokestatic java.awt.geom.Path2D.contains:(Ljava/awt/geom/PathIterator;DD)Z
            ireturn
        end local 1 // java.awt.geom.Point2D p
        end local 0 // java.awt.geom.PathIterator pi
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    pi  Ljava/awt/geom/PathIterator;
            0    1     1     p  Ljava/awt/geom/Point2D;
    MethodParameters:
      Name  Flags
      pi    
      p     

  public final boolean contains(double, double);
    descriptor: (DD)Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=6, locals=6, args_size=3
        start local 0 // java.awt.geom.Path2D this
        start local 1 // double x
        start local 3 // double y
         0: .line 2118
            dload 1 /* x */
            dconst_0
            dmul
            dload 3 /* y */
            dconst_0
            dmul
            dadd
            dconst_0
            dcmpl
            ifne 8
         1: .line 2122
            aload 0 /* this */
            getfield java.awt.geom.Path2D.numTypes:I
            iconst_2
            if_icmpge 3
         2: .line 2123
            iconst_0
            ireturn
         3: .line 2125
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.geom.Path2D.windingRule:I
            iconst_1
            if_icmpne 4
            iconst_m1
            goto 5
      StackMap locals:
      StackMap stack:
         4: iconst_1
      StackMap locals:
      StackMap stack: int
         5: istore 5 /* mask */
        start local 5 // int mask
         6: .line 2126
            aload 0 /* this */
            dload 1 /* x */
            dload 3 /* y */
            invokevirtual java.awt.geom.Path2D.pointCrossings:(DD)I
            iload 5 /* mask */
            iand
            ifeq 7
            iconst_1
            ireturn
      StackMap locals: int
      StackMap stack:
         7: iconst_0
            ireturn
        end local 5 // int mask
         8: .line 2133
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 3 // double y
        end local 1 // double x
        end local 0 // java.awt.geom.Path2D this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Ljava/awt/geom/Path2D;
            0    9     1     x  D
            0    9     3     y  D
            6    8     5  mask  I
    MethodParameters:
      Name  Flags
      x     
      y     

  public final boolean contains(java.awt.geom.Point2D);
    descriptor: (Ljava/awt/geom/Point2D;)Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.awt.geom.Path2D this
        start local 1 // java.awt.geom.Point2D p
         0: .line 2142
            aload 0 /* this */
            aload 1 /* p */
            invokevirtual java.awt.geom.Point2D.getX:()D
            aload 1 /* p */
            invokevirtual java.awt.geom.Point2D.getY:()D
            invokevirtual java.awt.geom.Path2D.contains:(DD)Z
            ireturn
        end local 1 // java.awt.geom.Point2D p
        end local 0 // java.awt.geom.Path2D this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/geom/Path2D;
            0    1     1     p  Ljava/awt/geom/Point2D;
    MethodParameters:
      Name  Flags
      p     

  public static boolean contains(java.awt.geom.PathIterator, double, double, double, double);
    descriptor: (Ljava/awt/geom/PathIterator;DDDD)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=11, locals=11, args_size=5
        start local 0 // java.awt.geom.PathIterator pi
        start local 1 // double x
        start local 3 // double y
        start local 5 // double w
        start local 7 // double h
         0: .line 2179
            dload 1 /* x */
            dload 5 /* w */
            dadd
            invokestatic java.lang.Double.isNaN:(D)Z
            ifne 1
            dload 3 /* y */
            dload 7 /* h */
            dadd
            invokestatic java.lang.Double.isNaN:(D)Z
            ifeq 2
         1: .line 2188
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 2190
      StackMap locals:
      StackMap stack:
            dload 5 /* w */
            dconst_0
            dcmpg
            ifle 3
            dload 7 /* h */
            dconst_0
            dcmpg
            ifgt 4
         3: .line 2191
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         4: .line 2193
      StackMap locals:
      StackMap stack:
            aload 0 /* pi */
            invokeinterface java.awt.geom.PathIterator.getWindingRule:()I
            iconst_1
            if_icmpne 5
            iconst_m1
            goto 6
      StackMap locals:
      StackMap stack:
         5: iconst_2
      StackMap locals:
      StackMap stack: int
         6: istore 9 /* mask */
        start local 9 // int mask
         7: .line 2194
            aload 0 /* pi */
            dload 1 /* x */
            dload 3 /* y */
            dload 1 /* x */
            dload 5 /* w */
            dadd
            dload 3 /* y */
            dload 7 /* h */
            dadd
            invokestatic sun.awt.geom.Curve.rectCrossingsForPath:(Ljava/awt/geom/PathIterator;DDDD)I
            istore 10 /* crossings */
        start local 10 // int crossings
         8: .line 2195
            iload 10 /* crossings */
            ldc -2147483648
            if_icmpeq 11
         9: .line 2196
            iload 10 /* crossings */
            iload 9 /* mask */
            iand
            ifeq 11
        10: .line 2195
            iconst_1
            ireturn
      StackMap locals: int int
      StackMap stack:
        11: iconst_0
            ireturn
        end local 10 // int crossings
        end local 9 // int mask
        end local 7 // double h
        end local 5 // double w
        end local 3 // double y
        end local 1 // double x
        end local 0 // java.awt.geom.PathIterator pi
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0         pi  Ljava/awt/geom/PathIterator;
            0   12     1          x  D
            0   12     3          y  D
            0   12     5          w  D
            0   12     7          h  D
            7   12     9       mask  I
            8   12    10  crossings  I
    MethodParameters:
      Name  Flags
      pi    
      x     
      y     
      w     
      h     

  public static boolean contains(java.awt.geom.PathIterator, java.awt.geom.Rectangle2D);
    descriptor: (Ljava/awt/geom/PathIterator;Ljava/awt/geom/Rectangle2D;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=9, locals=2, args_size=2
        start local 0 // java.awt.geom.PathIterator pi
        start local 1 // java.awt.geom.Rectangle2D r
         0: .line 2228
            aload 0 /* pi */
            aload 1 /* r */
            invokevirtual java.awt.geom.Rectangle2D.getX:()D
            aload 1 /* r */
            invokevirtual java.awt.geom.Rectangle2D.getY:()D
            aload 1 /* r */
            invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
            aload 1 /* r */
            invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
            invokestatic java.awt.geom.Path2D.contains:(Ljava/awt/geom/PathIterator;DDDD)Z
            ireturn
        end local 1 // java.awt.geom.Rectangle2D r
        end local 0 // java.awt.geom.PathIterator pi
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    pi  Ljava/awt/geom/PathIterator;
            0    1     1     r  Ljava/awt/geom/Rectangle2D;
    MethodParameters:
      Name  Flags
      pi    
      r     

  public final boolean contains(double, double, double, double);
    descriptor: (DDDD)Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=11, locals=11, args_size=5
        start local 0 // java.awt.geom.Path2D this
        start local 1 // double x
        start local 3 // double y
        start local 5 // double w
        start local 7 // double h
         0: .line 2251
            dload 1 /* x */
            dload 5 /* w */
            dadd
            invokestatic java.lang.Double.isNaN:(D)Z
            ifne 1
            dload 3 /* y */
            dload 7 /* h */
            dadd
            invokestatic java.lang.Double.isNaN:(D)Z
            ifeq 2
         1: .line 2260
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 2262
      StackMap locals:
      StackMap stack:
            dload 5 /* w */
            dconst_0
            dcmpg
            ifle 3
            dload 7 /* h */
            dconst_0
            dcmpg
            ifgt 4
         3: .line 2263
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         4: .line 2265
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.geom.Path2D.windingRule:I
            iconst_1
            if_icmpne 5
            iconst_m1
            goto 6
      StackMap locals:
      StackMap stack:
         5: iconst_2
      StackMap locals:
      StackMap stack: int
         6: istore 9 /* mask */
        start local 9 // int mask
         7: .line 2266
            aload 0 /* this */
            dload 1 /* x */
            dload 3 /* y */
            dload 1 /* x */
            dload 5 /* w */
            dadd
            dload 3 /* y */
            dload 7 /* h */
            dadd
            invokevirtual java.awt.geom.Path2D.rectCrossings:(DDDD)I
            istore 10 /* crossings */
        start local 10 // int crossings
         8: .line 2267
            iload 10 /* crossings */
            ldc -2147483648
            if_icmpeq 11
         9: .line 2268
            iload 10 /* crossings */
            iload 9 /* mask */
            iand
            ifeq 11
        10: .line 2267
            iconst_1
            ireturn
      StackMap locals: int int
      StackMap stack:
        11: iconst_0
            ireturn
        end local 10 // int crossings
        end local 9 // int mask
        end local 7 // double h
        end local 5 // double w
        end local 3 // double y
        end local 1 // double x
        end local 0 // java.awt.geom.Path2D this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0       this  Ljava/awt/geom/Path2D;
            0   12     1          x  D
            0   12     3          y  D
            0   12     5          w  D
            0   12     7          h  D
            7   12     9       mask  I
            8   12    10  crossings  I
    MethodParameters:
      Name  Flags
      x     
      y     
      w     
      h     

  public final boolean contains(java.awt.geom.Rectangle2D);
    descriptor: (Ljava/awt/geom/Rectangle2D;)Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=9, locals=2, args_size=2
        start local 0 // java.awt.geom.Path2D this
        start local 1 // java.awt.geom.Rectangle2D r
         0: .line 2291
            aload 0 /* this */
            aload 1 /* r */
            invokevirtual java.awt.geom.Rectangle2D.getX:()D
            aload 1 /* r */
            invokevirtual java.awt.geom.Rectangle2D.getY:()D
            aload 1 /* r */
            invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
            aload 1 /* r */
            invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
            invokevirtual java.awt.geom.Path2D.contains:(DDDD)Z
            ireturn
        end local 1 // java.awt.geom.Rectangle2D r
        end local 0 // java.awt.geom.Path2D this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/geom/Path2D;
            0    1     1     r  Ljava/awt/geom/Rectangle2D;
    MethodParameters:
      Name  Flags
      r     

  public static boolean intersects(java.awt.geom.PathIterator, double, double, double, double);
    descriptor: (Ljava/awt/geom/PathIterator;DDDD)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=11, locals=11, args_size=5
        start local 0 // java.awt.geom.PathIterator pi
        start local 1 // double x
        start local 3 // double y
        start local 5 // double w
        start local 7 // double h
         0: .line 2329
            dload 1 /* x */
            dload 5 /* w */
            dadd
            invokestatic java.lang.Double.isNaN:(D)Z
            ifne 1
            dload 3 /* y */
            dload 7 /* h */
            dadd
            invokestatic java.lang.Double.isNaN:(D)Z
            ifeq 2
         1: .line 2338
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 2340
      StackMap locals:
      StackMap stack:
            dload 5 /* w */
            dconst_0
            dcmpg
            ifle 3
            dload 7 /* h */
            dconst_0
            dcmpg
            ifgt 4
         3: .line 2341
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         4: .line 2343
      StackMap locals:
      StackMap stack:
            aload 0 /* pi */
            invokeinterface java.awt.geom.PathIterator.getWindingRule:()I
            iconst_1
            if_icmpne 5
            iconst_m1
            goto 6
      StackMap locals:
      StackMap stack:
         5: iconst_2
      StackMap locals:
      StackMap stack: int
         6: istore 9 /* mask */
        start local 9 // int mask
         7: .line 2344
            aload 0 /* pi */
            dload 1 /* x */
            dload 3 /* y */
            dload 1 /* x */
            dload 5 /* w */
            dadd
            dload 3 /* y */
            dload 7 /* h */
            dadd
            invokestatic sun.awt.geom.Curve.rectCrossingsForPath:(Ljava/awt/geom/PathIterator;DDDD)I
            istore 10 /* crossings */
        start local 10 // int crossings
         8: .line 2345
            iload 10 /* crossings */
            ldc -2147483648
            if_icmpeq 11
         9: .line 2346
            iload 10 /* crossings */
            iload 9 /* mask */
            iand
            ifne 11
        10: .line 2345
            iconst_0
            ireturn
      StackMap locals: int int
      StackMap stack:
        11: iconst_1
            ireturn
        end local 10 // int crossings
        end local 9 // int mask
        end local 7 // double h
        end local 5 // double w
        end local 3 // double y
        end local 1 // double x
        end local 0 // java.awt.geom.PathIterator pi
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0         pi  Ljava/awt/geom/PathIterator;
            0   12     1          x  D
            0   12     3          y  D
            0   12     5          w  D
            0   12     7          h  D
            7   12     9       mask  I
            8   12    10  crossings  I
    MethodParameters:
      Name  Flags
      pi    
      x     
      y     
      w     
      h     

  public static boolean intersects(java.awt.geom.PathIterator, java.awt.geom.Rectangle2D);
    descriptor: (Ljava/awt/geom/PathIterator;Ljava/awt/geom/Rectangle2D;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=9, locals=2, args_size=2
        start local 0 // java.awt.geom.PathIterator pi
        start local 1 // java.awt.geom.Rectangle2D r
         0: .line 2378
            aload 0 /* pi */
            aload 1 /* r */
            invokevirtual java.awt.geom.Rectangle2D.getX:()D
            aload 1 /* r */
            invokevirtual java.awt.geom.Rectangle2D.getY:()D
            aload 1 /* r */
            invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
            aload 1 /* r */
            invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
            invokestatic java.awt.geom.Path2D.intersects:(Ljava/awt/geom/PathIterator;DDDD)Z
            ireturn
        end local 1 // java.awt.geom.Rectangle2D r
        end local 0 // java.awt.geom.PathIterator pi
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    pi  Ljava/awt/geom/PathIterator;
            0    1     1     r  Ljava/awt/geom/Rectangle2D;
    MethodParameters:
      Name  Flags
      pi    
      r     

  public final boolean intersects(double, double, double, double);
    descriptor: (DDDD)Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=11, locals=11, args_size=5
        start local 0 // java.awt.geom.Path2D this
        start local 1 // double x
        start local 3 // double y
        start local 5 // double w
        start local 7 // double h
         0: .line 2400
            dload 1 /* x */
            dload 5 /* w */
            dadd
            invokestatic java.lang.Double.isNaN:(D)Z
            ifne 1
            dload 3 /* y */
            dload 7 /* h */
            dadd
            invokestatic java.lang.Double.isNaN:(D)Z
            ifeq 2
         1: .line 2409
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 2411
      StackMap locals:
      StackMap stack:
            dload 5 /* w */
            dconst_0
            dcmpg
            ifle 3
            dload 7 /* h */
            dconst_0
            dcmpg
            ifgt 4
         3: .line 2412
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         4: .line 2414
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.geom.Path2D.windingRule:I
            iconst_1
            if_icmpne 5
            iconst_m1
            goto 6
      StackMap locals:
      StackMap stack:
         5: iconst_2
      StackMap locals:
      StackMap stack: int
         6: istore 9 /* mask */
        start local 9 // int mask
         7: .line 2415
            aload 0 /* this */
            dload 1 /* x */
            dload 3 /* y */
            dload 1 /* x */
            dload 5 /* w */
            dadd
            dload 3 /* y */
            dload 7 /* h */
            dadd
            invokevirtual java.awt.geom.Path2D.rectCrossings:(DDDD)I
            istore 10 /* crossings */
        start local 10 // int crossings
         8: .line 2416
            iload 10 /* crossings */
            ldc -2147483648
            if_icmpeq 11
         9: .line 2417
            iload 10 /* crossings */
            iload 9 /* mask */
            iand
            ifne 11
        10: .line 2416
            iconst_0
            ireturn
      StackMap locals: int int
      StackMap stack:
        11: iconst_1
            ireturn
        end local 10 // int crossings
        end local 9 // int mask
        end local 7 // double h
        end local 5 // double w
        end local 3 // double y
        end local 1 // double x
        end local 0 // java.awt.geom.Path2D this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0       this  Ljava/awt/geom/Path2D;
            0   12     1          x  D
            0   12     3          y  D
            0   12     5          w  D
            0   12     7          h  D
            7   12     9       mask  I
            8   12    10  crossings  I
    MethodParameters:
      Name  Flags
      x     
      y     
      w     
      h     

  public final boolean intersects(java.awt.geom.Rectangle2D);
    descriptor: (Ljava/awt/geom/Rectangle2D;)Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=9, locals=2, args_size=2
        start local 0 // java.awt.geom.Path2D this
        start local 1 // java.awt.geom.Rectangle2D r
         0: .line 2439
            aload 0 /* this */
            aload 1 /* r */
            invokevirtual java.awt.geom.Rectangle2D.getX:()D
            aload 1 /* r */
            invokevirtual java.awt.geom.Rectangle2D.getY:()D
            aload 1 /* r */
            invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
            aload 1 /* r */
            invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
            invokevirtual java.awt.geom.Path2D.intersects:(DDDD)Z
            ireturn
        end local 1 // java.awt.geom.Rectangle2D r
        end local 0 // java.awt.geom.Path2D this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/geom/Path2D;
            0    1     1     r  Ljava/awt/geom/Rectangle2D;
    MethodParameters:
      Name  Flags
      r     

  public final java.awt.geom.PathIterator getPathIterator(java.awt.geom.AffineTransform, double);
    descriptor: (Ljava/awt/geom/AffineTransform;D)Ljava/awt/geom/PathIterator;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // java.awt.geom.Path2D this
        start local 1 // java.awt.geom.AffineTransform at
        start local 2 // double flatness
         0: .line 2456
            new java.awt.geom.FlatteningPathIterator
            dup
            aload 0 /* this */
            aload 1 /* at */
            invokevirtual java.awt.geom.Path2D.getPathIterator:(Ljava/awt/geom/AffineTransform;)Ljava/awt/geom/PathIterator;
            dload 2 /* flatness */
            invokespecial java.awt.geom.FlatteningPathIterator.<init>:(Ljava/awt/geom/PathIterator;D)V
            areturn
        end local 2 // double flatness
        end local 1 // java.awt.geom.AffineTransform at
        end local 0 // java.awt.geom.Path2D this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Ljava/awt/geom/Path2D;
            0    1     1        at  Ljava/awt/geom/AffineTransform;
            0    1     2  flatness  D
    MethodParameters:
          Name  Flags
      at        
      flatness  

  public abstract java.lang.Object clone();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  final void writeObject(java.io.ObjectOutputStream, boolean);
    descriptor: (Ljava/io/ObjectOutputStream;Z)V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=3, locals=10, args_size=3
        start local 0 // java.awt.geom.Path2D this
        start local 1 // java.io.ObjectOutputStream s
        start local 2 // boolean isdbl
         0: .line 2496
            aload 1 /* s */
            invokevirtual java.io.ObjectOutputStream.defaultWriteObject:()V
         1: .line 2501
            iload 2 /* isdbl */
            ifeq 5
         2: .line 2502
            aload 0 /* this */
            checkcast java.awt.geom.Path2D$Double
            getfield java.awt.geom.Path2D$Double.doubleCoords:[D
            astore 4 /* dCoords */
        start local 4 // double[] dCoords
         3: .line 2503
            aconst_null
            astore 3 /* fCoords */
        start local 3 // float[] fCoords
         4: .line 2504
            goto 7
        end local 4 // double[] dCoords
        end local 3 // float[] fCoords
         5: .line 2505
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            checkcast java.awt.geom.Path2D$Float
            getfield java.awt.geom.Path2D$Float.floatCoords:[F
            astore 3 /* fCoords */
        start local 3 // float[] fCoords
         6: .line 2506
            aconst_null
            astore 4 /* dCoords */
        start local 4 // double[] dCoords
         7: .line 2509
      StackMap locals: float[] double[]
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.geom.Path2D.numTypes:I
            istore 5 /* numTypes */
        start local 5 // int numTypes
         8: .line 2511
            aload 1 /* s */
            iload 2 /* isdbl */
            ifeq 10
         9: .line 2512
            bipush 49
            goto 11
        10: .line 2513
      StackMap locals: java.awt.geom.Path2D java.io.ObjectOutputStream int float[] double[] int
      StackMap stack: java.io.ObjectOutputStream
            bipush 48
        11: .line 2511
      StackMap locals: java.awt.geom.Path2D java.io.ObjectOutputStream int float[] double[] int
      StackMap stack: java.io.ObjectOutputStream int
            invokevirtual java.io.ObjectOutputStream.writeByte:(I)V
        12: .line 2514
            aload 1 /* s */
            iload 5 /* numTypes */
            invokevirtual java.io.ObjectOutputStream.writeInt:(I)V
        13: .line 2515
            aload 1 /* s */
            aload 0 /* this */
            getfield java.awt.geom.Path2D.numCoords:I
            invokevirtual java.io.ObjectOutputStream.writeInt:(I)V
        14: .line 2516
            aload 1 /* s */
            aload 0 /* this */
            getfield java.awt.geom.Path2D.windingRule:I
            i2b
            invokevirtual java.io.ObjectOutputStream.writeByte:(I)V
        15: .line 2518
            iconst_0
            istore 6 /* cindex */
        start local 6 // int cindex
        16: .line 2519
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        17: goto 57
        18: .line 2522
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.geom.Path2D.pointTypes:[B
            iload 7 /* i */
            baload
            tableswitch { // 0 - 4
                    0: 19
                    1: 25
                    2: 31
                    3: 37
                    4: 43
              default: 46
          }
        19: .line 2524
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 8 /* npoints */
        start local 8 // int npoints
        20: .line 2525
            iload 2 /* isdbl */
            ifeq 22
        21: .line 2526
            bipush 80
            goto 23
        22: .line 2527
      StackMap locals: int
      StackMap stack:
            bipush 64
        23: .line 2525
      StackMap locals:
      StackMap stack: int
            istore 9 /* serialtype */
        start local 9 // byte serialtype
        24: .line 2528
            goto 47
        end local 9 // byte serialtype
        end local 8 // int npoints
        25: .line 2530
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 8 /* npoints */
        start local 8 // int npoints
        26: .line 2531
            iload 2 /* isdbl */
            ifeq 28
        27: .line 2532
            bipush 81
            goto 29
        28: .line 2533
      StackMap locals: int
      StackMap stack:
            bipush 65
        29: .line 2531
      StackMap locals:
      StackMap stack: int
            istore 9 /* serialtype */
        start local 9 // byte serialtype
        30: .line 2534
            goto 47
        end local 9 // byte serialtype
        end local 8 // int npoints
        31: .line 2536
      StackMap locals:
      StackMap stack:
            iconst_2
            istore 8 /* npoints */
        start local 8 // int npoints
        32: .line 2537
            iload 2 /* isdbl */
            ifeq 34
        33: .line 2538
            bipush 82
            goto 35
        34: .line 2539
      StackMap locals: int
      StackMap stack:
            bipush 66
        35: .line 2537
      StackMap locals:
      StackMap stack: int
            istore 9 /* serialtype */
        start local 9 // byte serialtype
        36: .line 2540
            goto 47
        end local 9 // byte serialtype
        end local 8 // int npoints
        37: .line 2542
      StackMap locals:
      StackMap stack:
            iconst_3
            istore 8 /* npoints */
        start local 8 // int npoints
        38: .line 2543
            iload 2 /* isdbl */
            ifeq 40
        39: .line 2544
            bipush 83
            goto 41
        40: .line 2545
      StackMap locals: int
      StackMap stack:
            bipush 67
        41: .line 2543
      StackMap locals:
      StackMap stack: int
            istore 9 /* serialtype */
        start local 9 // byte serialtype
        42: .line 2546
            goto 47
        end local 9 // byte serialtype
        end local 8 // int npoints
        43: .line 2548
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 8 /* npoints */
        start local 8 // int npoints
        44: .line 2549
            bipush 96
            istore 9 /* serialtype */
        start local 9 // byte serialtype
        45: .line 2550
            goto 47
        end local 9 // byte serialtype
        end local 8 // int npoints
        46: .line 2554
      StackMap locals:
      StackMap stack:
            new java.lang.InternalError
            dup
            ldc "unrecognized path type"
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
        start local 8 // int npoints
        start local 9 // byte serialtype
        47: .line 2556
      StackMap locals: int int
      StackMap stack:
            aload 1 /* s */
            iload 9 /* serialtype */
            invokevirtual java.io.ObjectOutputStream.writeByte:(I)V
        48: .line 2557
            goto 55
        49: .line 2558
      StackMap locals:
      StackMap stack:
            iload 2 /* isdbl */
            ifeq 53
        50: .line 2559
            aload 1 /* s */
            aload 4 /* dCoords */
            iload 6 /* cindex */
            iinc 6 /* cindex */ 1
            daload
            invokevirtual java.io.ObjectOutputStream.writeDouble:(D)V
        51: .line 2560
            aload 1 /* s */
            aload 4 /* dCoords */
            iload 6 /* cindex */
            iinc 6 /* cindex */ 1
            daload
            invokevirtual java.io.ObjectOutputStream.writeDouble:(D)V
        52: .line 2561
            goto 55
        53: .line 2562
      StackMap locals:
      StackMap stack:
            aload 1 /* s */
            aload 3 /* fCoords */
            iload 6 /* cindex */
            iinc 6 /* cindex */ 1
            faload
            invokevirtual java.io.ObjectOutputStream.writeFloat:(F)V
        54: .line 2563
            aload 1 /* s */
            aload 3 /* fCoords */
            iload 6 /* cindex */
            iinc 6 /* cindex */ 1
            faload
            invokevirtual java.io.ObjectOutputStream.writeFloat:(F)V
        55: .line 2557
      StackMap locals:
      StackMap stack:
            iinc 8 /* npoints */ -1
            iload 8 /* npoints */
            ifge 49
        end local 9 // byte serialtype
        end local 8 // int npoints
        56: .line 2519
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        57: iload 7 /* i */
            iload 5 /* numTypes */
            if_icmplt 18
        end local 7 // int i
        58: .line 2567
            aload 1 /* s */
            bipush 97
            invokevirtual java.io.ObjectOutputStream.writeByte:(I)V
        59: .line 2568
            return
        end local 6 // int cindex
        end local 5 // int numTypes
        end local 4 // double[] dCoords
        end local 3 // float[] fCoords
        end local 2 // boolean isdbl
        end local 1 // java.io.ObjectOutputStream s
        end local 0 // java.awt.geom.Path2D this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   60     0        this  Ljava/awt/geom/Path2D;
            0   60     1           s  Ljava/io/ObjectOutputStream;
            0   60     2       isdbl  Z
            4    5     3     fCoords  [F
            6   60     3     fCoords  [F
            3    5     4     dCoords  [D
            7   60     4     dCoords  [D
            8   60     5    numTypes  I
           16   60     6      cindex  I
           17   58     7           i  I
           20   25     8     npoints  I
           26   31     8     npoints  I
           32   37     8     npoints  I
           38   43     8     npoints  I
           44   46     8     npoints  I
           47   56     8     npoints  I
           24   25     9  serialtype  B
           30   31     9  serialtype  B
           36   37     9  serialtype  B
           42   43     9  serialtype  B
           45   46     9  serialtype  B
           47   56     9  serialtype  B
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      s      
      isdbl  

  final void readObject(java.io.ObjectInputStream, boolean);
    descriptor: (Ljava/io/ObjectInputStream;Z)V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=5, locals=10, args_size=3
        start local 0 // java.awt.geom.Path2D this
        start local 1 // java.io.ObjectInputStream s
        start local 2 // boolean storedbl
         0: .line 2573
            aload 1 /* s */
            invokevirtual java.io.ObjectInputStream.defaultReadObject:()V
         1: .line 2578
            aload 1 /* s */
            invokevirtual java.io.ObjectInputStream.readByte:()B
            pop
         2: .line 2579
            aload 1 /* s */
            invokevirtual java.io.ObjectInputStream.readInt:()I
            istore 3 /* nT */
        start local 3 // int nT
         3: .line 2580
            aload 1 /* s */
            invokevirtual java.io.ObjectInputStream.readInt:()I
            istore 4 /* nC */
        start local 4 // int nC
         4: .line 2582
            aload 0 /* this */
            aload 1 /* s */
            invokevirtual java.io.ObjectInputStream.readByte:()B
            invokevirtual java.awt.geom.Path2D.setWindingRule:(I)V
         5: .line 2583
            goto 8
      StackMap locals: java.awt.geom.Path2D java.io.ObjectInputStream int int int
      StackMap stack: java.lang.IllegalArgumentException
         6: astore 5 /* iae */
        start local 5 // java.lang.IllegalArgumentException iae
         7: .line 2584
            new java.io.InvalidObjectException
            dup
            aload 5 /* iae */
            invokevirtual java.lang.IllegalArgumentException.getMessage:()Ljava/lang/String;
            invokespecial java.io.InvalidObjectException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // java.lang.IllegalArgumentException iae
         8: .line 2589
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 3 /* nT */
            iflt 9
            iload 3 /* nT */
            bipush 20
            if_icmple 10
      StackMap locals:
      StackMap stack: java.awt.geom.Path2D
         9: bipush 20
            goto 11
      StackMap locals:
      StackMap stack: java.awt.geom.Path2D
        10: iload 3 /* nT */
      StackMap locals: java.awt.geom.Path2D java.io.ObjectInputStream int int int
      StackMap stack: java.awt.geom.Path2D int
        11: newarray 8
            putfield java.awt.geom.Path2D.pointTypes:[B
        12: .line 2591
            iload 4 /* nC */
            iflt 13
            iload 4 /* nC */
            bipush 40
            if_icmple 14
        13: .line 2592
      StackMap locals:
      StackMap stack:
            bipush 40
            istore 4 /* nC */
        14: .line 2594
      StackMap locals:
      StackMap stack:
            iload 2 /* storedbl */
            ifeq 17
        15: .line 2595
            aload 0 /* this */
            checkcast java.awt.geom.Path2D$Double
            iload 4 /* nC */
            newarray 7
            putfield java.awt.geom.Path2D$Double.doubleCoords:[D
        16: .line 2596
            goto 18
        17: .line 2597
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            checkcast java.awt.geom.Path2D$Float
            iload 4 /* nC */
            newarray 6
            putfield java.awt.geom.Path2D$Float.floatCoords:[F
        18: .line 2601
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        19: goto 74
        20: .line 2606
      StackMap locals: int
      StackMap stack:
            aload 1 /* s */
            invokevirtual java.io.ObjectInputStream.readByte:()B
            istore 9 /* serialtype */
        start local 9 // byte serialtype
        21: .line 2607
            iload 9 /* serialtype */
            lookupswitch { // 10
                   64: 22
                   65: 26
                   66: 30
                   67: 34
                   80: 38
                   81: 42
                   82: 46
                   83: 50
                   96: 54
                   97: 58
              default: 61
          }
        22: .line 2609
      StackMap locals: java.awt.geom.Path2D java.io.ObjectInputStream int int int int top top top int
      StackMap stack:
            iconst_0
            istore 6 /* isdbl */
        start local 6 // boolean isdbl
        23: .line 2610
            iconst_1
            istore 7 /* npoints */
        start local 7 // int npoints
        24: .line 2611
            iconst_0
            istore 8 /* segtype */
        start local 8 // byte segtype
        25: .line 2612
            goto 62
        end local 8 // byte segtype
        end local 7 // int npoints
        end local 6 // boolean isdbl
        26: .line 2614
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 6 /* isdbl */
        start local 6 // boolean isdbl
        27: .line 2615
            iconst_1
            istore 7 /* npoints */
        start local 7 // int npoints
        28: .line 2616
            iconst_1
            istore 8 /* segtype */
        start local 8 // byte segtype
        29: .line 2617
            goto 62
        end local 8 // byte segtype
        end local 7 // int npoints
        end local 6 // boolean isdbl
        30: .line 2619
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 6 /* isdbl */
        start local 6 // boolean isdbl
        31: .line 2620
            iconst_2
            istore 7 /* npoints */
        start local 7 // int npoints
        32: .line 2621
            iconst_2
            istore 8 /* segtype */
        start local 8 // byte segtype
        33: .line 2622
            goto 62
        end local 8 // byte segtype
        end local 7 // int npoints
        end local 6 // boolean isdbl
        34: .line 2624
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 6 /* isdbl */
        start local 6 // boolean isdbl
        35: .line 2625
            iconst_3
            istore 7 /* npoints */
        start local 7 // int npoints
        36: .line 2626
            iconst_3
            istore 8 /* segtype */
        start local 8 // byte segtype
        37: .line 2627
            goto 62
        end local 8 // byte segtype
        end local 7 // int npoints
        end local 6 // boolean isdbl
        38: .line 2630
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 6 /* isdbl */
        start local 6 // boolean isdbl
        39: .line 2631
            iconst_1
            istore 7 /* npoints */
        start local 7 // int npoints
        40: .line 2632
            iconst_0
            istore 8 /* segtype */
        start local 8 // byte segtype
        41: .line 2633
            goto 62
        end local 8 // byte segtype
        end local 7 // int npoints
        end local 6 // boolean isdbl
        42: .line 2635
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 6 /* isdbl */
        start local 6 // boolean isdbl
        43: .line 2636
            iconst_1
            istore 7 /* npoints */
        start local 7 // int npoints
        44: .line 2637
            iconst_1
            istore 8 /* segtype */
        start local 8 // byte segtype
        45: .line 2638
            goto 62
        end local 8 // byte segtype
        end local 7 // int npoints
        end local 6 // boolean isdbl
        46: .line 2640
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 6 /* isdbl */
        start local 6 // boolean isdbl
        47: .line 2641
            iconst_2
            istore 7 /* npoints */
        start local 7 // int npoints
        48: .line 2642
            iconst_2
            istore 8 /* segtype */
        start local 8 // byte segtype
        49: .line 2643
            goto 62
        end local 8 // byte segtype
        end local 7 // int npoints
        end local 6 // boolean isdbl
        50: .line 2645
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 6 /* isdbl */
        start local 6 // boolean isdbl
        51: .line 2646
            iconst_3
            istore 7 /* npoints */
        start local 7 // int npoints
        52: .line 2647
            iconst_3
            istore 8 /* segtype */
        start local 8 // byte segtype
        53: .line 2648
            goto 62
        end local 8 // byte segtype
        end local 7 // int npoints
        end local 6 // boolean isdbl
        54: .line 2651
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 6 /* isdbl */
        start local 6 // boolean isdbl
        55: .line 2652
            iconst_0
            istore 7 /* npoints */
        start local 7 // int npoints
        56: .line 2653
            iconst_4
            istore 8 /* segtype */
        start local 8 // byte segtype
        57: .line 2654
            goto 62
        end local 8 // byte segtype
        end local 7 // int npoints
        end local 6 // boolean isdbl
        58: .line 2657
      StackMap locals:
      StackMap stack:
            iload 3 /* nT */
            ifge 60
        59: .line 2658
            goto 75
        60: .line 2660
      StackMap locals:
      StackMap stack:
            new java.io.StreamCorruptedException
            dup
            ldc "unexpected PATH_END"
            invokespecial java.io.StreamCorruptedException.<init>:(Ljava/lang/String;)V
            athrow
        61: .line 2663
      StackMap locals:
      StackMap stack:
            new java.io.StreamCorruptedException
            dup
            ldc "unrecognized path type"
            invokespecial java.io.StreamCorruptedException.<init>:(Ljava/lang/String;)V
            athrow
        start local 6 // boolean isdbl
        start local 7 // int npoints
        start local 8 // byte segtype
        62: .line 2665
      StackMap locals: java.awt.geom.Path2D java.io.ObjectInputStream int int int int int int int int
      StackMap stack:
            aload 0 /* this */
            iload 8 /* segtype */
            ifeq 63
            iconst_1
            goto 64
      StackMap locals:
      StackMap stack: java.awt.geom.Path2D
        63: iconst_0
      StackMap locals: java.awt.geom.Path2D java.io.ObjectInputStream int int int int int int int int
      StackMap stack: java.awt.geom.Path2D int
        64: iload 7 /* npoints */
            iconst_2
            imul
            invokevirtual java.awt.geom.Path2D.needRoom:(ZI)V
        65: .line 2666
            iload 6 /* isdbl */
            ifeq 71
        66: .line 2667
            goto 68
        67: .line 2668
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* s */
            invokevirtual java.io.ObjectInputStream.readDouble:()D
            aload 1 /* s */
            invokevirtual java.io.ObjectInputStream.readDouble:()D
            invokevirtual java.awt.geom.Path2D.append:(DD)V
        68: .line 2667
      StackMap locals:
      StackMap stack:
            iinc 7 /* npoints */ -1
            iload 7 /* npoints */
            ifge 67
        69: .line 2670
            goto 72
        70: .line 2672
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* s */
            invokevirtual java.io.ObjectInputStream.readFloat:()F
            aload 1 /* s */
            invokevirtual java.io.ObjectInputStream.readFloat:()F
            invokevirtual java.awt.geom.Path2D.append:(FF)V
        71: .line 2671
      StackMap locals:
      StackMap stack:
            iinc 7 /* npoints */ -1
            iload 7 /* npoints */
            ifge 70
        72: .line 2675
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.geom.Path2D.pointTypes:[B
            aload 0 /* this */
            dup
            getfield java.awt.geom.Path2D.numTypes:I
            dup_x1
            iconst_1
            iadd
            putfield java.awt.geom.Path2D.numTypes:I
            iload 8 /* segtype */
            bastore
        end local 9 // byte serialtype
        end local 8 // byte segtype
        end local 7 // int npoints
        end local 6 // boolean isdbl
        73: .line 2601
            iinc 5 /* i */ 1
      StackMap locals: java.awt.geom.Path2D java.io.ObjectInputStream int int int int
      StackMap stack:
        74: iload 3 /* nT */
            iflt 20
            iload 5 /* i */
            iload 3 /* nT */
            if_icmplt 20
        end local 5 // int i
        75: .line 2677
      StackMap locals:
      StackMap stack:
            iload 3 /* nT */
            iflt 77
            aload 1 /* s */
            invokevirtual java.io.ObjectInputStream.readByte:()B
            bipush 97
            if_icmpeq 77
        76: .line 2678
            new java.io.StreamCorruptedException
            dup
            ldc "missing PATH_END"
            invokespecial java.io.StreamCorruptedException.<init>:(Ljava/lang/String;)V
            athrow
        77: .line 2680
      StackMap locals:
      StackMap stack:
            return
        end local 4 // int nC
        end local 3 // int nT
        end local 2 // boolean storedbl
        end local 1 // java.io.ObjectInputStream s
        end local 0 // java.awt.geom.Path2D this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   78     0        this  Ljava/awt/geom/Path2D;
            0   78     1           s  Ljava/io/ObjectInputStream;
            0   78     2    storedbl  Z
            3   78     3          nT  I
            4   78     4          nC  I
            7    8     5         iae  Ljava/lang/IllegalArgumentException;
           19   75     5           i  I
           23   26     6       isdbl  Z
           27   30     6       isdbl  Z
           31   34     6       isdbl  Z
           35   38     6       isdbl  Z
           39   42     6       isdbl  Z
           43   46     6       isdbl  Z
           47   50     6       isdbl  Z
           51   54     6       isdbl  Z
           55   58     6       isdbl  Z
           62   73     6       isdbl  Z
           24   26     7     npoints  I
           28   30     7     npoints  I
           32   34     7     npoints  I
           36   38     7     npoints  I
           40   42     7     npoints  I
           44   46     7     npoints  I
           48   50     7     npoints  I
           52   54     7     npoints  I
           56   58     7     npoints  I
           62   73     7     npoints  I
           25   26     8     segtype  B
           29   30     8     segtype  B
           33   34     8     segtype  B
           37   38     8     segtype  B
           41   42     8     segtype  B
           45   46     8     segtype  B
           49   50     8     segtype  B
           53   54     8     segtype  B
           57   58     8     segtype  B
           62   73     8     segtype  B
           21   73     9  serialtype  B
      Exception table:
        from    to  target  type
           4     5       6  Class java.lang.IllegalArgumentException
    Exceptions:
      throws java.lang.ClassNotFoundException, java.io.IOException
    MethodParameters:
          Name  Flags
      s         
      storedbl  
}
SourceFile: "Path2D.java"
NestMembers:
  java.awt.geom.Path2D$Double  java.awt.geom.Path2D$Double$CopyIterator  java.awt.geom.Path2D$Double$TxIterator  java.awt.geom.Path2D$Float  java.awt.geom.Path2D$Float$CopyIterator  java.awt.geom.Path2D$Float$TxIterator  java.awt.geom.Path2D$Iterator
InnerClasses:
  public Double = java.awt.geom.Path2D$Double of java.awt.geom.Path2D
  public Float = java.awt.geom.Path2D$Float of java.awt.geom.Path2D
  abstract Iterator = java.awt.geom.Path2D$Iterator of java.awt.geom.Path2D