class com.sun.prism.impl.MeshUtil
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.sun.prism.impl.MeshUtil
  super_class: java.lang.Object
{
  static final float NORMAL_WELD_COS;
    descriptor: F
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 0.9952

  static final float TANGENT_WELD_COS;
    descriptor: F
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 0.866

  static final float G_UV_PARALLEL;
    descriptor: F
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 0.9988

  static final float COS_1_DEGREE;
    descriptor: F
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 0.9998477

  static final float BIG_ENOUGH_NORMA2;
    descriptor: F
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 0.0625

  static final double PI;
    descriptor: D
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 3.141592653589793

  static final float INV_SQRT2;
    descriptor: F
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 0.70710677

  static final float DEAD_FACE;
    descriptor: F
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 9.094947E-13

  static final float MAGIC_SMALL;
    descriptor: F
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 1.0E-10

  static final float COS110;
    descriptor: F
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: -0.33333334

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.prism.impl.MeshUtil this
         0: .line 48
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 49
            return
        end local 0 // com.sun.prism.impl.MeshUtil this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/prism/impl/MeshUtil;

  static boolean isDeadFace(float);
    descriptor: (F)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // float areaSquared
         0: .line 52
            fload 0 /* areaSquared */
            ldc 9.094947E-13
            fcmpg
            ifge 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // float areaSquared
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0  areaSquared  F
    MethodParameters:
             Name  Flags
      areaSquared  

  static boolean isDeadFace(int[]);
    descriptor: ([I)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // int[] f
         0: .line 56
            aload 0 /* f */
            iconst_0
            iaload
            aload 0 /* f */
            iconst_1
            iaload
            if_icmpeq 1
            aload 0 /* f */
            iconst_1
            iaload
            aload 0 /* f */
            iconst_2
            iaload
            if_icmpeq 1
            aload 0 /* f */
            iconst_2
            iaload
            aload 0 /* f */
            iconst_0
            iaload
            if_icmpeq 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // int[] f
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     f  [I
    MethodParameters:
      Name  Flags
      f     

  static boolean isNormalAlmostEqual(com.sun.javafx.geom.Vec3f, com.sun.javafx.geom.Vec3f);
    descriptor: (Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.javafx.geom.Vec3f n1
        start local 1 // com.sun.javafx.geom.Vec3f n2
         0: .line 60
            aload 0 /* n1 */
            aload 1 /* n2 */
            invokevirtual com.sun.javafx.geom.Vec3f.dot:(Lcom/sun/javafx/geom/Vec3f;)F
            ldc 0.9998477
            fcmpl
            iflt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // com.sun.javafx.geom.Vec3f n2
        end local 0 // com.sun.javafx.geom.Vec3f n1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0    n1  Lcom/sun/javafx/geom/Vec3f;
            0    2     1    n2  Lcom/sun/javafx/geom/Vec3f;
    MethodParameters:
      Name  Flags
      n1    
      n2    

  static boolean isTangentOk(com.sun.javafx.geom.Vec3f[], com.sun.javafx.geom.Vec3f[]);
    descriptor: ([Lcom/sun/javafx/geom/Vec3f;[Lcom/sun/javafx/geom/Vec3f;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.javafx.geom.Vec3f[] t1
        start local 1 // com.sun.javafx.geom.Vec3f[] t2
         0: .line 64
            aload 0 /* t1 */
            iconst_0
            aaload
            aload 1 /* t2 */
            iconst_0
            aaload
            invokevirtual com.sun.javafx.geom.Vec3f.dot:(Lcom/sun/javafx/geom/Vec3f;)F
            ldc 0.9952
            fcmpl
            iflt 4
         1: .line 65
            aload 0 /* t1 */
            iconst_1
            aaload
            aload 1 /* t2 */
            iconst_1
            aaload
            invokevirtual com.sun.javafx.geom.Vec3f.dot:(Lcom/sun/javafx/geom/Vec3f;)F
            ldc 0.866
            fcmpl
            iflt 4
         2: .line 66
            aload 0 /* t1 */
            iconst_2
            aaload
            aload 1 /* t2 */
            iconst_2
            aaload
            invokevirtual com.sun.javafx.geom.Vec3f.dot:(Lcom/sun/javafx/geom/Vec3f;)F
            ldc 0.866
         3: .line 64
            fcmpl
            iflt 4
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         4: iconst_0
            ireturn
        end local 1 // com.sun.javafx.geom.Vec3f[] t2
        end local 0 // com.sun.javafx.geom.Vec3f[] t1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0    t1  [Lcom/sun/javafx/geom/Vec3f;
            0    5     1    t2  [Lcom/sun/javafx/geom/Vec3f;
    MethodParameters:
      Name  Flags
      t1    
      t2    

  static boolean isNormalOkAfterWeld(com.sun.javafx.geom.Vec3f);
    descriptor: (Lcom/sun/javafx/geom/Vec3f;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.javafx.geom.Vec3f normalSum
         0: .line 70
            aload 0 /* normalSum */
            aload 0 /* normalSum */
            invokevirtual com.sun.javafx.geom.Vec3f.dot:(Lcom/sun/javafx/geom/Vec3f;)F
            ldc 0.0625
            fcmpl
            ifle 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.sun.javafx.geom.Vec3f normalSum
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0  normalSum  Lcom/sun/javafx/geom/Vec3f;
    MethodParameters:
           Name  Flags
      normalSum  

  static boolean isTangentOK(com.sun.javafx.geom.Vec3f[]);
    descriptor: ([Lcom/sun/javafx/geom/Vec3f;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.javafx.geom.Vec3f[] nSum
         0: .line 77
            aload 0 /* nSum */
            aload 0 /* nSum */
            invokestatic com.sun.prism.impl.MeshUtil.isTangentOk:([Lcom/sun/javafx/geom/Vec3f;[Lcom/sun/javafx/geom/Vec3f;)Z
            ireturn
        end local 0 // com.sun.javafx.geom.Vec3f[] nSum
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  nSum  [Lcom/sun/javafx/geom/Vec3f;
    MethodParameters:
      Name  Flags
      nSum  

  static boolean isOppositeLookingNormals(com.sun.javafx.geom.Vec3f[], com.sun.javafx.geom.Vec3f[]);
    descriptor: ([Lcom/sun/javafx/geom/Vec3f;[Lcom/sun/javafx/geom/Vec3f;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.sun.javafx.geom.Vec3f[] n1
        start local 1 // com.sun.javafx.geom.Vec3f[] n2
         0: .line 81
            aload 0 /* n1 */
            iconst_0
            aaload
            aload 1 /* n2 */
            iconst_0
            aaload
            invokevirtual com.sun.javafx.geom.Vec3f.dot:(Lcom/sun/javafx/geom/Vec3f;)F
            fstore 2 /* cosPhi */
        start local 2 // float cosPhi
         1: .line 82
            fload 2 /* cosPhi */
            ldc -0.33333334
            fcmpg
            ifge 2
            iconst_1
            ireturn
      StackMap locals: float
      StackMap stack:
         2: iconst_0
            ireturn
        end local 2 // float cosPhi
        end local 1 // com.sun.javafx.geom.Vec3f[] n2
        end local 0 // com.sun.javafx.geom.Vec3f[] n1
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0      n1  [Lcom/sun/javafx/geom/Vec3f;
            0    3     1      n2  [Lcom/sun/javafx/geom/Vec3f;
            1    3     2  cosPhi  F
    MethodParameters:
      Name  Flags
      n1    
      n2    

  static float fabs(float);
    descriptor: (F)F
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // float x
         0: .line 86
            fload 0 /* x */
            fconst_0
            fcmpg
            ifge 1
            fload 0 /* x */
            fneg
            goto 2
      StackMap locals:
      StackMap stack:
         1: fload 0 /* x */
      StackMap locals:
      StackMap stack: float
         2: freturn
        end local 0 // float x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     x  F
    MethodParameters:
      Name  Flags
      x     

  static void getOrt(com.sun.javafx.geom.Vec3f, com.sun.javafx.geom.Vec3f);
    descriptor: (Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.javafx.geom.Vec3f a
        start local 1 // com.sun.javafx.geom.Vec3f b
         0: .line 92
            aload 1 /* b */
            aload 0 /* a */
            aload 1 /* b */
            invokevirtual com.sun.javafx.geom.Vec3f.cross:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;)V
         1: .line 93
            aload 1 /* b */
            aload 1 /* b */
            aload 0 /* a */
            invokevirtual com.sun.javafx.geom.Vec3f.cross:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;)V
         2: .line 94
            return
        end local 1 // com.sun.javafx.geom.Vec3f b
        end local 0 // com.sun.javafx.geom.Vec3f a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     a  Lcom/sun/javafx/geom/Vec3f;
            0    3     1     b  Lcom/sun/javafx/geom/Vec3f;
    MethodParameters:
      Name  Flags
      a     
      b     

  static void orthogonalizeTB(com.sun.javafx.geom.Vec3f[]);
    descriptor: ([Lcom/sun/javafx/geom/Vec3f;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.sun.javafx.geom.Vec3f[] norm
         0: .line 99
            aload 0 /* norm */
            iconst_0
            aaload
            aload 0 /* norm */
            iconst_1
            aaload
            invokestatic com.sun.prism.impl.MeshUtil.getOrt:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;)V
         1: .line 100
            aload 0 /* norm */
            iconst_0
            aaload
            aload 0 /* norm */
            iconst_2
            aaload
            invokestatic com.sun.prism.impl.MeshUtil.getOrt:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;)V
         2: .line 101
            aload 0 /* norm */
            iconst_1
            aaload
            invokevirtual com.sun.javafx.geom.Vec3f.normalize:()V
         3: .line 102
            aload 0 /* norm */
            iconst_2
            aaload
            invokevirtual com.sun.javafx.geom.Vec3f.normalize:()V
         4: .line 103
            return
        end local 0 // com.sun.javafx.geom.Vec3f[] norm
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  norm  [Lcom/sun/javafx/geom/Vec3f;
    MethodParameters:
      Name  Flags
      norm  

  static void computeTBNNormalized(com.sun.javafx.geom.Vec3f, com.sun.javafx.geom.Vec3f, com.sun.javafx.geom.Vec3f, com.sun.javafx.geom.Vec2f, com.sun.javafx.geom.Vec2f, com.sun.javafx.geom.Vec2f, com.sun.javafx.geom.Vec3f[]);
    descriptor: (Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec2f;Lcom/sun/javafx/geom/Vec2f;Lcom/sun/javafx/geom/Vec2f;[Lcom/sun/javafx/geom/Vec3f;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=11, args_size=7
        start local 0 // com.sun.javafx.geom.Vec3f pa
        start local 1 // com.sun.javafx.geom.Vec3f pb
        start local 2 // com.sun.javafx.geom.Vec3f pc
        start local 3 // com.sun.javafx.geom.Vec2f ta
        start local 4 // com.sun.javafx.geom.Vec2f tb
        start local 5 // com.sun.javafx.geom.Vec2f tc
        start local 6 // com.sun.javafx.geom.Vec3f[] norm
         0: .line 107
            invokestatic com.sun.prism.impl.MeshTempState.getInstance:()Lcom/sun/prism/impl/MeshTempState;
            astore 7 /* instance */
        start local 7 // com.sun.prism.impl.MeshTempState instance
         1: .line 108
            aload 7 /* instance */
            getfield com.sun.prism.impl.MeshTempState.vec3f1:Lcom/sun/javafx/geom/Vec3f;
            astore 8 /* n */
        start local 8 // com.sun.javafx.geom.Vec3f n
         2: .line 109
            aload 7 /* instance */
            getfield com.sun.prism.impl.MeshTempState.vec3f2:Lcom/sun/javafx/geom/Vec3f;
            astore 9 /* v1 */
        start local 9 // com.sun.javafx.geom.Vec3f v1
         3: .line 110
            aload 7 /* instance */
            getfield com.sun.prism.impl.MeshTempState.vec3f3:Lcom/sun/javafx/geom/Vec3f;
            astore 10 /* v2 */
        start local 10 // com.sun.javafx.geom.Vec3f v2
         4: .line 113
            aload 9 /* v1 */
            aload 1 /* pb */
            aload 0 /* pa */
            invokevirtual com.sun.javafx.geom.Vec3f.sub:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;)V
         5: .line 114
            aload 10 /* v2 */
            aload 2 /* pc */
            aload 0 /* pa */
            invokevirtual com.sun.javafx.geom.Vec3f.sub:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;)V
         6: .line 115
            aload 8 /* n */
            aload 9 /* v1 */
            aload 10 /* v2 */
            invokevirtual com.sun.javafx.geom.Vec3f.cross:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;)V
         7: .line 116
            aload 6 /* norm */
            iconst_0
            aaload
            aload 8 /* n */
            invokevirtual com.sun.javafx.geom.Vec3f.set:(Lcom/sun/javafx/geom/Vec3f;)V
         8: .line 117
            aload 6 /* norm */
            iconst_0
            aaload
            invokevirtual com.sun.javafx.geom.Vec3f.normalize:()V
         9: .line 119
            aload 9 /* v1 */
            fconst_0
            aload 4 /* tb */
            getfield com.sun.javafx.geom.Vec2f.x:F
            aload 3 /* ta */
            getfield com.sun.javafx.geom.Vec2f.x:F
            fsub
            aload 4 /* tb */
            getfield com.sun.javafx.geom.Vec2f.y:F
            aload 3 /* ta */
            getfield com.sun.javafx.geom.Vec2f.y:F
            fsub
            invokevirtual com.sun.javafx.geom.Vec3f.set:(FFF)V
        10: .line 120
            aload 10 /* v2 */
            fconst_0
            aload 5 /* tc */
            getfield com.sun.javafx.geom.Vec2f.x:F
            aload 3 /* ta */
            getfield com.sun.javafx.geom.Vec2f.x:F
            fsub
            aload 5 /* tc */
            getfield com.sun.javafx.geom.Vec2f.y:F
            aload 3 /* ta */
            getfield com.sun.javafx.geom.Vec2f.y:F
            fsub
            invokevirtual com.sun.javafx.geom.Vec3f.set:(FFF)V
        11: .line 122
            aload 9 /* v1 */
            getfield com.sun.javafx.geom.Vec3f.y:F
            aload 10 /* v2 */
            getfield com.sun.javafx.geom.Vec3f.z:F
            fmul
            aload 9 /* v1 */
            getfield com.sun.javafx.geom.Vec3f.z:F
            aload 10 /* v2 */
            getfield com.sun.javafx.geom.Vec3f.y:F
            fmul
            fcmpl
            ifne 14
        12: .line 123
            aload 0 /* pa */
            aload 1 /* pb */
            aload 2 /* pc */
            aload 6 /* norm */
            invokestatic com.sun.prism.impl.MeshUtil.generateTB:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;[Lcom/sun/javafx/geom/Vec3f;)V
        13: .line 124
            return
        14: .line 128
      StackMap locals: com.sun.javafx.geom.Vec3f com.sun.javafx.geom.Vec3f com.sun.javafx.geom.Vec3f com.sun.javafx.geom.Vec2f com.sun.javafx.geom.Vec2f com.sun.javafx.geom.Vec2f com.sun.javafx.geom.Vec3f[] com.sun.prism.impl.MeshTempState com.sun.javafx.geom.Vec3f com.sun.javafx.geom.Vec3f com.sun.javafx.geom.Vec3f
      StackMap stack:
            aload 9 /* v1 */
            aload 1 /* pb */
            getfield com.sun.javafx.geom.Vec3f.x:F
            aload 0 /* pa */
            getfield com.sun.javafx.geom.Vec3f.x:F
            fsub
            putfield com.sun.javafx.geom.Vec3f.x:F
        15: .line 129
            aload 10 /* v2 */
            aload 2 /* pc */
            getfield com.sun.javafx.geom.Vec3f.x:F
            aload 0 /* pa */
            getfield com.sun.javafx.geom.Vec3f.x:F
            fsub
            putfield com.sun.javafx.geom.Vec3f.x:F
        16: .line 130
            aload 8 /* n */
            aload 9 /* v1 */
            aload 10 /* v2 */
            invokevirtual com.sun.javafx.geom.Vec3f.cross:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;)V
        17: .line 131
            aload 6 /* norm */
            iconst_1
            aaload
            aload 8 /* n */
            getfield com.sun.javafx.geom.Vec3f.y:F
            fneg
            aload 8 /* n */
            getfield com.sun.javafx.geom.Vec3f.x:F
            fdiv
            putfield com.sun.javafx.geom.Vec3f.x:F
        18: .line 132
            aload 6 /* norm */
            iconst_2
            aaload
            aload 8 /* n */
            getfield com.sun.javafx.geom.Vec3f.z:F
            fneg
            aload 8 /* n */
            getfield com.sun.javafx.geom.Vec3f.x:F
            fdiv
            putfield com.sun.javafx.geom.Vec3f.x:F
        19: .line 134
            aload 9 /* v1 */
            aload 1 /* pb */
            getfield com.sun.javafx.geom.Vec3f.y:F
            aload 0 /* pa */
            getfield com.sun.javafx.geom.Vec3f.y:F
            fsub
            putfield com.sun.javafx.geom.Vec3f.x:F
        20: .line 135
            aload 10 /* v2 */
            aload 2 /* pc */
            getfield com.sun.javafx.geom.Vec3f.y:F
            aload 0 /* pa */
            getfield com.sun.javafx.geom.Vec3f.y:F
            fsub
            putfield com.sun.javafx.geom.Vec3f.x:F
        21: .line 136
            aload 8 /* n */
            aload 9 /* v1 */
            aload 10 /* v2 */
            invokevirtual com.sun.javafx.geom.Vec3f.cross:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;)V
        22: .line 137
            aload 6 /* norm */
            iconst_1
            aaload
            aload 8 /* n */
            getfield com.sun.javafx.geom.Vec3f.y:F
            fneg
            aload 8 /* n */
            getfield com.sun.javafx.geom.Vec3f.x:F
            fdiv
            putfield com.sun.javafx.geom.Vec3f.y:F
        23: .line 138
            aload 6 /* norm */
            iconst_2
            aaload
            aload 8 /* n */
            getfield com.sun.javafx.geom.Vec3f.z:F
            fneg
            aload 8 /* n */
            getfield com.sun.javafx.geom.Vec3f.x:F
            fdiv
            putfield com.sun.javafx.geom.Vec3f.y:F
        24: .line 140
            aload 9 /* v1 */
            aload 1 /* pb */
            getfield com.sun.javafx.geom.Vec3f.z:F
            aload 0 /* pa */
            getfield com.sun.javafx.geom.Vec3f.z:F
            fsub
            putfield com.sun.javafx.geom.Vec3f.x:F
        25: .line 141
            aload 10 /* v2 */
            aload 2 /* pc */
            getfield com.sun.javafx.geom.Vec3f.z:F
            aload 0 /* pa */
            getfield com.sun.javafx.geom.Vec3f.z:F
            fsub
            putfield com.sun.javafx.geom.Vec3f.x:F
        26: .line 142
            aload 8 /* n */
            aload 9 /* v1 */
            aload 10 /* v2 */
            invokevirtual com.sun.javafx.geom.Vec3f.cross:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;)V
        27: .line 143
            aload 6 /* norm */
            iconst_1
            aaload
            aload 8 /* n */
            getfield com.sun.javafx.geom.Vec3f.y:F
            fneg
            aload 8 /* n */
            getfield com.sun.javafx.geom.Vec3f.x:F
            fdiv
            putfield com.sun.javafx.geom.Vec3f.z:F
        28: .line 144
            aload 6 /* norm */
            iconst_2
            aaload
            aload 8 /* n */
            getfield com.sun.javafx.geom.Vec3f.z:F
            fneg
            aload 8 /* n */
            getfield com.sun.javafx.geom.Vec3f.x:F
            fdiv
            putfield com.sun.javafx.geom.Vec3f.z:F
        29: .line 146
            aload 6 /* norm */
            iconst_1
            aaload
            invokevirtual com.sun.javafx.geom.Vec3f.normalize:()V
        30: .line 147
            aload 6 /* norm */
            iconst_2
            aaload
            invokevirtual com.sun.javafx.geom.Vec3f.normalize:()V
        31: .line 148
            return
        end local 10 // com.sun.javafx.geom.Vec3f v2
        end local 9 // com.sun.javafx.geom.Vec3f v1
        end local 8 // com.sun.javafx.geom.Vec3f n
        end local 7 // com.sun.prism.impl.MeshTempState instance
        end local 6 // com.sun.javafx.geom.Vec3f[] norm
        end local 5 // com.sun.javafx.geom.Vec2f tc
        end local 4 // com.sun.javafx.geom.Vec2f tb
        end local 3 // com.sun.javafx.geom.Vec2f ta
        end local 2 // com.sun.javafx.geom.Vec3f pc
        end local 1 // com.sun.javafx.geom.Vec3f pb
        end local 0 // com.sun.javafx.geom.Vec3f pa
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   32     0        pa  Lcom/sun/javafx/geom/Vec3f;
            0   32     1        pb  Lcom/sun/javafx/geom/Vec3f;
            0   32     2        pc  Lcom/sun/javafx/geom/Vec3f;
            0   32     3        ta  Lcom/sun/javafx/geom/Vec2f;
            0   32     4        tb  Lcom/sun/javafx/geom/Vec2f;
            0   32     5        tc  Lcom/sun/javafx/geom/Vec2f;
            0   32     6      norm  [Lcom/sun/javafx/geom/Vec3f;
            1   32     7  instance  Lcom/sun/prism/impl/MeshTempState;
            2   32     8         n  Lcom/sun/javafx/geom/Vec3f;
            3   32     9        v1  Lcom/sun/javafx/geom/Vec3f;
            4   32    10        v2  Lcom/sun/javafx/geom/Vec3f;
    MethodParameters:
      Name  Flags
      pa    
      pb    
      pc    
      ta    
      tb    
      tc    
      norm  

  static void fixParallelTB(com.sun.javafx.geom.Vec3f[]);
    descriptor: ([Lcom/sun/javafx/geom/Vec3f;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // com.sun.javafx.geom.Vec3f[] ntb
         0: .line 158
            invokestatic com.sun.prism.impl.MeshTempState.getInstance:()Lcom/sun/prism/impl/MeshTempState;
            astore 1 /* instance */
        start local 1 // com.sun.prism.impl.MeshTempState instance
         1: .line 159
            aload 1 /* instance */
            getfield com.sun.prism.impl.MeshTempState.vec3f1:Lcom/sun/javafx/geom/Vec3f;
            astore 2 /* median */
        start local 2 // com.sun.javafx.geom.Vec3f median
         2: .line 160
            aload 2 /* median */
            aload 0 /* ntb */
            iconst_1
            aaload
            aload 0 /* ntb */
            iconst_2
            aaload
            invokevirtual com.sun.javafx.geom.Vec3f.add:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;)V
         3: .line 161
            aload 1 /* instance */
            getfield com.sun.prism.impl.MeshTempState.vec3f2:Lcom/sun/javafx/geom/Vec3f;
            astore 3 /* ort */
        start local 3 // com.sun.javafx.geom.Vec3f ort
         4: .line 162
            aload 3 /* ort */
            aload 0 /* ntb */
            iconst_0
            aaload
            aload 2 /* median */
            invokevirtual com.sun.javafx.geom.Vec3f.cross:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;)V
         5: .line 163
            aload 2 /* median */
            invokevirtual com.sun.javafx.geom.Vec3f.normalize:()V
         6: .line 164
            aload 3 /* ort */
            invokevirtual com.sun.javafx.geom.Vec3f.normalize:()V
         7: .line 167
            aload 0 /* ntb */
            iconst_1
            aaload
            aload 2 /* median */
            aload 3 /* ort */
            invokevirtual com.sun.javafx.geom.Vec3f.add:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;)V
         8: .line 168
            aload 0 /* ntb */
            iconst_1
            aaload
            ldc 0.70710677
            invokevirtual com.sun.javafx.geom.Vec3f.mul:(F)V
         9: .line 171
            aload 0 /* ntb */
            iconst_2
            aaload
            aload 2 /* median */
            aload 3 /* ort */
            invokevirtual com.sun.javafx.geom.Vec3f.sub:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;)V
        10: .line 172
            aload 0 /* ntb */
            iconst_2
            aaload
            ldc 0.70710677
            invokevirtual com.sun.javafx.geom.Vec3f.mul:(F)V
        11: .line 173
            return
        end local 3 // com.sun.javafx.geom.Vec3f ort
        end local 2 // com.sun.javafx.geom.Vec3f median
        end local 1 // com.sun.prism.impl.MeshTempState instance
        end local 0 // com.sun.javafx.geom.Vec3f[] ntb
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0       ntb  [Lcom/sun/javafx/geom/Vec3f;
            1   12     1  instance  Lcom/sun/prism/impl/MeshTempState;
            2   12     2    median  Lcom/sun/javafx/geom/Vec3f;
            4   12     3       ort  Lcom/sun/javafx/geom/Vec3f;
    MethodParameters:
      Name  Flags
      ntb   

  static void generateTB(com.sun.javafx.geom.Vec3f, com.sun.javafx.geom.Vec3f, com.sun.javafx.geom.Vec3f, com.sun.javafx.geom.Vec3f[]);
    descriptor: (Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;[Lcom/sun/javafx/geom/Vec3f;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=7, args_size=4
        start local 0 // com.sun.javafx.geom.Vec3f v0
        start local 1 // com.sun.javafx.geom.Vec3f v1
        start local 2 // com.sun.javafx.geom.Vec3f v2
        start local 3 // com.sun.javafx.geom.Vec3f[] ntb
         0: .line 179
            invokestatic com.sun.prism.impl.MeshTempState.getInstance:()Lcom/sun/prism/impl/MeshTempState;
            astore 4 /* instance */
        start local 4 // com.sun.prism.impl.MeshTempState instance
         1: .line 180
            aload 4 /* instance */
            getfield com.sun.prism.impl.MeshTempState.vec3f1:Lcom/sun/javafx/geom/Vec3f;
            astore 5 /* a */
        start local 5 // com.sun.javafx.geom.Vec3f a
         2: .line 181
            aload 5 /* a */
            aload 1 /* v1 */
            aload 0 /* v0 */
            invokevirtual com.sun.javafx.geom.Vec3f.sub:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;)V
         3: .line 182
            aload 4 /* instance */
            getfield com.sun.prism.impl.MeshTempState.vec3f2:Lcom/sun/javafx/geom/Vec3f;
            astore 6 /* b */
        start local 6 // com.sun.javafx.geom.Vec3f b
         4: .line 183
            aload 6 /* b */
            aload 2 /* v2 */
            aload 0 /* v0 */
            invokevirtual com.sun.javafx.geom.Vec3f.sub:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;)V
         5: .line 185
            aload 5 /* a */
            aload 5 /* a */
            invokevirtual com.sun.javafx.geom.Vec3f.dot:(Lcom/sun/javafx/geom/Vec3f;)F
            aload 6 /* b */
            aload 6 /* b */
            invokevirtual com.sun.javafx.geom.Vec3f.dot:(Lcom/sun/javafx/geom/Vec3f;)F
            fcmpl
            ifle 10
         6: .line 186
            aload 3 /* ntb */
            iconst_1
            aaload
            aload 5 /* a */
            invokevirtual com.sun.javafx.geom.Vec3f.set:(Lcom/sun/javafx/geom/Vec3f;)V
         7: .line 187
            aload 3 /* ntb */
            iconst_1
            aaload
            invokevirtual com.sun.javafx.geom.Vec3f.normalize:()V
         8: .line 188
            aload 3 /* ntb */
            iconst_2
            aaload
            aload 3 /* ntb */
            iconst_0
            aaload
            aload 3 /* ntb */
            iconst_1
            aaload
            invokevirtual com.sun.javafx.geom.Vec3f.cross:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;)V
         9: .line 189
            goto 13
        10: .line 190
      StackMap locals: com.sun.prism.impl.MeshTempState com.sun.javafx.geom.Vec3f com.sun.javafx.geom.Vec3f
      StackMap stack:
            aload 3 /* ntb */
            iconst_2
            aaload
            aload 6 /* b */
            invokevirtual com.sun.javafx.geom.Vec3f.set:(Lcom/sun/javafx/geom/Vec3f;)V
        11: .line 191
            aload 3 /* ntb */
            iconst_2
            aaload
            invokevirtual com.sun.javafx.geom.Vec3f.normalize:()V
        12: .line 192
            aload 3 /* ntb */
            iconst_1
            aaload
            aload 3 /* ntb */
            iconst_2
            aaload
            aload 3 /* ntb */
            iconst_0
            aaload
            invokevirtual com.sun.javafx.geom.Vec3f.cross:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;)V
        13: .line 194
      StackMap locals:
      StackMap stack:
            return
        end local 6 // com.sun.javafx.geom.Vec3f b
        end local 5 // com.sun.javafx.geom.Vec3f a
        end local 4 // com.sun.prism.impl.MeshTempState instance
        end local 3 // com.sun.javafx.geom.Vec3f[] ntb
        end local 2 // com.sun.javafx.geom.Vec3f v2
        end local 1 // com.sun.javafx.geom.Vec3f v1
        end local 0 // com.sun.javafx.geom.Vec3f v0
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   14     0        v0  Lcom/sun/javafx/geom/Vec3f;
            0   14     1        v1  Lcom/sun/javafx/geom/Vec3f;
            0   14     2        v2  Lcom/sun/javafx/geom/Vec3f;
            0   14     3       ntb  [Lcom/sun/javafx/geom/Vec3f;
            1   14     4  instance  Lcom/sun/prism/impl/MeshTempState;
            2   14     5         a  Lcom/sun/javafx/geom/Vec3f;
            4   14     6         b  Lcom/sun/javafx/geom/Vec3f;
    MethodParameters:
      Name  Flags
      v0    
      v1    
      v2    
      ntb   

  static double clamp(double, double, double);
    descriptor: (DDD)D
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // double x
        start local 2 // double min
        start local 4 // double max
         0: .line 197
            dload 0 /* x */
            dload 4 /* max */
            dcmpg
            ifge 2
            dload 0 /* x */
            dload 2 /* min */
            dcmpl
            ifle 1
            dload 0 /* x */
            goto 3
      StackMap locals:
      StackMap stack:
         1: dload 2 /* min */
            goto 3
      StackMap locals:
      StackMap stack:
         2: dload 4 /* max */
      StackMap locals:
      StackMap stack: double
         3: dreturn
        end local 4 // double max
        end local 2 // double min
        end local 0 // double x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     x  D
            0    4     2   min  D
            0    4     4   max  D
    MethodParameters:
      Name  Flags
      x     
      min   
      max   

  static void fixTSpace(com.sun.javafx.geom.Vec3f[]);
    descriptor: ([Lcom/sun/javafx/geom/Vec3f;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=20, args_size=1
        start local 0 // com.sun.javafx.geom.Vec3f[] norm
         0: .line 201
            aload 0 /* norm */
            iconst_0
            aaload
            invokevirtual com.sun.javafx.geom.Vec3f.length:()F
            fstore 1 /* nNorm */
        start local 1 // float nNorm
         1: .line 203
            invokestatic com.sun.prism.impl.MeshTempState.getInstance:()Lcom/sun/prism/impl/MeshTempState;
            astore 2 /* instance */
        start local 2 // com.sun.prism.impl.MeshTempState instance
         2: .line 204
            aload 2 /* instance */
            getfield com.sun.prism.impl.MeshTempState.vec3f1:Lcom/sun/javafx/geom/Vec3f;
            astore 3 /* n1 */
        start local 3 // com.sun.javafx.geom.Vec3f n1
         3: .line 205
            aload 3 /* n1 */
            aload 0 /* norm */
            iconst_1
            aaload
            invokevirtual com.sun.javafx.geom.Vec3f.set:(Lcom/sun/javafx/geom/Vec3f;)V
         4: .line 206
            aload 2 /* instance */
            getfield com.sun.prism.impl.MeshTempState.vec3f2:Lcom/sun/javafx/geom/Vec3f;
            astore 4 /* n2 */
        start local 4 // com.sun.javafx.geom.Vec3f n2
         5: .line 207
            aload 4 /* n2 */
            aload 0 /* norm */
            iconst_2
            aaload
            invokevirtual com.sun.javafx.geom.Vec3f.set:(Lcom/sun/javafx/geom/Vec3f;)V
         6: .line 208
            aload 0 /* norm */
            iconst_0
            aaload
            aload 3 /* n1 */
            invokestatic com.sun.prism.impl.MeshUtil.getOrt:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;)V
         7: .line 209
            aload 0 /* norm */
            iconst_0
            aaload
            aload 4 /* n2 */
            invokestatic com.sun.prism.impl.MeshUtil.getOrt:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;)V
         8: .line 211
            aload 3 /* n1 */
            invokevirtual com.sun.javafx.geom.Vec3f.length:()F
            fstore 5 /* n1Length */
        start local 5 // float n1Length
         9: .line 212
            aload 4 /* n2 */
            invokevirtual com.sun.javafx.geom.Vec3f.length:()F
            fstore 6 /* n2Length */
        start local 6 // float n2Length
        10: .line 214
            aload 3 /* n1 */
            aload 4 /* n2 */
            invokevirtual com.sun.javafx.geom.Vec3f.dot:(Lcom/sun/javafx/geom/Vec3f;)F
            fload 5 /* n1Length */
            fload 6 /* n2Length */
            fmul
            fdiv
            f2d
            dstore 7 /* cosPhi */
        start local 7 // double cosPhi
        11: .line 215
            aload 2 /* instance */
            getfield com.sun.prism.impl.MeshTempState.vec3f3:Lcom/sun/javafx/geom/Vec3f;
            astore 9 /* e1 */
        start local 9 // com.sun.javafx.geom.Vec3f e1
        12: .line 216
            aload 2 /* instance */
            getfield com.sun.prism.impl.MeshTempState.vec3f4:Lcom/sun/javafx/geom/Vec3f;
            astore 10 /* e2 */
        start local 10 // com.sun.javafx.geom.Vec3f e2
        13: .line 218
            dload 7 /* cosPhi */
            d2f
            invokestatic com.sun.prism.impl.MeshUtil.fabs:(F)F
            f2d
            ldc 0.998
            dcmpl
            ifle 23
        14: .line 219
            aload 2 /* instance */
            getfield com.sun.prism.impl.MeshTempState.vec3f5:Lcom/sun/javafx/geom/Vec3f;
            astore 11 /* n2fix */
        start local 11 // com.sun.javafx.geom.Vec3f n2fix
        15: .line 220
            aload 11 /* n2fix */
            aload 0 /* norm */
            iconst_0
            aaload
            aload 3 /* n1 */
            invokevirtual com.sun.javafx.geom.Vec3f.cross:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;)V
        16: .line 221
            aload 11 /* n2fix */
            invokevirtual com.sun.javafx.geom.Vec3f.normalize:()V
        17: .line 223
            aload 10 /* e2 */
            aload 11 /* n2fix */
            invokevirtual com.sun.javafx.geom.Vec3f.set:(Lcom/sun/javafx/geom/Vec3f;)V
        18: .line 224
            aload 11 /* n2fix */
            aload 4 /* n2 */
            invokevirtual com.sun.javafx.geom.Vec3f.dot:(Lcom/sun/javafx/geom/Vec3f;)F
            fconst_0
            fcmpg
            ifge 20
        19: .line 225
            aload 10 /* e2 */
            ldc -1.0
            invokevirtual com.sun.javafx.geom.Vec3f.mul:(F)V
        20: .line 227
      StackMap locals: com.sun.javafx.geom.Vec3f[] float com.sun.prism.impl.MeshTempState com.sun.javafx.geom.Vec3f com.sun.javafx.geom.Vec3f float float double com.sun.javafx.geom.Vec3f com.sun.javafx.geom.Vec3f com.sun.javafx.geom.Vec3f
      StackMap stack:
            aload 9 /* e1 */
            aload 3 /* n1 */
            invokevirtual com.sun.javafx.geom.Vec3f.set:(Lcom/sun/javafx/geom/Vec3f;)V
        21: .line 228
            aload 9 /* e1 */
            fconst_1
            fload 5 /* n1Length */
            fdiv
            invokevirtual com.sun.javafx.geom.Vec3f.mul:(F)V
        end local 11 // com.sun.javafx.geom.Vec3f n2fix
        22: .line 229
            goto 46
        23: .line 230
      StackMap locals:
      StackMap stack:
            dload 7 /* cosPhi */
            ldc -1.0
            dconst_1
            invokestatic com.sun.prism.impl.MeshUtil.clamp:(DDD)D
            invokestatic java.lang.Math.acos:(D)D
            dstore 11 /* phi */
        start local 11 // double phi
        24: .line 231
            ldc 1.5707963267948966
            dload 11 /* phi */
            dsub
            ldc 0.5
            dmul
            dstore 13 /* alpha */
        start local 13 // double alpha
        25: .line 232
            aload 2 /* instance */
            getfield com.sun.prism.impl.MeshTempState.vec2f1:Lcom/sun/javafx/geom/Vec2f;
            astore 15 /* e1Local */
        start local 15 // com.sun.javafx.geom.Vec2f e1Local
        26: .line 233
            aload 15 /* e1Local */
            dload 13 /* alpha */
            invokestatic java.lang.Math.sin:(D)D
            d2f
            dload 13 /* alpha */
            invokestatic java.lang.Math.cos:(D)D
            d2f
            invokevirtual com.sun.javafx.geom.Vec2f.set:(FF)V
        27: .line 234
            aload 2 /* instance */
            getfield com.sun.prism.impl.MeshTempState.vec2f2:Lcom/sun/javafx/geom/Vec2f;
            astore 16 /* e2Local */
        start local 16 // com.sun.javafx.geom.Vec2f e2Local
        28: .line 235
            aload 16 /* e2Local */
            dload 13 /* alpha */
            dload 11 /* phi */
            dadd
            invokestatic java.lang.Math.sin:(D)D
            d2f
            dload 13 /* alpha */
            dload 11 /* phi */
            dadd
            invokestatic java.lang.Math.cos:(D)D
            d2f
            invokevirtual com.sun.javafx.geom.Vec2f.set:(FF)V
        29: .line 237
            aload 2 /* instance */
            getfield com.sun.prism.impl.MeshTempState.vec3f5:Lcom/sun/javafx/geom/Vec3f;
            astore 17 /* n1T */
        start local 17 // com.sun.javafx.geom.Vec3f n1T
        30: .line 238
            aload 17 /* n1T */
            aload 4 /* n2 */
            invokevirtual com.sun.javafx.geom.Vec3f.set:(Lcom/sun/javafx/geom/Vec3f;)V
        31: .line 239
            aload 3 /* n1 */
            aload 17 /* n1T */
            invokestatic com.sun.prism.impl.MeshUtil.getOrt:(Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Vec3f;)V
        32: .line 240
            aload 17 /* n1T */
            invokevirtual com.sun.javafx.geom.Vec3f.length:()F
            fstore 18 /* n1TLength */
        start local 18 // float n1TLength
        33: .line 243
            aload 9 /* e1 */
            aload 3 /* n1 */
            invokevirtual com.sun.javafx.geom.Vec3f.set:(Lcom/sun/javafx/geom/Vec3f;)V
        34: .line 244
            aload 9 /* e1 */
            aload 15 /* e1Local */
            getfield com.sun.javafx.geom.Vec2f.y:F
            fload 5 /* n1Length */
            fdiv
            invokevirtual com.sun.javafx.geom.Vec3f.mul:(F)V
        35: .line 246
            aload 2 /* instance */
            getfield com.sun.prism.impl.MeshTempState.vec3f6:Lcom/sun/javafx/geom/Vec3f;
            astore 19 /* n1TT */
        start local 19 // com.sun.javafx.geom.Vec3f n1TT
        36: .line 247
            aload 19 /* n1TT */
            aload 17 /* n1T */
            invokevirtual com.sun.javafx.geom.Vec3f.set:(Lcom/sun/javafx/geom/Vec3f;)V
        37: .line 248
            aload 19 /* n1TT */
            aload 15 /* e1Local */
            getfield com.sun.javafx.geom.Vec2f.x:F
            fload 18 /* n1TLength */
            fdiv
            invokevirtual com.sun.javafx.geom.Vec3f.mul:(F)V
        38: .line 249
            aload 9 /* e1 */
            aload 19 /* n1TT */
            invokevirtual com.sun.javafx.geom.Vec3f.sub:(Lcom/sun/javafx/geom/Vec3f;)V
        39: .line 252
            aload 10 /* e2 */
            aload 3 /* n1 */
            invokevirtual com.sun.javafx.geom.Vec3f.set:(Lcom/sun/javafx/geom/Vec3f;)V
        40: .line 253
            aload 10 /* e2 */
            aload 16 /* e2Local */
            getfield com.sun.javafx.geom.Vec2f.y:F
            fload 5 /* n1Length */
            fdiv
            invokevirtual com.sun.javafx.geom.Vec3f.mul:(F)V
        41: .line 256
            aload 19 /* n1TT */
            aload 17 /* n1T */
            invokevirtual com.sun.javafx.geom.Vec3f.set:(Lcom/sun/javafx/geom/Vec3f;)V
        42: .line 257
            aload 19 /* n1TT */
            aload 16 /* e2Local */
            getfield com.sun.javafx.geom.Vec2f.x:F
            fload 18 /* n1TLength */
            fdiv
            invokevirtual com.sun.javafx.geom.Vec3f.mul:(F)V
        43: .line 258
            aload 10 /* e2 */
            aload 19 /* n1TT */
            invokevirtual com.sun.javafx.geom.Vec3f.add:(Lcom/sun/javafx/geom/Vec3f;)V
        44: .line 260
            aload 9 /* e1 */
            aload 3 /* n1 */
            invokevirtual com.sun.javafx.geom.Vec3f.dot:(Lcom/sun/javafx/geom/Vec3f;)F
            pop
        45: .line 261
            aload 10 /* e2 */
            aload 4 /* n2 */
            invokevirtual com.sun.javafx.geom.Vec3f.dot:(Lcom/sun/javafx/geom/Vec3f;)F
            pop
        end local 19 // com.sun.javafx.geom.Vec3f n1TT
        end local 18 // float n1TLength
        end local 17 // com.sun.javafx.geom.Vec3f n1T
        end local 16 // com.sun.javafx.geom.Vec2f e2Local
        end local 15 // com.sun.javafx.geom.Vec2f e1Local
        end local 13 // double alpha
        end local 11 // double phi
        46: .line 267
      StackMap locals:
      StackMap stack:
            aload 0 /* norm */
            iconst_1
            aaload
            aload 9 /* e1 */
            invokevirtual com.sun.javafx.geom.Vec3f.set:(Lcom/sun/javafx/geom/Vec3f;)V
        47: .line 268
            aload 0 /* norm */
            iconst_2
            aaload
            aload 10 /* e2 */
            invokevirtual com.sun.javafx.geom.Vec3f.set:(Lcom/sun/javafx/geom/Vec3f;)V
        48: .line 269
            aload 0 /* norm */
            iconst_0
            aaload
            fconst_1
            fload 1 /* nNorm */
            fdiv
            invokevirtual com.sun.javafx.geom.Vec3f.mul:(F)V
        49: .line 270
            return
        end local 10 // com.sun.javafx.geom.Vec3f e2
        end local 9 // com.sun.javafx.geom.Vec3f e1
        end local 7 // double cosPhi
        end local 6 // float n2Length
        end local 5 // float n1Length
        end local 4 // com.sun.javafx.geom.Vec3f n2
        end local 3 // com.sun.javafx.geom.Vec3f n1
        end local 2 // com.sun.prism.impl.MeshTempState instance
        end local 1 // float nNorm
        end local 0 // com.sun.javafx.geom.Vec3f[] norm
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   50     0       norm  [Lcom/sun/javafx/geom/Vec3f;
            1   50     1      nNorm  F
            2   50     2   instance  Lcom/sun/prism/impl/MeshTempState;
            3   50     3         n1  Lcom/sun/javafx/geom/Vec3f;
            5   50     4         n2  Lcom/sun/javafx/geom/Vec3f;
            9   50     5   n1Length  F
           10   50     6   n2Length  F
           11   50     7     cosPhi  D
           12   50     9         e1  Lcom/sun/javafx/geom/Vec3f;
           13   50    10         e2  Lcom/sun/javafx/geom/Vec3f;
           15   22    11      n2fix  Lcom/sun/javafx/geom/Vec3f;
           24   46    11        phi  D
           25   46    13      alpha  D
           26   46    15    e1Local  Lcom/sun/javafx/geom/Vec2f;
           28   46    16    e2Local  Lcom/sun/javafx/geom/Vec2f;
           30   46    17        n1T  Lcom/sun/javafx/geom/Vec3f;
           33   46    18  n1TLength  F
           36   46    19       n1TT  Lcom/sun/javafx/geom/Vec3f;
    MethodParameters:
      Name  Flags
      norm  

  static void buildQuat(com.sun.javafx.geom.Vec3f[], com.sun.javafx.geom.Quat4f);
    descriptor: ([Lcom/sun/javafx/geom/Vec3f;Lcom/sun/javafx/geom/Quat4f;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=12, args_size=2
        start local 0 // com.sun.javafx.geom.Vec3f[] tm
        start local 1 // com.sun.javafx.geom.Quat4f quat
         0: .line 273
            invokestatic com.sun.prism.impl.MeshTempState.getInstance:()Lcom/sun/prism/impl/MeshTempState;
            astore 2 /* instance */
        start local 2 // com.sun.prism.impl.MeshTempState instance
         1: .line 274
            aload 2 /* instance */
            getfield com.sun.prism.impl.MeshTempState.matrix:[[F
            astore 3 /* m */
        start local 3 // float[][] m
         2: .line 275
            aload 2 /* instance */
            getfield com.sun.prism.impl.MeshTempState.vector:[F
            astore 4 /* tmp */
        start local 4 // float[] tmp
         3: .line 277
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         4: goto 9
         5: .line 278
      StackMap locals: com.sun.javafx.geom.Vec3f[] com.sun.javafx.geom.Quat4f com.sun.prism.impl.MeshTempState float[][] float[] int
      StackMap stack:
            aload 3 /* m */
            iload 5 /* i */
            aaload
            iconst_0
            aload 0 /* tm */
            iload 5 /* i */
            aaload
            getfield com.sun.javafx.geom.Vec3f.x:F
            fastore
         6: .line 279
            aload 3 /* m */
            iload 5 /* i */
            aaload
            iconst_1
            aload 0 /* tm */
            iload 5 /* i */
            aaload
            getfield com.sun.javafx.geom.Vec3f.y:F
            fastore
         7: .line 280
            aload 3 /* m */
            iload 5 /* i */
            aaload
            iconst_2
            aload 0 /* tm */
            iload 5 /* i */
            aaload
            getfield com.sun.javafx.geom.Vec3f.z:F
            fastore
         8: .line 277
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 5 /* i */
            iconst_3
            if_icmplt 5
        end local 5 // int i
        10: .line 283
            aload 3 /* m */
            iconst_0
            aaload
            iconst_0
            faload
            aload 3 /* m */
            iconst_1
            aaload
            iconst_1
            faload
            fadd
            aload 3 /* m */
            iconst_2
            aaload
            iconst_2
            faload
            fadd
            fstore 5 /* trace */
        start local 5 // float trace
        11: .line 285
            fload 5 /* trace */
            fconst_0
            fcmpl
            ifle 19
        12: .line 286
            fload 5 /* trace */
            fconst_1
            fadd
            f2d
            invokestatic java.lang.Math.sqrt:(D)D
            d2f
            fstore 6 /* s */
        start local 6 // float s
        13: .line 287
            ldc 0.5
            fload 6 /* s */
            fdiv
            fstore 7 /* t */
        start local 7 // float t
        14: .line 288
            aload 1 /* quat */
            ldc 0.5
            fload 6 /* s */
            fmul
            putfield com.sun.javafx.geom.Quat4f.w:F
        15: .line 289
            aload 1 /* quat */
            aload 3 /* m */
            iconst_1
            aaload
            iconst_2
            faload
            aload 3 /* m */
            iconst_2
            aaload
            iconst_1
            faload
            fsub
            fload 7 /* t */
            fmul
            putfield com.sun.javafx.geom.Quat4f.x:F
        16: .line 290
            aload 1 /* quat */
            aload 3 /* m */
            iconst_2
            aaload
            iconst_0
            faload
            aload 3 /* m */
            iconst_0
            aaload
            iconst_2
            faload
            fsub
            fload 7 /* t */
            fmul
            putfield com.sun.javafx.geom.Quat4f.y:F
        17: .line 291
            aload 1 /* quat */
            aload 3 /* m */
            iconst_0
            aaload
            iconst_1
            faload
            aload 3 /* m */
            iconst_1
            aaload
            iconst_0
            faload
            fsub
            fload 7 /* t */
            fmul
            putfield com.sun.javafx.geom.Quat4f.z:F
        end local 7 // float t
        end local 6 // float s
        18: .line 293
            goto 38
        19: .line 294
      StackMap locals: com.sun.javafx.geom.Vec3f[] com.sun.javafx.geom.Quat4f com.sun.prism.impl.MeshTempState float[][] float[] float
      StackMap stack:
            iconst_3
            newarray 10
            dup
            iconst_0
            iconst_1
            iastore
            dup
            iconst_1
            iconst_2
            iastore
            astore 6 /* next */
        start local 6 // int[] next
        20: .line 295
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        21: .line 297
            aload 3 /* m */
            iconst_1
            aaload
            iconst_1
            faload
            aload 3 /* m */
            iconst_0
            aaload
            iconst_0
            faload
            fcmpl
            ifle 23
        22: .line 298
            iconst_1
            istore 7 /* i */
        23: .line 300
      StackMap locals: int[] int
      StackMap stack:
            aload 3 /* m */
            iconst_2
            aaload
            iconst_2
            faload
            aload 3 /* m */
            iload 7 /* i */
            aaload
            iload 7 /* i */
            faload
            fcmpl
            ifle 25
        24: .line 301
            iconst_2
            istore 7 /* i */
        25: .line 304
      StackMap locals:
      StackMap stack:
            aload 6 /* next */
            iload 7 /* i */
            iaload
            istore 8 /* j */
        start local 8 // int j
        26: aload 6 /* next */
            iload 8 /* j */
            iaload
            istore 9 /* k */
        start local 9 // int k
        27: .line 305
            aload 3 /* m */
            iload 7 /* i */
            aaload
            iload 7 /* i */
            faload
            aload 3 /* m */
            iload 8 /* j */
            aaload
            iload 8 /* j */
            faload
            fsub
            aload 3 /* m */
            iload 9 /* k */
            aaload
            iload 9 /* k */
            faload
            fsub
            fconst_1
            fadd
            f2d
            invokestatic java.lang.Math.sqrt:(D)D
            d2f
            fstore 10 /* s */
        start local 10 // float s
        28: .line 307
            aload 3 /* m */
            iload 8 /* j */
            aaload
            iload 9 /* k */
            faload
            aload 3 /* m */
            iload 9 /* k */
            aaload
            iload 8 /* j */
            faload
            fcmpg
            ifge 30
        29: .line 308
            fload 10 /* s */
            fneg
            fstore 10 /* s */
        30: .line 311
      StackMap locals: int int float
      StackMap stack:
            ldc 0.5
            fload 10 /* s */
            fdiv
            fstore 11 /* t */
        start local 11 // float t
        31: .line 313
            aload 4 /* tmp */
            iload 7 /* i */
            ldc 0.5
            fload 10 /* s */
            fmul
            fastore
        32: .line 314
            aload 1 /* quat */
            aload 3 /* m */
            iload 8 /* j */
            aaload
            iload 9 /* k */
            faload
            aload 3 /* m */
            iload 9 /* k */
            aaload
            iload 8 /* j */
            faload
            fsub
            fload 11 /* t */
            fmul
            putfield com.sun.javafx.geom.Quat4f.w:F
        33: .line 315
            aload 4 /* tmp */
            iload 8 /* j */
            aload 3 /* m */
            iload 7 /* i */
            aaload
            iload 8 /* j */
            faload
            aload 3 /* m */
            iload 8 /* j */
            aaload
            iload 7 /* i */
            faload
            fadd
            fload 11 /* t */
            fmul
            fastore
        34: .line 316
            aload 4 /* tmp */
            iload 9 /* k */
            aload 3 /* m */
            iload 7 /* i */
            aaload
            iload 9 /* k */
            faload
            aload 3 /* m */
            iload 9 /* k */
            aaload
            iload 7 /* i */
            faload
            fadd
            fload 11 /* t */
            fmul
            fastore
        35: .line 317
            aload 1 /* quat */
            aload 4 /* tmp */
            iconst_0
            faload
            putfield com.sun.javafx.geom.Quat4f.x:F
        36: .line 318
            aload 1 /* quat */
            aload 4 /* tmp */
            iconst_1
            faload
            putfield com.sun.javafx.geom.Quat4f.y:F
        37: .line 319
            aload 1 /* quat */
            aload 4 /* tmp */
            iconst_2
            faload
            putfield com.sun.javafx.geom.Quat4f.z:F
        end local 11 // float t
        end local 10 // float s
        end local 9 // int k
        end local 8 // int j
        end local 7 // int i
        end local 6 // int[] next
        38: .line 321
      StackMap locals: com.sun.javafx.geom.Vec3f[] com.sun.javafx.geom.Quat4f com.sun.prism.impl.MeshTempState float[][] float[] float
      StackMap stack:
            return
        end local 5 // float trace
        end local 4 // float[] tmp
        end local 3 // float[][] m
        end local 2 // com.sun.prism.impl.MeshTempState instance
        end local 1 // com.sun.javafx.geom.Quat4f quat
        end local 0 // com.sun.javafx.geom.Vec3f[] tm
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   39     0        tm  [Lcom/sun/javafx/geom/Vec3f;
            0   39     1      quat  Lcom/sun/javafx/geom/Quat4f;
            1   39     2  instance  Lcom/sun/prism/impl/MeshTempState;
            2   39     3         m  [[F
            3   39     4       tmp  [F
            4   10     5         i  I
           11   39     5     trace  F
           13   18     6         s  F
           14   18     7         t  F
           20   38     6      next  [I
           21   38     7         i  I
           26   38     8         j  I
           27   38     9         k  I
           28   38    10         s  F
           31   38    11         t  F
    MethodParameters:
      Name  Flags
      tm    
      quat  
}
SourceFile: "MeshUtil.java"