public class org.apache.lucene.spatial3d.geom.PlanetModel implements org.apache.lucene.spatial3d.geom.SerializableObject
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.lucene.spatial3d.geom.PlanetModel
  super_class: java.lang.Object
{
  public static final org.apache.lucene.spatial3d.geom.PlanetModel SPHERE;
    descriptor: Lorg/apache/lucene/spatial3d/geom/PlanetModel;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final double WGS84_MEAN;
    descriptor: D
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 6371008.7714

  public static final double WGS84_POLAR;
    descriptor: D
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 6356752.314245

  public static final double WGS84_EQUATORIAL;
    descriptor: D
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 6378137.0

  public static final org.apache.lucene.spatial3d.geom.PlanetModel WGS84;
    descriptor: Lorg/apache/lucene/spatial3d/geom/PlanetModel;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public final double ab;
    descriptor: D
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final double c;
    descriptor: D
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final double inverseAb;
    descriptor: D
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final double inverseC;
    descriptor: D
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final double inverseAbSquared;
    descriptor: D
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final double inverseCSquared;
    descriptor: D
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final double flattening;
    descriptor: D
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final double squareRatio;
    descriptor: D
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final double scale;
    descriptor: D
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final double inverseScale;
    descriptor: D
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final org.apache.lucene.spatial3d.geom.GeoPoint NORTH_POLE;
    descriptor: Lorg/apache/lucene/spatial3d/geom/GeoPoint;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final org.apache.lucene.spatial3d.geom.GeoPoint SOUTH_POLE;
    descriptor: Lorg/apache/lucene/spatial3d/geom/GeoPoint;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final org.apache.lucene.spatial3d.geom.GeoPoint MIN_X_POLE;
    descriptor: Lorg/apache/lucene/spatial3d/geom/GeoPoint;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final org.apache.lucene.spatial3d.geom.GeoPoint MAX_X_POLE;
    descriptor: Lorg/apache/lucene/spatial3d/geom/GeoPoint;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final org.apache.lucene.spatial3d.geom.GeoPoint MIN_Y_POLE;
    descriptor: Lorg/apache/lucene/spatial3d/geom/GeoPoint;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final org.apache.lucene.spatial3d.geom.GeoPoint MAX_Y_POLE;
    descriptor: Lorg/apache/lucene/spatial3d/geom/GeoPoint;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final double minimumPoleDistance;
    descriptor: D
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=0, args_size=0
         0: .line 30
            new org.apache.lucene.spatial3d.geom.PlanetModel
            dup
            dconst_1
            dconst_1
            invokespecial org.apache.lucene.spatial3d.geom.PlanetModel.<init>:(DD)V
            putstatic org.apache.lucene.spatial3d.geom.PlanetModel.SPHERE:Lorg/apache/lucene/spatial3d/geom/PlanetModel;
         1: .line 40
            new org.apache.lucene.spatial3d.geom.PlanetModel
            dup
            ldc 1.0011188539924791
         2: .line 41
            ldc 0.9977622920221051
         3: .line 40
            invokespecial org.apache.lucene.spatial3d.geom.PlanetModel.<init>:(DD)V
            putstatic org.apache.lucene.spatial3d.geom.PlanetModel.WGS84:Lorg/apache/lucene/spatial3d/geom/PlanetModel;
         4: .line 41
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(double, double);
    descriptor: (DD)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=15, locals=5, args_size=3
        start local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
        start local 1 // double ab
        start local 3 // double c
         0: .line 92
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 93
            aload 0 /* this */
            dload 1 /* ab */
            putfield org.apache.lucene.spatial3d.geom.PlanetModel.ab:D
         2: .line 94
            aload 0 /* this */
            dload 3 /* c */
            putfield org.apache.lucene.spatial3d.geom.PlanetModel.c:D
         3: .line 95
            aload 0 /* this */
            dconst_1
            dload 1 /* ab */
            ddiv
            putfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseAb:D
         4: .line 96
            aload 0 /* this */
            dconst_1
            dload 3 /* c */
            ddiv
            putfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseC:D
         5: .line 97
            aload 0 /* this */
            dload 1 /* ab */
            dload 3 /* c */
            dsub
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseAb:D
            dmul
            putfield org.apache.lucene.spatial3d.geom.PlanetModel.flattening:D
         6: .line 98
            aload 0 /* this */
            dload 1 /* ab */
            dload 1 /* ab */
            dmul
            dload 3 /* c */
            dload 3 /* c */
            dmul
            dsub
            dload 3 /* c */
            dload 3 /* c */
            dmul
            ddiv
            putfield org.apache.lucene.spatial3d.geom.PlanetModel.squareRatio:D
         7: .line 99
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseAb:D
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseAb:D
            dmul
            putfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseAbSquared:D
         8: .line 100
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseC:D
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseC:D
            dmul
            putfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseCSquared:D
         9: .line 101
            aload 0 /* this */
            new org.apache.lucene.spatial3d.geom.GeoPoint
            dup
            dload 3 /* c */
            dconst_0
            dconst_0
            dconst_1
            ldc 1.5707963267948966
            dconst_0
            invokespecial org.apache.lucene.spatial3d.geom.GeoPoint.<init>:(DDDDDD)V
            putfield org.apache.lucene.spatial3d.geom.PlanetModel.NORTH_POLE:Lorg/apache/lucene/spatial3d/geom/GeoPoint;
        10: .line 102
            aload 0 /* this */
            new org.apache.lucene.spatial3d.geom.GeoPoint
            dup
            dload 3 /* c */
            dconst_0
            dconst_0
            ldc -1.0
            ldc -1.5707963267948966
            dconst_0
            invokespecial org.apache.lucene.spatial3d.geom.GeoPoint.<init>:(DDDDDD)V
            putfield org.apache.lucene.spatial3d.geom.PlanetModel.SOUTH_POLE:Lorg/apache/lucene/spatial3d/geom/GeoPoint;
        11: .line 103
            aload 0 /* this */
            new org.apache.lucene.spatial3d.geom.GeoPoint
            dup
            dload 1 /* ab */
            ldc -1.0
            dconst_0
            dconst_0
            dconst_0
            ldc -3.141592653589793
            invokespecial org.apache.lucene.spatial3d.geom.GeoPoint.<init>:(DDDDDD)V
            putfield org.apache.lucene.spatial3d.geom.PlanetModel.MIN_X_POLE:Lorg/apache/lucene/spatial3d/geom/GeoPoint;
        12: .line 104
            aload 0 /* this */
            new org.apache.lucene.spatial3d.geom.GeoPoint
            dup
            dload 1 /* ab */
            dconst_1
            dconst_0
            dconst_0
            dconst_0
            dconst_0
            invokespecial org.apache.lucene.spatial3d.geom.GeoPoint.<init>:(DDDDDD)V
            putfield org.apache.lucene.spatial3d.geom.PlanetModel.MAX_X_POLE:Lorg/apache/lucene/spatial3d/geom/GeoPoint;
        13: .line 105
            aload 0 /* this */
            new org.apache.lucene.spatial3d.geom.GeoPoint
            dup
            dload 1 /* ab */
            dconst_0
            ldc -1.0
            dconst_0
            dconst_0
            ldc -1.5707963267948966
            invokespecial org.apache.lucene.spatial3d.geom.GeoPoint.<init>:(DDDDDD)V
            putfield org.apache.lucene.spatial3d.geom.PlanetModel.MIN_Y_POLE:Lorg/apache/lucene/spatial3d/geom/GeoPoint;
        14: .line 106
            aload 0 /* this */
            new org.apache.lucene.spatial3d.geom.GeoPoint
            dup
            dload 1 /* ab */
            dconst_0
            dconst_1
            dconst_0
            dconst_0
            ldc 1.5707963267948966
            invokespecial org.apache.lucene.spatial3d.geom.GeoPoint.<init>:(DDDDDD)V
            putfield org.apache.lucene.spatial3d.geom.PlanetModel.MAX_Y_POLE:Lorg/apache/lucene/spatial3d/geom/GeoPoint;
        15: .line 107
            aload 0 /* this */
            ldc 2.0
            dload 1 /* ab */
            dmul
            dload 3 /* c */
            dadd
            ldc 3.0
            ddiv
            putfield org.apache.lucene.spatial3d.geom.PlanetModel.scale:D
        16: .line 108
            aload 0 /* this */
            dconst_1
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.scale:D
            ddiv
            putfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseScale:D
        17: .line 109
            aload 0 /* this */
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.NORTH_POLE:Lorg/apache/lucene/spatial3d/geom/GeoPoint;
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.SOUTH_POLE:Lorg/apache/lucene/spatial3d/geom/GeoPoint;
            invokevirtual org.apache.lucene.spatial3d.geom.PlanetModel.surfaceDistance:(Lorg/apache/lucene/spatial3d/geom/GeoPoint;Lorg/apache/lucene/spatial3d/geom/GeoPoint;)D
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.MIN_X_POLE:Lorg/apache/lucene/spatial3d/geom/GeoPoint;
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.MAX_X_POLE:Lorg/apache/lucene/spatial3d/geom/GeoPoint;
            invokevirtual org.apache.lucene.spatial3d.geom.PlanetModel.surfaceDistance:(Lorg/apache/lucene/spatial3d/geom/GeoPoint;Lorg/apache/lucene/spatial3d/geom/GeoPoint;)D
            invokestatic java.lang.Math.min:(DD)D
            putfield org.apache.lucene.spatial3d.geom.PlanetModel.minimumPoleDistance:D
        18: .line 110
            return
        end local 3 // double c
        end local 1 // double ab
        end local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   19     0  this  Lorg/apache/lucene/spatial3d/geom/PlanetModel;
            0   19     1    ab  D
            0   19     3     c  D
    MethodParameters:
      Name  Flags
      ab    final
      c     final

  public void <init>(java.io.InputStream);
    descriptor: (Ljava/io/InputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
        start local 1 // java.io.InputStream inputStream
         0: .line 116
            aload 0 /* this */
            aload 1 /* inputStream */
            invokestatic org.apache.lucene.spatial3d.geom.SerializableObject.readDouble:(Ljava/io/InputStream;)D
            aload 1 /* inputStream */
            invokestatic org.apache.lucene.spatial3d.geom.SerializableObject.readDouble:(Ljava/io/InputStream;)D
            invokespecial org.apache.lucene.spatial3d.geom.PlanetModel.<init>:(DD)V
         1: .line 117
            return
        end local 1 // java.io.InputStream inputStream
        end local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/apache/lucene/spatial3d/geom/PlanetModel;
            0    2     1  inputStream  Ljava/io/InputStream;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      inputStream  final

  public void write(java.io.OutputStream);
    descriptor: (Ljava/io/OutputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
        start local 1 // java.io.OutputStream outputStream
         0: .line 121
            aload 1 /* outputStream */
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.ab:D
            invokestatic org.apache.lucene.spatial3d.geom.SerializableObject.writeDouble:(Ljava/io/OutputStream;D)V
         1: .line 122
            aload 1 /* outputStream */
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.c:D
            invokestatic org.apache.lucene.spatial3d.geom.SerializableObject.writeDouble:(Ljava/io/OutputStream;D)V
         2: .line 123
            return
        end local 1 // java.io.OutputStream outputStream
        end local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Lorg/apache/lucene/spatial3d/geom/PlanetModel;
            0    3     1  outputStream  Ljava/io/OutputStream;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
              Name  Flags
      outputStream  final

  public boolean isSphere();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
         0: .line 129
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.ab:D
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.c:D
            dcmpl
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/lucene/spatial3d/geom/PlanetModel;

  public double getMinimumMagnitude();
    descriptor: ()D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
         0: .line 136
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.ab:D
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.c:D
            invokestatic java.lang.Math.min:(DD)D
            dreturn
        end local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/spatial3d/geom/PlanetModel;

  public double getMaximumMagnitude();
    descriptor: ()D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
         0: .line 143
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.ab:D
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.c:D
            invokestatic java.lang.Math.max:(DD)D
            dreturn
        end local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/spatial3d/geom/PlanetModel;

  public double getMinimumXValue();
    descriptor: ()D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
         0: .line 150
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.ab:D
            dneg
            dreturn
        end local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/spatial3d/geom/PlanetModel;

  public double getMaximumXValue();
    descriptor: ()D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
         0: .line 157
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.ab:D
            dreturn
        end local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/spatial3d/geom/PlanetModel;

  public double getMinimumYValue();
    descriptor: ()D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
         0: .line 164
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.ab:D
            dneg
            dreturn
        end local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/spatial3d/geom/PlanetModel;

  public double getMaximumYValue();
    descriptor: ()D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
         0: .line 171
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.ab:D
            dreturn
        end local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/spatial3d/geom/PlanetModel;

  public double getMinimumZValue();
    descriptor: ()D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
         0: .line 178
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.c:D
            dneg
            dreturn
        end local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/spatial3d/geom/PlanetModel;

  public double getMaximumZValue();
    descriptor: ()D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
         0: .line 185
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.c:D
            dreturn
        end local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/spatial3d/geom/PlanetModel;

  public boolean pointOnSurface(org.apache.lucene.spatial3d.geom.Vector);
    descriptor: (Lorg/apache/lucene/spatial3d/geom/Vector;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
        start local 1 // org.apache.lucene.spatial3d.geom.Vector v
         0: .line 193
            aload 0 /* this */
            aload 1 /* v */
            getfield org.apache.lucene.spatial3d.geom.Vector.x:D
            aload 1 /* v */
            getfield org.apache.lucene.spatial3d.geom.Vector.y:D
            aload 1 /* v */
            getfield org.apache.lucene.spatial3d.geom.Vector.z:D
            invokevirtual org.apache.lucene.spatial3d.geom.PlanetModel.pointOnSurface:(DDD)Z
            ireturn
        end local 1 // org.apache.lucene.spatial3d.geom.Vector v
        end local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/spatial3d/geom/PlanetModel;
            0    1     1     v  Lorg/apache/lucene/spatial3d/geom/Vector;
    MethodParameters:
      Name  Flags
      v     final

  public boolean pointOnSurface(double, double, double);
    descriptor: (DDD)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=7, args_size=4
        start local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
        start local 1 // double x
        start local 3 // double y
        start local 5 // double z
         0: .line 204
            dload 1 /* x */
            dload 1 /* x */
            dmul
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseAb:D
            dmul
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseAb:D
            dmul
            dload 3 /* y */
            dload 3 /* y */
            dmul
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseAb:D
            dmul
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseAb:D
            dmul
            dadd
            dload 5 /* z */
            dload 5 /* z */
            dmul
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseC:D
            dmul
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseC:D
            dmul
            dadd
            dconst_1
            dsub
            invokestatic java.lang.Math.abs:(D)D
            ldc 1.0E-12
            dcmpg
            ifge 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 5 // double z
        end local 3 // double y
        end local 1 // double x
        end local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/lucene/spatial3d/geom/PlanetModel;
            0    2     1     x  D
            0    2     3     y  D
            0    2     5     z  D
    MethodParameters:
      Name  Flags
      x     final
      y     final
      z     final

  public boolean pointOutside(org.apache.lucene.spatial3d.geom.Vector);
    descriptor: (Lorg/apache/lucene/spatial3d/geom/Vector;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
        start local 1 // org.apache.lucene.spatial3d.geom.Vector v
         0: .line 212
            aload 0 /* this */
            aload 1 /* v */
            getfield org.apache.lucene.spatial3d.geom.Vector.x:D
            aload 1 /* v */
            getfield org.apache.lucene.spatial3d.geom.Vector.y:D
            aload 1 /* v */
            getfield org.apache.lucene.spatial3d.geom.Vector.z:D
            invokevirtual org.apache.lucene.spatial3d.geom.PlanetModel.pointOutside:(DDD)Z
            ireturn
        end local 1 // org.apache.lucene.spatial3d.geom.Vector v
        end local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/spatial3d/geom/PlanetModel;
            0    1     1     v  Lorg/apache/lucene/spatial3d/geom/Vector;
    MethodParameters:
      Name  Flags
      v     final

  public boolean pointOutside(double, double, double);
    descriptor: (DDD)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=7, args_size=4
        start local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
        start local 1 // double x
        start local 3 // double y
        start local 5 // double z
         0: .line 223
            dload 1 /* x */
            dload 1 /* x */
            dmul
            dload 3 /* y */
            dload 3 /* y */
            dmul
            dadd
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseAb:D
            dmul
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseAb:D
            dmul
            dload 5 /* z */
            dload 5 /* z */
            dmul
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseC:D
            dmul
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseC:D
            dmul
            dadd
            dconst_1
            dsub
            ldc 1.0E-12
            dcmpl
            ifle 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 5 // double z
        end local 3 // double y
        end local 1 // double x
        end local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/lucene/spatial3d/geom/PlanetModel;
            0    2     1     x  D
            0    2     3     y  D
            0    2     5     z  D
    MethodParameters:
      Name  Flags
      x     final
      y     final
      z     final

  public org.apache.lucene.spatial3d.geom.GeoPoint createSurfacePoint(org.apache.lucene.spatial3d.geom.Vector);
    descriptor: (Lorg/apache/lucene/spatial3d/geom/Vector;)Lorg/apache/lucene/spatial3d/geom/GeoPoint;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
        start local 1 // org.apache.lucene.spatial3d.geom.Vector vector
         0: .line 231
            aload 0 /* this */
            aload 1 /* vector */
            getfield org.apache.lucene.spatial3d.geom.Vector.x:D
            aload 1 /* vector */
            getfield org.apache.lucene.spatial3d.geom.Vector.y:D
            aload 1 /* vector */
            getfield org.apache.lucene.spatial3d.geom.Vector.z:D
            invokevirtual org.apache.lucene.spatial3d.geom.PlanetModel.createSurfacePoint:(DDD)Lorg/apache/lucene/spatial3d/geom/GeoPoint;
            areturn
        end local 1 // org.apache.lucene.spatial3d.geom.Vector vector
        end local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/apache/lucene/spatial3d/geom/PlanetModel;
            0    1     1  vector  Lorg/apache/lucene/spatial3d/geom/Vector;
    MethodParameters:
        Name  Flags
      vector  final

  public org.apache.lucene.spatial3d.geom.GeoPoint createSurfacePoint(double, double, double);
    descriptor: (DDD)Lorg/apache/lucene/spatial3d/geom/GeoPoint;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=9, args_size=4
        start local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
        start local 1 // double x
        start local 3 // double y
        start local 5 // double z
         0: .line 247
            dconst_1
            dload 1 /* x */
            dload 1 /* x */
            dmul
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseAbSquared:D
            dmul
            dload 3 /* y */
            dload 3 /* y */
            dmul
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseAbSquared:D
            dmul
            dadd
            dload 5 /* z */
            dload 5 /* z */
            dmul
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseCSquared:D
            dmul
            dadd
            ddiv
            invokestatic java.lang.Math.sqrt:(D)D
            dstore 7 /* t */
        start local 7 // double t
         1: .line 248
            new org.apache.lucene.spatial3d.geom.GeoPoint
            dup
            dload 7 /* t */
            dload 1 /* x */
            dmul
            dload 7 /* t */
            dload 3 /* y */
            dmul
            dload 7 /* t */
            dload 5 /* z */
            dmul
            invokespecial org.apache.lucene.spatial3d.geom.GeoPoint.<init>:(DDD)V
            areturn
        end local 7 // double t
        end local 5 // double z
        end local 3 // double y
        end local 1 // double x
        end local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/lucene/spatial3d/geom/PlanetModel;
            0    2     1     x  D
            0    2     3     y  D
            0    2     5     z  D
            1    2     7     t  D
    MethodParameters:
      Name  Flags
      x     final
      y     final
      z     final

  public org.apache.lucene.spatial3d.geom.GeoPoint bisection(org.apache.lucene.spatial3d.geom.GeoPoint, org.apache.lucene.spatial3d.geom.GeoPoint);
    descriptor: (Lorg/apache/lucene/spatial3d/geom/GeoPoint;Lorg/apache/lucene/spatial3d/geom/GeoPoint;)Lorg/apache/lucene/spatial3d/geom/GeoPoint;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=13, args_size=3
        start local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
        start local 1 // org.apache.lucene.spatial3d.geom.GeoPoint pt1
        start local 2 // org.apache.lucene.spatial3d.geom.GeoPoint pt2
         0: .line 257
            aload 1 /* pt1 */
            getfield org.apache.lucene.spatial3d.geom.GeoPoint.x:D
            aload 2 /* pt2 */
            getfield org.apache.lucene.spatial3d.geom.GeoPoint.x:D
            dadd
            ldc 0.5
            dmul
            dstore 3 /* A0 */
        start local 3 // double A0
         1: .line 258
            aload 1 /* pt1 */
            getfield org.apache.lucene.spatial3d.geom.GeoPoint.y:D
            aload 2 /* pt2 */
            getfield org.apache.lucene.spatial3d.geom.GeoPoint.y:D
            dadd
            ldc 0.5
            dmul
            dstore 5 /* B0 */
        start local 5 // double B0
         2: .line 259
            aload 1 /* pt1 */
            getfield org.apache.lucene.spatial3d.geom.GeoPoint.z:D
            aload 2 /* pt2 */
            getfield org.apache.lucene.spatial3d.geom.GeoPoint.z:D
            dadd
            ldc 0.5
            dmul
            dstore 7 /* C0 */
        start local 7 // double C0
         3: .line 261
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseAbSquared:D
            dload 3 /* A0 */
            dmul
            dload 3 /* A0 */
            dmul
         4: .line 262
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseAbSquared:D
            dload 5 /* B0 */
            dmul
            dload 5 /* B0 */
            dmul
         5: .line 261
            dadd
         6: .line 263
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseCSquared:D
            dload 7 /* C0 */
            dmul
            dload 7 /* C0 */
            dmul
         7: .line 261
            dadd
            dstore 9 /* denom */
        start local 9 // double denom
         8: .line 265
            dload 9 /* denom */
            ldc 1.0E-12
            dcmpg
            ifge 10
         9: .line 267
            aconst_null
            areturn
        10: .line 270
      StackMap locals: org.apache.lucene.spatial3d.geom.PlanetModel org.apache.lucene.spatial3d.geom.GeoPoint org.apache.lucene.spatial3d.geom.GeoPoint double double double double
      StackMap stack:
            dconst_1
            dload 9 /* denom */
            ddiv
            invokestatic java.lang.Math.sqrt:(D)D
            dstore 11 /* t */
        start local 11 // double t
        11: .line 272
            new org.apache.lucene.spatial3d.geom.GeoPoint
            dup
            dload 11 /* t */
            dload 3 /* A0 */
            dmul
            dload 11 /* t */
            dload 5 /* B0 */
            dmul
            dload 11 /* t */
            dload 7 /* C0 */
            dmul
            invokespecial org.apache.lucene.spatial3d.geom.GeoPoint.<init>:(DDD)V
            areturn
        end local 11 // double t
        end local 9 // double denom
        end local 7 // double C0
        end local 5 // double B0
        end local 3 // double A0
        end local 2 // org.apache.lucene.spatial3d.geom.GeoPoint pt2
        end local 1 // org.apache.lucene.spatial3d.geom.GeoPoint pt1
        end local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   12     0   this  Lorg/apache/lucene/spatial3d/geom/PlanetModel;
            0   12     1    pt1  Lorg/apache/lucene/spatial3d/geom/GeoPoint;
            0   12     2    pt2  Lorg/apache/lucene/spatial3d/geom/GeoPoint;
            1   12     3     A0  D
            2   12     5     B0  D
            3   12     7     C0  D
            8   12     9  denom  D
           11   12    11      t  D
    MethodParameters:
      Name  Flags
      pt1   final
      pt2   final

  public double surfaceDistance(org.apache.lucene.spatial3d.geom.GeoPoint, org.apache.lucene.spatial3d.geom.GeoPoint);
    descriptor: (Lorg/apache/lucene/spatial3d/geom/GeoPoint;Lorg/apache/lucene/spatial3d/geom/GeoPoint;)D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=18, locals=56, args_size=3
        start local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
        start local 1 // org.apache.lucene.spatial3d.geom.GeoPoint pt1
        start local 2 // org.apache.lucene.spatial3d.geom.GeoPoint pt2
         0: .line 282
            aload 2 /* pt2 */
            invokevirtual org.apache.lucene.spatial3d.geom.GeoPoint.getLongitude:()D
            aload 1 /* pt1 */
            invokevirtual org.apache.lucene.spatial3d.geom.GeoPoint.getLongitude:()D
            dsub
            dstore 3 /* L */
        start local 3 // double L
         1: .line 283
            dconst_1
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.flattening:D
            dsub
            aload 1 /* pt1 */
            invokevirtual org.apache.lucene.spatial3d.geom.GeoPoint.getLatitude:()D
            invokestatic java.lang.Math.tan:(D)D
            dmul
            invokestatic java.lang.Math.atan:(D)D
            dstore 5 /* U1 */
        start local 5 // double U1
         2: .line 284
            dconst_1
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.flattening:D
            dsub
            aload 2 /* pt2 */
            invokevirtual org.apache.lucene.spatial3d.geom.GeoPoint.getLatitude:()D
            invokestatic java.lang.Math.tan:(D)D
            dmul
            invokestatic java.lang.Math.atan:(D)D
            dstore 7 /* U2 */
        start local 7 // double U2
         3: .line 286
            dload 5 /* U1 */
            invokestatic java.lang.Math.sin:(D)D
            dstore 9 /* sinU1 */
        start local 9 // double sinU1
         4: .line 287
            dload 5 /* U1 */
            invokestatic java.lang.Math.cos:(D)D
            dstore 11 /* cosU1 */
        start local 11 // double cosU1
         5: .line 288
            dload 7 /* U2 */
            invokestatic java.lang.Math.sin:(D)D
            dstore 13 /* sinU2 */
        start local 13 // double sinU2
         6: .line 289
            dload 7 /* U2 */
            invokestatic java.lang.Math.cos:(D)D
            dstore 15 /* cosU2 */
        start local 15 // double cosU2
         7: .line 291
            dload 11 /* cosU1 */
            dload 15 /* cosU2 */
            dmul
            dstore 17 /* dCosU1CosU2 */
        start local 17 // double dCosU1CosU2
         8: .line 292
            dload 11 /* cosU1 */
            dload 13 /* sinU2 */
            dmul
            dstore 19 /* dCosU1SinU2 */
        start local 19 // double dCosU1SinU2
         9: .line 294
            dload 9 /* sinU1 */
            dload 13 /* sinU2 */
            dmul
            dstore 21 /* dSinU1SinU2 */
        start local 21 // double dSinU1SinU2
        10: .line 295
            dload 9 /* sinU1 */
            dload 15 /* cosU2 */
            dmul
            dstore 23 /* dSinU1CosU2 */
        start local 23 // double dSinU1CosU2
        11: .line 298
            dload 3 /* L */
            dstore 25 /* lambda */
        start local 25 // double lambda
        12: .line 299
            ldc 6.283185307179586
            dstore 27 /* lambdaP */
        start local 27 // double lambdaP
        13: .line 300
            iconst_0
            istore 29 /* iterLimit */
        start local 29 // int iterLimit
        14: .line 311
      StackMap locals: org.apache.lucene.spatial3d.geom.PlanetModel org.apache.lucene.spatial3d.geom.GeoPoint org.apache.lucene.spatial3d.geom.GeoPoint double double double double double double double double double double double double double int
      StackMap stack:
            dload 25 /* lambda */
            invokestatic java.lang.Math.sin:(D)D
            dstore 44 /* sinLambda */
        start local 44 // double sinLambda
        15: .line 312
            dload 25 /* lambda */
            invokestatic java.lang.Math.cos:(D)D
            dstore 46 /* cosLambda */
        start local 46 // double cosLambda
        16: .line 313
            dload 15 /* cosU2 */
            dload 44 /* sinLambda */
            dmul
            dload 15 /* cosU2 */
            dload 44 /* sinLambda */
            dmul
            dmul
        17: .line 314
            dload 19 /* dCosU1SinU2 */
            dload 23 /* dSinU1CosU2 */
            dload 46 /* cosLambda */
            dmul
            dsub
            dload 19 /* dCosU1SinU2 */
            dload 23 /* dSinU1CosU2 */
            dload 46 /* cosLambda */
            dmul
            dsub
            dmul
        18: .line 313
            dadd
            invokestatic java.lang.Math.sqrt:(D)D
            dstore 32 /* sinSigma */
        start local 32 // double sinSigma
        19: .line 316
            dload 32 /* sinSigma */
            dconst_0
            dcmpl
            ifne 21
        20: .line 317
            dconst_0
            dreturn
        21: .line 319
      StackMap locals: org.apache.lucene.spatial3d.geom.PlanetModel org.apache.lucene.spatial3d.geom.GeoPoint org.apache.lucene.spatial3d.geom.GeoPoint double double double double double double double double double double double double double int top top double top top top top top top top top top top double double
      StackMap stack:
            dload 21 /* dSinU1SinU2 */
            dload 17 /* dCosU1CosU2 */
            dload 46 /* cosLambda */
            dmul
            dadd
            dstore 36 /* cosSigma */
        start local 36 // double cosSigma
        22: .line 320
            dload 32 /* sinSigma */
            dload 36 /* cosSigma */
            invokestatic java.lang.Math.atan2:(DD)D
            dstore 38 /* sigma */
        start local 38 // double sigma
        23: .line 321
            dload 17 /* dCosU1CosU2 */
            dload 44 /* sinLambda */
            dmul
            dload 32 /* sinSigma */
            ddiv
            dstore 40 /* sinAlpha */
        start local 40 // double sinAlpha
        24: .line 322
            dconst_1
            dload 40 /* sinAlpha */
            dload 40 /* sinAlpha */
            dmul
            dsub
            dstore 30 /* cosSqAlpha */
        start local 30 // double cosSqAlpha
        25: .line 323
            dload 36 /* cosSigma */
            ldc 2.0
            dload 21 /* dSinU1SinU2 */
            dmul
            dload 30 /* cosSqAlpha */
            ddiv
            dsub
            dstore 34 /* cos2SigmaM */
        start local 34 // double cos2SigmaM
        26: .line 325
            dload 34 /* cos2SigmaM */
            invokestatic java.lang.Double.isNaN:(D)Z
            ifeq 28
        27: .line 326
            dconst_0
            dstore 34 /* cos2SigmaM */
        28: .line 327
      StackMap locals: org.apache.lucene.spatial3d.geom.PlanetModel org.apache.lucene.spatial3d.geom.GeoPoint org.apache.lucene.spatial3d.geom.GeoPoint double double double double double double double double double double double double double int double double double double double double top top double double
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.flattening:D
            ldc 16.0
            ddiv
            dload 30 /* cosSqAlpha */
            dmul
            ldc 4.0
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.flattening:D
            ldc 4.0
            ldc 3.0
            dload 30 /* cosSqAlpha */
            dmul
            dsub
            dmul
            dadd
            dmul
            dstore 42 /* C */
        start local 42 // double C
        29: .line 328
            dload 25 /* lambda */
            dstore 27 /* lambdaP */
        30: .line 329
            dload 3 /* L */
            dconst_1
            dload 42 /* C */
            dsub
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.flattening:D
            dmul
            dload 40 /* sinAlpha */
            dmul
        31: .line 330
            dload 38 /* sigma */
            dload 42 /* C */
            dload 32 /* sinSigma */
            dmul
            dload 34 /* cos2SigmaM */
            dload 42 /* C */
            dload 36 /* cosSigma */
            dmul
            ldc -1.0
            ldc 2.0
            dload 34 /* cos2SigmaM */
            dmul
            dload 34 /* cos2SigmaM */
            dmul
            dadd
            dmul
            dadd
            dmul
            dadd
            dmul
        32: .line 329
            dadd
            dstore 25 /* lambda */
        33: .line 331
            dload 25 /* lambda */
            dload 27 /* lambdaP */
            dsub
            invokestatic java.lang.Math.abs:(D)D
            ldc 1.0E-12
            dcmpl
            iflt 35
            iinc 29 /* iterLimit */ 1
            iload 29 /* iterLimit */
            bipush 100
        34: .line 310
            if_icmplt 14
        35: .line 332
      StackMap locals: org.apache.lucene.spatial3d.geom.PlanetModel org.apache.lucene.spatial3d.geom.GeoPoint org.apache.lucene.spatial3d.geom.GeoPoint double double double double double double double double double double double double double int double double double double double double double double double
      StackMap stack:
            dload 30 /* cosSqAlpha */
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.squareRatio:D
            dmul
            dstore 48 /* uSq */
        start local 48 // double uSq
        36: .line 333
            dconst_1
            dload 48 /* uSq */
            ldc 16384.0
            ddiv
            ldc 4096.0
            dload 48 /* uSq */
            ldc -768.0
            dload 48 /* uSq */
            ldc 320.0
            ldc 175.0
            dload 48 /* uSq */
            dmul
            dsub
            dmul
            dadd
            dmul
            dadd
            dmul
            dadd
            dstore 50 /* A */
        start local 50 // double A
        37: .line 334
            dload 48 /* uSq */
            ldc 1024.0
            ddiv
            ldc 256.0
            dload 48 /* uSq */
            ldc -128.0
            dload 48 /* uSq */
            ldc 74.0
            ldc 47.0
            dload 48 /* uSq */
            dmul
            dsub
            dmul
            dadd
            dmul
            dadd
            dmul
            dstore 52 /* B */
        start local 52 // double B
        38: .line 335
            dload 52 /* B */
            dload 32 /* sinSigma */
            dmul
            dload 34 /* cos2SigmaM */
            dload 52 /* B */
            ldc 4.0
            ddiv
            dload 36 /* cosSigma */
            ldc -1.0
            ldc 2.0
            dload 34 /* cos2SigmaM */
            dmul
            dload 34 /* cos2SigmaM */
            dmul
            dadd
            dmul
        39: .line 336
            dload 52 /* B */
            ldc 6.0
            ddiv
            dload 34 /* cos2SigmaM */
            dmul
            ldc -3.0
            ldc 4.0
            dload 32 /* sinSigma */
            dmul
            dload 32 /* sinSigma */
            dmul
            dadd
            dmul
            ldc -3.0
            ldc 4.0
            dload 34 /* cos2SigmaM */
            dmul
            dload 34 /* cos2SigmaM */
            dmul
            dadd
            dmul
            dsub
            dmul
            dadd
        40: .line 335
            dmul
            dstore 54 /* deltaSigma */
        start local 54 // double deltaSigma
        41: .line 338
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.c:D
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseScale:D
            dmul
            dload 50 /* A */
            dmul
            dload 38 /* sigma */
            dload 54 /* deltaSigma */
            dsub
            dmul
            dreturn
        end local 54 // double deltaSigma
        end local 52 // double B
        end local 50 // double A
        end local 48 // double uSq
        end local 46 // double cosLambda
        end local 44 // double sinLambda
        end local 42 // double C
        end local 40 // double sinAlpha
        end local 38 // double sigma
        end local 36 // double cosSigma
        end local 34 // double cos2SigmaM
        end local 32 // double sinSigma
        end local 30 // double cosSqAlpha
        end local 29 // int iterLimit
        end local 27 // double lambdaP
        end local 25 // double lambda
        end local 23 // double dSinU1CosU2
        end local 21 // double dSinU1SinU2
        end local 19 // double dCosU1SinU2
        end local 17 // double dCosU1CosU2
        end local 15 // double cosU2
        end local 13 // double sinU2
        end local 11 // double cosU1
        end local 9 // double sinU1
        end local 7 // double U2
        end local 5 // double U1
        end local 3 // double L
        end local 2 // org.apache.lucene.spatial3d.geom.GeoPoint pt2
        end local 1 // org.apache.lucene.spatial3d.geom.GeoPoint pt1
        end local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   42     0         this  Lorg/apache/lucene/spatial3d/geom/PlanetModel;
            0   42     1          pt1  Lorg/apache/lucene/spatial3d/geom/GeoPoint;
            0   42     2          pt2  Lorg/apache/lucene/spatial3d/geom/GeoPoint;
            1   42     3            L  D
            2   42     5           U1  D
            3   42     7           U2  D
            4   42     9        sinU1  D
            5   42    11        cosU1  D
            6   42    13        sinU2  D
            7   42    15        cosU2  D
            8   42    17  dCosU1CosU2  D
            9   42    19  dCosU1SinU2  D
           10   42    21  dSinU1SinU2  D
           11   42    23  dSinU1CosU2  D
           12   42    25       lambda  D
           13   42    27      lambdaP  D
           14   42    29    iterLimit  I
           25   42    30   cosSqAlpha  D
           19   42    32     sinSigma  D
           26   42    34   cos2SigmaM  D
           22   42    36     cosSigma  D
           23   42    38        sigma  D
           24   42    40     sinAlpha  D
           29   42    42            C  D
           15   42    44    sinLambda  D
           16   42    46    cosLambda  D
           36   42    48          uSq  D
           37   42    50            A  D
           38   42    52            B  D
           41   42    54   deltaSigma  D
    MethodParameters:
      Name  Flags
      pt1   final
      pt2   final

  public org.apache.lucene.spatial3d.geom.GeoPoint surfacePointOnBearing(org.apache.lucene.spatial3d.geom.GeoPoint, double, double);
    descriptor: (Lorg/apache/lucene/spatial3d/geom/GeoPoint;DD)Lorg/apache/lucene/spatial3d/geom/GeoPoint;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=18, locals=58, args_size=4
        start local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
        start local 1 // org.apache.lucene.spatial3d.geom.GeoPoint from
        start local 2 // double dist
        start local 4 // double bearing
         0: .line 355
            aload 1 /* from */
            invokevirtual org.apache.lucene.spatial3d.geom.GeoPoint.getLatitude:()D
            dstore 6 /* lat */
        start local 6 // double lat
         1: .line 356
            aload 1 /* from */
            invokevirtual org.apache.lucene.spatial3d.geom.GeoPoint.getLongitude:()D
            dstore 8 /* lon */
        start local 8 // double lon
         2: .line 357
            dload 4 /* bearing */
            invokestatic java.lang.Math.sin:(D)D
            dstore 10 /* sinα1 */
        start local 10 // double sinα1
         3: .line 358
            dload 4 /* bearing */
            invokestatic java.lang.Math.cos:(D)D
            dstore 12 /* cosα1 */
        start local 12 // double cosα1
         4: .line 360
            dconst_1
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.flattening:D
            dsub
            dload 6 /* lat */
            invokestatic java.lang.Math.tan:(D)D
            dmul
            dstore 14 /* tanU1 */
        start local 14 // double tanU1
         5: .line 361
            dconst_1
            dconst_1
            dload 14 /* tanU1 */
            dload 14 /* tanU1 */
            dmul
            dadd
            invokestatic java.lang.Math.sqrt:(D)D
            ddiv
            dstore 16 /* cosU1 */
        start local 16 // double cosU1
         6: .line 362
            dload 14 /* tanU1 */
            dload 16 /* cosU1 */
            dmul
            dstore 18 /* sinU1 */
        start local 18 // double sinU1
         7: .line 364
            dload 14 /* tanU1 */
            dload 12 /* cosα1 */
            invokestatic java.lang.Math.atan2:(DD)D
            dstore 20 /* σ1 */
        start local 20 // double σ1
         8: .line 365
            dload 16 /* cosU1 */
            dload 10 /* sinα1 */
            dmul
            dstore 22 /* sinα */
        start local 22 // double sinα
         9: .line 366
            dconst_1
            dload 22 /* sinα */
            dload 22 /* sinα */
            dmul
            dsub
            dstore 24 /* cosSqα */
        start local 24 // double cosSqα
        10: .line 367
            dload 24 /* cosSqα */
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.squareRatio:D
            dmul
            dstore 26 /* uSq */
        start local 26 // double uSq
        11: .line 368
            dconst_1
            dload 26 /* uSq */
            ldc 16384.0
            ddiv
            ldc 4096.0
            dload 26 /* uSq */
            ldc -768.0
            dload 26 /* uSq */
            ldc 320.0
            ldc 175.0
            dload 26 /* uSq */
            dmul
            dsub
            dmul
            dadd
            dmul
            dadd
            dmul
            dadd
            dstore 28 /* A */
        start local 28 // double A
        12: .line 369
            dload 26 /* uSq */
            ldc 1024.0
            ddiv
            ldc 256.0
            dload 26 /* uSq */
            ldc -128.0
            dload 26 /* uSq */
            ldc 74.0
            ldc 47.0
            dload 26 /* uSq */
            dmul
            dsub
            dmul
            dadd
            dmul
            dadd
            dmul
            dstore 30 /* B */
        start local 30 // double B
        13: .line 376
            dload 2 /* dist */
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.c:D
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseScale:D
            dmul
            dload 28 /* A */
            dmul
            ddiv
            dstore 40 /* σ */
        start local 40 // double σ
        14: .line 378
            dconst_0
            dstore 44 /* iterations */
        start local 44 // double iterations
        15: .line 380
      StackMap locals: org.apache.lucene.spatial3d.geom.PlanetModel org.apache.lucene.spatial3d.geom.GeoPoint double double double double double double double double double double double double double double double top top top top top top top top double top top double
      StackMap stack:
            ldc 2.0
            dload 20 /* σ1 */
            dmul
            dload 40 /* σ */
            dadd
            invokestatic java.lang.Math.cos:(D)D
            dstore 32 /* cos2σM */
        start local 32 // double cos2σM
        16: .line 381
            dload 40 /* σ */
            invokestatic java.lang.Math.sin:(D)D
            dstore 34 /* sinσ */
        start local 34 // double sinσ
        17: .line 382
            dload 40 /* σ */
            invokestatic java.lang.Math.cos:(D)D
            dstore 36 /* cosσ */
        start local 36 // double cosσ
        18: .line 383
            dload 30 /* B */
            dload 34 /* sinσ */
            dmul
            dload 32 /* cos2σM */
            dload 30 /* B */
            ldc 4.0
            ddiv
            dload 36 /* cosσ */
            ldc -1.0
            ldc 2.0
            dload 32 /* cos2σM */
            dmul
            dload 32 /* cos2σM */
            dmul
            dadd
            dmul
        19: .line 384
            dload 30 /* B */
            ldc 6.0
            ddiv
            dload 32 /* cos2σM */
            dmul
            ldc -3.0
            ldc 4.0
            dload 34 /* sinσ */
            dmul
            dload 34 /* sinσ */
            dmul
            dadd
            dmul
            ldc -3.0
            ldc 4.0
            dload 32 /* cos2σM */
            dmul
            dload 32 /* cos2σM */
            dmul
            dadd
            dmul
            dsub
            dmul
            dadd
        20: .line 383
            dmul
            dstore 38 /* Δσ */
        start local 38 // double Δσ
        21: .line 385
            dload 40 /* σ */
            dstore 42 /* σʹ */
        start local 42 // double σʹ
        22: .line 386
            dload 2 /* dist */
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.c:D
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.inverseScale:D
            dmul
            dload 28 /* A */
            dmul
            ddiv
            dload 38 /* Δσ */
            dadd
            dstore 40 /* σ */
        23: .line 387
            dload 40 /* σ */
            dload 42 /* σʹ */
            dsub
            invokestatic java.lang.Math.abs:(D)D
            ldc 1.0E-12
            dcmpl
            iflt 25
            dload 44 /* iterations */
            dconst_1
            dadd
            dup2
            dstore 44 /* iterations */
            ldc 100.0
        24: .line 379
            dcmpg
            iflt 15
        25: .line 388
      StackMap locals: org.apache.lucene.spatial3d.geom.PlanetModel org.apache.lucene.spatial3d.geom.GeoPoint double double double double double double double double double double double double double double double double double double double double double double
      StackMap stack:
            dload 18 /* sinU1 */
            dload 34 /* sinσ */
            dmul
            dload 16 /* cosU1 */
            dload 36 /* cosσ */
            dmul
            dload 12 /* cosα1 */
            dmul
            dsub
            dstore 46 /* x */
        start local 46 // double x
        26: .line 389
            dload 18 /* sinU1 */
            dload 36 /* cosσ */
            dmul
            dload 16 /* cosU1 */
            dload 34 /* sinσ */
            dmul
            dload 12 /* cosα1 */
            dmul
            dadd
            dconst_1
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.flattening:D
            dsub
            dload 22 /* sinα */
            dload 22 /* sinα */
            dmul
            dload 46 /* x */
            dload 46 /* x */
            dmul
            dadd
            invokestatic java.lang.Math.sqrt:(D)D
            dmul
            invokestatic java.lang.Math.atan2:(DD)D
            dstore 48 /* φ2 */
        start local 48 // double φ2
        27: .line 390
            dload 34 /* sinσ */
            dload 10 /* sinα1 */
            dmul
            dload 16 /* cosU1 */
            dload 36 /* cosσ */
            dmul
            dload 18 /* sinU1 */
            dload 34 /* sinσ */
            dmul
            dload 12 /* cosα1 */
            dmul
            dsub
            invokestatic java.lang.Math.atan2:(DD)D
            dstore 50 /* λ */
        start local 50 // double λ
        28: .line 391
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.flattening:D
            ldc 16.0
            ddiv
            dload 24 /* cosSqα */
            dmul
            ldc 4.0
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.flattening:D
            ldc 4.0
            ldc 3.0
            dload 24 /* cosSqα */
            dmul
            dsub
            dmul
            dadd
            dmul
            dstore 52 /* C */
        start local 52 // double C
        29: .line 392
            dload 50 /* λ */
            dconst_1
            dload 52 /* C */
            dsub
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.flattening:D
            dmul
            dload 22 /* sinα */
            dmul
        30: .line 393
            dload 40 /* σ */
            dload 52 /* C */
            dload 34 /* sinσ */
            dmul
            dload 32 /* cos2σM */
            dload 52 /* C */
            dload 36 /* cosσ */
            dmul
            ldc -1.0
            ldc 2.0
            dload 32 /* cos2σM */
            dmul
            dload 32 /* cos2σM */
            dmul
            dadd
            dmul
            dadd
            dmul
            dadd
            dmul
        31: .line 392
            dsub
            dstore 54 /* L */
        start local 54 // double L
        32: .line 394
            dload 8 /* lon */
            dload 54 /* L */
            dadd
            ldc 9.42477796076938
            dadd
            ldc 6.283185307179586
            drem
            ldc 3.141592653589793
            dsub
            dstore 56 /* λ2 */
        start local 56 // double λ2
        33: .line 396
            new org.apache.lucene.spatial3d.geom.GeoPoint
            dup
            aload 0 /* this */
            dload 48 /* φ2 */
            dload 56 /* λ2 */
            invokespecial org.apache.lucene.spatial3d.geom.GeoPoint.<init>:(Lorg/apache/lucene/spatial3d/geom/PlanetModel;DD)V
            areturn
        end local 56 // double λ2
        end local 54 // double L
        end local 52 // double C
        end local 50 // double λ
        end local 48 // double φ2
        end local 46 // double x
        end local 44 // double iterations
        end local 42 // double σʹ
        end local 40 // double σ
        end local 38 // double Δσ
        end local 36 // double cosσ
        end local 34 // double sinσ
        end local 32 // double cos2σM
        end local 30 // double B
        end local 28 // double A
        end local 26 // double uSq
        end local 24 // double cosSqα
        end local 22 // double sinα
        end local 20 // double σ1
        end local 18 // double sinU1
        end local 16 // double cosU1
        end local 14 // double tanU1
        end local 12 // double cosα1
        end local 10 // double sinα1
        end local 8 // double lon
        end local 6 // double lat
        end local 4 // double bearing
        end local 2 // double dist
        end local 1 // org.apache.lucene.spatial3d.geom.GeoPoint from
        end local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   34     0        this  Lorg/apache/lucene/spatial3d/geom/PlanetModel;
            0   34     1        from  Lorg/apache/lucene/spatial3d/geom/GeoPoint;
            0   34     2        dist  D
            0   34     4     bearing  D
            1   34     6         lat  D
            2   34     8         lon  D
            3   34    10       sinα1  D
            4   34    12       cosα1  D
            5   34    14       tanU1  D
            6   34    16       cosU1  D
            7   34    18       sinU1  D
            8   34    20          σ1  D
            9   34    22        sinα  D
           10   34    24      cosSqα  D
           11   34    26         uSq  D
           12   34    28           A  D
           13   34    30           B  D
           16   34    32      cos2σM  D
           17   34    34        sinσ  D
           18   34    36        cosσ  D
           21   34    38          Δσ  D
           14   34    40           σ  D
           22   34    42          σʹ  D
           15   34    44  iterations  D
           26   34    46           x  D
           27   34    48          φ2  D
           28   34    50           λ  D
           29   34    52           C  D
           32   34    54           L  D
           33   34    56          λ2  D
    MethodParameters:
         Name  Flags
      from     final
      dist     final
      bearing  final

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
        start local 1 // java.lang.Object o
         0: .line 401
            aload 1 /* o */
            instanceof org.apache.lucene.spatial3d.geom.PlanetModel
            ifne 2
         1: .line 402
            iconst_0
            ireturn
         2: .line 403
      StackMap locals:
      StackMap stack:
            aload 1 /* o */
            checkcast org.apache.lucene.spatial3d.geom.PlanetModel
            astore 2 /* other */
        start local 2 // org.apache.lucene.spatial3d.geom.PlanetModel other
         3: .line 404
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.ab:D
            aload 2 /* other */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.ab:D
            dcmpl
            ifne 4
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.c:D
            aload 2 /* other */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.c:D
            dcmpl
            ifne 4
            iconst_1
            ireturn
      StackMap locals: org.apache.lucene.spatial3d.geom.PlanetModel
      StackMap stack:
         4: iconst_0
            ireturn
        end local 2 // org.apache.lucene.spatial3d.geom.PlanetModel other
        end local 1 // java.lang.Object o
        end local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lorg/apache/lucene/spatial3d/geom/PlanetModel;
            0    5     1      o  Ljava/lang/Object;
            3    5     2  other  Lorg/apache/lucene/spatial3d/geom/PlanetModel;
    MethodParameters:
      Name  Flags
      o     final

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
         0: .line 409
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.ab:D
            invokestatic java.lang.Double.hashCode:(D)I
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.c:D
            invokestatic java.lang.Double.hashCode:(D)I
            iadd
            ireturn
        end local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/spatial3d/geom/PlanetModel;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
         0: .line 414
            aload 0 /* this */
            getstatic org.apache.lucene.spatial3d.geom.PlanetModel.SPHERE:Lorg/apache/lucene/spatial3d/geom/PlanetModel;
            invokevirtual org.apache.lucene.spatial3d.geom.PlanetModel.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 415
            ldc "PlanetModel.SPHERE"
            areturn
         2: .line 416
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.apache.lucene.spatial3d.geom.PlanetModel.WGS84:Lorg/apache/lucene/spatial3d/geom/PlanetModel;
            invokevirtual org.apache.lucene.spatial3d.geom.PlanetModel.equals:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 417
            ldc "PlanetModel.WGS84"
            areturn
         4: .line 419
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "PlanetModel(ab="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.ab:D
            invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
            ldc " c="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.PlanetModel.c:D
            invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // org.apache.lucene.spatial3d.geom.PlanetModel this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/lucene/spatial3d/geom/PlanetModel;
}
SourceFile: "PlanetModel.java"