public class org.apache.commons.math3.geometry.euclidean.threed.Rotation implements java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.commons.math3.geometry.euclidean.threed.Rotation
  super_class: java.lang.Object
{
  public static final org.apache.commons.math3.geometry.euclidean.threed.Rotation IDENTITY;
    descriptor: Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -2153622329907944313

  private final double q0;
    descriptor: D
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final double q1;
    descriptor: D
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final double q2;
    descriptor: D
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final double q3;
    descriptor: D
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=11, locals=0, args_size=0
         0: .line 99
            new org.apache.commons.math3.geometry.euclidean.threed.Rotation
            dup
            dconst_1
            dconst_0
            dconst_0
            dconst_0
            iconst_0
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.Rotation.<init>:(DDDDZ)V
            putstatic org.apache.commons.math3.geometry.euclidean.threed.Rotation.IDENTITY:Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
         1: .line 102
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(double, double, double, double, boolean);
    descriptor: (DDDDZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=12, args_size=6
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
        start local 1 // double q0
        start local 3 // double q1
        start local 5 // double q2
        start local 7 // double q3
        start local 9 // boolean needsNormalization
         0: .line 134
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 137
            iload 9 /* needsNormalization */
            ifeq 7
         2: .line 139
            dconst_1
            dload 1 /* q0 */
            dload 1 /* q0 */
            dmul
            dload 3 /* q1 */
            dload 3 /* q1 */
            dmul
            dadd
            dload 5 /* q2 */
            dload 5 /* q2 */
            dmul
            dadd
            dload 7 /* q3 */
            dload 7 /* q3 */
            dmul
            dadd
            invokestatic org.apache.commons.math3.util.FastMath.sqrt:(D)D
            ddiv
            dstore 10 /* inv */
        start local 10 // double inv
         3: .line 140
            dload 1 /* q0 */
            dload 10 /* inv */
            dmul
            dstore 1 /* q0 */
         4: .line 141
            dload 3 /* q1 */
            dload 10 /* inv */
            dmul
            dstore 3 /* q1 */
         5: .line 142
            dload 5 /* q2 */
            dload 10 /* inv */
            dmul
            dstore 5 /* q2 */
         6: .line 143
            dload 7 /* q3 */
            dload 10 /* inv */
            dmul
            dstore 7 /* q3 */
        end local 10 // double inv
         7: .line 146
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Rotation double double double double int
      StackMap stack:
            aload 0 /* this */
            dload 1 /* q0 */
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
         8: .line 147
            aload 0 /* this */
            dload 3 /* q1 */
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
         9: .line 148
            aload 0 /* this */
            dload 5 /* q2 */
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
        10: .line 149
            aload 0 /* this */
            dload 7 /* q3 */
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
        11: .line 151
            return
        end local 9 // boolean needsNormalization
        end local 7 // double q3
        end local 5 // double q2
        end local 3 // double q1
        end local 1 // double q0
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   12     0                this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            0   12     1                  q0  D
            0   12     3                  q1  D
            0   12     5                  q2  D
            0   12     7                  q3  D
            0   12     9  needsNormalization  Z
            3    7    10                 inv  D
    MethodParameters:
                    Name  Flags
      q0                  
      q1                  
      q2                  
      q3                  
      needsNormalization  

  public void <init>(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, double);
    descriptor: (Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;D)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
        start local 1 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D axis
        start local 2 // double angle
         0: .line 166
            aload 0 /* this */
            aload 1 /* axis */
            dload 2 /* angle */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationConvention.VECTOR_OPERATOR:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.Rotation.<init>:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;DLorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;)V
         1: .line 167
            return
        end local 2 // double angle
        end local 1 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D axis
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            0    2     1   axis  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            0    2     2  angle  D
    Exceptions:
      throws org.apache.commons.math3.exception.MathIllegalArgumentException
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
       Name  Flags
      axis   
      angle  

  public void <init>(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, double, org.apache.commons.math3.geometry.euclidean.threed.RotationConvention);
    descriptor: (Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;DLorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=11, args_size=4
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
        start local 1 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D axis
        start local 2 // double angle
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.RotationConvention convention
         0: .line 176
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 179
            aload 1 /* axis */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getNorm:()D
            dstore 5 /* norm */
        start local 5 // double norm
         2: .line 180
            dload 5 /* norm */
            dconst_0
            dcmpl
            ifne 4
         3: .line 181
            new org.apache.commons.math3.exception.MathIllegalArgumentException
            dup
            getstatic org.apache.commons.math3.exception.util.LocalizedFormats.ZERO_NORM_FOR_ROTATION_AXIS:Lorg/apache/commons/math3/exception/util/LocalizedFormats;
            iconst_0
            anewarray java.lang.Object
            invokespecial org.apache.commons.math3.exception.MathIllegalArgumentException.<init>:(Lorg/apache/commons/math3/exception/util/Localizable;[Ljava/lang/Object;)V
            athrow
         4: .line 184
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Rotation org.apache.commons.math3.geometry.euclidean.threed.Vector3D double org.apache.commons.math3.geometry.euclidean.threed.RotationConvention double
      StackMap stack:
            aload 4 /* convention */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationConvention.VECTOR_OPERATOR:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;
            if_acmpne 5
            ldc -0.5
            dload 2 /* angle */
            dmul
            goto 6
      StackMap locals:
      StackMap stack:
         5: ldc 0.5
            dload 2 /* angle */
            dmul
      StackMap locals:
      StackMap stack: double
         6: dstore 7 /* halfAngle */
        start local 7 // double halfAngle
         7: .line 185
            dload 7 /* halfAngle */
            invokestatic org.apache.commons.math3.util.FastMath.sin:(D)D
            dload 5 /* norm */
            ddiv
            dstore 9 /* coeff */
        start local 9 // double coeff
         8: .line 187
            aload 0 /* this */
            dload 7 /* halfAngle */
            invokestatic org.apache.commons.math3.util.FastMath.cos:(D)D
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
         9: .line 188
            aload 0 /* this */
            dload 9 /* coeff */
            aload 1 /* axis */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            dmul
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
        10: .line 189
            aload 0 /* this */
            dload 9 /* coeff */
            aload 1 /* axis */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            dmul
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
        11: .line 190
            aload 0 /* this */
            dload 9 /* coeff */
            aload 1 /* axis */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            dmul
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
        12: .line 192
            return
        end local 9 // double coeff
        end local 7 // double halfAngle
        end local 5 // double norm
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.RotationConvention convention
        end local 2 // double angle
        end local 1 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D axis
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   13     0        this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            0   13     1        axis  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            0   13     2       angle  D
            0   13     4  convention  Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;
            2   13     5        norm  D
            7   13     7   halfAngle  D
            8   13     9       coeff  D
    Exceptions:
      throws org.apache.commons.math3.exception.MathIllegalArgumentException
    MethodParameters:
            Name  Flags
      axis        final
      angle       final
      convention  final

  public void <init>(double[][], double);
    descriptor: ([[DD)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=8, args_size=3
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
        start local 1 // double[][] m
        start local 2 // double threshold
         0: .line 224
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 228
            aload 1 /* m */
            arraylength
            iconst_3
            if_icmpne 3
            aload 1 /* m */
            iconst_0
            aaload
            arraylength
            iconst_3
            if_icmpne 3
         2: .line 229
            aload 1 /* m */
            iconst_1
            aaload
            arraylength
            iconst_3
            if_icmpne 3
            aload 1 /* m */
            iconst_2
            aaload
            arraylength
            iconst_3
            if_icmpeq 7
         3: .line 230
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Rotation double[][] double
      StackMap stack:
            new org.apache.commons.math3.geometry.euclidean.threed.NotARotationMatrixException
            dup
         4: .line 231
            getstatic org.apache.commons.math3.exception.util.LocalizedFormats.ROTATION_MATRIX_DIMENSIONS:Lorg/apache/commons/math3/exception/util/LocalizedFormats;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
         5: .line 232
            aload 1 /* m */
            arraylength
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_1
            aload 1 /* m */
            iconst_0
            aaload
            arraylength
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
         6: .line 230
            aastore
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.NotARotationMatrixException.<init>:(Lorg/apache/commons/math3/exception/util/Localizable;[Ljava/lang/Object;)V
            athrow
         7: .line 236
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* m */
            dload 2 /* threshold */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.orthogonalizeMatrix:([[DD)[[D
            astore 4 /* ort */
        start local 4 // double[][] ort
         8: .line 239
            aload 4 /* ort */
            iconst_0
            aaload
            iconst_0
            daload
            aload 4 /* ort */
            iconst_1
            aaload
            iconst_1
            daload
            aload 4 /* ort */
            iconst_2
            aaload
            iconst_2
            daload
            dmul
            aload 4 /* ort */
            iconst_2
            aaload
            iconst_1
            daload
            aload 4 /* ort */
            iconst_1
            aaload
            iconst_2
            daload
            dmul
            dsub
            dmul
         9: .line 240
            aload 4 /* ort */
            iconst_1
            aaload
            iconst_0
            daload
            aload 4 /* ort */
            iconst_0
            aaload
            iconst_1
            daload
            aload 4 /* ort */
            iconst_2
            aaload
            iconst_2
            daload
            dmul
            aload 4 /* ort */
            iconst_2
            aaload
            iconst_1
            daload
            aload 4 /* ort */
            iconst_0
            aaload
            iconst_2
            daload
            dmul
            dsub
            dmul
        10: .line 239
            dsub
        11: .line 241
            aload 4 /* ort */
            iconst_2
            aaload
            iconst_0
            daload
            aload 4 /* ort */
            iconst_0
            aaload
            iconst_1
            daload
            aload 4 /* ort */
            iconst_1
            aaload
            iconst_2
            daload
            dmul
            aload 4 /* ort */
            iconst_1
            aaload
            iconst_1
            daload
            aload 4 /* ort */
            iconst_0
            aaload
            iconst_2
            daload
            dmul
            dsub
            dmul
        12: .line 239
            dadd
            dstore 5 /* det */
        start local 5 // double det
        13: .line 242
            dload 5 /* det */
            dconst_0
            dcmpg
            ifge 18
        14: .line 243
            new org.apache.commons.math3.geometry.euclidean.threed.NotARotationMatrixException
            dup
        15: .line 244
            getstatic org.apache.commons.math3.exception.util.LocalizedFormats.CLOSEST_ORTHOGONAL_MATRIX_HAS_NEGATIVE_DETERMINANT:Lorg/apache/commons/math3/exception/util/LocalizedFormats;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
        16: .line 245
            dload 5 /* det */
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
        17: .line 243
            aastore
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.NotARotationMatrixException.<init>:(Lorg/apache/commons/math3/exception/util/Localizable;[Ljava/lang/Object;)V
            athrow
        18: .line 248
      StackMap locals: double[][] double
      StackMap stack:
            aload 4 /* ort */
            invokestatic org.apache.commons.math3.geometry.euclidean.threed.Rotation.mat2quat:([[D)[D
            astore 7 /* quat */
        start local 7 // double[] quat
        19: .line 249
            aload 0 /* this */
            aload 7 /* quat */
            iconst_0
            daload
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
        20: .line 250
            aload 0 /* this */
            aload 7 /* quat */
            iconst_1
            daload
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
        21: .line 251
            aload 0 /* this */
            aload 7 /* quat */
            iconst_2
            daload
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
        22: .line 252
            aload 0 /* this */
            aload 7 /* quat */
            iconst_3
            daload
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
        23: .line 254
            return
        end local 7 // double[] quat
        end local 5 // double det
        end local 4 // double[][] ort
        end local 2 // double threshold
        end local 1 // double[][] m
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   24     0       this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            0   24     1          m  [[D
            0   24     2  threshold  D
            8   24     4        ort  [[D
           13   24     5        det  D
           19   24     7       quat  [D
    Exceptions:
      throws org.apache.commons.math3.geometry.euclidean.threed.NotARotationMatrixException
    MethodParameters:
           Name  Flags
      m          
      threshold  

  public void <init>(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D);
    descriptor: (Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=18, locals=9, args_size=5
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
        start local 1 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D u1
        start local 2 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D u2
        start local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
         0: .line 275
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 280
            aload 1 /* u1 */
            aload 2 /* u2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.crossProduct:(Lorg/apache/commons/math3/geometry/Vector;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.normalize:()Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 5 /* u3 */
        start local 5 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D u3
         2: .line 281
            aload 5 /* u3 */
            aload 1 /* u1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.crossProduct:(Lorg/apache/commons/math3/geometry/Vector;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.normalize:()Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 2 /* u2 */
         3: .line 282
            aload 1 /* u1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.normalize:()Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 1 /* u1 */
         4: .line 286
            aload 3 /* v1 */
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.crossProduct:(Lorg/apache/commons/math3/geometry/Vector;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.normalize:()Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 6 /* v3 */
        start local 6 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v3
         5: .line 287
            aload 6 /* v3 */
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.crossProduct:(Lorg/apache/commons/math3/geometry/Vector;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.normalize:()Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 4 /* v2 */
         6: .line 288
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.normalize:()Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 3 /* v1 */
         7: .line 291
            iconst_3
            anewarray double[]
            dup
            iconst_0
         8: .line 292
            iconst_3
            newarray 7
            dup
            iconst_0
         9: .line 293
            aload 1 /* u1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 2 /* u2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 5 /* u3 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 6 /* v3 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            invokestatic org.apache.commons.math3.util.MathArrays.linearCombination:(DDDDDD)D
            dastore
            dup
            iconst_1
        10: .line 294
            aload 1 /* u1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 2 /* u2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 5 /* u3 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 6 /* v3 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            invokestatic org.apache.commons.math3.util.MathArrays.linearCombination:(DDDDDD)D
            dastore
            dup
            iconst_2
        11: .line 295
            aload 1 /* u1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 2 /* u2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 5 /* u3 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 6 /* v3 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            invokestatic org.apache.commons.math3.util.MathArrays.linearCombination:(DDDDDD)D
            dastore
            aastore
            dup
            iconst_1
        12: .line 297
            iconst_3
            newarray 7
            dup
            iconst_0
        13: .line 298
            aload 1 /* u1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 2 /* u2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 5 /* u3 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 6 /* v3 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            invokestatic org.apache.commons.math3.util.MathArrays.linearCombination:(DDDDDD)D
            dastore
            dup
            iconst_1
        14: .line 299
            aload 1 /* u1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 2 /* u2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 5 /* u3 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 6 /* v3 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            invokestatic org.apache.commons.math3.util.MathArrays.linearCombination:(DDDDDD)D
            dastore
            dup
            iconst_2
        15: .line 300
            aload 1 /* u1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 2 /* u2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 5 /* u3 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 6 /* v3 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            invokestatic org.apache.commons.math3.util.MathArrays.linearCombination:(DDDDDD)D
            dastore
            aastore
            dup
            iconst_2
        16: .line 302
            iconst_3
            newarray 7
            dup
            iconst_0
        17: .line 303
            aload 1 /* u1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 2 /* u2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 5 /* u3 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 6 /* v3 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            invokestatic org.apache.commons.math3.util.MathArrays.linearCombination:(DDDDDD)D
            dastore
            dup
            iconst_1
        18: .line 304
            aload 1 /* u1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 2 /* u2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 5 /* u3 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 6 /* v3 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            invokestatic org.apache.commons.math3.util.MathArrays.linearCombination:(DDDDDD)D
            dastore
            dup
            iconst_2
        19: .line 305
            aload 1 /* u1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 2 /* u2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 5 /* u3 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 6 /* v3 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            invokestatic org.apache.commons.math3.util.MathArrays.linearCombination:(DDDDDD)D
            dastore
            aastore
        20: .line 291
            astore 7 /* m */
        start local 7 // double[][] m
        21: .line 309
            aload 7 /* m */
            invokestatic org.apache.commons.math3.geometry.euclidean.threed.Rotation.mat2quat:([[D)[D
            astore 8 /* quat */
        start local 8 // double[] quat
        22: .line 310
            aload 0 /* this */
            aload 8 /* quat */
            iconst_0
            daload
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
        23: .line 311
            aload 0 /* this */
            aload 8 /* quat */
            iconst_1
            daload
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
        24: .line 312
            aload 0 /* this */
            aload 8 /* quat */
            iconst_2
            daload
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
        25: .line 313
            aload 0 /* this */
            aload 8 /* quat */
            iconst_3
            daload
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
        26: .line 315
            return
        end local 8 // double[] quat
        end local 7 // double[][] m
        end local 6 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v3
        end local 5 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D u3
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        end local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
        end local 2 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D u2
        end local 1 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D u1
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   27     0  this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            0   27     1    u1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            0   27     2    u2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            0   27     3    v1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            0   27     4    v2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            2   27     5    u3  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            5   27     6    v3  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
           21   27     7     m  [[D
           22   27     8  quat  [D
    Exceptions:
      throws org.apache.commons.math3.exception.MathArithmeticException
    MethodParameters:
      Name  Flags
      u1    
      u2    
      v1    
      v2    

  public void <init>(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D);
    descriptor: (Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=10, args_size=3
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
        start local 1 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D u
        start local 2 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v
         0: .line 330
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 332
            aload 1 /* u */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getNorm:()D
            aload 2 /* v */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getNorm:()D
            dmul
            dstore 3 /* normProduct */
        start local 3 // double normProduct
         2: .line 333
            dload 3 /* normProduct */
            dconst_0
            dcmpl
            ifne 4
         3: .line 334
            new org.apache.commons.math3.exception.MathArithmeticException
            dup
            getstatic org.apache.commons.math3.exception.util.LocalizedFormats.ZERO_NORM_FOR_ROTATION_DEFINING_VECTOR:Lorg/apache/commons/math3/exception/util/LocalizedFormats;
            iconst_0
            anewarray java.lang.Object
            invokespecial org.apache.commons.math3.exception.MathArithmeticException.<init>:(Lorg/apache/commons/math3/exception/util/Localizable;[Ljava/lang/Object;)V
            athrow
         4: .line 337
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Rotation org.apache.commons.math3.geometry.euclidean.threed.Vector3D org.apache.commons.math3.geometry.euclidean.threed.Vector3D double
      StackMap stack:
            aload 1 /* u */
            aload 2 /* v */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.dotProduct:(Lorg/apache/commons/math3/geometry/Vector;)D
            dstore 5 /* dot */
        start local 5 // double dot
         5: .line 339
            dload 5 /* dot */
            ldc -0.999999999999998
            dload 3 /* normProduct */
            dmul
            dcmpg
            ifge 12
         6: .line 342
            aload 1 /* u */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.orthogonal:()Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 7 /* w */
        start local 7 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D w
         7: .line 343
            aload 0 /* this */
            dconst_0
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
         8: .line 344
            aload 0 /* this */
            aload 7 /* w */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            dneg
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
         9: .line 345
            aload 0 /* this */
            aload 7 /* w */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            dneg
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
        10: .line 346
            aload 0 /* this */
            aload 7 /* w */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            dneg
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
        end local 7 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D w
        11: .line 347
            goto 18
        12: .line 350
      StackMap locals: double
      StackMap stack:
            aload 0 /* this */
            ldc 0.5
            dconst_1
            dload 5 /* dot */
            dload 3 /* normProduct */
            ddiv
            dadd
            dmul
            invokestatic org.apache.commons.math3.util.FastMath.sqrt:(D)D
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
        13: .line 351
            dconst_1
            ldc 2.0
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dmul
            dload 3 /* normProduct */
            dmul
            ddiv
            dstore 7 /* coeff */
        start local 7 // double coeff
        14: .line 352
            aload 2 /* v */
            aload 1 /* u */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.crossProduct:(Lorg/apache/commons/math3/geometry/Vector;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 9 /* q */
        start local 9 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D q
        15: .line 353
            aload 0 /* this */
            dload 7 /* coeff */
            aload 9 /* q */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            dmul
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
        16: .line 354
            aload 0 /* this */
            dload 7 /* coeff */
            aload 9 /* q */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            dmul
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
        17: .line 355
            aload 0 /* this */
            dload 7 /* coeff */
            aload 9 /* q */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            dmul
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
        end local 9 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D q
        end local 7 // double coeff
        18: .line 358
      StackMap locals:
      StackMap stack:
            return
        end local 5 // double dot
        end local 3 // double normProduct
        end local 2 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v
        end local 1 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D u
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   19     0         this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            0   19     1            u  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            0   19     2            v  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            2   19     3  normProduct  D
            5   19     5          dot  D
            7   11     7            w  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
           14   18     7        coeff  D
           15   18     9            q  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
    Exceptions:
      throws org.apache.commons.math3.exception.MathArithmeticException
    MethodParameters:
      Name  Flags
      u     
      v     

  public void <init>(org.apache.commons.math3.geometry.euclidean.threed.RotationOrder, double, double, double);
    descriptor: (Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;DDD)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=8, args_size=5
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
        start local 1 // org.apache.commons.math3.geometry.euclidean.threed.RotationOrder order
        start local 2 // double alpha1
        start local 4 // double alpha2
        start local 6 // double alpha3
         0: .line 378
            aload 0 /* this */
            aload 1 /* order */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationConvention.VECTOR_OPERATOR:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;
            dload 2 /* alpha1 */
            dload 4 /* alpha2 */
            dload 6 /* alpha3 */
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.Rotation.<init>:(Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;DDD)V
         1: .line 379
            return
        end local 6 // double alpha3
        end local 4 // double alpha2
        end local 2 // double alpha1
        end local 1 // org.apache.commons.math3.geometry.euclidean.threed.RotationOrder order
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            0    2     1   order  Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
            0    2     2  alpha1  D
            0    2     4  alpha2  D
            0    2     6  alpha3  D
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
        Name  Flags
      order   
      alpha1  
      alpha2  
      alpha3  

  public void <init>(org.apache.commons.math3.geometry.euclidean.threed.RotationOrder, org.apache.commons.math3.geometry.euclidean.threed.RotationConvention, double, double, double);
    descriptor: (Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;DDD)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=13, args_size=6
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
        start local 1 // org.apache.commons.math3.geometry.euclidean.threed.RotationOrder order
        start local 2 // org.apache.commons.math3.geometry.euclidean.threed.RotationConvention convention
        start local 3 // double alpha1
        start local 5 // double alpha2
        start local 7 // double alpha3
         0: .line 403
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 405
            new org.apache.commons.math3.geometry.euclidean.threed.Rotation
            dup
            aload 1 /* order */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.getA1:()Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            dload 3 /* alpha1 */
            aload 2 /* convention */
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.Rotation.<init>:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;DLorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;)V
            astore 9 /* r1 */
        start local 9 // org.apache.commons.math3.geometry.euclidean.threed.Rotation r1
         2: .line 406
            new org.apache.commons.math3.geometry.euclidean.threed.Rotation
            dup
            aload 1 /* order */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.getA2:()Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            dload 5 /* alpha2 */
            aload 2 /* convention */
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.Rotation.<init>:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;DLorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;)V
            astore 10 /* r2 */
        start local 10 // org.apache.commons.math3.geometry.euclidean.threed.Rotation r2
         3: .line 407
            new org.apache.commons.math3.geometry.euclidean.threed.Rotation
            dup
            aload 1 /* order */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.getA3:()Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            dload 7 /* alpha3 */
            aload 2 /* convention */
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.Rotation.<init>:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;DLorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;)V
            astore 11 /* r3 */
        start local 11 // org.apache.commons.math3.geometry.euclidean.threed.Rotation r3
         4: .line 408
            aload 9 /* r1 */
            aload 10 /* r2 */
            aload 11 /* r3 */
            aload 2 /* convention */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.compose:(Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;)Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            aload 2 /* convention */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.compose:(Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;)Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            astore 12 /* composed */
        start local 12 // org.apache.commons.math3.geometry.euclidean.threed.Rotation composed
         5: .line 409
            aload 0 /* this */
            aload 12 /* composed */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
         6: .line 410
            aload 0 /* this */
            aload 12 /* composed */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
         7: .line 411
            aload 0 /* this */
            aload 12 /* composed */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
         8: .line 412
            aload 0 /* this */
            aload 12 /* composed */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            putfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
         9: .line 413
            return
        end local 12 // org.apache.commons.math3.geometry.euclidean.threed.Rotation composed
        end local 11 // org.apache.commons.math3.geometry.euclidean.threed.Rotation r3
        end local 10 // org.apache.commons.math3.geometry.euclidean.threed.Rotation r2
        end local 9 // org.apache.commons.math3.geometry.euclidean.threed.Rotation r1
        end local 7 // double alpha3
        end local 5 // double alpha2
        end local 3 // double alpha1
        end local 2 // org.apache.commons.math3.geometry.euclidean.threed.RotationConvention convention
        end local 1 // org.apache.commons.math3.geometry.euclidean.threed.RotationOrder order
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            0   10     1       order  Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
            0   10     2  convention  Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;
            0   10     3      alpha1  D
            0   10     5      alpha2  D
            0   10     7      alpha3  D
            2   10     9          r1  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            3   10    10          r2  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            4   10    11          r3  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            5   10    12    composed  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
    MethodParameters:
            Name  Flags
      order       
      convention  
      alpha1      
      alpha2      
      alpha3      

  private static double[] mat2quat(double[][]);
    descriptor: ([[D)[D
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=8, locals=6, args_size=1
        start local 0 // double[][] ort
         0: .line 421
            iconst_4
            newarray 7
            astore 1 /* quat */
        start local 1 // double[] quat
         1: .line 434
            aload 0 /* ort */
            iconst_0
            aaload
            iconst_0
            daload
            aload 0 /* ort */
            iconst_1
            aaload
            iconst_1
            daload
            dadd
            aload 0 /* ort */
            iconst_2
            aaload
            iconst_2
            daload
            dadd
            dstore 2 /* s */
        start local 2 // double s
         2: .line 435
            dload 2 /* s */
            ldc -0.19
            dcmpl
            ifle 9
         3: .line 437
            aload 1 /* quat */
            iconst_0
            ldc 0.5
            dload 2 /* s */
            dconst_1
            dadd
            invokestatic org.apache.commons.math3.util.FastMath.sqrt:(D)D
            dmul
            dastore
         4: .line 438
            ldc 0.25
            aload 1 /* quat */
            iconst_0
            daload
            ddiv
            dstore 4 /* inv */
        start local 4 // double inv
         5: .line 439
            aload 1 /* quat */
            iconst_1
            dload 4 /* inv */
            aload 0 /* ort */
            iconst_1
            aaload
            iconst_2
            daload
            aload 0 /* ort */
            iconst_2
            aaload
            iconst_1
            daload
            dsub
            dmul
            dastore
         6: .line 440
            aload 1 /* quat */
            iconst_2
            dload 4 /* inv */
            aload 0 /* ort */
            iconst_2
            aaload
            iconst_0
            daload
            aload 0 /* ort */
            iconst_0
            aaload
            iconst_2
            daload
            dsub
            dmul
            dastore
         7: .line 441
            aload 1 /* quat */
            iconst_3
            dload 4 /* inv */
            aload 0 /* ort */
            iconst_0
            aaload
            iconst_1
            daload
            aload 0 /* ort */
            iconst_1
            aaload
            iconst_0
            daload
            dsub
            dmul
            dastore
        end local 4 // double inv
         8: .line 442
            goto 31
         9: .line 443
      StackMap locals: double[] double
      StackMap stack:
            aload 0 /* ort */
            iconst_0
            aaload
            iconst_0
            daload
            aload 0 /* ort */
            iconst_1
            aaload
            iconst_1
            daload
            dsub
            aload 0 /* ort */
            iconst_2
            aaload
            iconst_2
            daload
            dsub
            dstore 2 /* s */
        10: .line 444
            dload 2 /* s */
            ldc -0.19
            dcmpl
            ifle 17
        11: .line 446
            aload 1 /* quat */
            iconst_1
            ldc 0.5
            dload 2 /* s */
            dconst_1
            dadd
            invokestatic org.apache.commons.math3.util.FastMath.sqrt:(D)D
            dmul
            dastore
        12: .line 447
            ldc 0.25
            aload 1 /* quat */
            iconst_1
            daload
            ddiv
            dstore 4 /* inv */
        start local 4 // double inv
        13: .line 448
            aload 1 /* quat */
            iconst_0
            dload 4 /* inv */
            aload 0 /* ort */
            iconst_1
            aaload
            iconst_2
            daload
            aload 0 /* ort */
            iconst_2
            aaload
            iconst_1
            daload
            dsub
            dmul
            dastore
        14: .line 449
            aload 1 /* quat */
            iconst_2
            dload 4 /* inv */
            aload 0 /* ort */
            iconst_0
            aaload
            iconst_1
            daload
            aload 0 /* ort */
            iconst_1
            aaload
            iconst_0
            daload
            dadd
            dmul
            dastore
        15: .line 450
            aload 1 /* quat */
            iconst_3
            dload 4 /* inv */
            aload 0 /* ort */
            iconst_0
            aaload
            iconst_2
            daload
            aload 0 /* ort */
            iconst_2
            aaload
            iconst_0
            daload
            dadd
            dmul
            dastore
        end local 4 // double inv
        16: .line 451
            goto 31
        17: .line 452
      StackMap locals:
      StackMap stack:
            aload 0 /* ort */
            iconst_1
            aaload
            iconst_1
            daload
            aload 0 /* ort */
            iconst_0
            aaload
            iconst_0
            daload
            dsub
            aload 0 /* ort */
            iconst_2
            aaload
            iconst_2
            daload
            dsub
            dstore 2 /* s */
        18: .line 453
            dload 2 /* s */
            ldc -0.19
            dcmpl
            ifle 25
        19: .line 455
            aload 1 /* quat */
            iconst_2
            ldc 0.5
            dload 2 /* s */
            dconst_1
            dadd
            invokestatic org.apache.commons.math3.util.FastMath.sqrt:(D)D
            dmul
            dastore
        20: .line 456
            ldc 0.25
            aload 1 /* quat */
            iconst_2
            daload
            ddiv
            dstore 4 /* inv */
        start local 4 // double inv
        21: .line 457
            aload 1 /* quat */
            iconst_0
            dload 4 /* inv */
            aload 0 /* ort */
            iconst_2
            aaload
            iconst_0
            daload
            aload 0 /* ort */
            iconst_0
            aaload
            iconst_2
            daload
            dsub
            dmul
            dastore
        22: .line 458
            aload 1 /* quat */
            iconst_1
            dload 4 /* inv */
            aload 0 /* ort */
            iconst_0
            aaload
            iconst_1
            daload
            aload 0 /* ort */
            iconst_1
            aaload
            iconst_0
            daload
            dadd
            dmul
            dastore
        23: .line 459
            aload 1 /* quat */
            iconst_3
            dload 4 /* inv */
            aload 0 /* ort */
            iconst_2
            aaload
            iconst_1
            daload
            aload 0 /* ort */
            iconst_1
            aaload
            iconst_2
            daload
            dadd
            dmul
            dastore
        end local 4 // double inv
        24: .line 460
            goto 31
        25: .line 462
      StackMap locals:
      StackMap stack:
            aload 0 /* ort */
            iconst_2
            aaload
            iconst_2
            daload
            aload 0 /* ort */
            iconst_0
            aaload
            iconst_0
            daload
            dsub
            aload 0 /* ort */
            iconst_1
            aaload
            iconst_1
            daload
            dsub
            dstore 2 /* s */
        26: .line 463
            aload 1 /* quat */
            iconst_3
            ldc 0.5
            dload 2 /* s */
            dconst_1
            dadd
            invokestatic org.apache.commons.math3.util.FastMath.sqrt:(D)D
            dmul
            dastore
        27: .line 464
            ldc 0.25
            aload 1 /* quat */
            iconst_3
            daload
            ddiv
            dstore 4 /* inv */
        start local 4 // double inv
        28: .line 465
            aload 1 /* quat */
            iconst_0
            dload 4 /* inv */
            aload 0 /* ort */
            iconst_0
            aaload
            iconst_1
            daload
            aload 0 /* ort */
            iconst_1
            aaload
            iconst_0
            daload
            dsub
            dmul
            dastore
        29: .line 466
            aload 1 /* quat */
            iconst_1
            dload 4 /* inv */
            aload 0 /* ort */
            iconst_0
            aaload
            iconst_2
            daload
            aload 0 /* ort */
            iconst_2
            aaload
            iconst_0
            daload
            dadd
            dmul
            dastore
        30: .line 467
            aload 1 /* quat */
            iconst_2
            dload 4 /* inv */
            aload 0 /* ort */
            iconst_2
            aaload
            iconst_1
            daload
            aload 0 /* ort */
            iconst_1
            aaload
            iconst_2
            daload
            dadd
            dmul
            dastore
        end local 4 // double inv
        31: .line 472
      StackMap locals:
      StackMap stack:
            aload 1 /* quat */
            areturn
        end local 2 // double s
        end local 1 // double[] quat
        end local 0 // double[][] ort
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   32     0   ort  [[D
            1   32     1  quat  [D
            2   32     2     s  D
            5    8     4   inv  D
           13   16     4   inv  D
           21   24     4   inv  D
           28   31     4   inv  D
    MethodParameters:
      Name  Flags
      ort   final

  public org.apache.commons.math3.geometry.euclidean.threed.Rotation revert();
    descriptor: ()Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=11, locals=1, args_size=1
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
         0: .line 484
            new org.apache.commons.math3.geometry.euclidean.threed.Rotation
            dup
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dneg
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            iconst_0
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.Rotation.<init>:(DDDDZ)V
            areturn
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;

  public double getQ0();
    descriptor: ()D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
         0: .line 491
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dreturn
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;

  public double getQ1();
    descriptor: ()D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
         0: .line 498
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dreturn
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;

  public double getQ2();
    descriptor: ()D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
         0: .line 505
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dreturn
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;

  public double getQ3();
    descriptor: ()D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
         0: .line 512
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dreturn
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;

  public org.apache.commons.math3.geometry.euclidean.threed.Vector3D getAxis();
    descriptor: ()Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
         0: .line 526
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationConvention.VECTOR_OPERATOR:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.getAxis:(Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            areturn
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public org.apache.commons.math3.geometry.euclidean.threed.Vector3D getAxis(org.apache.commons.math3.geometry.euclidean.threed.RotationConvention);
    descriptor: (Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=8, args_size=2
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
        start local 1 // org.apache.commons.math3.geometry.euclidean.threed.RotationConvention convention
         0: .line 541
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dmul
            dadd
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dmul
            dadd
            dstore 2 /* squaredSine */
        start local 2 // double squaredSine
         1: .line 542
            dload 2 /* squaredSine */
            dconst_0
            dcmpl
            ifne 5
         2: .line 543
            aload 1 /* convention */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationConvention.VECTOR_OPERATOR:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;
            if_acmpne 3
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_I:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            goto 4
      StackMap locals: double
      StackMap stack:
         3: getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.MINUS_I:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
      StackMap locals:
      StackMap stack: org.apache.commons.math3.geometry.euclidean.threed.Vector3D
         4: areturn
         5: .line 545
      StackMap locals:
      StackMap stack:
            aload 1 /* convention */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationConvention.VECTOR_OPERATOR:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;
            if_acmpne 6
            iconst_1
            goto 7
      StackMap locals:
      StackMap stack:
         6: iconst_m1
      StackMap locals:
      StackMap stack: int
         7: i2d
            dstore 4 /* sgn */
        start local 4 // double sgn
         8: .line 546
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dconst_0
            dcmpg
            ifge 11
         9: .line 547
            dload 4 /* sgn */
            dload 2 /* squaredSine */
            invokestatic org.apache.commons.math3.util.FastMath.sqrt:(D)D
            ddiv
            dstore 6 /* inverse */
        start local 6 // double inverse
        10: .line 548
            new org.apache.commons.math3.geometry.euclidean.threed.Vector3D
            dup
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dload 6 /* inverse */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dload 6 /* inverse */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dload 6 /* inverse */
            dmul
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.Vector3D.<init>:(DDD)V
            areturn
        end local 6 // double inverse
        11: .line 550
      StackMap locals: double
      StackMap stack:
            dload 4 /* sgn */
            dneg
            dload 2 /* squaredSine */
            invokestatic org.apache.commons.math3.util.FastMath.sqrt:(D)D
            ddiv
            dstore 6 /* inverse */
        start local 6 // double inverse
        12: .line 551
            new org.apache.commons.math3.geometry.euclidean.threed.Vector3D
            dup
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dload 6 /* inverse */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dload 6 /* inverse */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dload 6 /* inverse */
            dmul
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.Vector3D.<init>:(DDD)V
            areturn
        end local 6 // double inverse
        end local 4 // double sgn
        end local 2 // double squaredSine
        end local 1 // org.apache.commons.math3.geometry.euclidean.threed.RotationConvention convention
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   13     0         this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            0   13     1   convention  Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;
            1   13     2  squaredSine  D
            8   13     4          sgn  D
           10   11     6      inverse  D
           12   13     6      inverse  D
    MethodParameters:
            Name  Flags
      convention  final

  public double getAngle();
    descriptor: ()D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=1, args_size=1
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
         0: .line 560
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            ldc -0.1
            dcmpg
            iflt 1
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            ldc 0.1
            dcmpl
            ifle 2
         1: .line 561
      StackMap locals:
      StackMap stack:
            ldc 2.0
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dmul
            dadd
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dmul
            dadd
            invokestatic org.apache.commons.math3.util.FastMath.sqrt:(D)D
            invokestatic org.apache.commons.math3.util.FastMath.asin:(D)D
            dmul
            dreturn
         2: .line 562
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dconst_0
            dcmpg
            ifge 4
         3: .line 563
            ldc 2.0
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dneg
            invokestatic org.apache.commons.math3.util.FastMath.acos:(D)D
            dmul
            dreturn
         4: .line 565
      StackMap locals:
      StackMap stack:
            ldc 2.0
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            invokestatic org.apache.commons.math3.util.FastMath.acos:(D)D
            dmul
            dreturn
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;

  public double[] getAngles(org.apache.commons.math3.geometry.euclidean.threed.RotationOrder);
    descriptor: (Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;)[D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
        start local 1 // org.apache.commons.math3.geometry.euclidean.threed.RotationOrder order
         0: .line 585
            aload 0 /* this */
            aload 1 /* order */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationConvention.VECTOR_OPERATOR:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.getAngles:(Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;)[D
            areturn
        end local 1 // org.apache.commons.math3.geometry.euclidean.threed.RotationOrder order
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            0    1     1  order  Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
    Exceptions:
      throws org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
       Name  Flags
      order  

  public double[] getAngles(org.apache.commons.math3.geometry.euclidean.threed.RotationOrder, org.apache.commons.math3.geometry.euclidean.threed.RotationConvention);
    descriptor: (Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;)[D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=3
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
        start local 1 // org.apache.commons.math3.geometry.euclidean.threed.RotationOrder order
        start local 2 // org.apache.commons.math3.geometry.euclidean.threed.RotationConvention convention
         0: .line 628
            aload 2 /* convention */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationConvention.VECTOR_OPERATOR:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;
            if_acmpne 120
         1: .line 629
            aload 1 /* order */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.XYZ:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
            if_acmpne 11
         2: .line 636
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_K:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 3 /* v1 */
        start local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
         3: .line 637
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_I:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyInverseTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 4 /* v2 */
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
         4: .line 638
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            ldc -0.9999999999
            dcmpg
            iflt 5
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            ldc 0.9999999999
            dcmpl
            ifle 6
         5: .line 639
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Vector3D org.apache.commons.math3.geometry.euclidean.threed.Vector3D
      StackMap stack:
            new org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
            dup
            iconst_1
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException.<init>:(Z)V
            athrow
         6: .line 641
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            dup
            iconst_0
         7: .line 642
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            dneg
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
            dup
            iconst_1
         8: .line 643
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            invokestatic org.apache.commons.math3.util.FastMath.asin:(D)D
            dastore
            dup
            iconst_2
         9: .line 644
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            dneg
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
        10: .line 641
            areturn
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        end local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
        11: .line 647
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.XZY:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
            if_acmpne 21
        12: .line 654
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_J:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 3 /* v1 */
        start local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
        13: .line 655
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_I:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyInverseTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 4 /* v2 */
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        14: .line 656
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            ldc -0.9999999999
            dcmpg
            iflt 15
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            ldc 0.9999999999
            dcmpl
            ifle 16
        15: .line 657
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Vector3D org.apache.commons.math3.geometry.euclidean.threed.Vector3D
      StackMap stack:
            new org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
            dup
            iconst_1
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException.<init>:(Z)V
            athrow
        16: .line 659
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            dup
            iconst_0
        17: .line 660
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
            dup
            iconst_1
        18: .line 661
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            invokestatic org.apache.commons.math3.util.FastMath.asin:(D)D
            dneg
            dastore
            dup
            iconst_2
        19: .line 662
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
        20: .line 659
            areturn
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        end local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
        21: .line 665
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.YXZ:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
            if_acmpne 31
        22: .line 672
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_K:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 3 /* v1 */
        start local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
        23: .line 673
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_J:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyInverseTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 4 /* v2 */
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        24: .line 674
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            ldc -0.9999999999
            dcmpg
            iflt 25
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            ldc 0.9999999999
            dcmpl
            ifle 26
        25: .line 675
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Vector3D org.apache.commons.math3.geometry.euclidean.threed.Vector3D
      StackMap stack:
            new org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
            dup
            iconst_1
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException.<init>:(Z)V
            athrow
        26: .line 677
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            dup
            iconst_0
        27: .line 678
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
            dup
            iconst_1
        28: .line 679
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            invokestatic org.apache.commons.math3.util.FastMath.asin:(D)D
            dneg
            dastore
            dup
            iconst_2
        29: .line 680
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
        30: .line 677
            areturn
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        end local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
        31: .line 683
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.YZX:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
            if_acmpne 41
        32: .line 690
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_I:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 3 /* v1 */
        start local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
        33: .line 691
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_J:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyInverseTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 4 /* v2 */
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        34: .line 692
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            ldc -0.9999999999
            dcmpg
            iflt 35
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            ldc 0.9999999999
            dcmpl
            ifle 36
        35: .line 693
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Vector3D org.apache.commons.math3.geometry.euclidean.threed.Vector3D
      StackMap stack:
            new org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
            dup
            iconst_1
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException.<init>:(Z)V
            athrow
        36: .line 695
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            dup
            iconst_0
        37: .line 696
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            dneg
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
            dup
            iconst_1
        38: .line 697
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            invokestatic org.apache.commons.math3.util.FastMath.asin:(D)D
            dastore
            dup
            iconst_2
        39: .line 698
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            dneg
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
        40: .line 695
            areturn
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        end local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
        41: .line 701
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.ZXY:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
            if_acmpne 51
        42: .line 708
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_J:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 3 /* v1 */
        start local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
        43: .line 709
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_K:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyInverseTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 4 /* v2 */
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        44: .line 710
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            ldc -0.9999999999
            dcmpg
            iflt 45
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            ldc 0.9999999999
            dcmpl
            ifle 46
        45: .line 711
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Vector3D org.apache.commons.math3.geometry.euclidean.threed.Vector3D
      StackMap stack:
            new org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
            dup
            iconst_1
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException.<init>:(Z)V
            athrow
        46: .line 713
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            dup
            iconst_0
        47: .line 714
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            dneg
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
            dup
            iconst_1
        48: .line 715
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            invokestatic org.apache.commons.math3.util.FastMath.asin:(D)D
            dastore
            dup
            iconst_2
        49: .line 716
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            dneg
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
        50: .line 713
            areturn
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        end local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
        51: .line 719
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.ZYX:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
            if_acmpne 61
        52: .line 726
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_I:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 3 /* v1 */
        start local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
        53: .line 727
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_K:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyInverseTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 4 /* v2 */
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        54: .line 728
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            ldc -0.9999999999
            dcmpg
            iflt 55
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            ldc 0.9999999999
            dcmpl
            ifle 56
        55: .line 729
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Vector3D org.apache.commons.math3.geometry.euclidean.threed.Vector3D
      StackMap stack:
            new org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
            dup
            iconst_1
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException.<init>:(Z)V
            athrow
        56: .line 731
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            dup
            iconst_0
        57: .line 732
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
            dup
            iconst_1
        58: .line 733
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            invokestatic org.apache.commons.math3.util.FastMath.asin:(D)D
            dneg
            dastore
            dup
            iconst_2
        59: .line 734
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
        60: .line 731
            areturn
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        end local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
        61: .line 737
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.XYX:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
            if_acmpne 71
        62: .line 744
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_I:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 3 /* v1 */
        start local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
        63: .line 745
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_I:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyInverseTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 4 /* v2 */
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        64: .line 746
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            ldc -0.9999999999
            dcmpg
            iflt 65
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            ldc 0.9999999999
            dcmpl
            ifle 66
        65: .line 747
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Vector3D org.apache.commons.math3.geometry.euclidean.threed.Vector3D
      StackMap stack:
            new org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
            dup
            iconst_0
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException.<init>:(Z)V
            athrow
        66: .line 749
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            dup
            iconst_0
        67: .line 750
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            dneg
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
            dup
            iconst_1
        68: .line 751
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            invokestatic org.apache.commons.math3.util.FastMath.acos:(D)D
            dastore
            dup
            iconst_2
        69: .line 752
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
        70: .line 749
            areturn
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        end local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
        71: .line 755
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.XZX:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
            if_acmpne 81
        72: .line 762
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_I:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 3 /* v1 */
        start local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
        73: .line 763
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_I:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyInverseTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 4 /* v2 */
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        74: .line 764
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            ldc -0.9999999999
            dcmpg
            iflt 75
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            ldc 0.9999999999
            dcmpl
            ifle 76
        75: .line 765
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Vector3D org.apache.commons.math3.geometry.euclidean.threed.Vector3D
      StackMap stack:
            new org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
            dup
            iconst_0
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException.<init>:(Z)V
            athrow
        76: .line 767
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            dup
            iconst_0
        77: .line 768
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
            dup
            iconst_1
        78: .line 769
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            invokestatic org.apache.commons.math3.util.FastMath.acos:(D)D
            dastore
            dup
            iconst_2
        79: .line 770
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            dneg
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
        80: .line 767
            areturn
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        end local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
        81: .line 773
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.YXY:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
            if_acmpne 91
        82: .line 780
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_J:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 3 /* v1 */
        start local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
        83: .line 781
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_J:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyInverseTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 4 /* v2 */
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        84: .line 782
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            ldc -0.9999999999
            dcmpg
            iflt 85
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            ldc 0.9999999999
            dcmpl
            ifle 86
        85: .line 783
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Vector3D org.apache.commons.math3.geometry.euclidean.threed.Vector3D
      StackMap stack:
            new org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
            dup
            iconst_0
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException.<init>:(Z)V
            athrow
        86: .line 785
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            dup
            iconst_0
        87: .line 786
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
            dup
            iconst_1
        88: .line 787
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            invokestatic org.apache.commons.math3.util.FastMath.acos:(D)D
            dastore
            dup
            iconst_2
        89: .line 788
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            dneg
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
        90: .line 785
            areturn
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        end local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
        91: .line 791
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.YZY:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
            if_acmpne 101
        92: .line 798
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_J:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 3 /* v1 */
        start local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
        93: .line 799
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_J:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyInverseTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 4 /* v2 */
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        94: .line 800
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            ldc -0.9999999999
            dcmpg
            iflt 95
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            ldc 0.9999999999
            dcmpl
            ifle 96
        95: .line 801
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Vector3D org.apache.commons.math3.geometry.euclidean.threed.Vector3D
      StackMap stack:
            new org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
            dup
            iconst_0
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException.<init>:(Z)V
            athrow
        96: .line 803
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            dup
            iconst_0
        97: .line 804
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            dneg
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
            dup
            iconst_1
        98: .line 805
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            invokestatic org.apache.commons.math3.util.FastMath.acos:(D)D
            dastore
            dup
            iconst_2
        99: .line 806
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
       100: .line 803
            areturn
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        end local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       101: .line 809
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.ZXZ:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
            if_acmpne 111
       102: .line 816
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_K:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 3 /* v1 */
        start local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       103: .line 817
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_K:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyInverseTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 4 /* v2 */
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
       104: .line 818
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            ldc -0.9999999999
            dcmpg
            iflt 105
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            ldc 0.9999999999
            dcmpl
            ifle 106
       105: .line 819
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Vector3D org.apache.commons.math3.geometry.euclidean.threed.Vector3D
      StackMap stack:
            new org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
            dup
            iconst_0
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException.<init>:(Z)V
            athrow
       106: .line 821
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            dup
            iconst_0
       107: .line 822
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            dneg
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
            dup
            iconst_1
       108: .line 823
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            invokestatic org.apache.commons.math3.util.FastMath.acos:(D)D
            dastore
            dup
            iconst_2
       109: .line 824
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
       110: .line 821
            areturn
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        end local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       111: .line 834
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_K:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 3 /* v1 */
        start local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       112: .line 835
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_K:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyInverseTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 4 /* v2 */
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
       113: .line 836
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            ldc -0.9999999999
            dcmpg
            iflt 114
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            ldc 0.9999999999
            dcmpl
            ifle 115
       114: .line 837
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Vector3D org.apache.commons.math3.geometry.euclidean.threed.Vector3D
      StackMap stack:
            new org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
            dup
            iconst_0
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException.<init>:(Z)V
            athrow
       115: .line 839
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            dup
            iconst_0
       116: .line 840
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
            dup
            iconst_1
       117: .line 841
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            invokestatic org.apache.commons.math3.util.FastMath.acos:(D)D
            dastore
            dup
            iconst_2
       118: .line 842
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            dneg
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
       119: .line 839
            areturn
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        end local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       120: .line 847
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.XYZ:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
            if_acmpne 130
       121: .line 854
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_I:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 3 /* v1 */
        start local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       122: .line 855
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_K:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyInverseTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 4 /* v2 */
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
       123: .line 856
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            ldc -0.9999999999
            dcmpg
            iflt 124
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            ldc 0.9999999999
            dcmpl
            ifle 125
       124: .line 857
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Vector3D org.apache.commons.math3.geometry.euclidean.threed.Vector3D
      StackMap stack:
            new org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
            dup
            iconst_1
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException.<init>:(Z)V
            athrow
       125: .line 859
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            dup
            iconst_0
       126: .line 860
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            dneg
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
            dup
            iconst_1
       127: .line 861
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            invokestatic org.apache.commons.math3.util.FastMath.asin:(D)D
            dastore
            dup
            iconst_2
       128: .line 862
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            dneg
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
       129: .line 859
            areturn
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        end local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       130: .line 865
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.XZY:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
            if_acmpne 140
       131: .line 872
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_I:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 3 /* v1 */
        start local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       132: .line 873
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_J:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyInverseTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 4 /* v2 */
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
       133: .line 874
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            ldc -0.9999999999
            dcmpg
            iflt 134
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            ldc 0.9999999999
            dcmpl
            ifle 135
       134: .line 875
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Vector3D org.apache.commons.math3.geometry.euclidean.threed.Vector3D
      StackMap stack:
            new org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
            dup
            iconst_1
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException.<init>:(Z)V
            athrow
       135: .line 877
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            dup
            iconst_0
       136: .line 878
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
            dup
            iconst_1
       137: .line 879
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            invokestatic org.apache.commons.math3.util.FastMath.asin:(D)D
            dneg
            dastore
            dup
            iconst_2
       138: .line 880
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
       139: .line 877
            areturn
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        end local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       140: .line 883
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.YXZ:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
            if_acmpne 150
       141: .line 890
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_J:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 3 /* v1 */
        start local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       142: .line 891
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_K:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyInverseTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 4 /* v2 */
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
       143: .line 892
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            ldc -0.9999999999
            dcmpg
            iflt 144
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            ldc 0.9999999999
            dcmpl
            ifle 145
       144: .line 893
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Vector3D org.apache.commons.math3.geometry.euclidean.threed.Vector3D
      StackMap stack:
            new org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
            dup
            iconst_1
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException.<init>:(Z)V
            athrow
       145: .line 895
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            dup
            iconst_0
       146: .line 896
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
            dup
            iconst_1
       147: .line 897
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            invokestatic org.apache.commons.math3.util.FastMath.asin:(D)D
            dneg
            dastore
            dup
            iconst_2
       148: .line 898
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
       149: .line 895
            areturn
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        end local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       150: .line 901
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.YZX:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
            if_acmpne 160
       151: .line 908
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_J:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 3 /* v1 */
        start local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       152: .line 909
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_I:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyInverseTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 4 /* v2 */
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
       153: .line 910
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            ldc -0.9999999999
            dcmpg
            iflt 154
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            ldc 0.9999999999
            dcmpl
            ifle 155
       154: .line 911
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Vector3D org.apache.commons.math3.geometry.euclidean.threed.Vector3D
      StackMap stack:
            new org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
            dup
            iconst_1
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException.<init>:(Z)V
            athrow
       155: .line 913
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            dup
            iconst_0
       156: .line 914
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            dneg
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
            dup
            iconst_1
       157: .line 915
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            invokestatic org.apache.commons.math3.util.FastMath.asin:(D)D
            dastore
            dup
            iconst_2
       158: .line 916
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            dneg
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
       159: .line 913
            areturn
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        end local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       160: .line 919
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.ZXY:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
            if_acmpne 170
       161: .line 926
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_K:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 3 /* v1 */
        start local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       162: .line 927
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_J:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyInverseTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 4 /* v2 */
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
       163: .line 928
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            ldc -0.9999999999
            dcmpg
            iflt 164
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            ldc 0.9999999999
            dcmpl
            ifle 165
       164: .line 929
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Vector3D org.apache.commons.math3.geometry.euclidean.threed.Vector3D
      StackMap stack:
            new org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
            dup
            iconst_1
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException.<init>:(Z)V
            athrow
       165: .line 931
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            dup
            iconst_0
       166: .line 932
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            dneg
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
            dup
            iconst_1
       167: .line 933
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            invokestatic org.apache.commons.math3.util.FastMath.asin:(D)D
            dastore
            dup
            iconst_2
       168: .line 934
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            dneg
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
       169: .line 931
            areturn
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        end local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       170: .line 937
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.ZYX:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
            if_acmpne 180
       171: .line 944
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_K:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 3 /* v1 */
        start local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       172: .line 945
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_I:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyInverseTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 4 /* v2 */
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
       173: .line 946
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            ldc -0.9999999999
            dcmpg
            iflt 174
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            ldc 0.9999999999
            dcmpl
            ifle 175
       174: .line 947
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Vector3D org.apache.commons.math3.geometry.euclidean.threed.Vector3D
      StackMap stack:
            new org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
            dup
            iconst_1
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException.<init>:(Z)V
            athrow
       175: .line 949
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            dup
            iconst_0
       176: .line 950
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
            dup
            iconst_1
       177: .line 951
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            invokestatic org.apache.commons.math3.util.FastMath.asin:(D)D
            dneg
            dastore
            dup
            iconst_2
       178: .line 952
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
       179: .line 949
            areturn
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        end local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       180: .line 955
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.XYX:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
            if_acmpne 190
       181: .line 962
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_I:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 3 /* v1 */
        start local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       182: .line 963
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_I:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyInverseTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 4 /* v2 */
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
       183: .line 964
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            ldc -0.9999999999
            dcmpg
            iflt 184
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            ldc 0.9999999999
            dcmpl
            ifle 185
       184: .line 965
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Vector3D org.apache.commons.math3.geometry.euclidean.threed.Vector3D
      StackMap stack:
            new org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
            dup
            iconst_0
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException.<init>:(Z)V
            athrow
       185: .line 967
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            dup
            iconst_0
       186: .line 968
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            dneg
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
            dup
            iconst_1
       187: .line 969
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            invokestatic org.apache.commons.math3.util.FastMath.acos:(D)D
            dastore
            dup
            iconst_2
       188: .line 970
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
       189: .line 967
            areturn
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        end local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       190: .line 973
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.XZX:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
            if_acmpne 200
       191: .line 980
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_I:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 3 /* v1 */
        start local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       192: .line 981
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_I:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyInverseTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 4 /* v2 */
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
       193: .line 982
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            ldc -0.9999999999
            dcmpg
            iflt 194
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            ldc 0.9999999999
            dcmpl
            ifle 195
       194: .line 983
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Vector3D org.apache.commons.math3.geometry.euclidean.threed.Vector3D
      StackMap stack:
            new org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
            dup
            iconst_0
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException.<init>:(Z)V
            athrow
       195: .line 985
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            dup
            iconst_0
       196: .line 986
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
            dup
            iconst_1
       197: .line 987
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            invokestatic org.apache.commons.math3.util.FastMath.acos:(D)D
            dastore
            dup
            iconst_2
       198: .line 988
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            dneg
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
       199: .line 985
            areturn
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        end local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       200: .line 991
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.YXY:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
            if_acmpne 210
       201: .line 998
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_J:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 3 /* v1 */
        start local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       202: .line 999
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_J:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyInverseTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 4 /* v2 */
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
       203: .line 1000
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            ldc -0.9999999999
            dcmpg
            iflt 204
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            ldc 0.9999999999
            dcmpl
            ifle 205
       204: .line 1001
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Vector3D org.apache.commons.math3.geometry.euclidean.threed.Vector3D
      StackMap stack:
            new org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
            dup
            iconst_0
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException.<init>:(Z)V
            athrow
       205: .line 1003
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            dup
            iconst_0
       206: .line 1004
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
            dup
            iconst_1
       207: .line 1005
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            invokestatic org.apache.commons.math3.util.FastMath.acos:(D)D
            dastore
            dup
            iconst_2
       208: .line 1006
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            dneg
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
       209: .line 1003
            areturn
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        end local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       210: .line 1009
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.YZY:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
            if_acmpne 220
       211: .line 1016
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_J:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 3 /* v1 */
        start local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       212: .line 1017
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_J:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyInverseTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 4 /* v2 */
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
       213: .line 1018
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            ldc -0.9999999999
            dcmpg
            iflt 214
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            ldc 0.9999999999
            dcmpl
            ifle 215
       214: .line 1019
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Vector3D org.apache.commons.math3.geometry.euclidean.threed.Vector3D
      StackMap stack:
            new org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
            dup
            iconst_0
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException.<init>:(Z)V
            athrow
       215: .line 1021
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            dup
            iconst_0
       216: .line 1022
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            dneg
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
            dup
            iconst_1
       217: .line 1023
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            invokestatic org.apache.commons.math3.util.FastMath.acos:(D)D
            dastore
            dup
            iconst_2
       218: .line 1024
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
       219: .line 1021
            areturn
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        end local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       220: .line 1027
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.ZXZ:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
            if_acmpne 230
       221: .line 1034
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_K:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 3 /* v1 */
        start local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       222: .line 1035
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_K:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyInverseTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 4 /* v2 */
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
       223: .line 1036
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            ldc -0.9999999999
            dcmpg
            iflt 224
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            ldc 0.9999999999
            dcmpl
            ifle 225
       224: .line 1037
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Vector3D org.apache.commons.math3.geometry.euclidean.threed.Vector3D
      StackMap stack:
            new org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
            dup
            iconst_0
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException.<init>:(Z)V
            athrow
       225: .line 1039
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            dup
            iconst_0
       226: .line 1040
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            dneg
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
            dup
            iconst_1
       227: .line 1041
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            invokestatic org.apache.commons.math3.util.FastMath.acos:(D)D
            dastore
            dup
            iconst_2
       228: .line 1042
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
       229: .line 1039
            areturn
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        end local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       230: .line 1052
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_K:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 3 /* v1 */
        start local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
       231: .line 1053
            aload 0 /* this */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.Vector3D.PLUS_K:Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.applyInverseTo:(Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            astore 4 /* v2 */
        start local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
       232: .line 1054
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            ldc -0.9999999999
            dcmpg
            iflt 233
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            ldc 0.9999999999
            dcmpl
            ifle 234
       233: .line 1055
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Vector3D org.apache.commons.math3.geometry.euclidean.threed.Vector3D
      StackMap stack:
            new org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
            dup
            iconst_0
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException.<init>:(Z)V
            athrow
       234: .line 1057
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            dup
            iconst_0
       235: .line 1058
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
            dup
            iconst_1
       236: .line 1059
            aload 4 /* v2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            invokestatic org.apache.commons.math3.util.FastMath.acos:(D)D
            dastore
            dup
            iconst_2
       237: .line 1060
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            aload 3 /* v1 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            dneg
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dastore
       238: .line 1057
            areturn
        end local 4 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v2
        end local 3 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D v1
        end local 2 // org.apache.commons.math3.geometry.euclidean.threed.RotationConvention convention
        end local 1 // org.apache.commons.math3.geometry.euclidean.threed.RotationOrder order
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0  239     0        this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            0  239     1       order  Lorg/apache/commons/math3/geometry/euclidean/threed/RotationOrder;
            0  239     2  convention  Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;
            3   11     3          v1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            4   11     4          v2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
           13   21     3          v1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
           14   21     4          v2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
           23   31     3          v1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
           24   31     4          v2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
           33   41     3          v1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
           34   41     4          v2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
           43   51     3          v1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
           44   51     4          v2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
           53   61     3          v1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
           54   61     4          v2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
           63   71     3          v1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
           64   71     4          v2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
           73   81     3          v1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
           74   81     4          v2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
           83   91     3          v1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
           84   91     4          v2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
           93  101     3          v1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
           94  101     4          v2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          103  111     3          v1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          104  111     4          v2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          112  120     3          v1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          113  120     4          v2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          122  130     3          v1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          123  130     4          v2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          132  140     3          v1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          133  140     4          v2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          142  150     3          v1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          143  150     4          v2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          152  160     3          v1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          153  160     4          v2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          162  170     3          v1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          163  170     4          v2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          172  180     3          v1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          173  180     4          v2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          182  190     3          v1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          183  190     4          v2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          192  200     3          v1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          193  200     4          v2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          202  210     3          v1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          203  210     4          v2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          212  220     3          v1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          213  220     4          v2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          222  230     3          v1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          223  230     4          v2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          231  239     3          v1  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
          232  239     4          v2  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
    Exceptions:
      throws org.apache.commons.math3.geometry.euclidean.threed.CardanEulerSingularityException
    MethodParameters:
            Name  Flags
      order       
      convention  

  public double[][] getMatrix();
    descriptor: ()[[D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=22, args_size=1
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
         0: .line 1074
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dmul
            dstore 1 /* q0q0 */
        start local 1 // double q0q0
         1: .line 1075
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dmul
            dstore 3 /* q0q1 */
        start local 3 // double q0q1
         2: .line 1076
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dmul
            dstore 5 /* q0q2 */
        start local 5 // double q0q2
         3: .line 1077
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dmul
            dstore 7 /* q0q3 */
        start local 7 // double q0q3
         4: .line 1078
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dmul
            dstore 9 /* q1q1 */
        start local 9 // double q1q1
         5: .line 1079
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dmul
            dstore 11 /* q1q2 */
        start local 11 // double q1q2
         6: .line 1080
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dmul
            dstore 13 /* q1q3 */
        start local 13 // double q1q3
         7: .line 1081
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dmul
            dstore 15 /* q2q2 */
        start local 15 // double q2q2
         8: .line 1082
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dmul
            dstore 17 /* q2q3 */
        start local 17 // double q2q3
         9: .line 1083
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dmul
            dstore 19 /* q3q3 */
        start local 19 // double q3q3
        10: .line 1086
            iconst_3
            anewarray double[]
            astore 21 /* m */
        start local 21 // double[][] m
        11: .line 1087
            aload 21 /* m */
            iconst_0
            iconst_3
            newarray 7
            aastore
        12: .line 1088
            aload 21 /* m */
            iconst_1
            iconst_3
            newarray 7
            aastore
        13: .line 1089
            aload 21 /* m */
            iconst_2
            iconst_3
            newarray 7
            aastore
        14: .line 1091
            aload 21 /* m */
            iconst_0
            aaload
            iconst_0
            ldc 2.0
            dload 1 /* q0q0 */
            dload 9 /* q1q1 */
            dadd
            dmul
            dconst_1
            dsub
            dastore
        15: .line 1092
            aload 21 /* m */
            iconst_1
            aaload
            iconst_0
            ldc 2.0
            dload 11 /* q1q2 */
            dload 7 /* q0q3 */
            dsub
            dmul
            dastore
        16: .line 1093
            aload 21 /* m */
            iconst_2
            aaload
            iconst_0
            ldc 2.0
            dload 13 /* q1q3 */
            dload 5 /* q0q2 */
            dadd
            dmul
            dastore
        17: .line 1095
            aload 21 /* m */
            iconst_0
            aaload
            iconst_1
            ldc 2.0
            dload 11 /* q1q2 */
            dload 7 /* q0q3 */
            dadd
            dmul
            dastore
        18: .line 1096
            aload 21 /* m */
            iconst_1
            aaload
            iconst_1
            ldc 2.0
            dload 1 /* q0q0 */
            dload 15 /* q2q2 */
            dadd
            dmul
            dconst_1
            dsub
            dastore
        19: .line 1097
            aload 21 /* m */
            iconst_2
            aaload
            iconst_1
            ldc 2.0
            dload 17 /* q2q3 */
            dload 3 /* q0q1 */
            dsub
            dmul
            dastore
        20: .line 1099
            aload 21 /* m */
            iconst_0
            aaload
            iconst_2
            ldc 2.0
            dload 13 /* q1q3 */
            dload 5 /* q0q2 */
            dsub
            dmul
            dastore
        21: .line 1100
            aload 21 /* m */
            iconst_1
            aaload
            iconst_2
            ldc 2.0
            dload 17 /* q2q3 */
            dload 3 /* q0q1 */
            dadd
            dmul
            dastore
        22: .line 1101
            aload 21 /* m */
            iconst_2
            aaload
            iconst_2
            ldc 2.0
            dload 1 /* q0q0 */
            dload 19 /* q3q3 */
            dadd
            dmul
            dconst_1
            dsub
            dastore
        23: .line 1103
            aload 21 /* m */
            areturn
        end local 21 // double[][] m
        end local 19 // double q3q3
        end local 17 // double q2q3
        end local 15 // double q2q2
        end local 13 // double q1q3
        end local 11 // double q1q2
        end local 9 // double q1q1
        end local 7 // double q0q3
        end local 5 // double q0q2
        end local 3 // double q0q1
        end local 1 // double q0q0
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   24     0  this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            1   24     1  q0q0  D
            2   24     3  q0q1  D
            3   24     5  q0q2  D
            4   24     7  q0q3  D
            5   24     9  q1q1  D
            6   24    11  q1q2  D
            7   24    13  q1q3  D
            8   24    15  q2q2  D
            9   24    17  q2q3  D
           10   24    19  q3q3  D
           11   24    21     m  [[D

  public org.apache.commons.math3.geometry.euclidean.threed.Vector3D applyTo(org.apache.commons.math3.geometry.euclidean.threed.Vector3D);
    descriptor: (Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=18, locals=10, args_size=2
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
        start local 1 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D u
         0: .line 1113
            aload 1 /* u */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            dstore 2 /* x */
        start local 2 // double x
         1: .line 1114
            aload 1 /* u */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            dstore 4 /* y */
        start local 4 // double y
         2: .line 1115
            aload 1 /* u */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            dstore 6 /* z */
        start local 6 // double z
         3: .line 1117
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dload 2 /* x */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dload 4 /* y */
            dmul
            dadd
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dload 6 /* z */
            dmul
            dadd
            dstore 8 /* s */
        start local 8 // double s
         4: .line 1119
            new org.apache.commons.math3.geometry.euclidean.threed.Vector3D
            dup
            ldc 2.0
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dload 2 /* x */
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dload 6 /* z */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dload 4 /* y */
            dmul
            dsub
            dsub
            dmul
            dload 8 /* s */
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dmul
            dadd
            dmul
            dload 2 /* x */
            dsub
         5: .line 1120
            ldc 2.0
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dload 4 /* y */
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dload 2 /* x */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dload 6 /* z */
            dmul
            dsub
            dsub
            dmul
            dload 8 /* s */
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dmul
            dadd
            dmul
            dload 4 /* y */
            dsub
         6: .line 1121
            ldc 2.0
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dload 6 /* z */
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dload 4 /* y */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dload 2 /* x */
            dmul
            dsub
            dsub
            dmul
            dload 8 /* s */
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dmul
            dadd
            dmul
            dload 6 /* z */
            dsub
         7: .line 1119
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.Vector3D.<init>:(DDD)V
            areturn
        end local 8 // double s
        end local 6 // double z
        end local 4 // double y
        end local 2 // double x
        end local 1 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D u
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            0    8     1     u  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            1    8     2     x  D
            2    8     4     y  D
            3    8     6     z  D
            4    8     8     s  D
    MethodParameters:
      Name  Flags
      u     

  public void applyTo(double[], double[]);
    descriptor: ([D[D)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=14, locals=11, args_size=3
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
        start local 1 // double[] in
        start local 2 // double[] out
         0: .line 1132
            aload 1 /* in */
            iconst_0
            daload
            dstore 3 /* x */
        start local 3 // double x
         1: .line 1133
            aload 1 /* in */
            iconst_1
            daload
            dstore 5 /* y */
        start local 5 // double y
         2: .line 1134
            aload 1 /* in */
            iconst_2
            daload
            dstore 7 /* z */
        start local 7 // double z
         3: .line 1136
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dload 3 /* x */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dload 5 /* y */
            dmul
            dadd
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dload 7 /* z */
            dmul
            dadd
            dstore 9 /* s */
        start local 9 // double s
         4: .line 1138
            aload 2 /* out */
            iconst_0
            ldc 2.0
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dload 3 /* x */
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dload 7 /* z */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dload 5 /* y */
            dmul
            dsub
            dsub
            dmul
            dload 9 /* s */
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dmul
            dadd
            dmul
            dload 3 /* x */
            dsub
            dastore
         5: .line 1139
            aload 2 /* out */
            iconst_1
            ldc 2.0
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dload 5 /* y */
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dload 3 /* x */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dload 7 /* z */
            dmul
            dsub
            dsub
            dmul
            dload 9 /* s */
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dmul
            dadd
            dmul
            dload 5 /* y */
            dsub
            dastore
         6: .line 1140
            aload 2 /* out */
            iconst_2
            ldc 2.0
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dload 7 /* z */
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dload 5 /* y */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dload 3 /* x */
            dmul
            dsub
            dsub
            dmul
            dload 9 /* s */
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dmul
            dadd
            dmul
            dload 7 /* z */
            dsub
            dastore
         7: .line 1142
            return
        end local 9 // double s
        end local 7 // double z
        end local 5 // double y
        end local 3 // double x
        end local 2 // double[] out
        end local 1 // double[] in
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            0    8     1    in  [D
            0    8     2   out  [D
            1    8     3     x  D
            2    8     5     y  D
            3    8     7     z  D
            4    8     9     s  D
    MethodParameters:
      Name  Flags
      in    final
      out   final

  public org.apache.commons.math3.geometry.euclidean.threed.Vector3D applyInverseTo(org.apache.commons.math3.geometry.euclidean.threed.Vector3D);
    descriptor: (Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;)Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=18, locals=12, args_size=2
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
        start local 1 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D u
         0: .line 1150
            aload 1 /* u */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getX:()D
            dstore 2 /* x */
        start local 2 // double x
         1: .line 1151
            aload 1 /* u */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getY:()D
            dstore 4 /* y */
        start local 4 // double y
         2: .line 1152
            aload 1 /* u */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Vector3D.getZ:()D
            dstore 6 /* z */
        start local 6 // double z
         3: .line 1154
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dload 2 /* x */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dload 4 /* y */
            dmul
            dadd
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dload 6 /* z */
            dmul
            dadd
            dstore 8 /* s */
        start local 8 // double s
         4: .line 1155
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dneg
            dstore 10 /* m0 */
        start local 10 // double m0
         5: .line 1157
            new org.apache.commons.math3.geometry.euclidean.threed.Vector3D
            dup
            ldc 2.0
            dload 10 /* m0 */
            dload 2 /* x */
            dload 10 /* m0 */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dload 6 /* z */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dload 4 /* y */
            dmul
            dsub
            dsub
            dmul
            dload 8 /* s */
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dmul
            dadd
            dmul
            dload 2 /* x */
            dsub
         6: .line 1158
            ldc 2.0
            dload 10 /* m0 */
            dload 4 /* y */
            dload 10 /* m0 */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dload 2 /* x */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dload 6 /* z */
            dmul
            dsub
            dsub
            dmul
            dload 8 /* s */
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dmul
            dadd
            dmul
            dload 4 /* y */
            dsub
         7: .line 1159
            ldc 2.0
            dload 10 /* m0 */
            dload 6 /* z */
            dload 10 /* m0 */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dload 4 /* y */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dload 2 /* x */
            dmul
            dsub
            dsub
            dmul
            dload 8 /* s */
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dmul
            dadd
            dmul
            dload 6 /* z */
            dsub
         8: .line 1157
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.Vector3D.<init>:(DDD)V
            areturn
        end local 10 // double m0
        end local 8 // double s
        end local 6 // double z
        end local 4 // double y
        end local 2 // double x
        end local 1 // org.apache.commons.math3.geometry.euclidean.threed.Vector3D u
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            0    9     1     u  Lorg/apache/commons/math3/geometry/euclidean/threed/Vector3D;
            1    9     2     x  D
            2    9     4     y  D
            3    9     6     z  D
            4    9     8     s  D
            5    9    10    m0  D
    MethodParameters:
      Name  Flags
      u     

  public void applyInverseTo(double[], double[]);
    descriptor: ([D[D)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=14, locals=13, args_size=3
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
        start local 1 // double[] in
        start local 2 // double[] out
         0: .line 1170
            aload 1 /* in */
            iconst_0
            daload
            dstore 3 /* x */
        start local 3 // double x
         1: .line 1171
            aload 1 /* in */
            iconst_1
            daload
            dstore 5 /* y */
        start local 5 // double y
         2: .line 1172
            aload 1 /* in */
            iconst_2
            daload
            dstore 7 /* z */
        start local 7 // double z
         3: .line 1174
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dload 3 /* x */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dload 5 /* y */
            dmul
            dadd
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dload 7 /* z */
            dmul
            dadd
            dstore 9 /* s */
        start local 9 // double s
         4: .line 1175
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dneg
            dstore 11 /* m0 */
        start local 11 // double m0
         5: .line 1177
            aload 2 /* out */
            iconst_0
            ldc 2.0
            dload 11 /* m0 */
            dload 3 /* x */
            dload 11 /* m0 */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dload 7 /* z */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dload 5 /* y */
            dmul
            dsub
            dsub
            dmul
            dload 9 /* s */
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dmul
            dadd
            dmul
            dload 3 /* x */
            dsub
            dastore
         6: .line 1178
            aload 2 /* out */
            iconst_1
            ldc 2.0
            dload 11 /* m0 */
            dload 5 /* y */
            dload 11 /* m0 */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dload 3 /* x */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dload 7 /* z */
            dmul
            dsub
            dsub
            dmul
            dload 9 /* s */
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dmul
            dadd
            dmul
            dload 5 /* y */
            dsub
            dastore
         7: .line 1179
            aload 2 /* out */
            iconst_2
            ldc 2.0
            dload 11 /* m0 */
            dload 7 /* z */
            dload 11 /* m0 */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dload 5 /* y */
            dmul
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dload 3 /* x */
            dmul
            dsub
            dsub
            dmul
            dload 9 /* s */
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dmul
            dadd
            dmul
            dload 7 /* z */
            dsub
            dastore
         8: .line 1181
            return
        end local 11 // double m0
        end local 9 // double s
        end local 7 // double z
        end local 5 // double y
        end local 3 // double x
        end local 2 // double[] out
        end local 1 // double[] in
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            0    9     1    in  [D
            0    9     2   out  [D
            1    9     3     x  D
            2    9     5     y  D
            3    9     7     z  D
            4    9     9     s  D
            5    9    11    m0  D
    MethodParameters:
      Name  Flags
      in    final
      out   final

  public org.apache.commons.math3.geometry.euclidean.threed.Rotation applyTo(org.apache.commons.math3.geometry.euclidean.threed.Rotation);
    descriptor: (Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;)Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
        start local 1 // org.apache.commons.math3.geometry.euclidean.threed.Rotation r
         0: .line 1193
            aload 0 /* this */
            aload 1 /* r */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationConvention.VECTOR_OPERATOR:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.compose:(Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;)Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            areturn
        end local 1 // org.apache.commons.math3.geometry.euclidean.threed.Rotation r
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            0    1     1     r  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
    MethodParameters:
      Name  Flags
      r     

  public org.apache.commons.math3.geometry.euclidean.threed.Rotation compose(org.apache.commons.math3.geometry.euclidean.threed.Rotation, org.apache.commons.math3.geometry.euclidean.threed.RotationConvention);
    descriptor: (Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;)Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
        start local 1 // org.apache.commons.math3.geometry.euclidean.threed.Rotation r
        start local 2 // org.apache.commons.math3.geometry.euclidean.threed.RotationConvention convention
         0: .line 1221
            aload 2 /* convention */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationConvention.VECTOR_OPERATOR:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;
            if_acmpne 2
         1: .line 1222
            aload 0 /* this */
            aload 1 /* r */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.composeInternal:(Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;)Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 1 /* r */
            aload 0 /* this */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.composeInternal:(Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;)Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
         3: .line 1221
      StackMap locals:
      StackMap stack: org.apache.commons.math3.geometry.euclidean.threed.Rotation
            areturn
        end local 2 // org.apache.commons.math3.geometry.euclidean.threed.RotationConvention convention
        end local 1 // org.apache.commons.math3.geometry.euclidean.threed.Rotation r
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            0    4     1           r  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            0    4     2  convention  Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;
    MethodParameters:
            Name  Flags
      r           final
      convention  final

  private org.apache.commons.math3.geometry.euclidean.threed.Rotation composeInternal(org.apache.commons.math3.geometry.euclidean.threed.Rotation);
    descriptor: (Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;)Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=16, locals=2, args_size=2
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
        start local 1 // org.apache.commons.math3.geometry.euclidean.threed.Rotation r
         0: .line 1231
            new org.apache.commons.math3.geometry.euclidean.threed.Rotation
            dup
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dmul
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dmul
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dmul
            dadd
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dmul
            dadd
            dsub
         1: .line 1232
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dmul
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dmul
            dadd
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dmul
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dmul
            dsub
            dadd
         2: .line 1233
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dmul
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dmul
            dadd
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dmul
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dmul
            dsub
            dadd
         3: .line 1234
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dmul
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dmul
            dadd
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dmul
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dmul
            dsub
            dadd
         4: .line 1235
            iconst_0
         5: .line 1231
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.Rotation.<init>:(DDDDZ)V
            areturn
        end local 1 // org.apache.commons.math3.geometry.euclidean.threed.Rotation r
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            0    6     1     r  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
    MethodParameters:
      Name  Flags
      r     final

  public org.apache.commons.math3.geometry.euclidean.threed.Rotation applyInverseTo(org.apache.commons.math3.geometry.euclidean.threed.Rotation);
    descriptor: (Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;)Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
        start local 1 // org.apache.commons.math3.geometry.euclidean.threed.Rotation r
         0: .line 1249
            aload 0 /* this */
            aload 1 /* r */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationConvention.VECTOR_OPERATOR:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.composeInverse:(Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;)Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            areturn
        end local 1 // org.apache.commons.math3.geometry.euclidean.threed.Rotation r
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            0    1     1     r  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
    MethodParameters:
      Name  Flags
      r     

  public org.apache.commons.math3.geometry.euclidean.threed.Rotation composeInverse(org.apache.commons.math3.geometry.euclidean.threed.Rotation, org.apache.commons.math3.geometry.euclidean.threed.RotationConvention);
    descriptor: (Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;)Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
        start local 1 // org.apache.commons.math3.geometry.euclidean.threed.Rotation r
        start local 2 // org.apache.commons.math3.geometry.euclidean.threed.RotationConvention convention
         0: .line 1279
            aload 2 /* convention */
            getstatic org.apache.commons.math3.geometry.euclidean.threed.RotationConvention.VECTOR_OPERATOR:Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;
            if_acmpne 2
         1: .line 1280
            aload 0 /* this */
            aload 1 /* r */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.composeInverseInternal:(Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;)Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 1 /* r */
            aload 0 /* this */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.revert:()Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.composeInternal:(Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;)Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
         3: .line 1279
      StackMap locals:
      StackMap stack: org.apache.commons.math3.geometry.euclidean.threed.Rotation
            areturn
        end local 2 // org.apache.commons.math3.geometry.euclidean.threed.RotationConvention convention
        end local 1 // org.apache.commons.math3.geometry.euclidean.threed.Rotation r
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            0    4     1           r  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            0    4     2  convention  Lorg/apache/commons/math3/geometry/euclidean/threed/RotationConvention;
    MethodParameters:
            Name  Flags
      r           final
      convention  final

  private org.apache.commons.math3.geometry.euclidean.threed.Rotation composeInverseInternal(org.apache.commons.math3.geometry.euclidean.threed.Rotation);
    descriptor: (Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;)Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=16, locals=2, args_size=2
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
        start local 1 // org.apache.commons.math3.geometry.euclidean.threed.Rotation r
         0: .line 1290
            new org.apache.commons.math3.geometry.euclidean.threed.Rotation
            dup
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dneg
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dmul
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dmul
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dmul
            dadd
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dmul
            dadd
            dsub
         1: .line 1291
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dneg
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dmul
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dmul
            dadd
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dmul
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dmul
            dsub
            dadd
         2: .line 1292
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dneg
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dmul
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dmul
            dadd
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dmul
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dmul
            dsub
            dadd
         3: .line 1293
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dneg
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            dmul
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q0:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q3:D
            dmul
            dadd
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            dmul
            aload 1 /* r */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q2:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.threed.Rotation.q1:D
            dmul
            dsub
            dadd
         4: .line 1294
            iconst_0
         5: .line 1290
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.Rotation.<init>:(DDDDZ)V
            areturn
        end local 1 // org.apache.commons.math3.geometry.euclidean.threed.Rotation r
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            0    6     1     r  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
    MethodParameters:
      Name  Flags
      r     

  private double[][] orthogonalizeMatrix(double[][], double);
    descriptor: ([[DD)[[D
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=12, locals=70, args_size=3
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
        start local 1 // double[][] m
        start local 2 // double threshold
         0: .line 1309
            aload 1 /* m */
            iconst_0
            aaload
            astore 4 /* m0 */
        start local 4 // double[] m0
         1: .line 1310
            aload 1 /* m */
            iconst_1
            aaload
            astore 5 /* m1 */
        start local 5 // double[] m1
         2: .line 1311
            aload 1 /* m */
            iconst_2
            aaload
            astore 6 /* m2 */
        start local 6 // double[] m2
         3: .line 1312
            aload 4 /* m0 */
            iconst_0
            daload
            dstore 7 /* x00 */
        start local 7 // double x00
         4: .line 1313
            aload 4 /* m0 */
            iconst_1
            daload
            dstore 9 /* x01 */
        start local 9 // double x01
         5: .line 1314
            aload 4 /* m0 */
            iconst_2
            daload
            dstore 11 /* x02 */
        start local 11 // double x02
         6: .line 1315
            aload 5 /* m1 */
            iconst_0
            daload
            dstore 13 /* x10 */
        start local 13 // double x10
         7: .line 1316
            aload 5 /* m1 */
            iconst_1
            daload
            dstore 15 /* x11 */
        start local 15 // double x11
         8: .line 1317
            aload 5 /* m1 */
            iconst_2
            daload
            dstore 17 /* x12 */
        start local 17 // double x12
         9: .line 1318
            aload 6 /* m2 */
            iconst_0
            daload
            dstore 19 /* x20 */
        start local 19 // double x20
        10: .line 1319
            aload 6 /* m2 */
            iconst_1
            daload
            dstore 21 /* x21 */
        start local 21 // double x21
        11: .line 1320
            aload 6 /* m2 */
            iconst_2
            daload
            dstore 23 /* x22 */
        start local 23 // double x22
        12: .line 1321
            dconst_0
            dstore 25 /* fn */
        start local 25 // double fn
        13: .line 1324
            iconst_3
            iconst_3
            multianewarray [[D 2
            astore 29 /* o */
        start local 29 // double[][] o
        14: .line 1325
            aload 29 /* o */
            iconst_0
            aaload
            astore 30 /* o0 */
        start local 30 // double[] o0
        15: .line 1326
            aload 29 /* o */
            iconst_1
            aaload
            astore 31 /* o1 */
        start local 31 // double[] o1
        16: .line 1327
            aload 29 /* o */
            iconst_2
            aaload
            astore 32 /* o2 */
        start local 32 // double[] o2
        17: .line 1330
            iconst_0
            istore 33 /* i */
        start local 33 // int i
        18: .line 1331
            goto 71
        19: .line 1334
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Rotation double[][] double double[] double[] double[] double double double double double double double double double double top top double[][] double[] double[] double[] int
      StackMap stack:
            aload 4 /* m0 */
            iconst_0
            daload
            dload 7 /* x00 */
            dmul
            aload 5 /* m1 */
            iconst_0
            daload
            dload 13 /* x10 */
            dmul
            dadd
            aload 6 /* m2 */
            iconst_0
            daload
            dload 19 /* x20 */
            dmul
            dadd
            dstore 34 /* mx00 */
        start local 34 // double mx00
        20: .line 1335
            aload 4 /* m0 */
            iconst_1
            daload
            dload 7 /* x00 */
            dmul
            aload 5 /* m1 */
            iconst_1
            daload
            dload 13 /* x10 */
            dmul
            dadd
            aload 6 /* m2 */
            iconst_1
            daload
            dload 19 /* x20 */
            dmul
            dadd
            dstore 36 /* mx10 */
        start local 36 // double mx10
        21: .line 1336
            aload 4 /* m0 */
            iconst_2
            daload
            dload 7 /* x00 */
            dmul
            aload 5 /* m1 */
            iconst_2
            daload
            dload 13 /* x10 */
            dmul
            dadd
            aload 6 /* m2 */
            iconst_2
            daload
            dload 19 /* x20 */
            dmul
            dadd
            dstore 38 /* mx20 */
        start local 38 // double mx20
        22: .line 1337
            aload 4 /* m0 */
            iconst_0
            daload
            dload 9 /* x01 */
            dmul
            aload 5 /* m1 */
            iconst_0
            daload
            dload 15 /* x11 */
            dmul
            dadd
            aload 6 /* m2 */
            iconst_0
            daload
            dload 21 /* x21 */
            dmul
            dadd
            dstore 40 /* mx01 */
        start local 40 // double mx01
        23: .line 1338
            aload 4 /* m0 */
            iconst_1
            daload
            dload 9 /* x01 */
            dmul
            aload 5 /* m1 */
            iconst_1
            daload
            dload 15 /* x11 */
            dmul
            dadd
            aload 6 /* m2 */
            iconst_1
            daload
            dload 21 /* x21 */
            dmul
            dadd
            dstore 42 /* mx11 */
        start local 42 // double mx11
        24: .line 1339
            aload 4 /* m0 */
            iconst_2
            daload
            dload 9 /* x01 */
            dmul
            aload 5 /* m1 */
            iconst_2
            daload
            dload 15 /* x11 */
            dmul
            dadd
            aload 6 /* m2 */
            iconst_2
            daload
            dload 21 /* x21 */
            dmul
            dadd
            dstore 44 /* mx21 */
        start local 44 // double mx21
        25: .line 1340
            aload 4 /* m0 */
            iconst_0
            daload
            dload 11 /* x02 */
            dmul
            aload 5 /* m1 */
            iconst_0
            daload
            dload 17 /* x12 */
            dmul
            dadd
            aload 6 /* m2 */
            iconst_0
            daload
            dload 23 /* x22 */
            dmul
            dadd
            dstore 46 /* mx02 */
        start local 46 // double mx02
        26: .line 1341
            aload 4 /* m0 */
            iconst_1
            daload
            dload 11 /* x02 */
            dmul
            aload 5 /* m1 */
            iconst_1
            daload
            dload 17 /* x12 */
            dmul
            dadd
            aload 6 /* m2 */
            iconst_1
            daload
            dload 23 /* x22 */
            dmul
            dadd
            dstore 48 /* mx12 */
        start local 48 // double mx12
        27: .line 1342
            aload 4 /* m0 */
            iconst_2
            daload
            dload 11 /* x02 */
            dmul
            aload 5 /* m1 */
            iconst_2
            daload
            dload 17 /* x12 */
            dmul
            dadd
            aload 6 /* m2 */
            iconst_2
            daload
            dload 23 /* x22 */
            dmul
            dadd
            dstore 50 /* mx22 */
        start local 50 // double mx22
        28: .line 1345
            aload 30 /* o0 */
            iconst_0
            dload 7 /* x00 */
            ldc 0.5
            dload 7 /* x00 */
            dload 34 /* mx00 */
            dmul
            dload 9 /* x01 */
            dload 36 /* mx10 */
            dmul
            dadd
            dload 11 /* x02 */
            dload 38 /* mx20 */
            dmul
            dadd
            aload 4 /* m0 */
            iconst_0
            daload
            dsub
            dmul
            dsub
            dastore
        29: .line 1346
            aload 30 /* o0 */
            iconst_1
            dload 9 /* x01 */
            ldc 0.5
            dload 7 /* x00 */
            dload 40 /* mx01 */
            dmul
            dload 9 /* x01 */
            dload 42 /* mx11 */
            dmul
            dadd
            dload 11 /* x02 */
            dload 44 /* mx21 */
            dmul
            dadd
            aload 4 /* m0 */
            iconst_1
            daload
            dsub
            dmul
            dsub
            dastore
        30: .line 1347
            aload 30 /* o0 */
            iconst_2
            dload 11 /* x02 */
            ldc 0.5
            dload 7 /* x00 */
            dload 46 /* mx02 */
            dmul
            dload 9 /* x01 */
            dload 48 /* mx12 */
            dmul
            dadd
            dload 11 /* x02 */
            dload 50 /* mx22 */
            dmul
            dadd
            aload 4 /* m0 */
            iconst_2
            daload
            dsub
            dmul
            dsub
            dastore
        31: .line 1348
            aload 31 /* o1 */
            iconst_0
            dload 13 /* x10 */
            ldc 0.5
            dload 13 /* x10 */
            dload 34 /* mx00 */
            dmul
            dload 15 /* x11 */
            dload 36 /* mx10 */
            dmul
            dadd
            dload 17 /* x12 */
            dload 38 /* mx20 */
            dmul
            dadd
            aload 5 /* m1 */
            iconst_0
            daload
            dsub
            dmul
            dsub
            dastore
        32: .line 1349
            aload 31 /* o1 */
            iconst_1
            dload 15 /* x11 */
            ldc 0.5
            dload 13 /* x10 */
            dload 40 /* mx01 */
            dmul
            dload 15 /* x11 */
            dload 42 /* mx11 */
            dmul
            dadd
            dload 17 /* x12 */
            dload 44 /* mx21 */
            dmul
            dadd
            aload 5 /* m1 */
            iconst_1
            daload
            dsub
            dmul
            dsub
            dastore
        33: .line 1350
            aload 31 /* o1 */
            iconst_2
            dload 17 /* x12 */
            ldc 0.5
            dload 13 /* x10 */
            dload 46 /* mx02 */
            dmul
            dload 15 /* x11 */
            dload 48 /* mx12 */
            dmul
            dadd
            dload 17 /* x12 */
            dload 50 /* mx22 */
            dmul
            dadd
            aload 5 /* m1 */
            iconst_2
            daload
            dsub
            dmul
            dsub
            dastore
        34: .line 1351
            aload 32 /* o2 */
            iconst_0
            dload 19 /* x20 */
            ldc 0.5
            dload 19 /* x20 */
            dload 34 /* mx00 */
            dmul
            dload 21 /* x21 */
            dload 36 /* mx10 */
            dmul
            dadd
            dload 23 /* x22 */
            dload 38 /* mx20 */
            dmul
            dadd
            aload 6 /* m2 */
            iconst_0
            daload
            dsub
            dmul
            dsub
            dastore
        35: .line 1352
            aload 32 /* o2 */
            iconst_1
            dload 21 /* x21 */
            ldc 0.5
            dload 19 /* x20 */
            dload 40 /* mx01 */
            dmul
            dload 21 /* x21 */
            dload 42 /* mx11 */
            dmul
            dadd
            dload 23 /* x22 */
            dload 44 /* mx21 */
            dmul
            dadd
            aload 6 /* m2 */
            iconst_1
            daload
            dsub
            dmul
            dsub
            dastore
        36: .line 1353
            aload 32 /* o2 */
            iconst_2
            dload 23 /* x22 */
            ldc 0.5
            dload 19 /* x20 */
            dload 46 /* mx02 */
            dmul
            dload 21 /* x21 */
            dload 48 /* mx12 */
            dmul
            dadd
            dload 23 /* x22 */
            dload 50 /* mx22 */
            dmul
            dadd
            aload 6 /* m2 */
            iconst_2
            daload
            dsub
            dmul
            dsub
            dastore
        37: .line 1356
            aload 30 /* o0 */
            iconst_0
            daload
            aload 4 /* m0 */
            iconst_0
            daload
            dsub
            dstore 52 /* corr00 */
        start local 52 // double corr00
        38: .line 1357
            aload 30 /* o0 */
            iconst_1
            daload
            aload 4 /* m0 */
            iconst_1
            daload
            dsub
            dstore 54 /* corr01 */
        start local 54 // double corr01
        39: .line 1358
            aload 30 /* o0 */
            iconst_2
            daload
            aload 4 /* m0 */
            iconst_2
            daload
            dsub
            dstore 56 /* corr02 */
        start local 56 // double corr02
        40: .line 1359
            aload 31 /* o1 */
            iconst_0
            daload
            aload 5 /* m1 */
            iconst_0
            daload
            dsub
            dstore 58 /* corr10 */
        start local 58 // double corr10
        41: .line 1360
            aload 31 /* o1 */
            iconst_1
            daload
            aload 5 /* m1 */
            iconst_1
            daload
            dsub
            dstore 60 /* corr11 */
        start local 60 // double corr11
        42: .line 1361
            aload 31 /* o1 */
            iconst_2
            daload
            aload 5 /* m1 */
            iconst_2
            daload
            dsub
            dstore 62 /* corr12 */
        start local 62 // double corr12
        43: .line 1362
            aload 32 /* o2 */
            iconst_0
            daload
            aload 6 /* m2 */
            iconst_0
            daload
            dsub
            dstore 64 /* corr20 */
        start local 64 // double corr20
        44: .line 1363
            aload 32 /* o2 */
            iconst_1
            daload
            aload 6 /* m2 */
            iconst_1
            daload
            dsub
            dstore 66 /* corr21 */
        start local 66 // double corr21
        45: .line 1364
            aload 32 /* o2 */
            iconst_2
            daload
            aload 6 /* m2 */
            iconst_2
            daload
            dsub
            dstore 68 /* corr22 */
        start local 68 // double corr22
        46: .line 1367
            dload 52 /* corr00 */
            dload 52 /* corr00 */
            dmul
            dload 54 /* corr01 */
            dload 54 /* corr01 */
            dmul
            dadd
            dload 56 /* corr02 */
            dload 56 /* corr02 */
            dmul
            dadd
        47: .line 1368
            dload 58 /* corr10 */
            dload 58 /* corr10 */
            dmul
        48: .line 1367
            dadd
        49: .line 1368
            dload 60 /* corr11 */
            dload 60 /* corr11 */
            dmul
        50: .line 1367
            dadd
        51: .line 1368
            dload 62 /* corr12 */
            dload 62 /* corr12 */
            dmul
        52: .line 1367
            dadd
        53: .line 1369
            dload 64 /* corr20 */
            dload 64 /* corr20 */
            dmul
        54: .line 1367
            dadd
        55: .line 1369
            dload 66 /* corr21 */
            dload 66 /* corr21 */
            dmul
        56: .line 1367
            dadd
        57: .line 1369
            dload 68 /* corr22 */
            dload 68 /* corr22 */
            dmul
        58: .line 1367
            dadd
            dstore 27 /* fn1 */
        start local 27 // double fn1
        59: .line 1372
            dload 27 /* fn1 */
            dload 25 /* fn */
            dsub
            invokestatic org.apache.commons.math3.util.FastMath.abs:(D)D
            dload 2 /* threshold */
            dcmpg
            ifgt 61
        60: .line 1373
            aload 29 /* o */
            areturn
        61: .line 1377
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Rotation double[][] double double[] double[] double[] double double double double double double double double double double double double[][] double[] double[] double[] int double double double double double double double double double double double double double double double double double double
      StackMap stack:
            aload 30 /* o0 */
            iconst_0
            daload
            dstore 7 /* x00 */
        62: .line 1378
            aload 30 /* o0 */
            iconst_1
            daload
            dstore 9 /* x01 */
        63: .line 1379
            aload 30 /* o0 */
            iconst_2
            daload
            dstore 11 /* x02 */
        64: .line 1380
            aload 31 /* o1 */
            iconst_0
            daload
            dstore 13 /* x10 */
        65: .line 1381
            aload 31 /* o1 */
            iconst_1
            daload
            dstore 15 /* x11 */
        66: .line 1382
            aload 31 /* o1 */
            iconst_2
            daload
            dstore 17 /* x12 */
        67: .line 1383
            aload 32 /* o2 */
            iconst_0
            daload
            dstore 19 /* x20 */
        68: .line 1384
            aload 32 /* o2 */
            iconst_1
            daload
            dstore 21 /* x21 */
        69: .line 1385
            aload 32 /* o2 */
            iconst_2
            daload
            dstore 23 /* x22 */
        70: .line 1386
            dload 27 /* fn1 */
            dstore 25 /* fn */
        end local 68 // double corr22
        end local 66 // double corr21
        end local 64 // double corr20
        end local 62 // double corr12
        end local 60 // double corr11
        end local 58 // double corr10
        end local 56 // double corr02
        end local 54 // double corr01
        end local 52 // double corr00
        end local 50 // double mx22
        end local 48 // double mx12
        end local 46 // double mx02
        end local 44 // double mx21
        end local 42 // double mx11
        end local 40 // double mx01
        end local 38 // double mx20
        end local 36 // double mx10
        end local 34 // double mx00
        end local 27 // double fn1
        71: .line 1331
      StackMap locals: org.apache.commons.math3.geometry.euclidean.threed.Rotation double[][] double double[] double[] double[] double double double double double double double double double double top top double[][] double[] double[] double[] int
      StackMap stack:
            iinc 33 /* i */ 1
            iload 33 /* i */
            bipush 11
            if_icmplt 19
        72: .line 1391
            new org.apache.commons.math3.geometry.euclidean.threed.NotARotationMatrixException
            dup
        73: .line 1392
            getstatic org.apache.commons.math3.exception.util.LocalizedFormats.UNABLE_TO_ORTHOGONOLIZE_MATRIX:Lorg/apache/commons/math3/exception/util/LocalizedFormats;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
        74: .line 1393
            iload 33 /* i */
            iconst_1
            isub
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
        75: .line 1391
            aastore
            invokespecial org.apache.commons.math3.geometry.euclidean.threed.NotARotationMatrixException.<init>:(Lorg/apache/commons/math3/exception/util/Localizable;[Ljava/lang/Object;)V
            athrow
        end local 33 // int i
        end local 32 // double[] o2
        end local 31 // double[] o1
        end local 30 // double[] o0
        end local 29 // double[][] o
        end local 25 // double fn
        end local 23 // double x22
        end local 21 // double x21
        end local 19 // double x20
        end local 17 // double x12
        end local 15 // double x11
        end local 13 // double x10
        end local 11 // double x02
        end local 9 // double x01
        end local 7 // double x00
        end local 6 // double[] m2
        end local 5 // double[] m1
        end local 4 // double[] m0
        end local 2 // double threshold
        end local 1 // double[][] m
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   76     0       this  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            0   76     1          m  [[D
            0   76     2  threshold  D
            1   76     4         m0  [D
            2   76     5         m1  [D
            3   76     6         m2  [D
            4   76     7        x00  D
            5   76     9        x01  D
            6   76    11        x02  D
            7   76    13        x10  D
            8   76    15        x11  D
            9   76    17        x12  D
           10   76    19        x20  D
           11   76    21        x21  D
           12   76    23        x22  D
           13   76    25         fn  D
           59   71    27        fn1  D
           14   76    29          o  [[D
           15   76    30         o0  [D
           16   76    31         o1  [D
           17   76    32         o2  [D
           18   76    33          i  I
           20   71    34       mx00  D
           21   71    36       mx10  D
           22   71    38       mx20  D
           23   71    40       mx01  D
           24   71    42       mx11  D
           25   71    44       mx21  D
           26   71    46       mx02  D
           27   71    48       mx12  D
           28   71    50       mx22  D
           38   71    52     corr00  D
           39   71    54     corr01  D
           40   71    56     corr02  D
           41   71    58     corr10  D
           42   71    60     corr11  D
           43   71    62     corr12  D
           44   71    64     corr20  D
           45   71    66     corr21  D
           46   71    68     corr22  D
    Exceptions:
      throws org.apache.commons.math3.geometry.euclidean.threed.NotARotationMatrixException
    MethodParameters:
           Name  Flags
      m          
      threshold  

  public static double distance(org.apache.commons.math3.geometry.euclidean.threed.Rotation, org.apache.commons.math3.geometry.euclidean.threed.Rotation);
    descriptor: (Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation r1
        start local 1 // org.apache.commons.math3.geometry.euclidean.threed.Rotation r2
         0: .line 1421
            aload 0 /* r1 */
            aload 1 /* r2 */
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.composeInverseInternal:(Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;)Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            invokevirtual org.apache.commons.math3.geometry.euclidean.threed.Rotation.getAngle:()D
            dreturn
        end local 1 // org.apache.commons.math3.geometry.euclidean.threed.Rotation r2
        end local 0 // org.apache.commons.math3.geometry.euclidean.threed.Rotation r1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    r1  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
            0    1     1    r2  Lorg/apache/commons/math3/geometry/euclidean/threed/Rotation;
    MethodParameters:
      Name  Flags
      r1    
      r2    
}
SourceFile: "Rotation.java"