public class org.hsqldb.types.BinaryData implements org.hsqldb.types.BlobData
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.hsqldb.types.BinaryData
  super_class: java.lang.Object
{
  public static final org.hsqldb.types.BinaryData singleBitZero;
    descriptor: Lorg/hsqldb/types/BinaryData;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.hsqldb.types.BinaryData singleBitOne;
    descriptor: Lorg/hsqldb/types/BinaryData;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final byte[] zeroLengthBytes;
    descriptor: [B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.hsqldb.types.BinaryData zeroLengthBinary;
    descriptor: Lorg/hsqldb/types/BinaryData;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  long id;
    descriptor: J
    flags: (0x0000) 

  protected byte[] data;
    descriptor: [B
    flags: (0x0004) ACC_PROTECTED

  private boolean isBits;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private long bitLength;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private int hashCode;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=0, args_size=0
         0: .line 54
            new org.hsqldb.types.BinaryData
            dup
            iconst_1
            newarray 8
            lconst_1
            invokespecial org.hsqldb.types.BinaryData.<init>:([BJ)V
         1: .line 53
            putstatic org.hsqldb.types.BinaryData.singleBitZero:Lorg/hsqldb/types/BinaryData;
         2: .line 56
            new org.hsqldb.types.BinaryData
            dup
            iconst_1
            newarray 8
            dup
            iconst_0
            bipush -128
            bastore
            lconst_1
            invokespecial org.hsqldb.types.BinaryData.<init>:([BJ)V
         3: .line 55
            putstatic org.hsqldb.types.BinaryData.singleBitOne:Lorg/hsqldb/types/BinaryData;
         4: .line 57
            iconst_0
            newarray 8
            putstatic org.hsqldb.types.BinaryData.zeroLengthBytes:[B
         5: .line 59
            new org.hsqldb.types.BinaryData
            dup
            getstatic org.hsqldb.types.BinaryData.zeroLengthBytes:[B
            iconst_0
            invokespecial org.hsqldb.types.BinaryData.<init>:([BZ)V
         6: .line 58
            putstatic org.hsqldb.types.BinaryData.zeroLengthBinary:Lorg/hsqldb/types/BinaryData;
         7: .line 59
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.hsqldb.types.BinaryData getBitData(byte[], long);
    descriptor: ([BJ)Lorg/hsqldb/types/BinaryData;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // byte[] data
        start local 1 // long bitLength
         0: .line 68
            lload 1 /* bitLength */
            lconst_1
            lcmp
            ifne 4
         1: .line 69
            aload 0 /* data */
            iconst_0
            baload
            ifne 2
            getstatic org.hsqldb.types.BinaryData.singleBitZero:Lorg/hsqldb/types/BinaryData;
            goto 3
         2: .line 70
      StackMap locals:
      StackMap stack:
            getstatic org.hsqldb.types.BinaryData.singleBitOne:Lorg/hsqldb/types/BinaryData;
         3: .line 69
      StackMap locals:
      StackMap stack: org.hsqldb.types.BinaryData
            areturn
         4: .line 73
      StackMap locals:
      StackMap stack:
            new org.hsqldb.types.BinaryData
            dup
            aload 0 /* data */
            lload 1 /* bitLength */
            invokespecial org.hsqldb.types.BinaryData.<init>:([BJ)V
            areturn
        end local 1 // long bitLength
        end local 0 // byte[] data
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       data  [B
            0    5     1  bitLength  J
    MethodParameters:
           Name  Flags
      data       
      bitLength  

  public void <init>(byte[], boolean);
    descriptor: ([BZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.hsqldb.types.BinaryData this
        start local 1 // byte[] data
        start local 2 // boolean clone
         0: .line 84
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 64
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.types.BinaryData.hashCode:I
         2: .line 86
            iload 2 /* clone */
            ifeq 4
         3: .line 87
            aload 1 /* data */
            invokestatic org.hsqldb.lib.ArrayUtil.duplicateArray:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast byte[]
            astore 1 /* data */
         4: .line 90
      StackMap locals: org.hsqldb.types.BinaryData byte[] int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* data */
            putfield org.hsqldb.types.BinaryData.data:[B
         5: .line 91
            aload 0 /* this */
            aload 1 /* data */
            arraylength
            i2l
            ldc 8
            lmul
            putfield org.hsqldb.types.BinaryData.bitLength:J
         6: .line 92
            return
        end local 2 // boolean clone
        end local 1 // byte[] data
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lorg/hsqldb/types/BinaryData;
            0    7     1   data  [B
            0    7     2  clone  Z
    MethodParameters:
       Name  Flags
      data   
      clone  

  public void <init>(org.hsqldb.SessionInterface, org.hsqldb.types.BlobData, org.hsqldb.types.BlobData);
    descriptor: (Lorg/hsqldb/SessionInterface;Lorg/hsqldb/types/BlobData;Lorg/hsqldb/types/BlobData;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=4
        start local 0 // org.hsqldb.types.BinaryData this
        start local 1 // org.hsqldb.SessionInterface session
        start local 2 // org.hsqldb.types.BlobData b1
        start local 3 // org.hsqldb.types.BlobData b2
         0: .line 94
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 64
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.types.BinaryData.hashCode:I
         2: .line 96
            aload 2 /* b1 */
            aload 1 /* session */
            invokeinterface org.hsqldb.types.BlobData.length:(Lorg/hsqldb/SessionInterface;)J
            aload 3 /* b2 */
            aload 1 /* session */
            invokeinterface org.hsqldb.types.BlobData.length:(Lorg/hsqldb/SessionInterface;)J
            ladd
            lstore 4 /* length */
        start local 4 // long length
         3: .line 98
            lload 4 /* length */
            ldc 2147483647
            lcmp
            ifgt 6
         4: .line 99
            aload 2 /* b1 */
            aload 1 /* session */
            invokeinterface org.hsqldb.types.BlobData.length:(Lorg/hsqldb/SessionInterface;)J
            ldc 2147483647
            lcmp
            ifgt 6
         5: .line 100
            aload 3 /* b2 */
            aload 1 /* session */
            invokeinterface org.hsqldb.types.BlobData.length:(Lorg/hsqldb/SessionInterface;)J
            ldc 2147483647
            lcmp
            ifle 7
         6: .line 101
      StackMap locals: org.hsqldb.types.BinaryData org.hsqldb.SessionInterface org.hsqldb.types.BlobData org.hsqldb.types.BlobData long
      StackMap stack:
            sipush 3401
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
         7: .line 104
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 4 /* length */
            l2i
            newarray 8
            putfield org.hsqldb.types.BinaryData.data:[B
         8: .line 106
            aload 2 /* b1 */
            aload 1 /* session */
            lconst_0
            aload 2 /* b1 */
            aload 1 /* session */
            invokeinterface org.hsqldb.types.BlobData.length:(Lorg/hsqldb/SessionInterface;)J
            l2i
            invokeinterface org.hsqldb.types.BlobData.getBytes:(Lorg/hsqldb/SessionInterface;JI)[B
            iconst_0
         9: .line 107
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            iconst_0
            aload 2 /* b1 */
            aload 1 /* session */
            invokeinterface org.hsqldb.types.BlobData.length:(Lorg/hsqldb/SessionInterface;)J
            l2i
        10: .line 106
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        11: .line 108
            aload 3 /* b2 */
            aload 1 /* session */
            lconst_0
            aload 3 /* b2 */
            aload 1 /* session */
            invokeinterface org.hsqldb.types.BlobData.length:(Lorg/hsqldb/SessionInterface;)J
            l2i
            invokeinterface org.hsqldb.types.BlobData.getBytes:(Lorg/hsqldb/SessionInterface;JI)[B
            iconst_0
        12: .line 109
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            aload 2 /* b1 */
            aload 1 /* session */
            invokeinterface org.hsqldb.types.BlobData.length:(Lorg/hsqldb/SessionInterface;)J
            l2i
        13: .line 110
            aload 3 /* b2 */
            aload 1 /* session */
            invokeinterface org.hsqldb.types.BlobData.length:(Lorg/hsqldb/SessionInterface;)J
            l2i
        14: .line 108
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        15: .line 112
            aload 0 /* this */
            lload 4 /* length */
            l2i
            i2l
            ldc 8
            lmul
            putfield org.hsqldb.types.BinaryData.bitLength:J
        16: .line 113
            return
        end local 4 // long length
        end local 3 // org.hsqldb.types.BlobData b2
        end local 2 // org.hsqldb.types.BlobData b1
        end local 1 // org.hsqldb.SessionInterface session
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   17     0     this  Lorg/hsqldb/types/BinaryData;
            0   17     1  session  Lorg/hsqldb/SessionInterface;
            0   17     2       b1  Lorg/hsqldb/types/BlobData;
            0   17     3       b2  Lorg/hsqldb/types/BlobData;
            3   17     4   length  J
    MethodParameters:
         Name  Flags
      session  
      b1       
      b2       

  public void <init>(byte[], long);
    descriptor: ([BJ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.hsqldb.types.BinaryData this
        start local 1 // byte[] data
        start local 2 // long bitLength
         0: .line 115
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 64
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.types.BinaryData.hashCode:I
         2: .line 117
            aload 0 /* this */
            aload 1 /* data */
            putfield org.hsqldb.types.BinaryData.data:[B
         3: .line 118
            aload 0 /* this */
            lload 2 /* bitLength */
            putfield org.hsqldb.types.BinaryData.bitLength:J
         4: .line 119
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.types.BinaryData.isBits:Z
         5: .line 120
            return
        end local 2 // long bitLength
        end local 1 // byte[] data
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lorg/hsqldb/types/BinaryData;
            0    6     1       data  [B
            0    6     2  bitLength  J
    MethodParameters:
           Name  Flags
      data       
      bitLength  

  public void <init>(long, java.io.DataInput);
    descriptor: (JLjava/io/DataInput;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // org.hsqldb.types.BinaryData this
        start local 1 // long length
        start local 3 // java.io.DataInput stream
         0: .line 122
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 64
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.types.BinaryData.hashCode:I
         2: .line 124
            aload 0 /* this */
            lload 1 /* length */
            l2i
            newarray 8
            putfield org.hsqldb.types.BinaryData.data:[B
         3: .line 125
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            arraylength
            i2l
            ldc 8
            lmul
            putfield org.hsqldb.types.BinaryData.bitLength:J
         4: .line 128
            aload 3 /* stream */
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            invokeinterface java.io.DataInput.readFully:([B)V
         5: .line 129
            goto 8
      StackMap locals: org.hsqldb.types.BinaryData long java.io.DataInput
      StackMap stack: java.io.IOException
         6: astore 4 /* e */
        start local 4 // java.io.IOException e
         7: .line 130
            sipush 467
            aload 4 /* e */
            invokestatic org.hsqldb.error.Error.error:(ILjava/lang/Throwable;)Lorg/hsqldb/HsqlException;
            athrow
        end local 4 // java.io.IOException e
         8: .line 132
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.io.DataInput stream
        end local 1 // long length
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Lorg/hsqldb/types/BinaryData;
            0    9     1  length  J
            0    9     3  stream  Ljava/io/DataInput;
            7    8     4       e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           4     5       6  Class java.io.IOException
    MethodParameters:
        Name  Flags
      length  
      stream  

  public byte[] getBytes();
    descriptor: ()[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.types.BinaryData this
         0: .line 135
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            areturn
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/types/BinaryData;

  public long length(org.hsqldb.SessionInterface);
    descriptor: (Lorg/hsqldb/SessionInterface;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.types.BinaryData this
        start local 1 // org.hsqldb.SessionInterface session
         0: .line 139
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            arraylength
            i2l
            lreturn
        end local 1 // org.hsqldb.SessionInterface session
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hsqldb/types/BinaryData;
            0    1     1  session  Lorg/hsqldb/SessionInterface;
    MethodParameters:
         Name  Flags
      session  

  public long bitLength(org.hsqldb.SessionInterface);
    descriptor: (Lorg/hsqldb/SessionInterface;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.types.BinaryData this
        start local 1 // org.hsqldb.SessionInterface session
         0: .line 143
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.bitLength:J
            lreturn
        end local 1 // org.hsqldb.SessionInterface session
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hsqldb/types/BinaryData;
            0    1     1  session  Lorg/hsqldb/SessionInterface;
    MethodParameters:
         Name  Flags
      session  

  public boolean isBits();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.types.BinaryData this
         0: .line 147
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.isBits:Z
            ireturn
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/types/BinaryData;

  public byte[] getBytes(org.hsqldb.SessionInterface, long, int);
    descriptor: (Lorg/hsqldb/SessionInterface;JI)[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=4
        start local 0 // org.hsqldb.types.BinaryData this
        start local 1 // org.hsqldb.SessionInterface session
        start local 2 // long pos
        start local 4 // int length
         0: .line 152
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            arraylength
            i2l
            lload 2 /* pos */
            iload 4 /* length */
            i2l
            invokestatic org.hsqldb.types.BinaryData.isInLimits:(JJJ)Z
            ifne 2
         1: .line 153
            new java.lang.IndexOutOfBoundsException
            dup
            invokespecial java.lang.IndexOutOfBoundsException.<init>:()V
            athrow
         2: .line 156
      StackMap locals:
      StackMap stack:
            iload 4 /* length */
            newarray 8
            astore 5 /* bytes */
        start local 5 // byte[] bytes
         3: .line 158
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            lload 2 /* pos */
            l2i
            aload 5 /* bytes */
            iconst_0
            iload 4 /* length */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         4: .line 160
            aload 5 /* bytes */
            areturn
        end local 5 // byte[] bytes
        end local 4 // int length
        end local 2 // long pos
        end local 1 // org.hsqldb.SessionInterface session
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/hsqldb/types/BinaryData;
            0    5     1  session  Lorg/hsqldb/SessionInterface;
            0    5     2      pos  J
            0    5     4   length  I
            3    5     5    bytes  [B
    MethodParameters:
         Name  Flags
      session  
      pos      
      length   

  public org.hsqldb.types.BlobData getBlob(org.hsqldb.SessionInterface, long, long);
    descriptor: (Lorg/hsqldb/SessionInterface;JJ)Lorg/hsqldb/types/BlobData;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=6, args_size=4
        start local 0 // org.hsqldb.types.BinaryData this
        start local 1 // org.hsqldb.SessionInterface session
        start local 2 // long pos
        start local 4 // long length
         0: .line 164
            sipush 201
            ldc "BinaryData"
            invokestatic org.hsqldb.error.Error.runtimeError:(ILjava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        end local 4 // long length
        end local 2 // long pos
        end local 1 // org.hsqldb.SessionInterface session
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hsqldb/types/BinaryData;
            0    1     1  session  Lorg/hsqldb/SessionInterface;
            0    1     2      pos  J
            0    1     4   length  J
    MethodParameters:
         Name  Flags
      session  
      pos      
      length   

  public java.io.InputStream getBinaryStream(org.hsqldb.SessionInterface);
    descriptor: (Lorg/hsqldb/SessionInterface;)Ljava/io/InputStream;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=2, args_size=2
        start local 0 // org.hsqldb.types.BinaryData this
        start local 1 // org.hsqldb.SessionInterface session
         0: .line 168
            new org.hsqldb.types.BlobInputStream
            dup
            aload 1 /* session */
            aload 0 /* this */
            lconst_0
            aload 0 /* this */
            aload 1 /* session */
            invokevirtual org.hsqldb.types.BinaryData.length:(Lorg/hsqldb/SessionInterface;)J
            invokespecial org.hsqldb.types.BlobInputStream.<init>:(Lorg/hsqldb/SessionInterface;Lorg/hsqldb/types/BlobData;JJ)V
            areturn
        end local 1 // org.hsqldb.SessionInterface session
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hsqldb/types/BinaryData;
            0    1     1  session  Lorg/hsqldb/SessionInterface;
    MethodParameters:
         Name  Flags
      session  

  public java.io.InputStream getBinaryStream(org.hsqldb.SessionInterface, long, long);
    descriptor: (Lorg/hsqldb/SessionInterface;JJ)Ljava/io/InputStream;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=6, args_size=4
        start local 0 // org.hsqldb.types.BinaryData this
        start local 1 // org.hsqldb.SessionInterface session
        start local 2 // long pos
        start local 4 // long length
         0: .line 174
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            arraylength
            i2l
            lload 2 /* pos */
            lload 4 /* length */
            invokestatic org.hsqldb.types.BinaryData.isInLimits:(JJJ)Z
            ifne 2
         1: .line 175
            new java.lang.IndexOutOfBoundsException
            dup
            invokespecial java.lang.IndexOutOfBoundsException.<init>:()V
            athrow
         2: .line 178
      StackMap locals:
      StackMap stack:
            new org.hsqldb.types.BlobInputStream
            dup
            aload 1 /* session */
            aload 0 /* this */
            lload 2 /* pos */
            aload 0 /* this */
            aload 1 /* session */
            invokevirtual org.hsqldb.types.BinaryData.length:(Lorg/hsqldb/SessionInterface;)J
            invokespecial org.hsqldb.types.BlobInputStream.<init>:(Lorg/hsqldb/SessionInterface;Lorg/hsqldb/types/BlobData;JJ)V
            areturn
        end local 4 // long length
        end local 2 // long pos
        end local 1 // org.hsqldb.SessionInterface session
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/hsqldb/types/BinaryData;
            0    3     1  session  Lorg/hsqldb/SessionInterface;
            0    3     2      pos  J
            0    3     4   length  J
    MethodParameters:
         Name  Flags
      session  
      pos      
      length   

  public void setBytes(org.hsqldb.SessionInterface, long, byte[], int, int);
    descriptor: (Lorg/hsqldb/SessionInterface;J[BII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=7, args_size=6
        start local 0 // org.hsqldb.types.BinaryData this
        start local 1 // org.hsqldb.SessionInterface session
        start local 2 // long pos
        start local 4 // byte[] bytes
        start local 5 // int offset
        start local 6 // int length
         0: .line 184
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            arraylength
            i2l
            lload 2 /* pos */
            lconst_0
            invokestatic org.hsqldb.types.BinaryData.isInLimits:(JJJ)Z
            ifne 2
         1: .line 185
            new java.lang.IndexOutOfBoundsException
            dup
            invokespecial java.lang.IndexOutOfBoundsException.<init>:()V
            athrow
         2: .line 188
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            arraylength
            i2l
            lload 2 /* pos */
            iload 6 /* length */
            i2l
            invokestatic org.hsqldb.types.BinaryData.isInLimits:(JJJ)Z
            ifne 4
         3: .line 189
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            lload 2 /* pos */
            l2i
            iload 6 /* length */
            iadd
            invokestatic org.hsqldb.lib.ArrayUtil.resizeArray:(Ljava/lang/Object;I)Ljava/lang/Object;
            checkcast byte[]
            putfield org.hsqldb.types.BinaryData.data:[B
         4: .line 192
      StackMap locals:
      StackMap stack:
            aload 4 /* bytes */
            iload 5 /* offset */
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            lload 2 /* pos */
            l2i
            iload 6 /* length */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         5: .line 194
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            arraylength
            i2l
            ldc 8
            lmul
            putfield org.hsqldb.types.BinaryData.bitLength:J
         6: .line 195
            return
        end local 6 // int length
        end local 5 // int offset
        end local 4 // byte[] bytes
        end local 2 // long pos
        end local 1 // org.hsqldb.SessionInterface session
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/hsqldb/types/BinaryData;
            0    7     1  session  Lorg/hsqldb/SessionInterface;
            0    7     2      pos  J
            0    7     4    bytes  [B
            0    7     5   offset  I
            0    7     6   length  I
    MethodParameters:
         Name  Flags
      session  
      pos      
      bytes    
      offset   
      length   

  public void setBytes(org.hsqldb.SessionInterface, long, byte[]);
    descriptor: (Lorg/hsqldb/SessionInterface;J[B)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=4
        start local 0 // org.hsqldb.types.BinaryData this
        start local 1 // org.hsqldb.SessionInterface session
        start local 2 // long pos
        start local 4 // byte[] bytes
         0: .line 198
            aload 0 /* this */
            aload 1 /* session */
            lload 2 /* pos */
            aload 4 /* bytes */
            iconst_0
            aload 4 /* bytes */
            arraylength
            invokevirtual org.hsqldb.types.BinaryData.setBytes:(Lorg/hsqldb/SessionInterface;J[BII)V
         1: .line 199
            return
        end local 4 // byte[] bytes
        end local 2 // long pos
        end local 1 // org.hsqldb.SessionInterface session
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/hsqldb/types/BinaryData;
            0    2     1  session  Lorg/hsqldb/SessionInterface;
            0    2     2      pos  J
            0    2     4    bytes  [B
    MethodParameters:
         Name  Flags
      session  
      pos      
      bytes    

  public void setBytes(org.hsqldb.SessionInterface, long, org.hsqldb.types.BlobData, long, long);
    descriptor: (Lorg/hsqldb/SessionInterface;JLorg/hsqldb/types/BlobData;JJ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=10, args_size=6
        start local 0 // org.hsqldb.types.BinaryData this
        start local 1 // org.hsqldb.SessionInterface session
        start local 2 // long pos
        start local 4 // org.hsqldb.types.BlobData b
        start local 5 // long offset
        start local 7 // long length
         0: .line 204
            lload 7 /* length */
            ldc 2147483647
            lcmp
            ifle 2
         1: .line 205
            new java.lang.IndexOutOfBoundsException
            dup
            invokespecial java.lang.IndexOutOfBoundsException.<init>:()V
            athrow
         2: .line 208
      StackMap locals:
      StackMap stack:
            aload 4 /* b */
            aload 1 /* session */
            lload 5 /* offset */
            lload 7 /* length */
            l2i
            invokeinterface org.hsqldb.types.BlobData.getBytes:(Lorg/hsqldb/SessionInterface;JI)[B
            astore 9 /* bytes */
        start local 9 // byte[] bytes
         3: .line 210
            aload 0 /* this */
            aload 1 /* session */
            lload 2 /* pos */
            aload 9 /* bytes */
            iconst_0
            aload 9 /* bytes */
            arraylength
            invokevirtual org.hsqldb.types.BinaryData.setBytes:(Lorg/hsqldb/SessionInterface;J[BII)V
         4: .line 211
            return
        end local 9 // byte[] bytes
        end local 7 // long length
        end local 5 // long offset
        end local 4 // org.hsqldb.types.BlobData b
        end local 2 // long pos
        end local 1 // org.hsqldb.SessionInterface session
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/hsqldb/types/BinaryData;
            0    5     1  session  Lorg/hsqldb/SessionInterface;
            0    5     2      pos  J
            0    5     4        b  Lorg/hsqldb/types/BlobData;
            0    5     5   offset  J
            0    5     7   length  J
            3    5     9    bytes  [B
    MethodParameters:
         Name  Flags
      session  
      pos      
      b        
      offset   
      length   

  public void setBinaryStream(org.hsqldb.SessionInterface, long, java.io.InputStream);
    descriptor: (Lorg/hsqldb/SessionInterface;JLjava/io/InputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=5, args_size=4
        start local 0 // org.hsqldb.types.BinaryData this
        start local 1 // org.hsqldb.SessionInterface session
        start local 2 // long pos
        start local 4 // java.io.InputStream in
         0: .line 217
            return
        end local 4 // java.io.InputStream in
        end local 2 // long pos
        end local 1 // org.hsqldb.SessionInterface session
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hsqldb/types/BinaryData;
            0    1     1  session  Lorg/hsqldb/SessionInterface;
            0    1     2      pos  J
            0    1     4       in  Ljava/io/InputStream;
    MethodParameters:
         Name  Flags
      session  
      pos      
      in       

  public void truncate(org.hsqldb.SessionInterface, long);
    descriptor: (Lorg/hsqldb/SessionInterface;J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.hsqldb.types.BinaryData this
        start local 1 // org.hsqldb.SessionInterface session
        start local 2 // long len
         0: .line 221
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            arraylength
            i2l
            lload 2 /* len */
            lcmp
            ifle 3
         1: .line 222
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            lload 2 /* len */
            l2i
            invokestatic org.hsqldb.lib.ArrayUtil.resizeArray:(Ljava/lang/Object;I)Ljava/lang/Object;
            checkcast byte[]
            putfield org.hsqldb.types.BinaryData.data:[B
         2: .line 223
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            arraylength
            i2l
            ldc 8
            lmul
            putfield org.hsqldb.types.BinaryData.bitLength:J
         3: .line 225
      StackMap locals:
      StackMap stack:
            return
        end local 2 // long len
        end local 1 // org.hsqldb.SessionInterface session
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/hsqldb/types/BinaryData;
            0    4     1  session  Lorg/hsqldb/SessionInterface;
            0    4     2      len  J
    MethodParameters:
         Name  Flags
      session  
      len      

  public org.hsqldb.types.BlobData duplicate(org.hsqldb.SessionInterface);
    descriptor: (Lorg/hsqldb/SessionInterface;)Lorg/hsqldb/types/BlobData;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.hsqldb.types.BinaryData this
        start local 1 // org.hsqldb.SessionInterface session
         0: .line 228
            new org.hsqldb.types.BinaryData
            dup
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            iconst_1
            invokespecial org.hsqldb.types.BinaryData.<init>:([BZ)V
            areturn
        end local 1 // org.hsqldb.SessionInterface session
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hsqldb/types/BinaryData;
            0    1     1  session  Lorg/hsqldb/SessionInterface;
    MethodParameters:
         Name  Flags
      session  

  public long position(org.hsqldb.SessionInterface, byte[], long);
    descriptor: (Lorg/hsqldb/SessionInterface;[BJ)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.hsqldb.types.BinaryData this
        start local 1 // org.hsqldb.SessionInterface session
        start local 2 // byte[] pattern
        start local 3 // long start
         0: .line 234
            aload 2 /* pattern */
            arraylength
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            arraylength
            if_icmple 2
         1: .line 235
            ldc -1
            lreturn
         2: .line 238
      StackMap locals:
      StackMap stack:
            lload 3 /* start */
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            arraylength
            i2l
            lcmp
            iflt 4
         3: .line 239
            ldc -1
            lreturn
         4: .line 242
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            lload 3 /* start */
            l2i
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            arraylength
            aload 2 /* pattern */
            invokestatic org.hsqldb.lib.ArrayUtil.find:([BII[B)I
            i2l
            lreturn
        end local 3 // long start
        end local 2 // byte[] pattern
        end local 1 // org.hsqldb.SessionInterface session
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/hsqldb/types/BinaryData;
            0    5     1  session  Lorg/hsqldb/SessionInterface;
            0    5     2  pattern  [B
            0    5     3    start  J
    MethodParameters:
         Name  Flags
      session  
      pattern  
      start    

  public long position(org.hsqldb.SessionInterface, org.hsqldb.types.BlobData, long);
    descriptor: (Lorg/hsqldb/SessionInterface;Lorg/hsqldb/types/BlobData;J)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=4
        start local 0 // org.hsqldb.types.BinaryData this
        start local 1 // org.hsqldb.SessionInterface session
        start local 2 // org.hsqldb.types.BlobData pattern
        start local 3 // long start
         0: .line 248
            aload 2 /* pattern */
            aload 1 /* session */
            invokeinterface org.hsqldb.types.BlobData.length:(Lorg/hsqldb/SessionInterface;)J
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            arraylength
            i2l
            lcmp
            ifle 2
         1: .line 249
            ldc -1
            lreturn
         2: .line 252
      StackMap locals:
      StackMap stack:
            aload 2 /* pattern */
            aload 1 /* session */
            lconst_0
         3: .line 253
            aload 2 /* pattern */
            aload 1 /* session */
            invokeinterface org.hsqldb.types.BlobData.length:(Lorg/hsqldb/SessionInterface;)J
            l2i
         4: .line 252
            invokeinterface org.hsqldb.types.BlobData.getBytes:(Lorg/hsqldb/SessionInterface;JI)[B
            astore 5 /* bytes */
        start local 5 // byte[] bytes
         5: .line 255
            aload 0 /* this */
            aload 1 /* session */
            aload 5 /* bytes */
            lload 3 /* start */
            invokevirtual org.hsqldb.types.BinaryData.position:(Lorg/hsqldb/SessionInterface;[BJ)J
            lreturn
        end local 5 // byte[] bytes
        end local 3 // long start
        end local 2 // org.hsqldb.types.BlobData pattern
        end local 1 // org.hsqldb.SessionInterface session
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/hsqldb/types/BinaryData;
            0    6     1  session  Lorg/hsqldb/SessionInterface;
            0    6     2  pattern  Lorg/hsqldb/types/BlobData;
            0    6     3    start  J
            5    6     5    bytes  [B
    MethodParameters:
         Name  Flags
      session  
      pattern  
      start    

  public long nonZeroLength(org.hsqldb.SessionInterface);
    descriptor: (Lorg/hsqldb/SessionInterface;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.types.BinaryData this
        start local 1 // org.hsqldb.SessionInterface session
         0: .line 260
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            arraylength
            i2l
            lreturn
        end local 1 // org.hsqldb.SessionInterface session
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hsqldb/types/BinaryData;
            0    1     1  session  Lorg/hsqldb/SessionInterface;
    MethodParameters:
         Name  Flags
      session  

  public long getId();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.hsqldb.types.BinaryData this
         0: .line 264
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.id:J
            lreturn
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/types/BinaryData;

  public void setId(long);
    descriptor: (J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.hsqldb.types.BinaryData this
        start local 1 // long id
         0: .line 268
            aload 0 /* this */
            lload 1 /* id */
            putfield org.hsqldb.types.BinaryData.id:J
         1: .line 269
            return
        end local 1 // long id
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/hsqldb/types/BinaryData;
            0    2     1    id  J
    MethodParameters:
      Name  Flags
      id    

  public int getStreamBlockSize();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.types.BinaryData this
         0: .line 272
            ldc 524288
            ireturn
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/types/BinaryData;

  public boolean isClosed();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.types.BinaryData this
         0: .line 276
            iconst_0
            ireturn
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/types/BinaryData;

  public void free();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // org.hsqldb.types.BinaryData this
         0: .line 279
            return
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/types/BinaryData;

  public void setSession(org.hsqldb.SessionInterface);
    descriptor: (Lorg/hsqldb/SessionInterface;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.hsqldb.types.BinaryData this
        start local 1 // org.hsqldb.SessionInterface session
         0: .line 281
            return
        end local 1 // org.hsqldb.SessionInterface session
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hsqldb/types/BinaryData;
            0    1     1  session  Lorg/hsqldb/SessionInterface;
    MethodParameters:
         Name  Flags
      session  

  static boolean isInLimits(long, long, long);
    descriptor: (JJJ)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // long fullLength
        start local 2 // long pos
        start local 4 // long len
         0: .line 285
            lload 2 /* pos */
            lconst_0
            lcmp
            iflt 1
            lload 4 /* len */
            lconst_0
            lcmp
            iflt 1
            lload 2 /* pos */
            lload 4 /* len */
            ladd
            lload 0 /* fullLength */
            lcmp
            ifgt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 4 // long len
        end local 2 // long pos
        end local 0 // long fullLength
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0  fullLength  J
            0    2     2         pos  J
            0    2     4         len  J
    MethodParameters:
            Name  Flags
      fullLength  
      pos         
      len         

  public boolean isBinary();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.types.BinaryData this
         0: .line 289
            iconst_1
            ireturn
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/types/BinaryData;

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.hsqldb.types.BinaryData this
        start local 1 // java.lang.Object other
         0: .line 294
            aload 1 /* other */
            instanceof org.hsqldb.types.BinaryData
            ifeq 3
         1: .line 295
            getstatic org.hsqldb.types.Type.SQL_VARBINARY:Lorg/hsqldb/types/BinaryType;
            aconst_null
            aload 0 /* this */
            aload 1 /* other */
            invokevirtual org.hsqldb.types.BinaryType.compare:(Lorg/hsqldb/Session;Ljava/lang/Object;Ljava/lang/Object;)I
            ifne 2
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_0
            ireturn
         3: .line 298
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.Object other
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/hsqldb/types/BinaryData;
            0    4     1  other  Ljava/lang/Object;
    MethodParameters:
       Name  Flags
      other  

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // org.hsqldb.types.BinaryData this
         0: .line 303
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.hashCode:I
            ifne 8
         1: .line 304
            iconst_0
            istore 1 /* code */
        start local 1 // int code
         2: .line 306
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: goto 6
         4: .line 307
      StackMap locals: int int
      StackMap stack:
            iload 1 /* code */
            bipush 31
            imul
            sipush 255
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            iload 2 /* i */
            baload
            iand
            iadd
            istore 1 /* code */
         5: .line 306
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.data:[B
            arraylength
            if_icmpge 7
            iload 2 /* i */
            bipush 32
            if_icmplt 4
        end local 2 // int i
         7: .line 310
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* code */
            putfield org.hsqldb.types.BinaryData.hashCode:I
        end local 1 // int code
         8: .line 313
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.types.BinaryData.hashCode:I
            ireturn
        end local 0 // org.hsqldb.types.BinaryData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/hsqldb/types/BinaryData;
            2    8     1  code  I
            3    7     2     i  I
}
SourceFile: "BinaryData.java"