public class org.h2.index.PageDataLeaf extends org.h2.index.PageData
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.h2.index.PageDataLeaf
  super_class: org.h2.index.PageData
{
  private final boolean optimizeUpdate;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private int[] offsets;
    descriptor: [I
    flags: (0x0002) ACC_PRIVATE

  private org.h2.result.Row[] rows;
    descriptor: [Lorg/h2/result/Row;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.ref.SoftReference<org.h2.result.Row> rowRef;
    descriptor: Ljava/lang/ref/SoftReference;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/lang/ref/SoftReference<Lorg/h2/result/Row;>;

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

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

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

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

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

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

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 34
            ldc Lorg/h2/index/PageDataLeaf;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.h2.index.PageDataLeaf.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>(org.h2.index.PageDataIndex, int, org.h2.store.Data);
    descriptor: (Lorg/h2/index/PageDataIndex;ILorg/h2/store/Data;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.h2.index.PageDataLeaf this
        start local 1 // org.h2.index.PageDataIndex index
        start local 2 // int pageId
        start local 3 // org.h2.store.Data data
         0: .line 75
            aload 0 /* this */
            aload 1 /* index */
            iload 2 /* pageId */
            aload 3 /* data */
            invokespecial org.h2.index.PageData.<init>:(Lorg/h2/index/PageDataIndex;ILorg/h2/store/Data;)V
         1: .line 76
            aload 0 /* this */
            aload 1 /* index */
            invokevirtual org.h2.index.PageDataIndex.getDatabase:()Lorg/h2/engine/Database;
            invokevirtual org.h2.engine.Database.getSettings:()Lorg/h2/engine/DbSettings;
            getfield org.h2.engine.DbSettings.optimizeUpdate:Z
            putfield org.h2.index.PageDataLeaf.optimizeUpdate:Z
         2: .line 77
            return
        end local 3 // org.h2.store.Data data
        end local 2 // int pageId
        end local 1 // org.h2.index.PageDataIndex index
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/h2/index/PageDataLeaf;
            0    3     1   index  Lorg/h2/index/PageDataIndex;
            0    3     2  pageId  I
            0    3     3    data  Lorg/h2/store/Data;
    MethodParameters:
        Name  Flags
      index   
      pageId  
      data    

  static org.h2.index.PageDataLeaf create(org.h2.index.PageDataIndex, int, int);
    descriptor: (Lorg/h2/index/PageDataIndex;II)Lorg/h2/index/PageDataLeaf;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.h2.index.PageDataIndex index
        start local 1 // int pageId
        start local 2 // int parentPageId
         0: .line 88
            new org.h2.index.PageDataLeaf
            dup
            aload 0 /* index */
            iload 1 /* pageId */
            aload 0 /* index */
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
         1: .line 89
            invokevirtual org.h2.store.PageStore.createData:()Lorg/h2/store/Data;
         2: .line 88
            invokespecial org.h2.index.PageDataLeaf.<init>:(Lorg/h2/index/PageDataIndex;ILorg/h2/store/Data;)V
            astore 3 /* p */
        start local 3 // org.h2.index.PageDataLeaf p
         3: .line 90
            aload 0 /* index */
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            aload 3 /* p */
            aconst_null
            invokevirtual org.h2.store.PageStore.logUndo:(Lorg/h2/store/Page;Lorg/h2/store/Data;)V
         4: .line 91
            aload 3 /* p */
            getstatic org.h2.result.Row.EMPTY_ARRAY:[Lorg/h2/result/Row;
            putfield org.h2.index.PageDataLeaf.rows:[Lorg/h2/result/Row;
         5: .line 92
            aload 3 /* p */
            iload 2 /* parentPageId */
            putfield org.h2.index.PageDataLeaf.parentPageId:I
         6: .line 93
            aload 3 /* p */
            aload 0 /* index */
            invokevirtual org.h2.index.PageDataIndex.getTable:()Lorg/h2/table/Table;
            invokevirtual org.h2.table.Table.getColumns:()[Lorg/h2/table/Column;
            arraylength
            putfield org.h2.index.PageDataLeaf.columnCount:I
         7: .line 94
            aload 3 /* p */
            invokevirtual org.h2.index.PageDataLeaf.writeHead:()V
         8: .line 95
            aload 3 /* p */
            aload 3 /* p */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.Data.length:()I
            putfield org.h2.index.PageDataLeaf.start:I
         9: .line 96
            aload 3 /* p */
            areturn
        end local 3 // org.h2.index.PageDataLeaf p
        end local 2 // int parentPageId
        end local 1 // int pageId
        end local 0 // org.h2.index.PageDataIndex index
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   10     0         index  Lorg/h2/index/PageDataIndex;
            0   10     1        pageId  I
            0   10     2  parentPageId  I
            3   10     3             p  Lorg/h2/index/PageDataLeaf;
    MethodParameters:
              Name  Flags
      index         
      pageId        
      parentPageId  

  public static org.h2.store.Page read(org.h2.index.PageDataIndex, org.h2.store.Data, int);
    descriptor: (Lorg/h2/index/PageDataIndex;Lorg/h2/store/Data;I)Lorg/h2/store/Page;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.h2.index.PageDataIndex index
        start local 1 // org.h2.store.Data data
        start local 2 // int pageId
         0: .line 108
            new org.h2.index.PageDataLeaf
            dup
            aload 0 /* index */
            iload 2 /* pageId */
            aload 1 /* data */
            invokespecial org.h2.index.PageDataLeaf.<init>:(Lorg/h2/index/PageDataIndex;ILorg/h2/store/Data;)V
            astore 3 /* p */
        start local 3 // org.h2.index.PageDataLeaf p
         1: .line 109
            aload 3 /* p */
            invokevirtual org.h2.index.PageDataLeaf.read:()V
         2: .line 110
            aload 3 /* p */
            areturn
        end local 3 // org.h2.index.PageDataLeaf p
        end local 2 // int pageId
        end local 1 // org.h2.store.Data data
        end local 0 // org.h2.index.PageDataIndex index
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0   index  Lorg/h2/index/PageDataIndex;
            0    3     1    data  Lorg/h2/store/Data;
            0    3     2  pageId  I
            1    3     3       p  Lorg/h2/index/PageDataLeaf;
    MethodParameters:
        Name  Flags
      index   
      data    
      pageId  

  private void read();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // org.h2.index.PageDataLeaf this
         0: .line 114
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.Data.reset:()V
         1: .line 115
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.Data.readByte:()B
            istore 1 /* type */
        start local 1 // int type
         2: .line 116
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.Data.readShortInt:()S
            pop
         3: .line 117
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.Data.readInt:()I
            putfield org.h2.index.PageDataLeaf.parentPageId:I
         4: .line 118
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.Data.readVarInt:()I
            istore 2 /* tableId */
        start local 2 // int tableId
         5: .line 119
            iload 2 /* tableId */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getId:()I
            if_icmpeq 11
         6: .line 120
            ldc 90030
         7: .line 121
            new java.lang.StringBuilder
            dup
            ldc "page:"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.h2.index.PageDataLeaf.getPos:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " expected table:"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getId:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         8: .line 122
            ldc " got:"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 2 /* tableId */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " type:"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 1 /* type */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         9: .line 121
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        10: .line 120
            invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
            athrow
        11: .line 124
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.Data.readVarInt:()I
            putfield org.h2.index.PageDataLeaf.columnCount:I
        12: .line 125
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.Data.readShortInt:()S
            putfield org.h2.index.PageDataLeaf.entryCount:I
        13: .line 126
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            newarray 10
            putfield org.h2.index.PageDataLeaf.offsets:[I
        14: .line 127
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            newarray 11
            putfield org.h2.index.PageDataLeaf.keys:[J
        15: .line 128
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            anewarray org.h2.result.Row
            putfield org.h2.index.PageDataLeaf.rows:[Lorg/h2/result/Row;
        16: .line 129
            iload 1 /* type */
            iconst_1
            if_icmpne 20
        17: .line 130
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            iconst_1
            if_icmpeq 19
        18: .line 131
            new java.lang.StringBuilder
            dup
            ldc "entries: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.h2.message.DbException.throwInternalError:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            pop
        19: .line 133
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.Data.readInt:()I
            putfield org.h2.index.PageDataLeaf.firstOverflowPageId:I
        20: .line 135
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        21: goto 25
        22: .line 136
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.keys:[J
            iload 3 /* i */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.Data.readVarLong:()J
            lastore
        23: .line 137
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.offsets:[I
            iload 3 /* i */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.Data.readShortInt:()S
            iastore
        24: .line 135
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        25: iload 3 /* i */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            if_icmplt 22
        end local 3 // int i
        26: .line 139
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.Data.length:()I
            putfield org.h2.index.PageDataLeaf.start:I
        27: .line 140
            aload 0 /* this */
            iconst_1
            putfield org.h2.index.PageDataLeaf.written:Z
        28: .line 141
            aload 0 /* this */
            iconst_1
            putfield org.h2.index.PageDataLeaf.writtenData:Z
        29: .line 142
            return
        end local 2 // int tableId
        end local 1 // int type
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   30     0     this  Lorg/h2/index/PageDataLeaf;
            2   30     1     type  I
            5   30     2  tableId  I
           21   26     3        i  I

  private int getRowLength(org.h2.result.Row);
    descriptor: (Lorg/h2/result/Row;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.h2.index.PageDataLeaf this
        start local 1 // org.h2.result.Row row
         0: .line 145
            iconst_0
            istore 2 /* size */
        start local 2 // int size
         1: .line 146
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 5
         3: .line 147
      StackMap locals: int int
      StackMap stack:
            iload 2 /* size */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            aload 1 /* row */
            iload 3 /* i */
            invokeinterface org.h2.result.Row.getValue:(I)Lorg/h2/value/Value;
            invokevirtual org.h2.store.Data.getValueLen:(Lorg/h2/value/Value;)I
            iadd
            istore 2 /* size */
         4: .line 146
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 3 /* i */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.columnCount:I
            if_icmplt 3
        end local 3 // int i
         6: .line 149
            iload 2 /* size */
            ireturn
        end local 2 // int size
        end local 1 // org.h2.result.Row row
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/h2/index/PageDataLeaf;
            0    7     1   row  Lorg/h2/result/Row;
            1    7     2  size  I
            2    6     3     i  I
    MethodParameters:
      Name  Flags
      row   

  private int findInsertionPoint(long);
    descriptor: (J)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.h2.index.PageDataLeaf this
        start local 1 // long key
         0: .line 153
            aload 0 /* this */
            lload 1 /* key */
            invokevirtual org.h2.index.PageDataLeaf.find:(J)I
            istore 3 /* x */
        start local 3 // int x
         1: .line 154
            iload 3 /* x */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            if_icmpge 3
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.keys:[J
            iload 3 /* x */
            laload
            lload 1 /* key */
            lcmp
            ifne 3
         2: .line 155
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            lload 1 /* key */
            invokestatic java.lang.String.valueOf:(J)Ljava/lang/String;
            invokevirtual org.h2.index.PageDataIndex.getDuplicateKeyException:(Ljava/lang/String;)Lorg/h2/message/DbException;
            athrow
         3: .line 157
      StackMap locals: int
      StackMap stack:
            iload 3 /* x */
            ireturn
        end local 3 // int x
        end local 1 // long key
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/h2/index/PageDataLeaf;
            0    4     1   key  J
            1    4     3     x  I
    MethodParameters:
      Name  Flags
      key   

  int addRowTry(org.h2.result.Row);
    descriptor: (Lorg/h2/result/Row;)I
    flags: (0x0000) 
    Code:
      stack=8, locals=18, args_size=2
        start local 0 // org.h2.index.PageDataLeaf this
        start local 1 // org.h2.result.Row row
         0: .line 162
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.PageStore.logUndo:(Lorg/h2/store/Page;Lorg/h2/store/Data;)V
         1: .line 163
            aload 0 /* this */
            aload 1 /* row */
            invokevirtual org.h2.index.PageDataLeaf.getRowLength:(Lorg/h2/result/Row;)I
            istore 2 /* rowLength */
        start local 2 // int rowLength
         2: .line 164
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            invokevirtual org.h2.store.PageStore.getPageSize:()I
            istore 3 /* pageSize */
        start local 3 // int pageSize
         3: .line 165
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            ifne 4
            iload 3 /* pageSize */
            goto 5
      StackMap locals: int int
      StackMap stack:
         4: aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.offsets:[I
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            iconst_1
            isub
            iaload
      StackMap locals:
      StackMap stack: int
         5: istore 4 /* last */
        start local 4 // int last
         6: .line 166
            iconst_2
            aload 1 /* row */
            invokeinterface org.h2.result.Row.getKey:()J
            invokestatic org.h2.store.Data.getVarLongLen:(J)I
            iadd
            istore 5 /* keyOffsetPairLen */
        start local 5 // int keyOffsetPairLen
         7: .line 167
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            ifle 23
            iload 4 /* last */
            iload 2 /* rowLength */
            isub
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.start:I
            iload 5 /* keyOffsetPairLen */
            iadd
            if_icmpge 23
         8: .line 168
            aload 0 /* this */
            aload 1 /* row */
            invokeinterface org.h2.result.Row.getKey:()J
            invokevirtual org.h2.index.PageDataLeaf.findInsertionPoint:(J)I
            istore 6 /* x */
        start local 6 // int x
         9: .line 169
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            iconst_1
            if_icmple 22
        10: .line 170
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            iconst_5
            if_icmpge 12
        11: .line 172
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            iconst_2
            idiv
            ireturn
        12: .line 174
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.isSortedInsertMode:()Z
            ifeq 17
        13: .line 175
            iload 6 /* x */
            iconst_2
            if_icmpge 14
            iconst_1
            goto 16
      StackMap locals:
      StackMap stack:
        14: iload 6 /* x */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            iconst_1
            isub
            if_icmple 15
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            iconst_1
            isub
            goto 16
      StackMap locals:
      StackMap stack:
        15: iload 6 /* x */
      StackMap locals:
      StackMap stack: int
        16: ireturn
        17: .line 180
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            iconst_3
            idiv
            istore 7 /* third */
        start local 7 // int third
        18: .line 181
            iload 6 /* x */
            iload 7 /* third */
            if_icmpge 19
            iload 7 /* third */
            goto 21
      StackMap locals: int
      StackMap stack:
        19: iload 6 /* x */
            iconst_2
            iload 7 /* third */
            imul
            if_icmplt 20
            iconst_2
            iload 7 /* third */
            imul
            goto 21
      StackMap locals:
      StackMap stack:
        20: iload 6 /* x */
      StackMap locals:
      StackMap stack: int
        21: ireturn
        end local 7 // int third
        22: .line 183
      StackMap locals:
      StackMap stack:
            iload 6 /* x */
            ireturn
        end local 6 // int x
        23: .line 185
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.PageStore.logUndo:(Lorg/h2/store/Page;Lorg/h2/store/Data;)V
        24: .line 187
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            ifne 27
        25: .line 188
            iconst_0
            istore 6 /* x */
        start local 6 // int x
        26: .line 189
            goto 30
        end local 6 // int x
        27: .line 190
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.optimizeUpdate:Z
            ifne 29
        28: .line 191
            aload 0 /* this */
            invokevirtual org.h2.index.PageDataLeaf.readAllRows:()V
        29: .line 193
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* row */
            invokeinterface org.h2.result.Row.getKey:()J
            invokevirtual org.h2.index.PageDataLeaf.findInsertionPoint:(J)I
            istore 6 /* x */
        start local 6 // int x
        30: .line 195
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield org.h2.index.PageDataLeaf.written:Z
        31: .line 196
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            invokevirtual org.h2.store.PageStore.getChangeCount:()J
            putfield org.h2.index.PageDataLeaf.changeCount:J
        32: .line 197
            iload 6 /* x */
            ifne 33
            iload 3 /* pageSize */
            goto 34
      StackMap locals:
      StackMap stack:
        33: aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.offsets:[I
            iload 6 /* x */
            iconst_1
            isub
            iaload
      StackMap locals:
      StackMap stack: int
        34: istore 4 /* last */
        35: .line 198
            iload 4 /* last */
            iload 2 /* rowLength */
            isub
            istore 7 /* offset */
        start local 7 // int offset
        36: .line 199
            aload 0 /* this */
            dup
            getfield org.h2.index.PageDataLeaf.start:I
            iload 5 /* keyOffsetPairLen */
            iadd
            putfield org.h2.index.PageDataLeaf.start:I
        37: .line 200
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.offsets:[I
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            iload 6 /* x */
            iload 7 /* offset */
            invokestatic org.h2.index.PageDataLeaf.insert:([IIII)[I
            putfield org.h2.index.PageDataLeaf.offsets:[I
        38: .line 201
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.offsets:[I
            iload 6 /* x */
            iconst_1
            iadd
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            iconst_1
            iadd
            iload 2 /* rowLength */
            ineg
            invokestatic org.h2.index.PageDataLeaf.add:([IIII)V
        39: .line 202
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.keys:[J
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            iload 6 /* x */
            aload 1 /* row */
            invokeinterface org.h2.result.Row.getKey:()J
            invokestatic org.h2.index.PageDataLeaf.insert:([JIIJ)[J
            putfield org.h2.index.PageDataLeaf.keys:[J
        40: .line 203
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.rows:[Lorg/h2/result/Row;
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            iload 6 /* x */
            aload 1 /* row */
            invokestatic org.h2.index.PageDataLeaf.insert:([Ljava/lang/Object;IILjava/lang/Object;)[Ljava/lang/Object;
            checkcast org.h2.result.Row[]
            putfield org.h2.index.PageDataLeaf.rows:[Lorg/h2/result/Row;
        41: .line 204
            aload 0 /* this */
            dup
            getfield org.h2.index.PageDataLeaf.entryCount:I
            iconst_1
            iadd
            putfield org.h2.index.PageDataLeaf.entryCount:I
        42: .line 205
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            aload 0 /* this */
            invokevirtual org.h2.store.PageStore.update:(Lorg/h2/store/Page;)V
        43: .line 206
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.optimizeUpdate:Z
            ifeq 57
        44: .line 207
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.writtenData:Z
            ifeq 57
            iload 7 /* offset */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.start:I
            if_icmplt 57
        45: .line 208
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.Data.getBytes:()[B
            astore 8 /* d */
        start local 8 // byte[] d
        46: .line 209
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.offsets:[I
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            iconst_1
            isub
            iaload
            iload 2 /* rowLength */
            iadd
            istore 9 /* dataStart */
        start local 9 // int dataStart
        47: .line 210
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.offsets:[I
            iload 6 /* x */
            iaload
            istore 10 /* dataEnd */
        start local 10 // int dataEnd
        48: .line 211
            aload 8 /* d */
            iload 9 /* dataStart */
            aload 8 /* d */
            iload 9 /* dataStart */
            iload 2 /* rowLength */
            isub
        49: .line 212
            iload 10 /* dataEnd */
            iload 9 /* dataStart */
            isub
            iload 2 /* rowLength */
            iadd
        50: .line 211
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        51: .line 213
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            iload 10 /* dataEnd */
            invokevirtual org.h2.store.Data.setPos:(I)V
        52: .line 214
            iconst_0
            istore 11 /* j */
        start local 11 // int j
        53: goto 56
        54: .line 215
      StackMap locals: org.h2.index.PageDataLeaf org.h2.result.Row int int int int int int byte[] int int int
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            aload 1 /* row */
            iload 11 /* j */
            invokeinterface org.h2.result.Row.getValue:(I)Lorg/h2/value/Value;
            invokevirtual org.h2.store.Data.writeValue:(Lorg/h2/value/Value;)V
        55: .line 214
            iinc 11 /* j */ 1
      StackMap locals:
      StackMap stack:
        56: iload 11 /* j */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.columnCount:I
            if_icmplt 54
        end local 11 // int j
        end local 10 // int dataEnd
        end local 9 // int dataStart
        end local 8 // byte[] d
        57: .line 219
      StackMap locals: org.h2.index.PageDataLeaf org.h2.result.Row int int int int int int
      StackMap stack:
            iload 7 /* offset */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.start:I
            if_icmpge 96
        58: .line 220
            aload 0 /* this */
            iconst_0
            putfield org.h2.index.PageDataLeaf.writtenData:Z
        59: .line 221
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            iconst_1
            if_icmple 61
        60: .line 222
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
            invokestatic org.h2.message.DbException.throwInternalError:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            pop
        61: .line 225
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.h2.index.PageDataLeaf.start:I
            iconst_4
            iadd
            putfield org.h2.index.PageDataLeaf.start:I
        62: .line 226
            iload 2 /* rowLength */
            iload 3 /* pageSize */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.start:I
            isub
            isub
            istore 8 /* remaining */
        start local 8 // int remaining
        63: .line 228
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.start:I
            istore 7 /* offset */
        64: .line 229
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.offsets:[I
            iload 6 /* x */
            iload 7 /* offset */
            iastore
        65: .line 230
            aload 0 /* this */
            invokevirtual org.h2.index.PageDataLeaf.getPos:()I
            istore 9 /* previous */
        start local 9 // int previous
        66: .line 231
            iload 3 /* pageSize */
            istore 10 /* dataOffset */
        start local 10 // int dataOffset
        67: .line 232
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            invokevirtual org.h2.store.PageStore.allocatePage:()I
            istore 11 /* page */
        start local 11 // int page
        68: .line 233
            aload 0 /* this */
            iload 11 /* page */
            putfield org.h2.index.PageDataLeaf.firstOverflowPageId:I
        69: .line 234
            aload 0 /* this */
            iload 3 /* pageSize */
            iload 2 /* rowLength */
            iadd
            putfield org.h2.index.PageDataLeaf.overflowRowSize:I
        70: .line 235
            aload 0 /* this */
            invokevirtual org.h2.index.PageDataLeaf.writeData:()V
        71: .line 237
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.rows:[Lorg/h2/result/Row;
            iconst_0
            aaload
            astore 12 /* r */
        start local 12 // org.h2.result.Row r
        72: .line 238
            aload 0 /* this */
            new java.lang.ref.SoftReference
            dup
            aload 12 /* r */
            invokespecial java.lang.ref.SoftReference.<init>:(Ljava/lang/Object;)V
            putfield org.h2.index.PageDataLeaf.rowRef:Ljava/lang/ref/SoftReference;
        73: .line 239
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.rows:[Lorg/h2/result/Row;
            iconst_0
            aconst_null
            aastore
        74: .line 240
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            invokevirtual org.h2.store.PageStore.createData:()Lorg/h2/store/Data;
            astore 13 /* all */
        start local 13 // org.h2.store.Data all
        75: .line 241
            aload 13 /* all */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.Data.length:()I
            invokevirtual org.h2.store.Data.checkCapacity:(I)V
        76: .line 242
            aload 13 /* all */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.Data.getBytes:()[B
            iconst_0
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.Data.length:()I
            invokevirtual org.h2.store.Data.write:([BII)V
        77: .line 243
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            invokevirtual org.h2.store.PageStore.getPageSize:()I
            invokevirtual org.h2.store.Data.truncate:(I)V
        78: .line 246
      StackMap locals: org.h2.index.PageDataLeaf org.h2.result.Row int int int int int int int int int int org.h2.result.Row org.h2.store.Data
      StackMap stack:
            iload 8 /* remaining */
            iload 3 /* pageSize */
            bipush 9
            isub
            if_icmpgt 83
        79: .line 247
            bipush 19
            istore 14 /* type */
        start local 14 // int type
        80: .line 248
            iload 8 /* remaining */
            istore 15 /* size */
        start local 15 // int size
        81: .line 249
            iconst_0
            istore 16 /* next */
        start local 16 // int next
        82: .line 250
            goto 86
        end local 16 // int next
        end local 15 // int size
        end local 14 // int type
        83: .line 251
      StackMap locals:
      StackMap stack:
            iconst_3
            istore 14 /* type */
        start local 14 // int type
        84: .line 252
            iload 3 /* pageSize */
            bipush 11
            isub
            istore 15 /* size */
        start local 15 // int size
        85: .line 253
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            invokevirtual org.h2.store.PageStore.allocatePage:()I
            istore 16 /* next */
        start local 16 // int next
        86: .line 255
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
        87: .line 256
            iload 11 /* page */
            iload 14 /* type */
            iload 9 /* previous */
            iload 16 /* next */
            aload 13 /* all */
            iload 10 /* dataOffset */
            iload 15 /* size */
        88: .line 255
            invokestatic org.h2.index.PageDataOverflow.create:(Lorg/h2/store/PageStore;IIIILorg/h2/store/Data;II)Lorg/h2/index/PageDataOverflow;
            astore 17 /* overflow */
        start local 17 // org.h2.index.PageDataOverflow overflow
        89: .line 257
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            aload 17 /* overflow */
            invokevirtual org.h2.store.PageStore.update:(Lorg/h2/store/Page;)V
        90: .line 258
            iload 10 /* dataOffset */
            iload 15 /* size */
            iadd
            istore 10 /* dataOffset */
        91: .line 259
            iload 8 /* remaining */
            iload 15 /* size */
            isub
            istore 8 /* remaining */
        92: .line 260
            iload 11 /* page */
            istore 9 /* previous */
        93: .line 261
            iload 16 /* next */
            istore 11 /* page */
        end local 17 // org.h2.index.PageDataOverflow overflow
        end local 16 // int next
        end local 15 // int size
        end local 14 // int type
        94: .line 262
            iload 8 /* remaining */
        95: .line 244
            ifgt 78
        end local 13 // org.h2.store.Data all
        end local 12 // org.h2.result.Row r
        end local 11 // int page
        end local 10 // int dataOffset
        end local 9 // int previous
        end local 8 // int remaining
        96: .line 264
      StackMap locals: org.h2.index.PageDataLeaf org.h2.result.Row int int int int int int
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.rowRef:Ljava/lang/ref/SoftReference;
            ifnonnull 99
        97: .line 265
            aload 0 /* this */
            iconst_1
            aload 1 /* row */
            invokevirtual org.h2.index.PageDataLeaf.memoryChange:(ZLorg/h2/result/Row;)V
        98: .line 266
            goto 100
        99: .line 267
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            aconst_null
            invokevirtual org.h2.index.PageDataLeaf.memoryChange:(ZLorg/h2/result/Row;)V
       100: .line 269
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
        end local 7 // int offset
        end local 6 // int x
        end local 5 // int keyOffsetPairLen
        end local 4 // int last
        end local 3 // int pageSize
        end local 2 // int rowLength
        end local 1 // org.h2.result.Row row
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0  101     0              this  Lorg/h2/index/PageDataLeaf;
            0  101     1               row  Lorg/h2/result/Row;
            2  101     2         rowLength  I
            3  101     3          pageSize  I
            6  101     4              last  I
            7  101     5  keyOffsetPairLen  I
            9   23     6                 x  I
           18   22     7             third  I
           26   27     6                 x  I
           30  101     6                 x  I
           36  101     7            offset  I
           46   57     8                 d  [B
           47   57     9         dataStart  I
           48   57    10           dataEnd  I
           53   57    11                 j  I
           63   96     8         remaining  I
           66   96     9          previous  I
           67   96    10        dataOffset  I
           68   96    11              page  I
           72   96    12                 r  Lorg/h2/result/Row;
           75   96    13               all  Lorg/h2/store/Data;
           80   83    14              type  I
           84   94    14              type  I
           81   83    15              size  I
           85   94    15              size  I
           82   83    16              next  I
           86   94    16              next  I
           89   94    17          overflow  Lorg/h2/index/PageDataOverflow;
    MethodParameters:
      Name  Flags
      row   

  private void removeRow(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=8, args_size=2
        start local 0 // org.h2.index.PageDataLeaf this
        start local 1 // int i
         0: .line 273
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.PageStore.logUndo:(Lorg/h2/store/Page;Lorg/h2/store/Data;)V
         1: .line 274
            aload 0 /* this */
            iconst_0
            putfield org.h2.index.PageDataLeaf.written:Z
         2: .line 275
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            invokevirtual org.h2.store.PageStore.getChangeCount:()J
            putfield org.h2.index.PageDataLeaf.changeCount:J
         3: .line 276
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.optimizeUpdate:Z
            ifne 5
         4: .line 277
            aload 0 /* this */
            invokevirtual org.h2.index.PageDataLeaf.readAllRows:()V
         5: .line 279
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* i */
            invokevirtual org.h2.index.PageDataLeaf.getRowAt:(I)Lorg/h2/result/Row;
            astore 2 /* r */
        start local 2 // org.h2.result.Row r
         6: .line 280
            aload 2 /* r */
            ifnull 8
         7: .line 281
            aload 0 /* this */
            iconst_0
            aload 2 /* r */
            invokevirtual org.h2.index.PageDataLeaf.memoryChange:(ZLorg/h2/result/Row;)V
         8: .line 283
      StackMap locals: org.h2.result.Row
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.h2.index.PageDataLeaf.entryCount:I
            iconst_1
            isub
            putfield org.h2.index.PageDataLeaf.entryCount:I
         9: .line 284
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            ifge 11
        10: .line 285
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
            invokestatic org.h2.message.DbException.throwInternalError:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            pop
        11: .line 287
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.firstOverflowPageId:I
            ifeq 17
        12: .line 288
            aload 0 /* this */
            dup
            getfield org.h2.index.PageDataLeaf.start:I
            iconst_4
            isub
            putfield org.h2.index.PageDataLeaf.start:I
        13: .line 289
            aload 0 /* this */
            invokevirtual org.h2.index.PageDataLeaf.freeOverflow:()V
        14: .line 290
            aload 0 /* this */
            iconst_0
            putfield org.h2.index.PageDataLeaf.firstOverflowPageId:I
        15: .line 291
            aload 0 /* this */
            iconst_0
            putfield org.h2.index.PageDataLeaf.overflowRowSize:I
        16: .line 292
            aload 0 /* this */
            aconst_null
            putfield org.h2.index.PageDataLeaf.rowRef:Ljava/lang/ref/SoftReference;
        17: .line 294
      StackMap locals:
      StackMap stack:
            iconst_2
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.keys:[J
            iload 1 /* i */
            laload
            invokestatic org.h2.store.Data.getVarLongLen:(J)I
            iadd
            istore 3 /* keyOffsetPairLen */
        start local 3 // int keyOffsetPairLen
        18: .line 295
            iload 1 /* i */
            ifle 19
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.offsets:[I
            iload 1 /* i */
            iconst_1
            isub
            iaload
            goto 20
      StackMap locals: int
      StackMap stack:
        19: aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            invokevirtual org.h2.store.PageStore.getPageSize:()I
      StackMap locals:
      StackMap stack: int
        20: istore 4 /* startNext */
        start local 4 // int startNext
        21: .line 296
            iload 4 /* startNext */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.offsets:[I
            iload 1 /* i */
            iaload
            isub
            istore 5 /* rowLength */
        start local 5 // int rowLength
        22: .line 297
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.optimizeUpdate:Z
            ifeq 31
        23: .line 298
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.writtenData:Z
            ifeq 33
        24: .line 299
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.Data.getBytes:()[B
            astore 6 /* d */
        start local 6 // byte[] d
        25: .line 300
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.offsets:[I
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            iaload
            istore 7 /* dataStart */
        start local 7 // int dataStart
        26: .line 301
            aload 6 /* d */
            iload 7 /* dataStart */
            aload 6 /* d */
            iload 7 /* dataStart */
            iload 5 /* rowLength */
            iadd
        27: .line 302
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.offsets:[I
            iload 1 /* i */
            iaload
            iload 7 /* dataStart */
            isub
        28: .line 301
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        29: .line 303
            aload 6 /* d */
            iload 7 /* dataStart */
            iload 7 /* dataStart */
            iload 5 /* rowLength */
            iadd
            iconst_0
            invokestatic java.util.Arrays.fill:([BIIB)V
        end local 7 // int dataStart
        end local 6 // byte[] d
        30: .line 305
            goto 33
        31: .line 306
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.offsets:[I
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            iaload
            istore 6 /* clearStart */
        start local 6 // int clearStart
        32: .line 307
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.Data.getBytes:()[B
            iload 6 /* clearStart */
            iload 6 /* clearStart */
            iload 5 /* rowLength */
            iadd
            iconst_0
            invokestatic java.util.Arrays.fill:([BIIB)V
        end local 6 // int clearStart
        33: .line 309
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.h2.index.PageDataLeaf.start:I
            iload 3 /* keyOffsetPairLen */
            isub
            putfield org.h2.index.PageDataLeaf.start:I
        34: .line 310
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.offsets:[I
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            iconst_1
            iadd
            iload 1 /* i */
            invokestatic org.h2.index.PageDataLeaf.remove:([III)[I
            putfield org.h2.index.PageDataLeaf.offsets:[I
        35: .line 311
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.offsets:[I
            iload 1 /* i */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            iload 5 /* rowLength */
            invokestatic org.h2.index.PageDataLeaf.add:([IIII)V
        36: .line 312
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.keys:[J
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            iconst_1
            iadd
            iload 1 /* i */
            invokestatic org.h2.index.PageDataLeaf.remove:([JII)[J
            putfield org.h2.index.PageDataLeaf.keys:[J
        37: .line 313
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.rows:[Lorg/h2/result/Row;
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            iconst_1
            iadd
            iload 1 /* i */
            invokestatic org.h2.index.PageDataLeaf.remove:([Ljava/lang/Object;II)[Ljava/lang/Object;
            checkcast org.h2.result.Row[]
            putfield org.h2.index.PageDataLeaf.rows:[Lorg/h2/result/Row;
        38: .line 314
            return
        end local 5 // int rowLength
        end local 4 // int startNext
        end local 3 // int keyOffsetPairLen
        end local 2 // org.h2.result.Row r
        end local 1 // int i
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   39     0              this  Lorg/h2/index/PageDataLeaf;
            0   39     1                 i  I
            6   39     2                 r  Lorg/h2/result/Row;
           18   39     3  keyOffsetPairLen  I
           21   39     4         startNext  I
           22   39     5         rowLength  I
           25   30     6                 d  [B
           26   30     7         dataStart  I
           32   33     6        clearStart  I
    MethodParameters:
      Name  Flags
      i     

  org.h2.index.Cursor find(org.h2.engine.Session, long, long);
    descriptor: (Lorg/h2/engine/Session;JJ)Lorg/h2/index/Cursor;
    flags: (0x0000) 
    Code:
      stack=6, locals=7, args_size=4
        start local 0 // org.h2.index.PageDataLeaf this
        start local 1 // org.h2.engine.Session session
        start local 2 // long minKey
        start local 4 // long maxKey
         0: .line 318
            aload 0 /* this */
            lload 2 /* minKey */
            invokevirtual org.h2.index.PageDataLeaf.find:(J)I
            istore 6 /* x */
        start local 6 // int x
         1: .line 319
            new org.h2.index.PageDataCursor
            dup
            aload 0 /* this */
            iload 6 /* x */
            lload 4 /* maxKey */
            invokespecial org.h2.index.PageDataCursor.<init>:(Lorg/h2/index/PageDataLeaf;IJ)V
            areturn
        end local 6 // int x
        end local 4 // long maxKey
        end local 2 // long minKey
        end local 1 // org.h2.engine.Session session
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/h2/index/PageDataLeaf;
            0    2     1  session  Lorg/h2/engine/Session;
            0    2     2   minKey  J
            0    2     4   maxKey  J
            1    2     6        x  I
    MethodParameters:
         Name  Flags
      session  
      minKey   
      maxKey   

  org.h2.result.Row getRowAt(int);
    descriptor: (I)Lorg/h2/result/Row;
    flags: (0x0000) 
    Code:
      stack=5, locals=9, args_size=2
        start local 0 // org.h2.index.PageDataLeaf this
        start local 1 // int at
         0: .line 329
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.rows:[Lorg/h2/result/Row;
            iload 1 /* at */
            aaload
            astore 2 /* r */
        start local 2 // org.h2.result.Row r
         1: .line 330
            aload 2 /* r */
            ifnonnull 26
         2: .line 331
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.firstOverflowPageId:I
            ifne 5
         3: .line 332
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.offsets:[I
            iload 1 /* at */
            iaload
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.columnCount:I
            invokevirtual org.h2.index.PageDataLeaf.readRow:(Lorg/h2/store/Data;II)Lorg/h2/result/Row;
            astore 2 /* r */
         4: .line 333
            goto 20
         5: .line 334
      StackMap locals: org.h2.result.Row
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.rowRef:Ljava/lang/ref/SoftReference;
            ifnull 9
         6: .line 335
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.rowRef:Ljava/lang/ref/SoftReference;
            invokevirtual java.lang.ref.SoftReference.get:()Ljava/lang/Object;
            checkcast org.h2.result.Row
            astore 2 /* r */
         7: .line 336
            aload 2 /* r */
            ifnull 9
         8: .line 337
            aload 2 /* r */
            areturn
         9: .line 340
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            astore 3 /* store */
        start local 3 // org.h2.store.PageStore store
        10: .line 341
            aload 3 /* store */
            invokevirtual org.h2.store.PageStore.createData:()Lorg/h2/store/Data;
            astore 4 /* buff */
        start local 4 // org.h2.store.Data buff
        11: .line 342
            aload 3 /* store */
            invokevirtual org.h2.store.PageStore.getPageSize:()I
            istore 5 /* pageSize */
        start local 5 // int pageSize
        12: .line 343
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.offsets:[I
            iload 1 /* at */
            iaload
            istore 6 /* offset */
        start local 6 // int offset
        13: .line 344
            aload 4 /* buff */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.Data.getBytes:()[B
            iload 6 /* offset */
            iload 5 /* pageSize */
            iload 6 /* offset */
            isub
            invokevirtual org.h2.store.Data.write:([BII)V
        14: .line 345
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.firstOverflowPageId:I
            istore 7 /* next */
        start local 7 // int next
        15: .line 347
      StackMap locals: org.h2.index.PageDataLeaf int org.h2.result.Row org.h2.store.PageStore org.h2.store.Data int int int
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            iload 7 /* next */
            invokevirtual org.h2.index.PageDataIndex.getPageOverflow:(I)Lorg/h2/index/PageDataOverflow;
            astore 8 /* page */
        start local 8 // org.h2.index.PageDataOverflow page
        16: .line 348
            aload 8 /* page */
            aload 4 /* buff */
            invokevirtual org.h2.index.PageDataOverflow.readInto:(Lorg/h2/store/Data;)I
            istore 7 /* next */
        end local 8 // org.h2.index.PageDataOverflow page
        17: .line 349
            iload 7 /* next */
            ifne 15
        18: .line 350
            aload 0 /* this */
            iload 5 /* pageSize */
            aload 4 /* buff */
            invokevirtual org.h2.store.Data.length:()I
            iadd
            putfield org.h2.index.PageDataLeaf.overflowRowSize:I
        19: .line 351
            aload 0 /* this */
            aload 4 /* buff */
            iconst_0
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.columnCount:I
            invokevirtual org.h2.index.PageDataLeaf.readRow:(Lorg/h2/store/Data;II)Lorg/h2/result/Row;
            astore 2 /* r */
        end local 7 // int next
        end local 6 // int offset
        end local 5 // int pageSize
        end local 4 // org.h2.store.Data buff
        end local 3 // org.h2.store.PageStore store
        20: .line 353
      StackMap locals: org.h2.index.PageDataLeaf int org.h2.result.Row
      StackMap stack:
            aload 2 /* r */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.keys:[J
            iload 1 /* at */
            laload
            invokeinterface org.h2.result.Row.setKey:(J)V
        21: .line 354
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.firstOverflowPageId:I
            ifeq 24
        22: .line 355
            aload 0 /* this */
            new java.lang.ref.SoftReference
            dup
            aload 2 /* r */
            invokespecial java.lang.ref.SoftReference.<init>:(Ljava/lang/Object;)V
            putfield org.h2.index.PageDataLeaf.rowRef:Ljava/lang/ref/SoftReference;
        23: .line 356
            goto 26
        24: .line 357
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.rows:[Lorg/h2/result/Row;
            iload 1 /* at */
            aload 2 /* r */
            aastore
        25: .line 358
            aload 0 /* this */
            iconst_1
            aload 2 /* r */
            invokevirtual org.h2.index.PageDataLeaf.memoryChange:(ZLorg/h2/result/Row;)V
        26: .line 361
      StackMap locals:
      StackMap stack:
            aload 2 /* r */
            areturn
        end local 2 // org.h2.result.Row r
        end local 1 // int at
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   27     0      this  Lorg/h2/index/PageDataLeaf;
            0   27     1        at  I
            1   27     2         r  Lorg/h2/result/Row;
           10   20     3     store  Lorg/h2/store/PageStore;
           11   20     4      buff  Lorg/h2/store/Data;
           12   20     5  pageSize  I
           13   20     6    offset  I
           15   20     7      next  I
           16   17     8      page  Lorg/h2/index/PageDataOverflow;
    MethodParameters:
      Name  Flags
      at    

  int getEntryCount();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.index.PageDataLeaf this
         0: .line 365
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            ireturn
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/index/PageDataLeaf;

  org.h2.index.PageData split(int);
    descriptor: (I)Lorg/h2/index/PageData;
    flags: (0x0000) 
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // org.h2.index.PageDataLeaf this
        start local 1 // int splitPoint
         0: .line 370
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            invokevirtual org.h2.store.PageStore.allocatePage:()I
            istore 2 /* newPageId */
        start local 2 // int newPageId
         1: .line 371
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            iload 2 /* newPageId */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.parentPageId:I
            invokestatic org.h2.index.PageDataLeaf.create:(Lorg/h2/index/PageDataIndex;II)Lorg/h2/index/PageDataLeaf;
            astore 3 /* p2 */
        start local 3 // org.h2.index.PageDataLeaf p2
         2: .line 372
            goto 7
         3: .line 373
      StackMap locals: int org.h2.index.PageDataLeaf
      StackMap stack:
            aload 3 /* p2 */
            aload 0 /* this */
            iload 1 /* splitPoint */
            invokevirtual org.h2.index.PageDataLeaf.getRowAt:(I)Lorg/h2/result/Row;
            invokevirtual org.h2.index.PageDataLeaf.addRowTry:(Lorg/h2/result/Row;)I
            istore 4 /* split */
        start local 4 // int split
         4: .line 374
            iload 4 /* split */
            iconst_m1
            if_icmpeq 6
         5: .line 375
            new java.lang.StringBuilder
            dup
            ldc "split "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 4 /* split */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.h2.message.DbException.throwInternalError:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            pop
         6: .line 377
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 1 /* splitPoint */
            invokevirtual org.h2.index.PageDataLeaf.removeRow:(I)V
        end local 4 // int split
         7: .line 372
      StackMap locals:
      StackMap stack:
            iload 1 /* splitPoint */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            if_icmplt 3
         8: .line 379
            aload 3 /* p2 */
            areturn
        end local 3 // org.h2.index.PageDataLeaf p2
        end local 2 // int newPageId
        end local 1 // int splitPoint
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0        this  Lorg/h2/index/PageDataLeaf;
            0    9     1  splitPoint  I
            1    9     2   newPageId  I
            2    9     3          p2  Lorg/h2/index/PageDataLeaf;
            4    7     4       split  I
    MethodParameters:
            Name  Flags
      splitPoint  

  long getLastKey();
    descriptor: ()J
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.h2.index.PageDataLeaf this
         0: .line 385
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            ifne 2
         1: .line 386
            lconst_0
            lreturn
         2: .line 388
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            iconst_1
            isub
            invokevirtual org.h2.index.PageDataLeaf.getRowAt:(I)Lorg/h2/result/Row;
            invokeinterface org.h2.result.Row.getKey:()J
            lreturn
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/h2/index/PageDataLeaf;

  org.h2.index.PageDataLeaf getNextPage();
    descriptor: ()Lorg/h2/index/PageDataLeaf;
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.h2.index.PageDataLeaf this
         0: .line 392
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.parentPageId:I
            ifne 2
         1: .line 393
            aconst_null
            areturn
         2: .line 395
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.parentPageId:I
            iconst_m1
            invokevirtual org.h2.index.PageDataIndex.getPage:(II)Lorg/h2/index/PageData;
            checkcast org.h2.index.PageDataNode
            astore 1 /* next */
        start local 1 // org.h2.index.PageDataNode next
         3: .line 396
            aload 1 /* next */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.keys:[J
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            iconst_1
            isub
            laload
            invokevirtual org.h2.index.PageDataNode.getNextPage:(J)Lorg/h2/index/PageDataLeaf;
            areturn
        end local 1 // org.h2.index.PageDataNode next
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/h2/index/PageDataLeaf;
            3    4     1  next  Lorg/h2/index/PageDataNode;

  org.h2.index.PageDataLeaf getFirstLeaf();
    descriptor: ()Lorg/h2/index/PageDataLeaf;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.index.PageDataLeaf this
         0: .line 401
            aload 0 /* this */
            areturn
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/index/PageDataLeaf;

  protected void remapChildren(int);
    descriptor: (I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.h2.index.PageDataLeaf this
        start local 1 // int old
         0: .line 406
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.firstOverflowPageId:I
            ifne 2
         1: .line 407
            return
         2: .line 409
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.firstOverflowPageId:I
            invokevirtual org.h2.index.PageDataIndex.getPageOverflow:(I)Lorg/h2/index/PageDataOverflow;
            astore 2 /* overflow */
        start local 2 // org.h2.index.PageDataOverflow overflow
         3: .line 410
            aload 2 /* overflow */
            aload 0 /* this */
            invokevirtual org.h2.index.PageDataLeaf.getPos:()I
            invokevirtual org.h2.index.PageDataOverflow.setParentPageId:(I)V
         4: .line 411
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            aload 2 /* overflow */
            invokevirtual org.h2.store.PageStore.update:(Lorg/h2/store/Page;)V
         5: .line 412
            return
        end local 2 // org.h2.index.PageDataOverflow overflow
        end local 1 // int old
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lorg/h2/index/PageDataLeaf;
            0    6     1       old  I
            3    6     2  overflow  Lorg/h2/index/PageDataOverflow;
    MethodParameters:
      Name  Flags
      old   

  boolean remove(long);
    descriptor: (J)Z
    flags: (0x0000) 
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.h2.index.PageDataLeaf this
        start local 1 // long key
         0: .line 416
            aload 0 /* this */
            lload 1 /* key */
            invokevirtual org.h2.index.PageDataLeaf.find:(J)I
            istore 3 /* i */
        start local 3 // int i
         1: .line 417
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.keys:[J
            ifnull 2
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.keys:[J
            iload 3 /* i */
            laload
            lload 1 /* key */
            lcmp
            ifeq 8
         2: .line 418
      StackMap locals: int
      StackMap stack:
            ldc 90112
         3: .line 419
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            iconst_0
            invokevirtual org.h2.index.PageDataIndex.getSQL:(Ljava/lang/StringBuilder;Z)Ljava/lang/StringBuilder;
            ldc ": "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            lload 1 /* key */
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
         4: .line 420
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.keys:[J
            ifnonnull 5
            ldc -1
            goto 6
      StackMap locals: org.h2.index.PageDataLeaf long int
      StackMap stack: int java.lang.StringBuilder
         5: aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.keys:[J
            iload 3 /* i */
            laload
      StackMap locals: org.h2.index.PageDataLeaf long int
      StackMap stack: int java.lang.StringBuilder long
         6: invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         7: .line 418
            invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
            athrow
         8: .line 422
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.PageStore.logUndo:(Lorg/h2/store/Page;Lorg/h2/store/Data;)V
         9: .line 423
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            iconst_1
            if_icmpne 12
        10: .line 424
            aload 0 /* this */
            invokevirtual org.h2.index.PageDataLeaf.freeRecursive:()V
        11: .line 425
            iconst_1
            ireturn
        12: .line 427
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 3 /* i */
            invokevirtual org.h2.index.PageDataLeaf.removeRow:(I)V
        13: .line 428
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            aload 0 /* this */
            invokevirtual org.h2.store.PageStore.update:(Lorg/h2/store/Page;)V
        14: .line 429
            iconst_0
            ireturn
        end local 3 // int i
        end local 1 // long key
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0  this  Lorg/h2/index/PageDataLeaf;
            0   15     1   key  J
            1   15     3     i  I
    MethodParameters:
      Name  Flags
      key   

  void freeRecursive();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.h2.index.PageDataLeaf this
         0: .line 434
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.PageStore.logUndo:(Lorg/h2/store/Page;Lorg/h2/store/Data;)V
         1: .line 435
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            aload 0 /* this */
            invokevirtual org.h2.index.PageDataLeaf.getPos:()I
            invokevirtual org.h2.store.PageStore.free:(I)V
         2: .line 436
            aload 0 /* this */
            invokevirtual org.h2.index.PageDataLeaf.freeOverflow:()V
         3: .line 437
            return
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/h2/index/PageDataLeaf;

  private void freeOverflow();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.h2.index.PageDataLeaf this
         0: .line 440
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.firstOverflowPageId:I
            ifeq 6
         1: .line 441
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.firstOverflowPageId:I
            istore 1 /* next */
        start local 1 // int next
         2: .line 443
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            iload 1 /* next */
            invokevirtual org.h2.index.PageDataIndex.getPageOverflow:(I)Lorg/h2/index/PageDataOverflow;
            astore 2 /* page */
        start local 2 // org.h2.index.PageDataOverflow page
         3: .line 444
            aload 2 /* page */
            invokevirtual org.h2.index.PageDataOverflow.free:()V
         4: .line 445
            aload 2 /* page */
            invokevirtual org.h2.index.PageDataOverflow.getNextOverflow:()I
            istore 1 /* next */
        end local 2 // org.h2.index.PageDataOverflow page
         5: .line 446
            iload 1 /* next */
            ifne 2
        end local 1 // int next
         6: .line 448
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/h2/index/PageDataLeaf;
            2    6     1  next  I
            3    5     2  page  Lorg/h2/index/PageDataOverflow;

  org.h2.result.Row getRowWithKey(long);
    descriptor: (J)Lorg/h2/result/Row;
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.h2.index.PageDataLeaf this
        start local 1 // long key
         0: .line 452
            aload 0 /* this */
            lload 1 /* key */
            invokevirtual org.h2.index.PageDataLeaf.find:(J)I
            istore 3 /* at */
        start local 3 // int at
         1: .line 453
            aload 0 /* this */
            iload 3 /* at */
            invokevirtual org.h2.index.PageDataLeaf.getRowAt:(I)Lorg/h2/result/Row;
            areturn
        end local 3 // int at
        end local 1 // long key
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/h2/index/PageDataLeaf;
            0    2     1   key  J
            1    2     3    at  I
    MethodParameters:
      Name  Flags
      key   

  int getRowCount();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.index.PageDataLeaf this
         0: .line 458
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            ireturn
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/index/PageDataLeaf;

  void setRowCountStored(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.h2.index.PageDataLeaf this
        start local 1 // int rowCount
         0: .line 464
            return
        end local 1 // int rowCount
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/h2/index/PageDataLeaf;
            0    1     1  rowCount  I
    MethodParameters:
          Name  Flags
      rowCount  

  long getDiskSpaceUsed();
    descriptor: ()J
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.h2.index.PageDataLeaf this
         0: .line 468
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            invokevirtual org.h2.store.PageStore.getPageSize:()I
            i2l
            lreturn
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/index/PageDataLeaf;

  public void write();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.h2.index.PageDataLeaf this
         0: .line 473
            aload 0 /* this */
            invokevirtual org.h2.index.PageDataLeaf.writeData:()V
         1: .line 474
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            aload 0 /* this */
            invokevirtual org.h2.index.PageDataLeaf.getPos:()I
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.PageStore.writePage:(ILorg/h2/store/Data;)V
         2: .line 475
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            invokevirtual org.h2.store.PageStore.getPageSize:()I
            invokevirtual org.h2.store.Data.truncate:(I)V
         3: .line 476
            return
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/h2/index/PageDataLeaf;

  private void readAllRows();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.h2.index.PageDataLeaf this
         0: .line 479
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         1: goto 4
         2: .line 480
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 1 /* i */
            invokevirtual org.h2.index.PageDataLeaf.getRowAt:(I)Lorg/h2/result/Row;
            pop
         3: .line 479
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 1 /* i */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            if_icmplt 2
        end local 1 // int i
         5: .line 482
            return
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/h2/index/PageDataLeaf;
            1    5     1     i  I

  private void writeHead();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.h2.index.PageDataLeaf this
         0: .line 485
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.Data.reset:()V
         1: .line 487
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.firstOverflowPageId:I
            ifne 4
         2: .line 488
            bipush 17
            istore 1 /* type */
        start local 1 // int type
         3: .line 489
            goto 5
        end local 1 // int type
         4: .line 490
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 1 /* type */
        start local 1 // int type
         5: .line 492
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            iload 1 /* type */
            i2b
            invokevirtual org.h2.store.Data.writeByte:(B)V
         6: .line 493
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            iconst_0
            invokevirtual org.h2.store.Data.writeShortInt:(I)V
         7: .line 494
            getstatic org.h2.index.PageDataLeaf.$assertionsDisabled:Z
            ifne 8
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.Data.length:()I
            iconst_3
            if_icmpeq 8
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         8: .line 495
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.parentPageId:I
            invokevirtual org.h2.store.Data.writeInt:(I)V
         9: .line 496
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getId:()I
            invokevirtual org.h2.store.Data.writeVarInt:(I)V
        10: .line 497
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.columnCount:I
            invokevirtual org.h2.store.Data.writeVarInt:(I)V
        11: .line 498
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            invokevirtual org.h2.store.Data.writeShortInt:(I)V
        12: .line 499
            return
        end local 1 // int type
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Lorg/h2/index/PageDataLeaf;
            3    4     1  type  I
            5   13     1  type  I

  private void writeData();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // org.h2.index.PageDataLeaf this
         0: .line 502
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.written:Z
            ifeq 2
         1: .line 503
            return
         2: .line 505
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.optimizeUpdate:Z
            ifne 4
         3: .line 506
            aload 0 /* this */
            invokevirtual org.h2.index.PageDataLeaf.readAllRows:()V
         4: .line 508
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.h2.index.PageDataLeaf.writeHead:()V
         5: .line 509
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.firstOverflowPageId:I
            ifeq 8
         6: .line 510
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.firstOverflowPageId:I
            invokevirtual org.h2.store.Data.writeInt:(I)V
         7: .line 511
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.overflowRowSize:I
            invokevirtual org.h2.store.Data.checkCapacity:(I)V
         8: .line 513
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         9: goto 13
        10: .line 514
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.keys:[J
            iload 1 /* i */
            laload
            invokevirtual org.h2.store.Data.writeVarLong:(J)V
        11: .line 515
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.offsets:[I
            iload 1 /* i */
            iaload
            invokevirtual org.h2.store.Data.writeShortInt:(I)V
        12: .line 513
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 1 /* i */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            if_icmplt 10
        end local 1 // int i
        14: .line 517
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.writtenData:Z
            ifeq 15
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.optimizeUpdate:Z
            ifne 27
        15: .line 518
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 1 /* i */
        start local 1 // int i
        16: goto 25
        17: .line 519
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.offsets:[I
            iload 1 /* i */
            iaload
            invokevirtual org.h2.store.Data.setPos:(I)V
        18: .line 520
            aload 0 /* this */
            iload 1 /* i */
            invokevirtual org.h2.index.PageDataLeaf.getRowAt:(I)Lorg/h2/result/Row;
            astore 2 /* r */
        start local 2 // org.h2.result.Row r
        19: .line 521
            iconst_0
            istore 3 /* j */
        start local 3 // int j
        20: goto 23
        21: .line 522
      StackMap locals: org.h2.result.Row int
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            aload 2 /* r */
            iload 3 /* j */
            invokeinterface org.h2.result.Row.getValue:(I)Lorg/h2/value/Value;
            invokevirtual org.h2.store.Data.writeValue:(Lorg/h2/value/Value;)V
        22: .line 521
            iinc 3 /* j */ 1
      StackMap locals:
      StackMap stack:
        23: iload 3 /* j */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.columnCount:I
            if_icmplt 21
        end local 3 // int j
        end local 2 // org.h2.result.Row r
        24: .line 518
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
        25: iload 1 /* i */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            if_icmplt 17
        end local 1 // int i
        26: .line 525
            aload 0 /* this */
            iconst_1
            putfield org.h2.index.PageDataLeaf.writtenData:Z
        27: .line 527
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield org.h2.index.PageDataLeaf.written:Z
        28: .line 528
            return
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   29     0  this  Lorg/h2/index/PageDataLeaf;
            9   14     1     i  I
           16   26     1     i  I
           19   24     2     r  Lorg/h2/result/Row;
           20   24     3     j  I

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.h2.index.PageDataLeaf this
         0: .line 532
            new java.lang.StringBuilder
            dup
            ldc "page["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.h2.index.PageDataLeaf.getPos:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "] data leaf table:"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         1: .line 533
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getId:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getTable:()Lorg/h2/table/Table;
            invokevirtual org.h2.table.Table.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         2: .line 534
            ldc " entries:"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " parent:"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.parentPageId:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         3: .line 535
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.firstOverflowPageId:I
            ifne 4
            ldc ""
            goto 5
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
         4: new java.lang.StringBuilder
            dup
            ldc " overflow:"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.firstOverflowPageId:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
      StackMap locals: org.h2.index.PageDataLeaf
      StackMap stack: java.lang.StringBuilder java.lang.String
         5: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         6: .line 536
            ldc " keys:"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.keys:[J
            invokestatic java.util.Arrays.toString:([J)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " offsets:"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.offsets:[I
            invokestatic java.util.Arrays.toString:([I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 532
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/h2/index/PageDataLeaf;

  public void moveTo(org.h2.engine.Session, int);
    descriptor: (Lorg/h2/engine/Session;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // org.h2.index.PageDataLeaf this
        start local 1 // org.h2.engine.Session session
        start local 2 // int newPos
         0: .line 541
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            astore 3 /* store */
        start local 3 // org.h2.store.PageStore store
         1: .line 544
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.parentPageId:I
            ifeq 3
         2: .line 545
            aload 3 /* store */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.parentPageId:I
            invokevirtual org.h2.store.PageStore.getPage:(I)Lorg/h2/store/Page;
            pop
         3: .line 547
      StackMap locals: org.h2.store.PageStore
      StackMap stack:
            aload 3 /* store */
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.PageStore.logUndo:(Lorg/h2/store/Page;Lorg/h2/store/Data;)V
         4: .line 548
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            iload 2 /* newPos */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.parentPageId:I
            invokestatic org.h2.index.PageDataLeaf.create:(Lorg/h2/index/PageDataIndex;II)Lorg/h2/index/PageDataLeaf;
            astore 4 /* p2 */
        start local 4 // org.h2.index.PageDataLeaf p2
         5: .line 549
            aload 0 /* this */
            invokevirtual org.h2.index.PageDataLeaf.readAllRows:()V
         6: .line 550
            aload 4 /* p2 */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.keys:[J
            putfield org.h2.index.PageDataLeaf.keys:[J
         7: .line 551
            aload 4 /* p2 */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.overflowRowSize:I
            putfield org.h2.index.PageDataLeaf.overflowRowSize:I
         8: .line 552
            aload 4 /* p2 */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.firstOverflowPageId:I
            putfield org.h2.index.PageDataLeaf.firstOverflowPageId:I
         9: .line 553
            aload 4 /* p2 */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.rowRef:Ljava/lang/ref/SoftReference;
            putfield org.h2.index.PageDataLeaf.rowRef:Ljava/lang/ref/SoftReference;
        10: .line 554
            aload 4 /* p2 */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.rows:[Lorg/h2/result/Row;
            putfield org.h2.index.PageDataLeaf.rows:[Lorg/h2/result/Row;
        11: .line 555
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.firstOverflowPageId:I
            ifeq 13
        12: .line 556
            aload 4 /* p2 */
            getfield org.h2.index.PageDataLeaf.rows:[Lorg/h2/result/Row;
            iconst_0
            aload 0 /* this */
            iconst_0
            invokevirtual org.h2.index.PageDataLeaf.getRowAt:(I)Lorg/h2/result/Row;
            aastore
        13: .line 558
      StackMap locals: org.h2.index.PageDataLeaf
      StackMap stack:
            aload 4 /* p2 */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.entryCount:I
            putfield org.h2.index.PageDataLeaf.entryCount:I
        14: .line 559
            aload 4 /* p2 */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.offsets:[I
            putfield org.h2.index.PageDataLeaf.offsets:[I
        15: .line 560
            aload 4 /* p2 */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.start:I
            putfield org.h2.index.PageDataLeaf.start:I
        16: .line 561
            aload 4 /* p2 */
            aload 0 /* this */
            invokevirtual org.h2.index.PageDataLeaf.getPos:()I
            invokevirtual org.h2.index.PageDataLeaf.remapChildren:(I)V
        17: .line 562
            aload 4 /* p2 */
            invokevirtual org.h2.index.PageDataLeaf.writeData:()V
        18: .line 563
            aload 4 /* p2 */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            invokevirtual org.h2.store.PageStore.getPageSize:()I
            invokevirtual org.h2.store.Data.truncate:(I)V
        19: .line 564
            aload 3 /* store */
            aload 4 /* p2 */
            invokevirtual org.h2.store.PageStore.update:(Lorg/h2/store/Page;)V
        20: .line 565
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.parentPageId:I
            ifne 23
        21: .line 566
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            aload 1 /* session */
            iload 2 /* newPos */
            invokevirtual org.h2.index.PageDataIndex.setRootPageId:(Lorg/h2/engine/Session;I)V
        22: .line 567
            goto 25
        23: .line 568
      StackMap locals:
      StackMap stack:
            aload 3 /* store */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.parentPageId:I
            invokevirtual org.h2.store.PageStore.getPage:(I)Lorg/h2/store/Page;
            checkcast org.h2.index.PageDataNode
            astore 5 /* p */
        start local 5 // org.h2.index.PageDataNode p
        24: .line 569
            aload 5 /* p */
            aload 0 /* this */
            invokevirtual org.h2.index.PageDataLeaf.getPos:()I
            iload 2 /* newPos */
            invokevirtual org.h2.index.PageDataNode.moveChild:(II)V
        end local 5 // org.h2.index.PageDataNode p
        25: .line 571
      StackMap locals:
      StackMap stack:
            aload 3 /* store */
            aload 0 /* this */
            invokevirtual org.h2.index.PageDataLeaf.getPos:()I
            invokevirtual org.h2.store.PageStore.free:(I)V
        26: .line 572
            return
        end local 4 // org.h2.index.PageDataLeaf p2
        end local 3 // org.h2.store.PageStore store
        end local 2 // int newPos
        end local 1 // org.h2.engine.Session session
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   27     0     this  Lorg/h2/index/PageDataLeaf;
            0   27     1  session  Lorg/h2/engine/Session;
            0   27     2   newPos  I
            1   27     3    store  Lorg/h2/store/PageStore;
            5   27     4       p2  Lorg/h2/index/PageDataLeaf;
           24   25     5        p  Lorg/h2/index/PageDataNode;
    MethodParameters:
         Name  Flags
      session  
      newPos   

  void setOverflow(int, int);
    descriptor: (II)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.h2.index.PageDataLeaf this
        start local 1 // int old
        start local 2 // int overflow
         0: .line 581
            iload 1 /* old */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.firstOverflowPageId:I
            if_icmpeq 2
         1: .line 582
            new java.lang.StringBuilder
            dup
            ldc "move "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.firstOverflowPageId:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.h2.message.DbException.throwInternalError:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            pop
         2: .line 584
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            invokevirtual org.h2.store.PageStore.logUndo:(Lorg/h2/store/Page;Lorg/h2/store/Data;)V
         3: .line 585
            aload 0 /* this */
            iload 2 /* overflow */
            putfield org.h2.index.PageDataLeaf.firstOverflowPageId:I
         4: .line 586
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.written:Z
            ifeq 8
         5: .line 587
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            invokevirtual org.h2.store.PageStore.getChangeCount:()J
            putfield org.h2.index.PageDataLeaf.changeCount:J
         6: .line 588
            aload 0 /* this */
            invokevirtual org.h2.index.PageDataLeaf.writeHead:()V
         7: .line 589
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.data:Lorg/h2/store/Data;
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.firstOverflowPageId:I
            invokevirtual org.h2.store.Data.writeInt:(I)V
         8: .line 591
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            aload 0 /* this */
            invokevirtual org.h2.store.PageStore.update:(Lorg/h2/store/Page;)V
         9: .line 592
            return
        end local 2 // int overflow
        end local 1 // int old
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0      this  Lorg/h2/index/PageDataLeaf;
            0   10     1       old  I
            0   10     2  overflow  I
    MethodParameters:
          Name  Flags
      old       
      overflow  

  private void memoryChange(boolean, org.h2.result.Row);
    descriptor: (ZLorg/h2/result/Row;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.h2.index.PageDataLeaf this
        start local 1 // boolean add
        start local 2 // org.h2.result.Row r
         0: .line 595
            aload 2 /* r */
            ifnonnull 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: bipush 20
            aload 2 /* r */
            invokeinterface org.h2.result.Row.getMemory:()I
            iadd
      StackMap locals:
      StackMap stack: int
         2: istore 3 /* diff */
        start local 3 // int diff
         3: .line 596
            aload 0 /* this */
            dup
            getfield org.h2.index.PageDataLeaf.memoryData:I
            iload 1 /* add */
            ifeq 4
            iload 3 /* diff */
            goto 5
      StackMap locals: org.h2.index.PageDataLeaf int org.h2.result.Row int
      StackMap stack: org.h2.index.PageDataLeaf int
         4: iload 3 /* diff */
            ineg
      StackMap locals: org.h2.index.PageDataLeaf int org.h2.result.Row int
      StackMap stack: org.h2.index.PageDataLeaf int int
         5: iadd
            putfield org.h2.index.PageDataLeaf.memoryData:I
         6: .line 597
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            sipush 240
         7: .line 598
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.memoryData:I
            iadd
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getPageStore:()Lorg/h2/store/PageStore;
            invokevirtual org.h2.store.PageStore.getPageSize:()I
            iadd
            iconst_2
            ishr
         8: .line 597
            invokevirtual org.h2.index.PageDataIndex.memoryChange:(I)V
         9: .line 599
            return
        end local 3 // int diff
        end local 2 // org.h2.result.Row r
        end local 1 // boolean add
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/h2/index/PageDataLeaf;
            0   10     1   add  Z
            0   10     2     r  Lorg/h2/result/Row;
            3   10     3  diff  I
    MethodParameters:
      Name  Flags
      add   
      r     

  public boolean isStream();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.index.PageDataLeaf this
         0: .line 603
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.firstOverflowPageId:I
            ifle 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/h2/index/PageDataLeaf;

  private org.h2.result.Row readRow(org.h2.store.Data, int, int);
    descriptor: (Lorg/h2/store/Data;II)Lorg/h2/result/Row;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=4
        start local 0 // org.h2.index.PageDataLeaf this
        start local 1 // org.h2.store.Data data
        start local 2 // int pos
        start local 3 // int columnCount
         0: .line 615
            iload 3 /* columnCount */
            anewarray org.h2.value.Value
            astore 4 /* values */
        start local 4 // org.h2.value.Value[] values
         1: .line 616
            aload 1 /* data */
            dup
            astore 5
            monitorenter
         2: .line 617
            aload 1 /* data */
            iload 2 /* pos */
            invokevirtual org.h2.store.Data.setPos:(I)V
         3: .line 618
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         4: goto 7
         5: .line 619
      StackMap locals: org.h2.value.Value[] org.h2.store.Data int
      StackMap stack:
            aload 4 /* values */
            iload 6 /* i */
            aload 1 /* data */
            invokevirtual org.h2.store.Data.readValue:()Lorg/h2/value/Value;
            aastore
         6: .line 618
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 6 /* i */
            iload 3 /* columnCount */
            if_icmplt 5
        end local 6 // int i
         8: .line 616
            aload 5
            monitorexit
         9: goto 12
      StackMap locals: org.h2.index.PageDataLeaf org.h2.store.Data int int org.h2.value.Value[] org.h2.store.Data
      StackMap stack: java.lang.Throwable
        10: aload 5
            monitorexit
        11: athrow
        12: .line 622
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.index.PageDataLeaf.index:Lorg/h2/index/PageDataIndex;
            invokevirtual org.h2.index.PageDataIndex.getDatabase:()Lorg/h2/engine/Database;
            aload 4 /* values */
            iconst_m1
            invokevirtual org.h2.engine.Database.createRow:([Lorg/h2/value/Value;I)Lorg/h2/result/Row;
            areturn
        end local 4 // org.h2.value.Value[] values
        end local 3 // int columnCount
        end local 2 // int pos
        end local 1 // org.h2.store.Data data
        end local 0 // org.h2.index.PageDataLeaf this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   13     0         this  Lorg/h2/index/PageDataLeaf;
            0   13     1         data  Lorg/h2/store/Data;
            0   13     2          pos  I
            0   13     3  columnCount  I
            1   13     4       values  [Lorg/h2/value/Value;
            4    8     6            i  I
      Exception table:
        from    to  target  type
           2     9      10  any
          10    11      10  any
    MethodParameters:
             Name  Flags
      data         
      pos          
      columnCount  

  public int getMemory();
    descriptor: ()I
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial org.h2.index.PageData.getMemory:()I
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public boolean canRemove();
    descriptor: ()Z
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial org.h2.index.PageData.canRemove:()Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "PageDataLeaf.java"