public class org.hsqldb.RowAction extends org.hsqldb.RowActionBase
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.hsqldb.RowAction
  super_class: org.hsqldb.RowActionBase
{
  final org.hsqldb.TableBase table;
    descriptor: Lorg/hsqldb/TableBase;
    flags: (0x0010) ACC_FINAL

  final org.hsqldb.persist.PersistentStore store;
    descriptor: Lorg/hsqldb/persist/PersistentStore;
    flags: (0x0010) ACC_FINAL

  final org.hsqldb.Row memoryRow;
    descriptor: Lorg/hsqldb/Row;
    flags: (0x0010) ACC_FINAL

  final long rowId;
    descriptor: J
    flags: (0x0010) ACC_FINAL

  boolean isMemory;
    descriptor: Z
    flags: (0x0000) 

  org.hsqldb.RowAction updatedAction;
    descriptor: Lorg/hsqldb/RowAction;
    flags: (0x0000) 

  public static org.hsqldb.RowAction addInsertAction(org.hsqldb.Session, org.hsqldb.TableBase, org.hsqldb.Row);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/TableBase;Lorg/hsqldb/Row;)Lorg/hsqldb/RowAction;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=4, args_size=3
        start local 0 // org.hsqldb.Session session
        start local 1 // org.hsqldb.TableBase table
        start local 2 // org.hsqldb.Row row
         0: .line 60
            new org.hsqldb.RowAction
            dup
            aload 0 /* session */
            aload 1 /* table */
            iconst_1
            aload 2 /* row */
         1: .line 61
            aconst_null
         2: .line 60
            invokespecial org.hsqldb.RowAction.<init>:(Lorg/hsqldb/Session;Lorg/hsqldb/TableBase;BLorg/hsqldb/Row;[I)V
            astore 3 /* action */
        start local 3 // org.hsqldb.RowAction action
         3: .line 63
            aload 2 /* row */
            aload 3 /* action */
            putfield org.hsqldb.Row.rowAction:Lorg/hsqldb/RowAction;
         4: .line 65
            aload 3 /* action */
            areturn
        end local 3 // org.hsqldb.RowAction action
        end local 2 // org.hsqldb.Row row
        end local 1 // org.hsqldb.TableBase table
        end local 0 // org.hsqldb.Session session
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0  session  Lorg/hsqldb/Session;
            0    5     1    table  Lorg/hsqldb/TableBase;
            0    5     2      row  Lorg/hsqldb/Row;
            3    5     3   action  Lorg/hsqldb/RowAction;
    MethodParameters:
         Name  Flags
      session  
      table    
      row      

  public static org.hsqldb.RowAction addDeleteAction(org.hsqldb.Session, org.hsqldb.TableBase, org.hsqldb.Row, int[]);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/TableBase;Lorg/hsqldb/Row;[I)Lorg/hsqldb/RowAction;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=5, args_size=4
        start local 0 // org.hsqldb.Session session
        start local 1 // org.hsqldb.TableBase table
        start local 2 // org.hsqldb.Row row
        start local 3 // int[] colMap
         0: .line 71
            aload 2 /* row */
            getfield org.hsqldb.Row.rowAction:Lorg/hsqldb/RowAction;
            astore 4 /* action */
        start local 4 // org.hsqldb.RowAction action
         1: .line 73
            aload 4 /* action */
            ifnonnull 5
         2: .line 74
            new org.hsqldb.RowAction
            dup
            aload 0 /* session */
            aload 1 /* table */
            iconst_2
            aload 2 /* row */
            aload 3 /* colMap */
            invokespecial org.hsqldb.RowAction.<init>:(Lorg/hsqldb/Session;Lorg/hsqldb/TableBase;BLorg/hsqldb/Row;[I)V
            astore 4 /* action */
         3: .line 75
            aload 2 /* row */
            aload 4 /* action */
            putfield org.hsqldb.Row.rowAction:Lorg/hsqldb/RowAction;
         4: .line 77
            aload 4 /* action */
            areturn
         5: .line 80
      StackMap locals: org.hsqldb.RowAction
      StackMap stack:
            aload 4 /* action */
            aload 0 /* session */
            aload 3 /* colMap */
            invokevirtual org.hsqldb.RowAction.addDeleteAction:(Lorg/hsqldb/Session;[I)Lorg/hsqldb/RowAction;
            areturn
        end local 4 // org.hsqldb.RowAction action
        end local 3 // int[] colMap
        end local 2 // org.hsqldb.Row row
        end local 1 // org.hsqldb.TableBase table
        end local 0 // org.hsqldb.Session session
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0  session  Lorg/hsqldb/Session;
            0    6     1    table  Lorg/hsqldb/TableBase;
            0    6     2      row  Lorg/hsqldb/Row;
            0    6     3   colMap  [I
            1    6     4   action  Lorg/hsqldb/RowAction;
    MethodParameters:
         Name  Flags
      session  
      table    
      row      
      colMap   

  public static boolean addRefAction(org.hsqldb.Session, org.hsqldb.Row, int[]);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/Row;[I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=4, args_size=3
        start local 0 // org.hsqldb.Session session
        start local 1 // org.hsqldb.Row row
        start local 2 // int[] colMap
         0: .line 86
            aload 1 /* row */
            getfield org.hsqldb.Row.rowAction:Lorg/hsqldb/RowAction;
            astore 3 /* action */
        start local 3 // org.hsqldb.RowAction action
         1: .line 88
            aload 3 /* action */
            ifnonnull 7
         2: .line 89
            new org.hsqldb.RowAction
            dup
            aload 0 /* session */
            aload 1 /* row */
            invokevirtual org.hsqldb.Row.getTable:()Lorg/hsqldb/TableBase;
            iconst_5
            aload 1 /* row */
         3: .line 90
            aload 2 /* colMap */
         4: .line 89
            invokespecial org.hsqldb.RowAction.<init>:(Lorg/hsqldb/Session;Lorg/hsqldb/TableBase;BLorg/hsqldb/Row;[I)V
            astore 3 /* action */
         5: .line 91
            aload 1 /* row */
            aload 3 /* action */
            putfield org.hsqldb.Row.rowAction:Lorg/hsqldb/RowAction;
         6: .line 93
            iconst_1
            ireturn
         7: .line 96
      StackMap locals: org.hsqldb.RowAction
      StackMap stack:
            aload 3 /* action */
            aload 0 /* session */
            aload 2 /* colMap */
            invokevirtual org.hsqldb.RowAction.addRefAction:(Lorg/hsqldb/Session;[I)Z
            ireturn
        end local 3 // org.hsqldb.RowAction action
        end local 2 // int[] colMap
        end local 1 // org.hsqldb.Row row
        end local 0 // org.hsqldb.Session session
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0  session  Lorg/hsqldb/Session;
            0    8     1      row  Lorg/hsqldb/Row;
            0    8     2   colMap  [I
            1    8     3   action  Lorg/hsqldb/RowAction;
    MethodParameters:
         Name  Flags
      session  
      row      
      colMap   

  public void <init>(org.hsqldb.Session, org.hsqldb.TableBase, byte, org.hsqldb.Row, int[]);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/TableBase;BLorg/hsqldb/Row;[I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=6
        start local 0 // org.hsqldb.RowAction this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.TableBase table
        start local 3 // byte type
        start local 4 // org.hsqldb.Row row
        start local 5 // int[] colMap
         0: .line 99
            aload 0 /* this */
            invokespecial org.hsqldb.RowActionBase.<init>:()V
         1: .line 102
            aload 0 /* this */
            aload 1 /* session */
            putfield org.hsqldb.RowAction.session:Lorg/hsqldb/Session;
         2: .line 103
            aload 0 /* this */
            iload 3 /* type */
            putfield org.hsqldb.RowAction.type:B
         3: .line 104
            aload 0 /* this */
            aload 1 /* session */
            getfield org.hsqldb.Session.actionTimestamp:J
            putfield org.hsqldb.RowAction.actionTimestamp:J
         4: .line 105
            aload 0 /* this */
            aload 2 /* table */
            putfield org.hsqldb.RowAction.table:Lorg/hsqldb/TableBase;
         5: .line 106
            aload 0 /* this */
            aload 2 /* table */
            aload 1 /* session */
            invokevirtual org.hsqldb.TableBase.getRowStore:(Lorg/hsqldb/Session;)Lorg/hsqldb/persist/PersistentStore;
            putfield org.hsqldb.RowAction.store:Lorg/hsqldb/persist/PersistentStore;
         6: .line 107
            aload 0 /* this */
            aload 4 /* row */
            invokevirtual org.hsqldb.Row.isMemory:()Z
            putfield org.hsqldb.RowAction.isMemory:Z
         7: .line 108
            aload 0 /* this */
            aload 4 /* row */
            putfield org.hsqldb.RowAction.memoryRow:Lorg/hsqldb/Row;
         8: .line 109
            aload 0 /* this */
            aload 4 /* row */
            invokevirtual org.hsqldb.Row.getPos:()J
            putfield org.hsqldb.RowAction.rowId:J
         9: .line 110
            aload 0 /* this */
            aload 5 /* colMap */
            putfield org.hsqldb.RowAction.changeColumnMap:[I
        10: .line 111
            return
        end local 5 // int[] colMap
        end local 4 // org.hsqldb.Row row
        end local 3 // byte type
        end local 2 // org.hsqldb.TableBase table
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0     this  Lorg/hsqldb/RowAction;
            0   11     1  session  Lorg/hsqldb/Session;
            0   11     2    table  Lorg/hsqldb/TableBase;
            0   11     3     type  B
            0   11     4      row  Lorg/hsqldb/Row;
            0   11     5   colMap  [I
    MethodParameters:
         Name  Flags
      session  
      table    
      type     
      row      
      colMap   

  private void <init>(org.hsqldb.RowAction);
    descriptor: (Lorg/hsqldb/RowAction;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hsqldb.RowAction this
        start local 1 // org.hsqldb.RowAction other
         0: .line 113
            aload 0 /* this */
            invokespecial org.hsqldb.RowActionBase.<init>:()V
         1: .line 115
            aload 0 /* this */
            aload 1 /* other */
            getfield org.hsqldb.RowAction.session:Lorg/hsqldb/Session;
            putfield org.hsqldb.RowAction.session:Lorg/hsqldb/Session;
         2: .line 116
            aload 0 /* this */
            aload 1 /* other */
            getfield org.hsqldb.RowAction.type:B
            putfield org.hsqldb.RowAction.type:B
         3: .line 117
            aload 0 /* this */
            aload 1 /* other */
            getfield org.hsqldb.RowAction.actionTimestamp:J
            putfield org.hsqldb.RowAction.actionTimestamp:J
         4: .line 118
            aload 0 /* this */
            aload 1 /* other */
            getfield org.hsqldb.RowAction.table:Lorg/hsqldb/TableBase;
            putfield org.hsqldb.RowAction.table:Lorg/hsqldb/TableBase;
         5: .line 119
            aload 0 /* this */
            aload 1 /* other */
            getfield org.hsqldb.RowAction.store:Lorg/hsqldb/persist/PersistentStore;
            putfield org.hsqldb.RowAction.store:Lorg/hsqldb/persist/PersistentStore;
         6: .line 120
            aload 0 /* this */
            aload 1 /* other */
            getfield org.hsqldb.RowAction.isMemory:Z
            putfield org.hsqldb.RowAction.isMemory:Z
         7: .line 121
            aload 0 /* this */
            aload 1 /* other */
            getfield org.hsqldb.RowAction.memoryRow:Lorg/hsqldb/Row;
            putfield org.hsqldb.RowAction.memoryRow:Lorg/hsqldb/Row;
         8: .line 122
            aload 0 /* this */
            aload 1 /* other */
            getfield org.hsqldb.RowAction.rowId:J
            putfield org.hsqldb.RowAction.rowId:J
         9: .line 123
            aload 0 /* this */
            aload 1 /* other */
            getfield org.hsqldb.RowAction.changeColumnMap:[I
            putfield org.hsqldb.RowAction.changeColumnMap:[I
        10: .line 124
            return
        end local 1 // org.hsqldb.RowAction other
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   11     0   this  Lorg/hsqldb/RowAction;
            0   11     1  other  Lorg/hsqldb/RowAction;
    MethodParameters:
       Name  Flags
      other  

  public synchronized int getType();
    descriptor: ()I
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.RowAction this
         0: .line 127
            aload 0 /* this */
            getfield org.hsqldb.RowAction.type:B
            ireturn
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/RowAction;

  synchronized org.hsqldb.RowAction addDeleteAction(org.hsqldb.Session, int[]);
    descriptor: (Lorg/hsqldb/Session;[I)Lorg/hsqldb/RowAction;
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // org.hsqldb.RowAction this
        start local 1 // org.hsqldb.Session session
        start local 2 // int[] colMap
         0: .line 132
            aload 0 /* this */
            getfield org.hsqldb.RowAction.type:B
            ifne 4
         1: .line 133
            aload 0 /* this */
            aload 1 /* session */
            iconst_2
            invokevirtual org.hsqldb.RowAction.setAsAction:(Lorg/hsqldb/Session;B)V
         2: .line 135
            aload 0 /* this */
            aload 2 /* colMap */
            putfield org.hsqldb.RowAction.changeColumnMap:[I
         3: .line 136
            goto 42
         4: .line 137
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            astore 3 /* action */
        start local 3 // org.hsqldb.RowActionBase action
         5: .line 140
      StackMap locals: org.hsqldb.RowActionBase
      StackMap stack:
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.rolledback:Z
            ifeq 10
         6: .line 141
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            ifnonnull 8
         7: .line 142
            goto 37
         8: .line 145
      StackMap locals:
      StackMap stack:
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            astore 3 /* action */
         9: .line 147
            goto 5
        10: .line 150
      StackMap locals:
      StackMap stack:
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            tableswitch { // 1 - 5
                    1: 11
                    2: 16
                    3: 16
                    4: 32
                    5: 22
              default: 32
          }
        11: .line 153
      StackMap locals:
      StackMap stack:
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.commitTimestamp:J
            lconst_0
            lcmp
            ifne 32
        12: .line 154
            aload 1 /* session */
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.session:Lorg/hsqldb/Session;
            if_acmpeq 32
        13: .line 155
            sipush 201
        14: .line 156
            ldc "RowAction"
        15: .line 155
            invokestatic org.hsqldb.error.Error.runtimeError:(ILjava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        16: .line 163
      StackMap locals:
      StackMap stack:
            aload 1 /* session */
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.session:Lorg/hsqldb/Session;
            if_acmpeq 32
        17: .line 164
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.commitTimestamp:J
            lconst_0
            lcmp
            ifne 21
        18: .line 165
            aload 1 /* session */
            getfield org.hsqldb.Session.actionSet:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.isEmpty:()Z
            ifne 20
        19: .line 166
            aload 1 /* session */
            getfield org.hsqldb.Session.actionSet:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.clear:()V
        20: .line 169
      StackMap locals:
      StackMap stack:
            aload 1 /* session */
            getfield org.hsqldb.Session.actionSet:Lorg/hsqldb/lib/OrderedHashSet;
            aload 3 /* action */
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
        21: .line 172
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        22: .line 178
      StackMap locals:
      StackMap stack:
            aload 1 /* session */
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.session:Lorg/hsqldb/Session;
            if_acmpeq 32
        23: .line 179
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.commitTimestamp:J
            lconst_0
            lcmp
            ifne 32
        24: .line 180
            aload 2 /* colMap */
            ifnull 28
        25: .line 182
            aload 2 /* colMap */
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.changeColumnMap:[I
        26: .line 181
            invokestatic org.hsqldb.lib.ArrayUtil.haveCommonElement:([I[I)Z
        27: .line 182
            ifeq 32
        28: .line 183
      StackMap locals:
      StackMap stack:
            aload 1 /* session */
            getfield org.hsqldb.Session.actionSet:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.isEmpty:()Z
            ifne 30
        29: .line 184
            aload 1 /* session */
            getfield org.hsqldb.Session.actionSet:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.clear:()V
        30: .line 187
      StackMap locals:
      StackMap stack:
            aload 1 /* session */
            getfield org.hsqldb.Session.actionSet:Lorg/hsqldb/lib/OrderedHashSet;
            aload 3 /* action */
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
        31: .line 189
            aconst_null
            areturn
        32: .line 195
      StackMap locals:
      StackMap stack:
            aload 3 /* action */
        33: .line 197
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            ifnonnull 35
        34: .line 198
            goto 37
        35: .line 201
      StackMap locals:
      StackMap stack:
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            astore 3 /* action */
        36: .line 139
            goto 5
        37: .line 204
      StackMap locals:
      StackMap stack:
            new org.hsqldb.RowActionBase
            dup
            aload 1 /* session */
        38: .line 205
            iconst_2
        39: .line 204
            invokespecial org.hsqldb.RowActionBase.<init>:(Lorg/hsqldb/Session;B)V
            astore 4 /* newAction */
        start local 4 // org.hsqldb.RowActionBase newAction
        40: .line 207
            aload 4 /* newAction */
            aload 2 /* colMap */
            putfield org.hsqldb.RowActionBase.changeColumnMap:[I
        41: .line 208
            aload 3 /* action */
            aload 4 /* newAction */
            putfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
        end local 4 // org.hsqldb.RowActionBase newAction
        end local 3 // org.hsqldb.RowActionBase action
        42: .line 211
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 2 // int[] colMap
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   43     0       this  Lorg/hsqldb/RowAction;
            0   43     1    session  Lorg/hsqldb/Session;
            0   43     2     colMap  [I
            5   42     3     action  Lorg/hsqldb/RowActionBase;
           40   42     4  newAction  Lorg/hsqldb/RowActionBase;
    MethodParameters:
         Name  Flags
      session  
      colMap   

  synchronized boolean addRefAction(org.hsqldb.Session, int[]);
    descriptor: (Lorg/hsqldb/Session;[I)Z
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // org.hsqldb.RowAction this
        start local 1 // org.hsqldb.Session session
        start local 2 // int[] colMap
         0: .line 216
            aload 0 /* this */
            getfield org.hsqldb.RowAction.type:B
            ifne 4
         1: .line 217
            aload 0 /* this */
            aload 1 /* session */
            iconst_5
            invokevirtual org.hsqldb.RowAction.setAsAction:(Lorg/hsqldb/Session;B)V
         2: .line 219
            aload 0 /* this */
            aload 2 /* colMap */
            putfield org.hsqldb.RowAction.changeColumnMap:[I
         3: .line 221
            iconst_1
            ireturn
         4: .line 224
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            astore 3 /* action */
        start local 3 // org.hsqldb.RowActionBase action
         5: .line 227
      StackMap locals: org.hsqldb.RowActionBase
      StackMap stack:
            aload 1 /* session */
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.session:Lorg/hsqldb/Session;
            if_acmpne 13
         6: .line 228
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            iconst_5
            if_icmpne 10
         7: .line 229
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.changeColumnMap:[I
            aload 2 /* colMap */
            if_acmpne 10
         8: .line 230
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.commitTimestamp:J
            lconst_0
            lcmp
            ifne 10
         9: .line 231
            iconst_0
            ireturn
        10: .line 234
      StackMap locals:
      StackMap stack:
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            iconst_1
            if_icmpne 23
        11: .line 235
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.commitTimestamp:J
            lconst_0
            lcmp
            ifne 23
        12: .line 236
            iconst_0
            ireturn
        13: .line 240
      StackMap locals:
      StackMap stack:
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            iconst_2
            if_icmpne 23
        14: .line 241
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.commitTimestamp:J
            lconst_0
            lcmp
            ifne 23
        15: .line 242
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.changeColumnMap:[I
            ifnull 19
        16: .line 244
            aload 2 /* colMap */
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.changeColumnMap:[I
        17: .line 243
            invokestatic org.hsqldb.lib.ArrayUtil.haveCommonElement:([I[I)Z
        18: .line 244
            ifeq 23
        19: .line 245
      StackMap locals:
      StackMap stack:
            aload 1 /* session */
            getfield org.hsqldb.Session.actionSet:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.isEmpty:()Z
            ifne 21
        20: .line 246
            aload 1 /* session */
            getfield org.hsqldb.Session.actionSet:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.clear:()V
        21: .line 249
      StackMap locals:
      StackMap stack:
            aload 1 /* session */
            getfield org.hsqldb.Session.actionSet:Lorg/hsqldb/lib/OrderedHashSet;
            aload 3 /* action */
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
        22: .line 251
            iconst_0
            ireturn
        23: .line 256
      StackMap locals:
      StackMap stack:
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            ifnonnull 25
        24: .line 257
            goto 27
        25: .line 260
      StackMap locals:
      StackMap stack:
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            astore 3 /* action */
        26: .line 261
            goto 5
        27: .line 263
      StackMap locals:
      StackMap stack:
            new org.hsqldb.RowActionBase
            dup
            aload 1 /* session */
            iconst_5
            invokespecial org.hsqldb.RowActionBase.<init>:(Lorg/hsqldb/Session;B)V
            astore 4 /* newAction */
        start local 4 // org.hsqldb.RowActionBase newAction
        28: .line 265
            aload 4 /* newAction */
            aload 2 /* colMap */
            putfield org.hsqldb.RowActionBase.changeColumnMap:[I
        29: .line 266
            aload 3 /* action */
            aload 4 /* newAction */
            putfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
        30: .line 268
            iconst_1
            ireturn
        end local 4 // org.hsqldb.RowActionBase newAction
        end local 3 // org.hsqldb.RowActionBase action
        end local 2 // int[] colMap
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   31     0       this  Lorg/hsqldb/RowAction;
            0   31     1    session  Lorg/hsqldb/Session;
            0   31     2     colMap  [I
            5   31     3     action  Lorg/hsqldb/RowActionBase;
           28   31     4  newAction  Lorg/hsqldb/RowActionBase;
    MethodParameters:
         Name  Flags
      session  
      colMap   

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

  public synchronized org.hsqldb.RowAction duplicate(org.hsqldb.Row);
    descriptor: (Lorg/hsqldb/Row;)Lorg/hsqldb/RowAction;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=7, locals=3, args_size=2
        start local 0 // org.hsqldb.RowAction this
        start local 1 // org.hsqldb.Row newRow
         0: .line 277
            new org.hsqldb.RowAction
            dup
            aload 0 /* this */
            getfield org.hsqldb.RowAction.session:Lorg/hsqldb/Session;
            aload 0 /* this */
            getfield org.hsqldb.RowAction.table:Lorg/hsqldb/TableBase;
            aload 0 /* this */
            getfield org.hsqldb.RowAction.type:B
            aload 1 /* newRow */
         1: .line 278
            aload 0 /* this */
            getfield org.hsqldb.RowAction.changeColumnMap:[I
         2: .line 277
            invokespecial org.hsqldb.RowAction.<init>:(Lorg/hsqldb/Session;Lorg/hsqldb/TableBase;BLorg/hsqldb/Row;[I)V
            astore 2 /* action */
        start local 2 // org.hsqldb.RowAction action
         3: .line 280
            aload 2 /* action */
            areturn
        end local 2 // org.hsqldb.RowAction action
        end local 1 // org.hsqldb.Row newRow
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/hsqldb/RowAction;
            0    4     1  newRow  Lorg/hsqldb/Row;
            3    4     2  action  Lorg/hsqldb/RowAction;
    MethodParameters:
        Name  Flags
      newRow  

  synchronized void setAsAction(org.hsqldb.Session, byte);
    descriptor: (Lorg/hsqldb/Session;B)V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.hsqldb.RowAction this
        start local 1 // org.hsqldb.Session session
        start local 2 // byte type
         0: .line 285
            aload 0 /* this */
            aload 1 /* session */
            putfield org.hsqldb.RowAction.session:Lorg/hsqldb/Session;
         1: .line 286
            aload 0 /* this */
            iload 2 /* type */
            putfield org.hsqldb.RowAction.type:B
         2: .line 287
            aload 0 /* this */
            aload 1 /* session */
            getfield org.hsqldb.Session.actionTimestamp:J
            putfield org.hsqldb.RowAction.actionTimestamp:J
         3: .line 288
            aload 0 /* this */
            aconst_null
            putfield org.hsqldb.RowAction.changeColumnMap:[I
         4: .line 289
            return
        end local 2 // byte type
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/hsqldb/RowAction;
            0    5     1  session  Lorg/hsqldb/Session;
            0    5     2     type  B
    MethodParameters:
         Name  Flags
      session  
      type     

  synchronized void setAsAction(org.hsqldb.RowActionBase);
    descriptor: (Lorg/hsqldb/RowActionBase;)V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.RowAction this
        start local 1 // org.hsqldb.RowActionBase action
         0: .line 292
            aload 0 /* this */
            aload 1 /* action */
            invokespecial org.hsqldb.RowActionBase.setAsAction:(Lorg/hsqldb/RowActionBase;)V
         1: .line 293
            return
        end local 1 // org.hsqldb.RowActionBase action
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/hsqldb/RowAction;
            0    2     1  action  Lorg/hsqldb/RowActionBase;
    MethodParameters:
        Name  Flags
      action  

  public void setAsNoOp();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.hsqldb.RowAction this
         0: .line 298
            aload 0 /* this */
            aconst_null
            putfield org.hsqldb.RowAction.session:Lorg/hsqldb/Session;
         1: .line 299
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.RowAction.type:B
         2: .line 300
            aload 0 /* this */
            lconst_0
            putfield org.hsqldb.RowAction.actionTimestamp:J
         3: .line 301
            aload 0 /* this */
            lconst_0
            putfield org.hsqldb.RowAction.commitTimestamp:J
         4: .line 302
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.RowAction.rolledback:Z
         5: .line 303
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.RowAction.deleteComplete:Z
         6: .line 304
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.RowAction.prepared:Z
         7: .line 305
            aload 0 /* this */
            aconst_null
            putfield org.hsqldb.RowAction.changeColumnMap:[I
         8: .line 306
            aload 0 /* this */
            aconst_null
            putfield org.hsqldb.RowAction.next:Lorg/hsqldb/RowActionBase;
         9: .line 307
            return
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/hsqldb/RowAction;

  private void setAsDeleteFinal(long);
    descriptor: (J)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.hsqldb.RowAction this
        start local 1 // long timestamp
         0: .line 311
            aload 0 /* this */
            iconst_3
            putfield org.hsqldb.RowAction.type:B
         1: .line 312
            aload 0 /* this */
            lconst_0
            putfield org.hsqldb.RowAction.actionTimestamp:J
         2: .line 313
            aload 0 /* this */
            lload 1 /* timestamp */
            putfield org.hsqldb.RowAction.commitTimestamp:J
         3: .line 314
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.RowAction.rolledback:Z
         4: .line 315
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.RowAction.deleteComplete:Z
         5: .line 316
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.RowAction.prepared:Z
         6: .line 317
            aload 0 /* this */
            aconst_null
            putfield org.hsqldb.RowAction.changeColumnMap:[I
         7: .line 318
            aload 0 /* this */
            aconst_null
            putfield org.hsqldb.RowAction.next:Lorg/hsqldb/RowActionBase;
         8: .line 319
            return
        end local 1 // long timestamp
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0       this  Lorg/hsqldb/RowAction;
            0    9     1  timestamp  J
    MethodParameters:
           Name  Flags
      timestamp  

  synchronized void prepareCommit(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.hsqldb.RowAction this
        start local 1 // org.hsqldb.Session session
         0: .line 324
            aload 0 /* this */
            astore 2 /* action */
        start local 2 // org.hsqldb.RowActionBase action
         1: .line 327
      StackMap locals: org.hsqldb.RowActionBase
      StackMap stack:
            aload 2 /* action */
            getfield org.hsqldb.RowActionBase.session:Lorg/hsqldb/Session;
            aload 1 /* session */
            if_acmpne 3
            aload 2 /* action */
            getfield org.hsqldb.RowActionBase.commitTimestamp:J
            lconst_0
            lcmp
            ifne 3
         2: .line 328
            aload 2 /* action */
            iconst_1
            putfield org.hsqldb.RowActionBase.prepared:Z
         3: .line 331
      StackMap locals:
      StackMap stack:
            aload 2 /* action */
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            astore 2 /* action */
         4: .line 332
            aload 2 /* action */
            ifnonnull 1
         5: .line 333
            return
        end local 2 // org.hsqldb.RowActionBase action
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/hsqldb/RowAction;
            0    6     1  session  Lorg/hsqldb/Session;
            1    6     2   action  Lorg/hsqldb/RowActionBase;
    MethodParameters:
         Name  Flags
      session  

  synchronized int commit(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)I
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.hsqldb.RowAction this
        start local 1 // org.hsqldb.Session session
         0: .line 337
            aload 0 /* this */
            astore 2 /* action */
        start local 2 // org.hsqldb.RowActionBase action
         1: .line 338
            iconst_0
            istore 3 /* actiontype */
        start local 3 // int actiontype
         2: .line 341
      StackMap locals: org.hsqldb.RowActionBase int
      StackMap stack:
            aload 2 /* action */
            getfield org.hsqldb.RowActionBase.session:Lorg/hsqldb/Session;
            aload 1 /* session */
            if_acmpne 13
            aload 2 /* action */
            getfield org.hsqldb.RowActionBase.commitTimestamp:J
            lconst_0
            lcmp
            ifne 13
         3: .line 342
            aload 2 /* action */
            aload 1 /* session */
            getfield org.hsqldb.Session.actionTimestamp:J
            putfield org.hsqldb.RowActionBase.commitTimestamp:J
         4: .line 343
            aload 2 /* action */
            iconst_0
            putfield org.hsqldb.RowActionBase.prepared:Z
         5: .line 345
            aload 2 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            iconst_1
            if_icmpne 8
         6: .line 346
            aload 2 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            istore 3 /* actiontype */
         7: .line 347
            goto 13
      StackMap locals:
      StackMap stack:
         8: aload 2 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            iconst_2
            if_icmpne 13
         9: .line 348
            iload 3 /* actiontype */
            iconst_1
            if_icmpne 12
        10: .line 351
            iconst_4
            istore 3 /* actiontype */
        11: .line 352
            goto 13
        12: .line 353
      StackMap locals:
      StackMap stack:
            aload 2 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            istore 3 /* actiontype */
        13: .line 358
      StackMap locals:
      StackMap stack:
            aload 2 /* action */
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            astore 2 /* action */
        14: .line 359
            aload 2 /* action */
            ifnonnull 2
        15: .line 361
            iload 3 /* actiontype */
            ireturn
        end local 3 // int actiontype
        end local 2 // org.hsqldb.RowActionBase action
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   16     0        this  Lorg/hsqldb/RowAction;
            0   16     1     session  Lorg/hsqldb/Session;
            1   16     2      action  Lorg/hsqldb/RowActionBase;
            2   16     3  actiontype  I
    MethodParameters:
         Name  Flags
      session  

  public boolean isDeleted();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.hsqldb.RowAction this
         0: .line 366
            aload 0 /* this */
            astore 1 /* action */
        start local 1 // org.hsqldb.RowActionBase action
         1: .line 369
      StackMap locals: org.hsqldb.RowActionBase
      StackMap stack:
            aload 1 /* action */
            getfield org.hsqldb.RowActionBase.commitTimestamp:J
            lconst_0
            lcmp
            ifeq 5
         2: .line 370
            aload 1 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            iconst_2
            if_icmpeq 4
         3: .line 371
            aload 1 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            iconst_3
            if_icmpne 5
         4: .line 372
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         5: .line 376
      StackMap locals:
      StackMap stack:
            aload 1 /* action */
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            astore 1 /* action */
         6: .line 377
            aload 1 /* action */
            ifnonnull 1
         7: .line 379
            iconst_0
            ireturn
        end local 1 // org.hsqldb.RowActionBase action
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lorg/hsqldb/RowAction;
            1    8     1  action  Lorg/hsqldb/RowActionBase;

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

  public void setDeleteComplete();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.hsqldb.RowAction this
         0: .line 387
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.RowAction.deleteComplete:Z
         1: .line 388
            return
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/hsqldb/RowAction;

  synchronized int getCommitTypeOn(long);
    descriptor: (J)I
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // org.hsqldb.RowAction this
        start local 1 // long timestamp
         0: .line 396
            aload 0 /* this */
            astore 3 /* action */
        start local 3 // org.hsqldb.RowActionBase action
         1: .line 397
            iconst_0
            istore 4 /* actionType */
        start local 4 // int actionType
         2: .line 400
      StackMap locals: org.hsqldb.RowActionBase int
      StackMap stack:
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.commitTimestamp:J
            lload 1 /* timestamp */
            lcmp
            ifne 11
         3: .line 401
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            iconst_1
            if_icmpne 6
         4: .line 402
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            istore 4 /* actionType */
         5: .line 403
            goto 11
      StackMap locals:
      StackMap stack:
         6: aload 3 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            iconst_2
            if_icmpne 11
         7: .line 404
            iload 4 /* actionType */
            iconst_1
            if_icmpne 10
         8: .line 407
            iconst_4
            istore 4 /* actionType */
         9: .line 408
            goto 11
        10: .line 409
      StackMap locals:
      StackMap stack:
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            istore 4 /* actionType */
        11: .line 414
      StackMap locals:
      StackMap stack:
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            astore 3 /* action */
        12: .line 415
            aload 3 /* action */
            ifnonnull 2
        13: .line 417
            iload 4 /* actionType */
            ireturn
        end local 4 // int actionType
        end local 3 // org.hsqldb.RowActionBase action
        end local 1 // long timestamp
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   14     0        this  Lorg/hsqldb/RowAction;
            0   14     1   timestamp  J
            1   14     3      action  Lorg/hsqldb/RowActionBase;
            2   14     4  actionType  I
    MethodParameters:
           Name  Flags
      timestamp  

  synchronized boolean canCommit(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)Z
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=4, locals=9, args_size=2
        start local 0 // org.hsqldb.RowAction this
        start local 1 // org.hsqldb.Session session
         0: .line 426
            aload 1 /* session */
            getfield org.hsqldb.Session.transactionTimestamp:J
            lstore 3 /* timestamp */
        start local 3 // long timestamp
         1: .line 427
            lconst_0
            lstore 5 /* commitTimestamp */
        start local 5 // long commitTimestamp
         2: .line 428
            aload 1 /* session */
            getfield org.hsqldb.Session.isolationLevel:I
         3: .line 429
            iconst_2
         4: .line 428
            if_icmpne 5
            iconst_1
            goto 6
      StackMap locals: org.hsqldb.RowAction org.hsqldb.Session top long long
      StackMap stack:
         5: iconst_0
      StackMap locals:
      StackMap stack: int
         6: istore 7 /* readCommitted */
        start local 7 // boolean readCommitted
         7: .line 430
            iconst_0
            istore 8 /* hasDelete */
        start local 8 // boolean hasDelete
         8: .line 432
            aload 0 /* this */
            astore 2 /* action */
        start local 2 // org.hsqldb.RowActionBase action
         9: .line 434
            iload 7 /* readCommitted */
            ifeq 17
        10: .line 436
      StackMap locals: org.hsqldb.RowAction org.hsqldb.Session org.hsqldb.RowActionBase long long int int
      StackMap stack:
            aload 2 /* action */
            getfield org.hsqldb.RowActionBase.session:Lorg/hsqldb/Session;
            aload 1 /* session */
            if_acmpne 14
        11: .line 437
            aload 2 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            iconst_2
            if_icmpne 14
        12: .line 440
            aload 2 /* action */
            getfield org.hsqldb.RowActionBase.commitTimestamp:J
            lconst_0
            lcmp
            ifne 14
        13: .line 441
            aload 2 /* action */
            getfield org.hsqldb.RowActionBase.actionTimestamp:J
            lstore 3 /* timestamp */
        14: .line 445
      StackMap locals:
      StackMap stack:
            aload 2 /* action */
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            astore 2 /* action */
        15: .line 446
            aload 2 /* action */
            ifnonnull 10
        16: .line 448
            aload 0 /* this */
            astore 2 /* action */
        17: .line 452
      StackMap locals:
      StackMap stack:
            aload 2 /* action */
            getfield org.hsqldb.RowActionBase.session:Lorg/hsqldb/Session;
            aload 1 /* session */
            if_acmpne 21
        18: .line 453
            aload 2 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            iconst_2
            if_icmpne 31
        19: .line 454
            iconst_1
            istore 8 /* hasDelete */
        20: .line 456
            goto 31
        21: .line 457
      StackMap locals:
      StackMap stack:
            aload 2 /* action */
            getfield org.hsqldb.RowActionBase.rolledback:Z
            ifne 22
            aload 2 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            iconst_2
            if_icmpeq 24
        22: .line 458
      StackMap locals:
      StackMap stack:
            aload 2 /* action */
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            astore 2 /* action */
        23: .line 460
            goto 32
        24: .line 463
      StackMap locals:
      StackMap stack:
            aload 2 /* action */
            getfield org.hsqldb.RowActionBase.prepared:Z
            ifeq 26
        25: .line 464
            iconst_0
            ireturn
        26: .line 467
      StackMap locals:
      StackMap stack:
            aload 2 /* action */
            getfield org.hsqldb.RowActionBase.commitTimestamp:J
            lconst_0
            lcmp
            ifne 29
        27: .line 468
            aload 1 /* session */
            getfield org.hsqldb.Session.actionSet:Lorg/hsqldb/lib/OrderedHashSet;
            aload 2 /* action */
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
        28: .line 469
            goto 31
      StackMap locals:
      StackMap stack:
        29: aload 2 /* action */
            getfield org.hsqldb.RowActionBase.commitTimestamp:J
            lload 5 /* commitTimestamp */
            lcmp
            ifle 31
        30: .line 470
            aload 2 /* action */
            getfield org.hsqldb.RowActionBase.commitTimestamp:J
            lstore 5 /* commitTimestamp */
        31: .line 474
      StackMap locals:
      StackMap stack:
            aload 2 /* action */
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            astore 2 /* action */
        32: .line 475
      StackMap locals:
      StackMap stack:
            aload 2 /* action */
            ifnonnull 17
        33: .line 477
            iload 8 /* hasDelete */
            ifne 35
        34: .line 478
            iconst_1
            ireturn
        35: .line 481
      StackMap locals:
      StackMap stack:
            lload 5 /* commitTimestamp */
            lload 3 /* timestamp */
            lcmp
            ifge 36
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        36: iconst_0
            ireturn
        end local 8 // boolean hasDelete
        end local 7 // boolean readCommitted
        end local 5 // long commitTimestamp
        end local 3 // long timestamp
        end local 2 // org.hsqldb.RowActionBase action
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   37     0             this  Lorg/hsqldb/RowAction;
            0   37     1          session  Lorg/hsqldb/Session;
            9   37     2           action  Lorg/hsqldb/RowActionBase;
            1   37     3        timestamp  J
            2   37     5  commitTimestamp  J
            7   37     7    readCommitted  Z
            8   37     8        hasDelete  Z
    MethodParameters:
         Name  Flags
      session  

  synchronized boolean complete(org.hsqldb.Session, org.hsqldb.lib.OrderedHashSet);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/lib/OrderedHashSet;)Z
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // org.hsqldb.RowAction this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.lib.OrderedHashSet set
         0: .line 492
            aload 1 /* session */
            getfield org.hsqldb.Session.isolationLevel:I
         1: .line 493
            iconst_2
         2: .line 492
            if_icmpne 3
            iconst_1
            goto 4
      StackMap locals:
      StackMap stack:
         3: iconst_0
      StackMap locals:
      StackMap stack: int
         4: istore 4 /* readCommitted */
        start local 4 // boolean readCommitted
         5: .line 494
            iconst_1
            istore 5 /* result */
        start local 5 // boolean result
         6: .line 496
            aload 0 /* this */
            astore 3 /* action */
        start local 3 // org.hsqldb.RowActionBase action
         7: .line 499
      StackMap locals: org.hsqldb.RowActionBase int int
      StackMap stack:
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.rolledback:Z
            ifne 8
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            ifne 10
         8: .line 500
      StackMap locals:
      StackMap stack:
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            astore 3 /* action */
         9: .line 502
            goto 27
        10: .line 505
      StackMap locals:
      StackMap stack:
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.session:Lorg/hsqldb/Session;
            aload 1 /* session */
            if_acmpeq 26
        11: .line 509
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.prepared:Z
            ifeq 14
        12: .line 510
            aload 2 /* set */
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.session:Lorg/hsqldb/Session;
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
        13: .line 512
            iconst_0
            ireturn
        14: .line 515
      StackMap locals:
      StackMap stack:
            iload 4 /* readCommitted */
            ifeq 23
        15: .line 516
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.commitTimestamp:J
            aload 1 /* session */
            getfield org.hsqldb.Session.actionTimestamp:J
            lcmp
            ifle 19
        16: .line 522
            aload 2 /* set */
            aload 1 /* session */
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
        17: .line 524
            iconst_0
            istore 5 /* result */
        18: .line 525
            goto 26
      StackMap locals:
      StackMap stack:
        19: aload 3 /* action */
            getfield org.hsqldb.RowActionBase.commitTimestamp:J
            lconst_0
            lcmp
            ifne 26
        20: .line 526
            aload 2 /* set */
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.session:Lorg/hsqldb/Session;
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
        21: .line 528
            iconst_0
            istore 5 /* result */
        22: .line 530
            goto 26
      StackMap locals:
      StackMap stack:
        23: aload 3 /* action */
            getfield org.hsqldb.RowActionBase.commitTimestamp:J
        24: .line 531
            aload 1 /* session */
            getfield org.hsqldb.Session.transactionTimestamp:J
            lcmp
            ifle 26
        25: .line 532
            iconst_0
            ireturn
        26: .line 536
      StackMap locals:
      StackMap stack:
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            astore 3 /* action */
        27: .line 537
      StackMap locals:
      StackMap stack:
            aload 3 /* action */
            ifnonnull 7
        28: .line 539
            iload 5 /* result */
            ireturn
        end local 5 // boolean result
        end local 4 // boolean readCommitted
        end local 3 // org.hsqldb.RowActionBase action
        end local 2 // org.hsqldb.lib.OrderedHashSet set
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   29     0           this  Lorg/hsqldb/RowAction;
            0   29     1        session  Lorg/hsqldb/Session;
            0   29     2            set  Lorg/hsqldb/lib/OrderedHashSet;
            7   29     3         action  Lorg/hsqldb/RowActionBase;
            5   29     4  readCommitted  Z
            6   29     5         result  Z
    MethodParameters:
         Name  Flags
      session  
      set      

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

  public org.hsqldb.Row getRow();
    descriptor: ()Lorg/hsqldb/Row;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.RowAction this
         0: .line 547
            aload 0 /* this */
            getfield org.hsqldb.RowAction.memoryRow:Lorg/hsqldb/Row;
            areturn
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/RowAction;

  private int getRollbackType(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.hsqldb.RowAction this
        start local 1 // org.hsqldb.Session session
         0: .line 552
            iconst_0
            istore 2 /* actionType */
        start local 2 // int actionType
         1: .line 553
            aload 0 /* this */
            astore 3 /* action */
        start local 3 // org.hsqldb.RowActionBase action
         2: .line 556
      StackMap locals: int org.hsqldb.RowActionBase
      StackMap stack:
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.session:Lorg/hsqldb/Session;
            aload 1 /* session */
            if_acmpne 11
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.rolledback:Z
            ifeq 11
         3: .line 557
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            iconst_2
            if_icmpne 9
         4: .line 558
            iload 2 /* actionType */
            iconst_1
            if_icmpne 7
         5: .line 559
            iconst_4
            istore 2 /* actionType */
         6: .line 560
            goto 11
         7: .line 561
      StackMap locals:
      StackMap stack:
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            istore 2 /* actionType */
         8: .line 563
            goto 11
      StackMap locals:
      StackMap stack:
         9: aload 3 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            iconst_1
            if_icmpne 11
        10: .line 564
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            istore 2 /* actionType */
        11: .line 568
      StackMap locals:
      StackMap stack:
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            astore 3 /* action */
        12: .line 569
            aload 3 /* action */
            ifnonnull 2
        13: .line 571
            iload 2 /* actionType */
            ireturn
        end local 3 // org.hsqldb.RowActionBase action
        end local 2 // int actionType
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   14     0        this  Lorg/hsqldb/RowAction;
            0   14     1     session  Lorg/hsqldb/Session;
            1   14     2  actionType  I
            2   14     3      action  Lorg/hsqldb/RowActionBase;
    MethodParameters:
         Name  Flags
      session  

  synchronized void rollback(org.hsqldb.Session, long);
    descriptor: (Lorg/hsqldb/Session;J)V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // org.hsqldb.RowAction this
        start local 1 // org.hsqldb.Session session
        start local 2 // long timestamp
         0: .line 579
            aload 0 /* this */
            astore 4 /* action */
        start local 4 // org.hsqldb.RowActionBase action
         1: .line 582
      StackMap locals: org.hsqldb.RowActionBase
      StackMap stack:
            aload 4 /* action */
            getfield org.hsqldb.RowActionBase.session:Lorg/hsqldb/Session;
            aload 1 /* session */
            if_acmpne 6
            aload 4 /* action */
            getfield org.hsqldb.RowActionBase.commitTimestamp:J
            lconst_0
            lcmp
            ifne 6
         2: .line 583
            aload 4 /* action */
            getfield org.hsqldb.RowActionBase.actionTimestamp:J
            lload 2 /* timestamp */
            lcmp
            iflt 6
         3: .line 584
            aload 4 /* action */
            aload 1 /* session */
            getfield org.hsqldb.Session.actionTimestamp:J
            putfield org.hsqldb.RowActionBase.commitTimestamp:J
         4: .line 585
            aload 4 /* action */
            iconst_1
            putfield org.hsqldb.RowActionBase.rolledback:Z
         5: .line 586
            aload 4 /* action */
            iconst_0
            putfield org.hsqldb.RowActionBase.prepared:Z
         6: .line 590
      StackMap locals:
      StackMap stack:
            aload 4 /* action */
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            astore 4 /* action */
         7: .line 591
            aload 4 /* action */
            ifnonnull 1
         8: .line 592
            return
        end local 4 // org.hsqldb.RowActionBase action
        end local 2 // long timestamp
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0       this  Lorg/hsqldb/RowAction;
            0    9     1    session  Lorg/hsqldb/Session;
            0    9     2  timestamp  J
            1    9     4     action  Lorg/hsqldb/RowActionBase;
    MethodParameters:
           Name  Flags
      session    
      timestamp  

  synchronized int mergeRollback(org.hsqldb.Session, long, org.hsqldb.Row);
    descriptor: (Lorg/hsqldb/Session;JLorg/hsqldb/Row;)I
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=3, locals=9, args_size=4
        start local 0 // org.hsqldb.RowAction this
        start local 1 // org.hsqldb.Session session
        start local 2 // long timestamp
        start local 4 // org.hsqldb.Row row
         0: .line 599
            aload 0 /* this */
            astore 5 /* action */
        start local 5 // org.hsqldb.RowActionBase action
         1: .line 600
            aconst_null
            astore 6 /* head */
        start local 6 // org.hsqldb.RowActionBase head
         2: .line 601
            aconst_null
            astore 7 /* tail */
        start local 7 // org.hsqldb.RowActionBase tail
         3: .line 602
            aload 0 /* this */
            aload 1 /* session */
            invokevirtual org.hsqldb.RowAction.getRollbackType:(Lorg/hsqldb/Session;)I
            istore 8 /* rollbackAction */
        start local 8 // int rollbackAction
         4: .line 605
      StackMap locals: org.hsqldb.RowAction org.hsqldb.Session long org.hsqldb.Row org.hsqldb.RowActionBase org.hsqldb.RowActionBase org.hsqldb.RowActionBase int
      StackMap stack:
            aload 5 /* action */
            getfield org.hsqldb.RowActionBase.session:Lorg/hsqldb/Session;
            aload 1 /* session */
            if_acmpne 8
            aload 5 /* action */
            getfield org.hsqldb.RowActionBase.rolledback:Z
            ifeq 8
         5: .line 606
            aload 7 /* tail */
            ifnull 13
         6: .line 607
            aload 7 /* tail */
            aconst_null
            putfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
         7: .line 609
            goto 13
         8: .line 610
      StackMap locals:
      StackMap stack:
            aload 6 /* head */
            ifnonnull 11
         9: .line 611
            aload 5 /* action */
            dup
            astore 7 /* tail */
            astore 6 /* head */
        10: .line 612
            goto 13
        11: .line 613
      StackMap locals:
      StackMap stack:
            aload 7 /* tail */
            aload 5 /* action */
            putfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
        12: .line 614
            aload 5 /* action */
            astore 7 /* tail */
        13: .line 618
      StackMap locals:
      StackMap stack:
            aload 5 /* action */
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            astore 5 /* action */
        14: .line 619
            aload 5 /* action */
            ifnonnull 4
        15: .line 621
            aload 6 /* head */
            ifnonnull 21
        16: .line 622
            iload 8 /* rollbackAction */
            tableswitch { // 0 - 4
                    0: 19
                    1: 17
                    2: 19
                    3: 19
                    4: 17
              default: 19
          }
        17: .line 626
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 2 /* timestamp */
            invokevirtual org.hsqldb.RowAction.setAsDeleteFinal:(J)V
        18: .line 627
            goto 23
        19: .line 632
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hsqldb.RowAction.setAsNoOp:()V
        20: .line 635
            goto 23
        21: .line 636
      StackMap locals:
      StackMap stack:
            aload 6 /* head */
            aload 0 /* this */
            if_acmpeq 23
        22: .line 637
            aload 0 /* this */
            aload 6 /* head */
            invokevirtual org.hsqldb.RowAction.setAsAction:(Lorg/hsqldb/RowActionBase;)V
        23: .line 641
      StackMap locals:
      StackMap stack:
            iload 8 /* rollbackAction */
            ireturn
        end local 8 // int rollbackAction
        end local 7 // org.hsqldb.RowActionBase tail
        end local 6 // org.hsqldb.RowActionBase head
        end local 5 // org.hsqldb.RowActionBase action
        end local 4 // org.hsqldb.Row row
        end local 2 // long timestamp
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   24     0            this  Lorg/hsqldb/RowAction;
            0   24     1         session  Lorg/hsqldb/Session;
            0   24     2       timestamp  J
            0   24     4             row  Lorg/hsqldb/Row;
            1   24     5          action  Lorg/hsqldb/RowActionBase;
            2   24     6            head  Lorg/hsqldb/RowActionBase;
            3   24     7            tail  Lorg/hsqldb/RowActionBase;
            4   24     8  rollbackAction  I
    MethodParameters:
           Name  Flags
      session    
      timestamp  
      row        

  synchronized void mergeToTimestamp(long);
    descriptor: (J)V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=4, locals=8, args_size=2
        start local 0 // org.hsqldb.RowAction this
        start local 1 // long timestamp
         0: .line 652
            aload 0 /* this */
            astore 3 /* action */
        start local 3 // org.hsqldb.RowActionBase action
         1: .line 653
            aconst_null
            astore 4 /* head */
        start local 4 // org.hsqldb.RowActionBase head
         2: .line 654
            aconst_null
            astore 5 /* tail */
        start local 5 // org.hsqldb.RowActionBase tail
         3: .line 655
            aload 0 /* this */
            lload 1 /* timestamp */
            invokevirtual org.hsqldb.RowAction.getCommitTypeOn:(J)I
            istore 6 /* commitType */
        start local 6 // int commitType
         4: .line 657
            aload 0 /* this */
            getfield org.hsqldb.RowAction.type:B
            iconst_3
            if_icmpeq 5
            aload 0 /* this */
            getfield org.hsqldb.RowAction.type:B
            ifne 6
         5: .line 658
      StackMap locals: org.hsqldb.RowAction long org.hsqldb.RowActionBase org.hsqldb.RowActionBase org.hsqldb.RowActionBase int
      StackMap stack:
            return
         6: .line 661
      StackMap locals:
      StackMap stack:
            iload 6 /* commitType */
            iconst_2
            if_icmpeq 8
         7: .line 662
            iload 6 /* commitType */
            iconst_4
            if_icmpne 10
         8: .line 663
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 1 /* timestamp */
            invokevirtual org.hsqldb.RowAction.setAsDeleteFinal:(J)V
         9: .line 665
            return
        10: .line 669
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 7 /* expired */
        start local 7 // boolean expired
        11: .line 671
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.commitTimestamp:J
            lconst_0
            lcmp
            ifeq 17
        12: .line 672
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.commitTimestamp:J
            lload 1 /* timestamp */
            lcmp
            ifgt 15
        13: .line 673
            iconst_1
            istore 7 /* expired */
        14: .line 674
            goto 17
      StackMap locals: int
      StackMap stack:
        15: aload 3 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            iconst_5
            if_icmpne 17
        16: .line 675
            iconst_1
            istore 7 /* expired */
        17: .line 679
      StackMap locals:
      StackMap stack:
            iload 7 /* expired */
            ifeq 21
        18: .line 680
            aload 5 /* tail */
            ifnull 26
        19: .line 681
            aload 5 /* tail */
            aconst_null
            putfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
        20: .line 683
            goto 26
        21: .line 684
      StackMap locals:
      StackMap stack:
            aload 4 /* head */
            ifnonnull 24
        22: .line 685
            aload 3 /* action */
            dup
            astore 5 /* tail */
            astore 4 /* head */
        23: .line 686
            goto 26
        24: .line 687
      StackMap locals:
      StackMap stack:
            aload 5 /* tail */
            aload 3 /* action */
            putfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
        25: .line 688
            aload 3 /* action */
            astore 5 /* tail */
        26: .line 692
      StackMap locals:
      StackMap stack:
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            astore 3 /* action */
        end local 7 // boolean expired
        27: .line 693
            aload 3 /* action */
            ifnonnull 10
        28: .line 695
            aload 4 /* head */
            ifnonnull 34
        29: .line 696
            iload 6 /* commitType */
            tableswitch { // 0 - 4
                    0: 32
                    1: 32
                    2: 30
                    3: 32
                    4: 30
              default: 32
          }
        30: .line 700
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 1 /* timestamp */
            invokevirtual org.hsqldb.RowAction.setAsDeleteFinal:(J)V
        31: .line 701
            goto 36
        32: .line 706
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hsqldb.RowAction.setAsNoOp:()V
        33: .line 709
            goto 36
      StackMap locals:
      StackMap stack:
        34: aload 4 /* head */
            aload 0 /* this */
            if_acmpeq 36
        35: .line 710
            aload 0 /* this */
            aload 4 /* head */
            invokevirtual org.hsqldb.RowAction.setAsAction:(Lorg/hsqldb/RowActionBase;)V
        36: .line 713
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hsqldb.RowAction.mergeExpiredRefActions:()Lorg/hsqldb/RowAction;
            pop
        37: .line 714
            return
        end local 6 // int commitType
        end local 5 // org.hsqldb.RowActionBase tail
        end local 4 // org.hsqldb.RowActionBase head
        end local 3 // org.hsqldb.RowActionBase action
        end local 1 // long timestamp
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   38     0        this  Lorg/hsqldb/RowAction;
            0   38     1   timestamp  J
            1   38     3      action  Lorg/hsqldb/RowActionBase;
            2   38     4        head  Lorg/hsqldb/RowActionBase;
            3   38     5        tail  Lorg/hsqldb/RowActionBase;
            4   38     6  commitType  I
           11   27     7     expired  Z
    MethodParameters:
           Name  Flags
      timestamp  

  public synchronized boolean canRead(org.hsqldb.Session, int);
    descriptor: (Lorg/hsqldb/Session;I)Z
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // org.hsqldb.RowAction this
        start local 1 // org.hsqldb.Session session
        start local 2 // int mode
         0: .line 719
            iconst_0
            istore 5 /* actionType */
        start local 5 // int actionType
         1: .line 721
            aload 0 /* this */
            getfield org.hsqldb.RowAction.type:B
            iconst_3
            if_icmpne 3
         2: .line 722
            iconst_0
            ireturn
         3: .line 725
      StackMap locals: org.hsqldb.RowAction org.hsqldb.Session int top top int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.RowAction.type:B
            ifne 5
         4: .line 726
            iconst_1
            ireturn
         5: .line 729
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            astore 6 /* action */
        start local 6 // org.hsqldb.RowActionBase action
         6: .line 731
            aload 1 /* session */
            ifnonnull 9
         7: .line 732
            ldc 9223372036854775807
            lstore 3 /* threshold */
        start local 3 // long threshold
         8: .line 733
            goto 15
        end local 3 // long threshold
         9: .line 734
      StackMap locals: org.hsqldb.RowActionBase
      StackMap stack:
            aload 1 /* session */
            getfield org.hsqldb.Session.isolationLevel:I
            tableswitch { // 1 - 8
                    1: 10
                    2: 12
                    3: 14
                    4: 14
                    5: 14
                    6: 14
                    7: 14
                    8: 14
              default: 14
          }
        10: .line 737
      StackMap locals:
      StackMap stack:
            ldc 9223372036854775807
            lstore 3 /* threshold */
        start local 3 // long threshold
        11: .line 738
            goto 15
        end local 3 // long threshold
        12: .line 741
      StackMap locals:
      StackMap stack:
            aload 1 /* session */
            getfield org.hsqldb.Session.actionTimestamp:J
            lstore 3 /* threshold */
        start local 3 // long threshold
        13: .line 742
            goto 15
        end local 3 // long threshold
        14: .line 747
      StackMap locals:
      StackMap stack:
            aload 1 /* session */
            getfield org.hsqldb.Session.transactionTimestamp:J
            lstore 3 /* threshold */
        start local 3 // long threshold
        15: .line 748
      StackMap locals: org.hsqldb.RowAction org.hsqldb.Session int long int org.hsqldb.RowActionBase
      StackMap stack:
            aload 6 /* action */
        16: .line 753
            getfield org.hsqldb.RowActionBase.type:B
            iconst_5
            if_icmpne 19
        17: .line 754
            aload 6 /* action */
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            astore 6 /* action */
        18: .line 756
            goto 72
        19: .line 759
      StackMap locals:
      StackMap stack:
            aload 6 /* action */
            getfield org.hsqldb.RowActionBase.rolledback:Z
            ifeq 24
        20: .line 760
            aload 6 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            iconst_1
            if_icmpne 22
        21: .line 761
            iconst_2
            istore 5 /* actionType */
        22: .line 764
      StackMap locals:
      StackMap stack:
            aload 6 /* action */
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            astore 6 /* action */
        23: .line 766
            goto 72
        24: .line 769
      StackMap locals:
      StackMap stack:
            aload 1 /* session */
            aload 6 /* action */
            getfield org.hsqldb.RowActionBase.session:Lorg/hsqldb/Session;
            if_acmpne 32
        25: .line 770
            aload 6 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            iconst_2
            if_icmpne 28
        26: .line 771
            aload 6 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            istore 5 /* actionType */
        27: .line 772
            goto 30
      StackMap locals:
      StackMap stack:
        28: aload 6 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            iconst_1
            if_icmpne 30
        29: .line 773
            aload 6 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            istore 5 /* actionType */
        30: .line 776
      StackMap locals:
      StackMap stack:
            aload 6 /* action */
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            astore 6 /* action */
        31: .line 778
            goto 72
        32: .line 779
      StackMap locals:
      StackMap stack:
            aload 6 /* action */
            getfield org.hsqldb.RowActionBase.commitTimestamp:J
            lconst_0
            lcmp
            ifne 53
        33: .line 780
            aload 6 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            ifne 35
        34: .line 781
            sipush 201
            ldc "RowAction"
            invokestatic org.hsqldb.error.Error.runtimeError:(ILjava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        35: .line 782
      StackMap locals:
      StackMap stack:
            aload 6 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            iconst_1
            if_icmpne 47
        36: .line 783
            iload 2 /* mode */
            ifne 39
        37: .line 784
            iconst_2
            istore 5 /* actionType */
        38: .line 785
            goto 73
      StackMap locals:
      StackMap stack:
        39: iload 2 /* mode */
            iconst_1
            if_icmpne 44
        40: .line 786
            iconst_1
            istore 5 /* actionType */
        41: .line 788
            aload 1 /* session */
            getfield org.hsqldb.Session.actionSet:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.clear:()V
        42: .line 789
            aload 1 /* session */
            getfield org.hsqldb.Session.actionSet:Lorg/hsqldb/lib/OrderedHashSet;
            aload 6 /* action */
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
        43: .line 790
            goto 73
      StackMap locals:
      StackMap stack:
        44: iload 2 /* mode */
            iconst_2
            if_icmpne 73
        45: .line 791
            iconst_2
            istore 5 /* actionType */
        46: .line 794
            goto 73
        47: .line 795
      StackMap locals:
      StackMap stack:
            aload 6 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            iconst_2
            if_icmpne 51
        48: .line 796
            iload 2 /* mode */
            iconst_1
            if_icmpeq 51
        49: .line 799
            iload 2 /* mode */
            iconst_2
            if_icmpne 51
        50: .line 800
            iconst_2
            istore 5 /* actionType */
        51: .line 804
      StackMap locals:
      StackMap stack:
            aload 6 /* action */
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            astore 6 /* action */
        52: .line 806
            goto 72
        53: .line 807
      StackMap locals:
      StackMap stack:
            aload 6 /* action */
            getfield org.hsqldb.RowActionBase.commitTimestamp:J
            lload 3 /* threshold */
            lcmp
            ifge 60
        54: .line 808
            aload 6 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            iconst_2
            if_icmpne 57
        55: .line 809
            iconst_2
            istore 5 /* actionType */
        56: .line 810
            goto 71
      StackMap locals:
      StackMap stack:
        57: aload 6 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            iconst_1
            if_icmpne 71
        58: .line 811
            iconst_1
            istore 5 /* actionType */
        59: .line 813
            goto 71
        60: .line 814
      StackMap locals:
      StackMap stack:
            aload 6 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            iconst_1
            if_icmpne 71
        61: .line 815
            iload 2 /* mode */
            ifne 64
        62: .line 816
            iconst_2
            istore 5 /* actionType */
        63: .line 817
            goto 71
      StackMap locals:
      StackMap stack:
        64: iload 2 /* mode */
            iconst_1
            if_icmpne 69
        65: .line 818
            iconst_1
            istore 5 /* actionType */
        66: .line 820
            aload 1 /* session */
            getfield org.hsqldb.Session.actionSet:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.clear:()V
        67: .line 821
            aload 1 /* session */
            getfield org.hsqldb.Session.actionSet:Lorg/hsqldb/lib/OrderedHashSet;
            aload 6 /* action */
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
        68: .line 822
            goto 71
      StackMap locals:
      StackMap stack:
        69: iload 2 /* mode */
            iconst_2
            if_icmpne 71
        70: .line 823
            iconst_2
            istore 5 /* actionType */
        71: .line 828
      StackMap locals:
      StackMap stack:
            aload 6 /* action */
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            astore 6 /* action */
        72: .line 829
      StackMap locals:
      StackMap stack:
            aload 6 /* action */
            ifnonnull 15
        73: .line 831
      StackMap locals:
      StackMap stack:
            iload 5 /* actionType */
            ifeq 74
            iload 5 /* actionType */
            iconst_1
            if_icmpne 75
        74: .line 832
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        75: .line 835
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 6 // org.hsqldb.RowActionBase action
        end local 5 // int actionType
        end local 3 // long threshold
        end local 2 // int mode
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   76     0        this  Lorg/hsqldb/RowAction;
            0   76     1     session  Lorg/hsqldb/Session;
            0   76     2        mode  I
            8    9     3   threshold  J
           11   12     3   threshold  J
           13   14     3   threshold  J
           15   76     3   threshold  J
            1   76     5  actionType  I
            6   76     6      action  Lorg/hsqldb/RowActionBase;
    MethodParameters:
         Name  Flags
      session  
      mode     

  public boolean hasCurrentRefAction();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.hsqldb.RowAction this
         0: .line 840
            aload 0 /* this */
            astore 1 /* action */
        start local 1 // org.hsqldb.RowActionBase action
         1: .line 843
      StackMap locals: org.hsqldb.RowActionBase
      StackMap stack:
            aload 1 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            iconst_5
            if_icmpne 3
            aload 1 /* action */
            getfield org.hsqldb.RowActionBase.commitTimestamp:J
            lconst_0
            lcmp
            ifne 3
         2: .line 844
            iconst_1
            ireturn
         3: .line 847
      StackMap locals:
      StackMap stack:
            aload 1 /* action */
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            astore 1 /* action */
         4: .line 848
            aload 1 /* action */
            ifnonnull 1
         5: .line 850
            iconst_0
            ireturn
        end local 1 // org.hsqldb.RowActionBase action
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lorg/hsqldb/RowAction;
            1    6     1  action  Lorg/hsqldb/RowActionBase;

  private org.hsqldb.RowAction mergeExpiredRefActions();
    descriptor: ()Lorg/hsqldb/RowAction;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.hsqldb.RowAction this
         0: .line 856
            aload 0 /* this */
            getfield org.hsqldb.RowAction.updatedAction:Lorg/hsqldb/RowAction;
            ifnull 2
         1: .line 857
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.RowAction.updatedAction:Lorg/hsqldb/RowAction;
            invokevirtual org.hsqldb.RowAction.mergeExpiredRefActions:()Lorg/hsqldb/RowAction;
            putfield org.hsqldb.RowAction.updatedAction:Lorg/hsqldb/RowAction;
         2: .line 860
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hsqldb.RowAction.hasCurrentRefAction:()Z
            ifeq 4
         3: .line 861
            aload 0 /* this */
            areturn
         4: .line 864
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.RowAction.updatedAction:Lorg/hsqldb/RowAction;
            areturn
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/hsqldb/RowAction;

  public synchronized java.lang.String describe(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)Ljava/lang/String;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.hsqldb.RowAction this
        start local 1 // org.hsqldb.Session session
         0: .line 869
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 2 /* sb */
        start local 2 // java.lang.StringBuilder sb
         1: .line 870
            aload 0 /* this */
            astore 3 /* action */
        start local 3 // org.hsqldb.RowActionBase action
         2: .line 873
      StackMap locals: java.lang.StringBuilder org.hsqldb.RowActionBase
      StackMap stack:
            aload 3 /* action */
            aload 0 /* this */
            if_acmpne 4
         3: .line 874
            aload 2 /* sb */
            aload 0 /* this */
            getfield org.hsqldb.RowAction.rowId:J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         4: .line 877
      StackMap locals:
      StackMap stack:
            aload 2 /* sb */
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.session:Lorg/hsqldb/Session;
            invokevirtual org.hsqldb.Session.getId:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         5: .line 878
            aload 2 /* sb */
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.type:B
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.actionTimestamp:J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            pop
         6: .line 879
            aload 2 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.commitTimestamp:J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            pop
         7: .line 881
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.commitTimestamp:J
            lconst_0
            lcmp
            ifeq 12
         8: .line 882
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.rolledback:Z
            ifeq 11
         9: .line 883
            aload 2 /* sb */
            bipush 114
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        10: .line 884
            goto 12
        11: .line 885
      StackMap locals:
      StackMap stack:
            aload 2 /* sb */
            bipush 99
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        12: .line 889
      StackMap locals:
      StackMap stack:
            aload 2 /* sb */
            ldc " - "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        13: .line 891
            aload 3 /* action */
            getfield org.hsqldb.RowActionBase.next:Lorg/hsqldb/RowActionBase;
            astore 3 /* action */
        14: .line 892
            aload 3 /* action */
            ifnonnull 2
        15: .line 894
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 3 // org.hsqldb.RowActionBase action
        end local 2 // java.lang.StringBuilder sb
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.RowAction this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   16     0     this  Lorg/hsqldb/RowAction;
            0   16     1  session  Lorg/hsqldb/Session;
            1   16     2       sb  Ljava/lang/StringBuilder;
            2   16     3   action  Lorg/hsqldb/RowActionBase;
    MethodParameters:
         Name  Flags
      session  
}
SourceFile: "RowAction.java"