public class org.h2.value.ValueGeometry extends org.h2.value.Value
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.h2.value.ValueGeometry
  super_class: org.h2.value.Value
{
  private static final double[] UNKNOWN_ENVELOPE;
    descriptor: [D
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final byte[] bytes;
    descriptor: [B
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int hashCode;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int typeAndDimensionSystem;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int srid;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private double[] envelope;
    descriptor: [D
    flags: (0x0002) ACC_PRIVATE

  private java.lang.Object geometry;
    descriptor: Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 35
            iconst_0
            newarray 7
            putstatic org.h2.value.ValueGeometry.UNKNOWN_ENVELOPE:[D
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>(byte[], double[]);
    descriptor: ([B[D)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.h2.value.ValueGeometry this
        start local 1 // byte[] bytes
        start local 2 // double[] envelope
         0: .line 77
            aload 0 /* this */
            invokespecial org.h2.value.Value.<init>:()V
         1: .line 78
            aload 1 /* bytes */
            arraylength
            bipush 9
            if_icmplt 2
            aload 1 /* bytes */
            iconst_0
            baload
            ifeq 3
         2: .line 79
      StackMap locals: org.h2.value.ValueGeometry byte[] double[]
      StackMap stack:
            sipush 22018
            aload 1 /* bytes */
            invokestatic org.h2.util.StringUtils.convertBytesToHex:([B)Ljava/lang/String;
            invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
            athrow
         3: .line 81
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* bytes */
            putfield org.h2.value.ValueGeometry.bytes:[B
         4: .line 82
            aload 0 /* this */
            aload 2 /* envelope */
            putfield org.h2.value.ValueGeometry.envelope:[D
         5: .line 83
            aload 1 /* bytes */
            iconst_1
            invokestatic org.h2.util.Bits.readInt:([BI)I
            istore 3 /* t */
        start local 3 // int t
         6: .line 84
            aload 0 /* this */
            iload 3 /* t */
            ldc 536870912
            iand
            ifeq 7
            aload 1 /* bytes */
            iconst_5
            invokestatic org.h2.util.Bits.readInt:([BI)I
            goto 8
      StackMap locals: org.h2.value.ValueGeometry byte[] double[] int
      StackMap stack: org.h2.value.ValueGeometry
         7: iconst_0
      StackMap locals: org.h2.value.ValueGeometry byte[] double[] int
      StackMap stack: org.h2.value.ValueGeometry int
         8: putfield org.h2.value.ValueGeometry.srid:I
         9: .line 85
            aload 0 /* this */
            iload 3 /* t */
            ldc 65535
            iand
            sipush 1000
            irem
            iload 3 /* t */
            invokestatic org.h2.util.geometry.EWKBUtils.type2dimensionSystem:(I)I
            sipush 1000
            imul
            iadd
            putfield org.h2.value.ValueGeometry.typeAndDimensionSystem:I
        10: .line 86
            aload 0 /* this */
            aload 1 /* bytes */
            invokestatic java.util.Arrays.hashCode:([B)I
            putfield org.h2.value.ValueGeometry.hashCode:I
        11: .line 87
            return
        end local 3 // int t
        end local 2 // double[] envelope
        end local 1 // byte[] bytes
        end local 0 // org.h2.value.ValueGeometry this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0      this  Lorg/h2/value/ValueGeometry;
            0   12     1     bytes  [B
            0   12     2  envelope  [D
            6   12     3         t  I
    MethodParameters:
          Name  Flags
      bytes     
      envelope  

  public static org.h2.value.ValueGeometry getFromGeometry(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Lorg/h2/value/ValueGeometry;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
         0: .line 99
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tGeometry cannot be resolved to a type\n\tGeometry cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    MethodParameters:
      Name  Flags
      o     

  public static org.h2.value.ValueGeometry get(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/h2/value/ValueGeometry;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // java.lang.String s
         0: .line 116
            new org.h2.util.geometry.GeometryUtils$EnvelopeAndDimensionSystemTarget
            dup
            invokespecial org.h2.util.geometry.GeometryUtils$EnvelopeAndDimensionSystemTarget.<init>:()V
            astore 1 /* target */
        start local 1 // org.h2.util.geometry.GeometryUtils$EnvelopeAndDimensionSystemTarget target
         1: .line 117
            aload 0 /* s */
            aload 1 /* target */
            invokestatic org.h2.util.geometry.EWKTUtils.parseEWKT:(Ljava/lang/String;Lorg/h2/util/geometry/GeometryUtils$Target;)V
         2: .line 118
            new org.h2.value.ValueGeometry
            dup
         3: .line 119
            aload 0 /* s */
            aload 1 /* target */
            invokevirtual org.h2.util.geometry.GeometryUtils$EnvelopeAndDimensionSystemTarget.getDimensionSystem:()I
            invokestatic org.h2.util.geometry.EWKTUtils.ewkt2ewkb:(Ljava/lang/String;I)[B
            aload 1 /* target */
            invokevirtual org.h2.util.geometry.GeometryUtils$EnvelopeAndDimensionSystemTarget.getEnvelope:()[D
         4: .line 118
            invokespecial org.h2.value.ValueGeometry.<init>:([B[D)V
            invokestatic org.h2.value.Value.cache:(Lorg/h2/value/Value;)Lorg/h2/value/Value;
            checkcast org.h2.value.ValueGeometry
         5: areturn
        end local 1 // org.h2.util.geometry.GeometryUtils$EnvelopeAndDimensionSystemTarget target
         6: .line 120
      StackMap locals:
      StackMap stack: java.lang.RuntimeException
            pop
         7: .line 121
            sipush 22018
            aload 0 /* s */
            invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
            athrow
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0       s  Ljava/lang/String;
            1    6     1  target  Lorg/h2/util/geometry/GeometryUtils$EnvelopeAndDimensionSystemTarget;
      Exception table:
        from    to  target  type
           0     5       6  Class java.lang.RuntimeException
    MethodParameters:
      Name  Flags
      s     

  public static org.h2.value.ValueGeometry get(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Lorg/h2/value/ValueGeometry;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.String s
        start local 1 // int srid
         0: .line 134
            iload 1 /* srid */
            ifne 1
            aload 0 /* s */
            goto 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.StringBuilder
            dup
            ldc "SRID="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* srid */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            bipush 59
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 0 /* s */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         2: invokestatic org.h2.value.ValueGeometry.get:(Ljava/lang/String;)Lorg/h2/value/ValueGeometry;
            areturn
        end local 1 // int srid
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     s  Ljava/lang/String;
            0    3     1  srid  I
    MethodParameters:
      Name  Flags
      s     
      srid  

  public static org.h2.value.ValueGeometry get(byte[]);
    descriptor: ([B)Lorg/h2/value/ValueGeometry;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // byte[] bytes
         0: .line 144
            new org.h2.value.ValueGeometry
            dup
            aload 0 /* bytes */
            getstatic org.h2.value.ValueGeometry.UNKNOWN_ENVELOPE:[D
            invokespecial org.h2.value.ValueGeometry.<init>:([B[D)V
            invokestatic org.h2.value.Value.cache:(Lorg/h2/value/Value;)Lorg/h2/value/Value;
            checkcast org.h2.value.ValueGeometry
            areturn
        end local 0 // byte[] bytes
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  bytes  [B
    MethodParameters:
       Name  Flags
      bytes  

  public static org.h2.value.ValueGeometry getFromEWKB(byte[]);
    descriptor: ([B)Lorg/h2/value/ValueGeometry;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // byte[] bytes
         0: .line 155
            new org.h2.util.geometry.GeometryUtils$EnvelopeAndDimensionSystemTarget
            dup
            invokespecial org.h2.util.geometry.GeometryUtils$EnvelopeAndDimensionSystemTarget.<init>:()V
            astore 1 /* target */
        start local 1 // org.h2.util.geometry.GeometryUtils$EnvelopeAndDimensionSystemTarget target
         1: .line 156
            aload 0 /* bytes */
            aload 1 /* target */
            invokestatic org.h2.util.geometry.EWKBUtils.parseEWKB:([BLorg/h2/util/geometry/GeometryUtils$Target;)V
         2: .line 157
            new org.h2.value.ValueGeometry
            dup
         3: .line 158
            aload 0 /* bytes */
            aload 1 /* target */
            invokevirtual org.h2.util.geometry.GeometryUtils$EnvelopeAndDimensionSystemTarget.getDimensionSystem:()I
            invokestatic org.h2.util.geometry.EWKBUtils.ewkb2ewkb:([BI)[B
            aload 1 /* target */
            invokevirtual org.h2.util.geometry.GeometryUtils$EnvelopeAndDimensionSystemTarget.getEnvelope:()[D
         4: .line 157
            invokespecial org.h2.value.ValueGeometry.<init>:([B[D)V
            invokestatic org.h2.value.Value.cache:(Lorg/h2/value/Value;)Lorg/h2/value/Value;
            checkcast org.h2.value.ValueGeometry
         5: areturn
        end local 1 // org.h2.util.geometry.GeometryUtils$EnvelopeAndDimensionSystemTarget target
         6: .line 159
      StackMap locals:
      StackMap stack: java.lang.RuntimeException
            pop
         7: .line 160
            sipush 22018
            aload 0 /* bytes */
            invokestatic org.h2.util.StringUtils.convertBytesToHex:([B)Ljava/lang/String;
            invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
            athrow
        end local 0 // byte[] bytes
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0   bytes  [B
            1    6     1  target  Lorg/h2/util/geometry/GeometryUtils$EnvelopeAndDimensionSystemTarget;
      Exception table:
        from    to  target  type
           0     5       6  Class java.lang.RuntimeException
    MethodParameters:
       Name  Flags
      bytes  

  public static org.h2.value.Value fromEnvelope(double[]);
    descriptor: ([D)Lorg/h2/value/Value;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // double[] envelope
         0: .line 171
            aload 0 /* envelope */
            ifnull 2
         1: .line 172
            new org.h2.value.ValueGeometry
            dup
            aload 0 /* envelope */
            invokestatic org.h2.util.geometry.EWKBUtils.envelope2wkb:([D)[B
            aload 0 /* envelope */
            invokespecial org.h2.value.ValueGeometry.<init>:([B[D)V
            invokestatic org.h2.value.Value.cache:(Lorg/h2/value/Value;)Lorg/h2/value/Value;
            goto 3
         2: .line 173
      StackMap locals:
      StackMap stack:
            getstatic org.h2.value.ValueNull.INSTANCE:Lorg/h2/value/ValueNull;
         3: .line 171
      StackMap locals:
      StackMap stack: org.h2.value.Value
            areturn
        end local 0 // double[] envelope
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0  envelope  [D
    MethodParameters:
          Name  Flags
      envelope  

  public Geometry getGeometry();
    descriptor: ()LGeometry;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.h2.value.ValueGeometry this
         0: .line 182
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tGeometry cannot be resolved to a type\n\tThe method ewkb2geometry(byte[], int) from the type JTSUtils refers to the missing type Geometry\n\tGeometry cannot be resolved to a type\n\tGeometry cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.h2.value.ValueGeometry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/value/ValueGeometry;

  public int getTypeAndDimensionSystem();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.value.ValueGeometry this
         0: .line 200
            aload 0 /* this */
            getfield org.h2.value.ValueGeometry.typeAndDimensionSystem:I
            ireturn
        end local 0 // org.h2.value.ValueGeometry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/value/ValueGeometry;

  public int getGeometryType();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.h2.value.ValueGeometry this
         0: .line 209
            aload 0 /* this */
            getfield org.h2.value.ValueGeometry.typeAndDimensionSystem:I
            sipush 1000
            irem
            ireturn
        end local 0 // org.h2.value.ValueGeometry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/value/ValueGeometry;

  public int getDimensionSystem();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.h2.value.ValueGeometry this
         0: .line 218
            aload 0 /* this */
            getfield org.h2.value.ValueGeometry.typeAndDimensionSystem:I
            sipush 1000
            idiv
            ireturn
        end local 0 // org.h2.value.ValueGeometry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/value/ValueGeometry;

  public int getSRID();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.value.ValueGeometry this
         0: .line 227
            aload 0 /* this */
            getfield org.h2.value.ValueGeometry.srid:I
            ireturn
        end local 0 // org.h2.value.ValueGeometry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/value/ValueGeometry;

  public double[] getEnvelopeNoCopy();
    descriptor: ()[D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.h2.value.ValueGeometry this
         0: .line 236
            aload 0 /* this */
            getfield org.h2.value.ValueGeometry.envelope:[D
            getstatic org.h2.value.ValueGeometry.UNKNOWN_ENVELOPE:[D
            if_acmpne 4
         1: .line 237
            new org.h2.util.geometry.GeometryUtils$EnvelopeTarget
            dup
            invokespecial org.h2.util.geometry.GeometryUtils$EnvelopeTarget.<init>:()V
            astore 1 /* target */
        start local 1 // org.h2.util.geometry.GeometryUtils$EnvelopeTarget target
         2: .line 238
            aload 0 /* this */
            getfield org.h2.value.ValueGeometry.bytes:[B
            aload 1 /* target */
            invokestatic org.h2.util.geometry.EWKBUtils.parseEWKB:([BLorg/h2/util/geometry/GeometryUtils$Target;)V
         3: .line 239
            aload 0 /* this */
            aload 1 /* target */
            invokevirtual org.h2.util.geometry.GeometryUtils$EnvelopeTarget.getEnvelope:()[D
            putfield org.h2.value.ValueGeometry.envelope:[D
        end local 1 // org.h2.util.geometry.GeometryUtils$EnvelopeTarget target
         4: .line 241
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.value.ValueGeometry.envelope:[D
            areturn
        end local 0 // org.h2.value.ValueGeometry this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/h2/value/ValueGeometry;
            2    4     1  target  Lorg/h2/util/geometry/GeometryUtils$EnvelopeTarget;

  public boolean intersectsBoundingBox(org.h2.value.ValueGeometry);
    descriptor: (Lorg/h2/value/ValueGeometry;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.value.ValueGeometry this
        start local 1 // org.h2.value.ValueGeometry r
         0: .line 252
            aload 0 /* this */
            invokevirtual org.h2.value.ValueGeometry.getEnvelopeNoCopy:()[D
            aload 1 /* r */
            invokevirtual org.h2.value.ValueGeometry.getEnvelopeNoCopy:()[D
            invokestatic org.h2.util.geometry.GeometryUtils.intersects:([D[D)Z
            ireturn
        end local 1 // org.h2.value.ValueGeometry r
        end local 0 // org.h2.value.ValueGeometry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/value/ValueGeometry;
            0    1     1     r  Lorg/h2/value/ValueGeometry;
    MethodParameters:
      Name  Flags
      r     

  public org.h2.value.Value getEnvelopeUnion(org.h2.value.ValueGeometry);
    descriptor: (Lorg/h2/value/ValueGeometry;)Lorg/h2/value/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.value.ValueGeometry this
        start local 1 // org.h2.value.ValueGeometry r
         0: .line 262
            aload 0 /* this */
            invokevirtual org.h2.value.ValueGeometry.getEnvelopeNoCopy:()[D
            aload 1 /* r */
            invokevirtual org.h2.value.ValueGeometry.getEnvelopeNoCopy:()[D
            invokestatic org.h2.util.geometry.GeometryUtils.union:([D[D)[D
            invokestatic org.h2.value.ValueGeometry.fromEnvelope:([D)Lorg/h2/value/Value;
            areturn
        end local 1 // org.h2.value.ValueGeometry r
        end local 0 // org.h2.value.ValueGeometry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/value/ValueGeometry;
            0    1     1     r  Lorg/h2/value/ValueGeometry;
    MethodParameters:
      Name  Flags
      r     

  public org.h2.value.TypeInfo getType();
    descriptor: ()Lorg/h2/value/TypeInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.value.ValueGeometry this
         0: .line 267
            getstatic org.h2.value.TypeInfo.TYPE_GEOMETRY:Lorg/h2/value/TypeInfo;
            areturn
        end local 0 // org.h2.value.ValueGeometry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/value/ValueGeometry;

  public int getValueType();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.value.ValueGeometry this
         0: .line 272
            bipush 22
            ireturn
        end local 0 // org.h2.value.ValueGeometry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/value/ValueGeometry;

  public java.lang.StringBuilder getSQL(java.lang.StringBuilder);
    descriptor: (Ljava/lang/StringBuilder;)Ljava/lang/StringBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.value.ValueGeometry this
        start local 1 // java.lang.StringBuilder builder
         0: .line 278
            aload 1 /* builder */
            ldc "X'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         1: .line 279
            aload 1 /* builder */
            aload 0 /* this */
            invokevirtual org.h2.value.ValueGeometry.getBytesNoCopy:()[B
            invokestatic org.h2.util.StringUtils.convertBytesToHex:(Ljava/lang/StringBuilder;[B)Ljava/lang/StringBuilder;
            ldc "'::Geometry"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            areturn
        end local 1 // java.lang.StringBuilder builder
        end local 0 // org.h2.value.ValueGeometry this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/h2/value/ValueGeometry;
            0    2     1  builder  Ljava/lang/StringBuilder;
    MethodParameters:
         Name  Flags
      builder  

  public int compareTypeSafe(org.h2.value.Value, org.h2.value.CompareMode);
    descriptor: (Lorg/h2/value/Value;Lorg/h2/value/CompareMode;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.h2.value.ValueGeometry this
        start local 1 // org.h2.value.Value v
        start local 2 // org.h2.value.CompareMode mode
         0: .line 284
            aload 0 /* this */
            getfield org.h2.value.ValueGeometry.bytes:[B
            aload 1 /* v */
            checkcast org.h2.value.ValueGeometry
            getfield org.h2.value.ValueGeometry.bytes:[B
            invokestatic org.h2.util.Bits.compareNotNullUnsigned:([B[B)I
            ireturn
        end local 2 // org.h2.value.CompareMode mode
        end local 1 // org.h2.value.Value v
        end local 0 // org.h2.value.ValueGeometry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/value/ValueGeometry;
            0    1     1     v  Lorg/h2/value/Value;
            0    1     2  mode  Lorg/h2/value/CompareMode;
    MethodParameters:
      Name  Flags
      v     
      mode  

  public java.lang.String getString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.value.ValueGeometry this
         0: .line 289
            aload 0 /* this */
            invokevirtual org.h2.value.ValueGeometry.getEWKT:()Ljava/lang/String;
            areturn
        end local 0 // org.h2.value.ValueGeometry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/value/ValueGeometry;

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.value.ValueGeometry this
         0: .line 294
            aload 0 /* this */
            getfield org.h2.value.ValueGeometry.hashCode:I
            ireturn
        end local 0 // org.h2.value.ValueGeometry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/value/ValueGeometry;

  public java.lang.Object getObject();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.h2.value.ValueGeometry this
         0: .line 300
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe method getGeometry() from the type ValueGeometry refers to the missing type Geometry\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.h2.value.ValueGeometry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/value/ValueGeometry;

  public byte[] getBytes();
    descriptor: ()[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.value.ValueGeometry this
         0: .line 307
            aload 0 /* this */
            getfield org.h2.value.ValueGeometry.bytes:[B
            invokestatic org.h2.util.Utils.cloneByteArray:([B)[B
            areturn
        end local 0 // org.h2.value.ValueGeometry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/value/ValueGeometry;

  public byte[] getBytesNoCopy();
    descriptor: ()[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.value.ValueGeometry this
         0: .line 312
            aload 0 /* this */
            getfield org.h2.value.ValueGeometry.bytes:[B
            areturn
        end local 0 // org.h2.value.ValueGeometry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/value/ValueGeometry;

  public void set(java.sql.PreparedStatement, int);
    descriptor: (Ljava/sql/PreparedStatement;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.h2.value.ValueGeometry this
        start local 1 // java.sql.PreparedStatement prep
        start local 2 // int parameterIndex
         0: .line 317
            aload 1 /* prep */
            iload 2 /* parameterIndex */
            aload 0 /* this */
            getfield org.h2.value.ValueGeometry.bytes:[B
            invokeinterface java.sql.PreparedStatement.setBytes:(I[B)V
         1: .line 318
            return
        end local 2 // int parameterIndex
        end local 1 // java.sql.PreparedStatement prep
        end local 0 // org.h2.value.ValueGeometry this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lorg/h2/value/ValueGeometry;
            0    2     1            prep  Ljava/sql/PreparedStatement;
            0    2     2  parameterIndex  I
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
                Name  Flags
      prep            
      parameterIndex  

  public int getMemory();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.h2.value.ValueGeometry this
         0: .line 322
            aload 0 /* this */
            getfield org.h2.value.ValueGeometry.bytes:[B
            arraylength
            bipush 20
            imul
            bipush 24
            iadd
            ireturn
        end local 0 // org.h2.value.ValueGeometry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/value/ValueGeometry;

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.value.ValueGeometry this
        start local 1 // java.lang.Object other
         0: .line 327
            aload 1 /* other */
            instanceof org.h2.value.ValueGeometry
            ifeq 1
            aload 0 /* this */
            getfield org.h2.value.ValueGeometry.bytes:[B
            aload 1 /* other */
            checkcast org.h2.value.ValueGeometry
            getfield org.h2.value.ValueGeometry.bytes:[B
            invokestatic java.util.Arrays.equals:([B[B)Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // java.lang.Object other
        end local 0 // org.h2.value.ValueGeometry this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/h2/value/ValueGeometry;
            0    2     1  other  Ljava/lang/Object;
    MethodParameters:
       Name  Flags
      other  

  public java.lang.String getEWKT();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.h2.value.ValueGeometry this
         0: .line 336
            aload 0 /* this */
            getfield org.h2.value.ValueGeometry.bytes:[B
            aload 0 /* this */
            invokevirtual org.h2.value.ValueGeometry.getDimensionSystem:()I
            invokestatic org.h2.util.geometry.EWKTUtils.ewkb2ewkt:([BI)Ljava/lang/String;
            areturn
        end local 0 // org.h2.value.ValueGeometry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/value/ValueGeometry;

  public byte[] getEWKB();
    descriptor: ()[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.value.ValueGeometry this
         0: .line 345
            aload 0 /* this */
            getfield org.h2.value.ValueGeometry.bytes:[B
            areturn
        end local 0 // org.h2.value.ValueGeometry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/value/ValueGeometry;

  protected org.h2.value.Value convertTo(int, org.h2.engine.Mode, java.lang.Object, org.h2.value.ExtTypeInfo);
    descriptor: (ILorg/h2/engine/Mode;Ljava/lang/Object;Lorg/h2/value/ExtTypeInfo;)Lorg/h2/value/Value;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // org.h2.value.ValueGeometry this
        start local 1 // int targetType
        start local 2 // org.h2.engine.Mode mode
        start local 3 // java.lang.Object column
        start local 4 // org.h2.value.ExtTypeInfo extTypeInfo
         0: .line 350
            iload 1 /* targetType */
            bipush 22
            if_icmpne 4
         1: .line 351
            aload 4 /* extTypeInfo */
            ifnull 2
            aload 4 /* extTypeInfo */
            aload 0 /* this */
            invokevirtual org.h2.value.ExtTypeInfo.cast:(Lorg/h2/value/Value;)Lorg/h2/value/Value;
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 0 /* this */
      StackMap locals:
      StackMap stack: org.h2.value.Value
         3: areturn
         4: .line 352
      StackMap locals:
      StackMap stack:
            iload 1 /* targetType */
            bipush 19
            if_icmpne 6
         5: .line 353
            aload 0 /* this */
            areturn
         6: .line 355
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* targetType */
            aload 2 /* mode */
            aload 3 /* column */
            aconst_null
            invokespecial org.h2.value.Value.convertTo:(ILorg/h2/engine/Mode;Ljava/lang/Object;Lorg/h2/value/ExtTypeInfo;)Lorg/h2/value/Value;
            areturn
        end local 4 // org.h2.value.ExtTypeInfo extTypeInfo
        end local 3 // java.lang.Object column
        end local 2 // org.h2.engine.Mode mode
        end local 1 // int targetType
        end local 0 // org.h2.value.ValueGeometry this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0         this  Lorg/h2/value/ValueGeometry;
            0    7     1   targetType  I
            0    7     2         mode  Lorg/h2/engine/Mode;
            0    7     3       column  Ljava/lang/Object;
            0    7     4  extTypeInfo  Lorg/h2/value/ExtTypeInfo;
    MethodParameters:
             Name  Flags
      targetType   
      mode         
      column       
      extTypeInfo  
}
SourceFile: "ValueGeometry.java"
InnerClasses:
  public final EnvelopeAndDimensionSystemTarget = org.h2.util.geometry.GeometryUtils$EnvelopeAndDimensionSystemTarget of org.h2.util.geometry.GeometryUtils
  public final EnvelopeTarget = org.h2.util.geometry.GeometryUtils$EnvelopeTarget of org.h2.util.geometry.GeometryUtils
  public abstract Target = org.h2.util.geometry.GeometryUtils$Target of org.h2.util.geometry.GeometryUtils