public class org.hsqldb.Expression implements java.lang.Cloneable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.hsqldb.Expression
  super_class: java.lang.Object
{
  public static final int LEFT;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final int RIGHT;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final int THIRD;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final int UNARY;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final int BINARY;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final int TERNARY;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  static final org.hsqldb.Expression[] emptyArray;
    descriptor: [Lorg/hsqldb/Expression;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final org.hsqldb.Expression EXPR_TRUE;
    descriptor: Lorg/hsqldb/Expression;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final org.hsqldb.Expression EXPR_FALSE;
    descriptor: Lorg/hsqldb/Expression;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  protected int opType;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected int exprSubType;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  org.hsqldb.HsqlNameManager$SimpleName alias;
    descriptor: Lorg/hsqldb/HsqlNameManager$SimpleName;
    flags: (0x0000) 

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

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

  protected java.lang.Object valueData;
    descriptor: Ljava/lang/Object;
    flags: (0x0004) ACC_PROTECTED

  protected org.hsqldb.Expression[] nodes;
    descriptor: [Lorg/hsqldb/Expression;
    flags: (0x0004) ACC_PROTECTED

  org.hsqldb.types.Type[] nodeDataTypes;
    descriptor: [Lorg/hsqldb/types/Type;
    flags: (0x0000) 

  org.hsqldb.TableDerived table;
    descriptor: Lorg/hsqldb/TableDerived;
    flags: (0x0000) 

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

  int columnIndex;
    descriptor: I
    flags: (0x0000) 

  protected org.hsqldb.types.Type dataType;
    descriptor: Lorg/hsqldb/types/Type;
    flags: (0x0004) ACC_PROTECTED

  int queryTableColumnIndex;
    descriptor: I
    flags: (0x0000) 

  int resultTableColumnIndex;
    descriptor: I
    flags: (0x0000) 

  int parameterIndex;
    descriptor: I
    flags: (0x0000) 

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

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

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

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

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

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

  byte nullability;
    descriptor: B
    flags: (0x0000) 

  org.hsqldb.types.Collation collation;
    descriptor: Lorg/hsqldb/types/Collation;
    flags: (0x0000) 

  org.hsqldb.RangeGroup[] rangeGroups;
    descriptor: [Lorg/hsqldb/RangeGroup;
    flags: (0x0000) 

  org.hsqldb.RangeGroup rangeGroup;
    descriptor: Lorg/hsqldb/RangeGroup;
    flags: (0x0000) 

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 78
            iconst_0
            anewarray org.hsqldb.Expression
            putstatic org.hsqldb.Expression.emptyArray:[Lorg/hsqldb/Expression;
         1: .line 81
            new org.hsqldb.ExpressionLogical
            dup
            iconst_1
            invokespecial org.hsqldb.ExpressionLogical.<init>:(Z)V
            putstatic org.hsqldb.Expression.EXPR_TRUE:Lorg/hsqldb/Expression;
         2: .line 82
            new org.hsqldb.ExpressionLogical
            dup
            iconst_0
            invokespecial org.hsqldb.ExpressionLogical.<init>:(Z)V
            putstatic org.hsqldb.Expression.EXPR_FALSE:Lorg/hsqldb/Expression;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.Expression this
        start local 1 // int type
         0: .line 137
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 109
            aload 0 /* this */
            iconst_m1
            putfield org.hsqldb.Expression.columnIndex:I
         2: .line 115
            aload 0 /* this */
            iconst_m1
            putfield org.hsqldb.Expression.queryTableColumnIndex:I
         3: .line 118
            aload 0 /* this */
            iconst_m1
            putfield org.hsqldb.Expression.resultTableColumnIndex:I
         4: .line 121
            aload 0 /* this */
            iconst_m1
            putfield org.hsqldb.Expression.parameterIndex:I
         5: .line 130
            aload 0 /* this */
            iconst_2
            putfield org.hsqldb.Expression.nullability:B
         6: .line 138
            aload 0 /* this */
            iload 1 /* type */
            putfield org.hsqldb.Expression.opType:I
         7: .line 139
            aload 0 /* this */
            getstatic org.hsqldb.Expression.emptyArray:[Lorg/hsqldb/Expression;
            putfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
         8: .line 140
            return
        end local 1 // int type
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/hsqldb/Expression;
            0    9     1  type  I
    MethodParameters:
      Name  Flags
      type  

  void <init>(int, org.hsqldb.TableDerived);
    descriptor: (ILorg/hsqldb/TableDerived;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.hsqldb.Expression this
        start local 1 // int type
        start local 2 // org.hsqldb.TableDerived table
         0: .line 147
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 109
            aload 0 /* this */
            iconst_m1
            putfield org.hsqldb.Expression.columnIndex:I
         2: .line 115
            aload 0 /* this */
            iconst_m1
            putfield org.hsqldb.Expression.queryTableColumnIndex:I
         3: .line 118
            aload 0 /* this */
            iconst_m1
            putfield org.hsqldb.Expression.resultTableColumnIndex:I
         4: .line 121
            aload 0 /* this */
            iconst_m1
            putfield org.hsqldb.Expression.parameterIndex:I
         5: .line 130
            aload 0 /* this */
            iconst_2
            putfield org.hsqldb.Expression.nullability:B
         6: .line 149
            iload 1 /* type */
            lookupswitch { // 5
                   19: 7
                   21: 13
                   22: 13
                   23: 11
                  100: 9
              default: 15
          }
         7: .line 152
      StackMap locals: org.hsqldb.Expression int org.hsqldb.TableDerived
      StackMap stack:
            aload 0 /* this */
            bipush 19
            putfield org.hsqldb.Expression.opType:I
         8: .line 153
            goto 16
         9: .line 156
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            bipush 100
            putfield org.hsqldb.Expression.opType:I
        10: .line 157
            goto 16
        11: .line 160
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            bipush 23
            putfield org.hsqldb.Expression.opType:I
        12: .line 161
            goto 16
        13: .line 165
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            bipush 22
            putfield org.hsqldb.Expression.opType:I
        14: .line 166
            goto 16
        15: .line 169
      StackMap locals:
      StackMap stack:
            sipush 201
            ldc "Expression"
            invokestatic org.hsqldb.error.Error.runtimeError:(ILjava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        16: .line 172
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.hsqldb.Expression.emptyArray:[Lorg/hsqldb/Expression;
            putfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
        17: .line 173
            aload 0 /* this */
            aload 2 /* table */
            putfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
        18: .line 174
            return
        end local 2 // org.hsqldb.TableDerived table
        end local 1 // int type
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   19     0   this  Lorg/hsqldb/Expression;
            0   19     1   type  I
            0   19     2  table  Lorg/hsqldb/TableDerived;
    MethodParameters:
       Name  Flags
      type   
      table  

  void <init>(int, org.hsqldb.Expression[]);
    descriptor: (I[Lorg/hsqldb/Expression;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.hsqldb.Expression this
        start local 1 // int type
        start local 2 // org.hsqldb.Expression[] list
         0: .line 181
            aload 0 /* this */
            iload 1 /* type */
            invokespecial org.hsqldb.Expression.<init>:(I)V
         1: .line 183
            aload 0 /* this */
            aload 2 /* list */
            putfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
         2: .line 184
            return
        end local 2 // org.hsqldb.Expression[] list
        end local 1 // int type
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/hsqldb/Expression;
            0    3     1  type  I
            0    3     2  list  [Lorg/hsqldb/Expression;
    MethodParameters:
      Name  Flags
      type  
      list  

  static java.lang.String getContextSQL(org.hsqldb.Expression);
    descriptor: (Lorg/hsqldb/Expression;)Ljava/lang/String;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.hsqldb.Expression expression
         0: .line 188
            aload 0 /* expression */
            ifnonnull 2
         1: .line 189
            aconst_null
            areturn
         2: .line 192
      StackMap locals:
      StackMap stack:
            aload 0 /* expression */
            invokevirtual org.hsqldb.Expression.getSQL:()Ljava/lang/String;
            astore 1 /* ddl */
        start local 1 // java.lang.String ddl
         3: .line 194
            aload 0 /* expression */
            getfield org.hsqldb.Expression.opType:I
            lookupswitch { // 8
                    1: 4
                    2: 4
                   25: 4
                   27: 4
                   28: 4
                   90: 4
                   92: 4
                   95: 4
              default: 5
          }
         4: .line 204
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* ddl */
            areturn
         5: .line 207
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 2 /* sb */
        start local 2 // java.lang.StringBuilder sb
         6: .line 209
            aload 2 /* sb */
            bipush 40
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 1 /* ddl */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 41
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* ddl */
         7: .line 211
            aload 1 /* ddl */
            areturn
        end local 2 // java.lang.StringBuilder sb
        end local 1 // java.lang.String ddl
        end local 0 // org.hsqldb.Expression expression
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0  expression  Lorg/hsqldb/Expression;
            3    8     1         ddl  Ljava/lang/String;
            6    8     2          sb  Ljava/lang/StringBuilder;
    MethodParameters:
            Name  Flags
      expression  

  public java.lang.String getSQL();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 233
            new java.lang.StringBuilder
            dup
            bipush 64
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         1: .line 235
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            lookupswitch { // 3
                    1: 2
                   25: 5
                   26: 15
              default: 23
          }
         2: .line 238
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.valueData:Ljava/lang/Object;
            ifnonnull 4
         3: .line 239
            ldc "NULL"
            areturn
         4: .line 242
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
            aload 0 /* this */
            getfield org.hsqldb.Expression.valueData:Ljava/lang/Object;
            invokevirtual org.hsqldb.types.Type.convertToSQLString:(Ljava/lang/Object;)Ljava/lang/String;
            areturn
         5: .line 245
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            bipush 40
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         6: .line 247
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         7: goto 12
         8: .line 248
      StackMap locals: int
      StackMap stack:
            iload 2 /* i */
            ifle 10
         9: .line 249
            aload 1 /* sb */
            bipush 44
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        10: .line 252
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            invokevirtual org.hsqldb.Expression.getSQL:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 247
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 8
        end local 2 // int i
        13: .line 255
            aload 1 /* sb */
            bipush 41
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        14: .line 257
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        15: .line 261
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        16: goto 21
        17: .line 262
      StackMap locals: int
      StackMap stack:
            iload 2 /* i */
            ifle 19
        18: .line 263
            aload 1 /* sb */
            bipush 44
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        19: .line 266
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            invokevirtual org.hsqldb.Expression.getSQL:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        20: .line 261
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        21: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 17
        end local 2 // int i
        22: .line 269
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        23: .line 272
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            lookupswitch { // 4
                   19: 24
                   22: 34
                   23: 34
                  100: 34
              default: 37
          }
        24: .line 275
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            ldc "ARRAY"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 91
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        25: .line 277
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        26: goto 31
        27: .line 278
      StackMap locals: int
      StackMap stack:
            iload 2 /* i */
            ifle 29
        28: .line 279
            aload 1 /* sb */
            bipush 44
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        29: .line 282
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            invokevirtual org.hsqldb.Expression.getSQL:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        30: .line 277
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        31: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 27
        end local 2 // int i
        32: .line 285
            aload 1 /* sb */
            bipush 93
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        33: .line 286
            goto 38
        34: .line 293
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            bipush 40
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        35: .line 294
            aload 1 /* sb */
            bipush 41
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        36: .line 295
            goto 38
        37: .line 298
      StackMap locals:
      StackMap stack:
            sipush 201
            ldc "Expression"
            invokestatic org.hsqldb.error.Error.runtimeError:(ILjava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        38: .line 301
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder sb
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   39     0  this  Lorg/hsqldb/Expression;
            1   39     1    sb  Ljava/lang/StringBuilder;
            7   13     2     i  I
           16   22     2     i  I
           26   32     2     i  I

  protected java.lang.String describe(org.hsqldb.Session, int);
    descriptor: (Lorg/hsqldb/Session;I)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Session session
        start local 2 // int blanks
         0: .line 306
            new java.lang.StringBuilder
            dup
            bipush 64
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 3 /* sb */
        start local 3 // java.lang.StringBuilder sb
         1: .line 308
            aload 3 /* sb */
            bipush 10
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         2: .line 310
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 6
         4: .line 311
      StackMap locals: java.lang.StringBuilder int
      StackMap stack:
            aload 3 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         5: .line 310
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 4 /* i */
            iload 2 /* blanks */
            if_icmplt 4
        end local 4 // int i
         7: .line 314
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            lookupswitch { // 7
                    1: 8
                   19: 13
                   22: 17
                   23: 17
                   25: 20
                   26: 28
                  100: 15
              default: 35
          }
         8: .line 317
      StackMap locals:
      StackMap stack:
            aload 3 /* sb */
            ldc "VALUE = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         9: .line 318
            aload 0 /* this */
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
            aload 0 /* this */
            getfield org.hsqldb.Expression.valueData:Ljava/lang/Object;
            invokevirtual org.hsqldb.types.Type.convertToSQLString:(Ljava/lang/Object;)Ljava/lang/String;
        10: .line 317
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 319
            aload 3 /* sb */
            ldc ", TYPE = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
            invokevirtual org.hsqldb.types.Type.getNameString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        12: .line 321
            aload 3 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        13: .line 324
      StackMap locals:
      StackMap stack:
            aload 3 /* sb */
            ldc "ARRAY "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        14: .line 326
            aload 3 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        15: .line 329
      StackMap locals:
      StackMap stack:
            aload 3 /* sb */
            ldc "ARRAY SUBQUERY"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        16: .line 331
            aload 3 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        17: .line 336
      StackMap locals:
      StackMap stack:
            aload 3 /* sb */
            ldc "QUERY "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        18: .line 337
            aload 3 /* sb */
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
            aload 1 /* session */
            iload 2 /* blanks */
            invokevirtual org.hsqldb.QueryExpression.describe:(Lorg/hsqldb/Session;I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        19: .line 339
            aload 3 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        20: .line 342
      StackMap locals:
      StackMap stack:
            aload 3 /* sb */
            ldc "ROW = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        21: .line 344
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        22: goto 26
        23: .line 345
      StackMap locals: int
      StackMap stack:
            aload 3 /* sb */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            aload 1 /* session */
            iload 2 /* blanks */
            iconst_1
            iadd
            invokevirtual org.hsqldb.Expression.describe:(Lorg/hsqldb/Session;I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        24: .line 346
            aload 3 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        25: .line 344
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        26: iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 23
        end local 4 // int i
        27: .line 348
            goto 35
        28: .line 351
      StackMap locals:
      StackMap stack:
            aload 3 /* sb */
            ldc "VALUELIST "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        29: .line 353
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        30: goto 34
        31: .line 354
      StackMap locals: int
      StackMap stack:
            aload 3 /* sb */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            aload 1 /* session */
            iload 2 /* blanks */
            iconst_1
            iadd
            invokevirtual org.hsqldb.Expression.describe:(Lorg/hsqldb/Session;I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        32: .line 355
            aload 3 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        33: .line 353
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        34: iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 31
        end local 4 // int i
        35: .line 360
      StackMap locals:
      StackMap stack:
            aload 3 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 3 // java.lang.StringBuilder sb
        end local 2 // int blanks
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   36     0     this  Lorg/hsqldb/Expression;
            0   36     1  session  Lorg/hsqldb/Session;
            0   36     2   blanks  I
            1   36     3       sb  Ljava/lang/StringBuilder;
            3    7     4        i  I
           22   27     4        i  I
           30   35     4        i  I
    MethodParameters:
         Name  Flags
      session  
      blanks   

  void setDataType(org.hsqldb.Session, org.hsqldb.types.Type);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/types/Type;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.types.Type type
         0: .line 368
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            iconst_1
            if_icmpne 2
         1: .line 369
            aload 0 /* this */
            aload 2 /* type */
            aload 1 /* session */
            aload 0 /* this */
            getfield org.hsqldb.Expression.valueData:Ljava/lang/Object;
            aload 0 /* this */
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
            invokevirtual org.hsqldb.types.Type.convertToType:(Lorg/hsqldb/SessionInterface;Ljava/lang/Object;Lorg/hsqldb/types/Type;)Ljava/lang/Object;
            putfield org.hsqldb.Expression.valueData:Ljava/lang/Object;
         2: .line 372
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* type */
            putfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
         3: .line 373
            return
        end local 2 // org.hsqldb.types.Type type
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/hsqldb/Expression;
            0    4     1  session  Lorg/hsqldb/Session;
            0    4     2     type  Lorg/hsqldb/types/Type;
    MethodParameters:
         Name  Flags
      session  
      type     

  boolean equals(org.hsqldb.Expression);
    descriptor: (Lorg/hsqldb/Expression;)Z
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Expression other
         0: .line 380
            aload 1 /* other */
            aload 0 /* this */
            if_acmpne 2
         1: .line 381
            iconst_1
            ireturn
         2: .line 384
      StackMap locals:
      StackMap stack:
            aload 1 /* other */
            ifnonnull 4
         3: .line 385
            iconst_0
            ireturn
         4: .line 388
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            aload 1 /* other */
            getfield org.hsqldb.Expression.opType:I
            if_icmpne 6
            aload 0 /* this */
            getfield org.hsqldb.Expression.exprSubType:I
            aload 1 /* other */
            getfield org.hsqldb.Expression.exprSubType:I
            if_icmpne 6
         5: .line 389
            aload 0 /* this */
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
            aload 1 /* other */
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
            invokestatic org.hsqldb.Expression.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifne 7
         6: .line 390
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         7: .line 393
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            lookupswitch { // 5
                    1: 8
                   19: 9
                   22: 9
                   23: 9
                  100: 9
              default: 12
          }
         8: .line 396
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.valueData:Ljava/lang/Object;
            aload 1 /* other */
            getfield org.hsqldb.Expression.valueData:Ljava/lang/Object;
            invokestatic org.hsqldb.Expression.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ireturn
         9: .line 404
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
        10: .line 405
            aload 1 /* other */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
        11: .line 404
            invokevirtual org.hsqldb.QueryExpression.isEquivalent:(Lorg/hsqldb/QueryExpression;)Z
            ireturn
        12: .line 408
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            aload 1 /* other */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            invokestatic org.hsqldb.Expression.equals:([Lorg/hsqldb/Expression;[Lorg/hsqldb/Expression;)Z
            ireturn
        end local 1 // org.hsqldb.Expression other
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   13     0   this  Lorg/hsqldb/Expression;
            0   13     1  other  Lorg/hsqldb/Expression;
    MethodParameters:
       Name  Flags
      other  

  public final boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.Expression this
        start local 1 // java.lang.Object other
         0: .line 414
            aload 1 /* other */
            aload 0 /* this */
            if_acmpne 2
         1: .line 415
            iconst_1
            ireturn
         2: .line 418
      StackMap locals:
      StackMap stack:
            aload 1 /* other */
            instanceof org.hsqldb.Expression
            ifeq 4
         3: .line 419
            aload 0 /* this */
            aload 1 /* other */
            checkcast org.hsqldb.Expression
            invokevirtual org.hsqldb.Expression.equals:(Lorg/hsqldb/Expression;)Z
            ireturn
         4: .line 422
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.Object other
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lorg/hsqldb/Expression;
            0    5     1  other  Ljava/lang/Object;
    MethodParameters:
       Name  Flags
      other  

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 427
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            aload 0 /* this */
            getfield org.hsqldb.Expression.exprSubType:I
            iadd
            istore 1 /* val */
        start local 1 // int val
         1: .line 429
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 6
         3: .line 430
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            ifnull 5
         4: .line 431
            iload 1 /* val */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            invokevirtual org.hsqldb.Expression.hashCode:()I
            iadd
            istore 1 /* val */
         5: .line 429
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 3
        end local 2 // int i
         7: .line 435
            iload 1 /* val */
            ireturn
        end local 1 // int val
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/hsqldb/Expression;
            1    8     1   val  I
            2    7     2     i  I

  static boolean equals(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.Object o1
        start local 1 // java.lang.Object o2
         0: .line 440
            aload 0 /* o1 */
            aload 1 /* o2 */
            if_acmpne 2
         1: .line 441
            iconst_1
            ireturn
         2: .line 444
      StackMap locals:
      StackMap stack:
            aload 0 /* o1 */
            ifnonnull 3
            iconst_0
            goto 4
         3: .line 445
      StackMap locals:
      StackMap stack:
            aload 0 /* o1 */
            aload 1 /* o2 */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
         4: .line 444
      StackMap locals:
      StackMap stack: int
            ireturn
        end local 1 // java.lang.Object o2
        end local 0 // java.lang.Object o1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0    o1  Ljava/lang/Object;
            0    5     1    o2  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      o1    
      o2    

  static boolean equals(org.hsqldb.Expression[], org.hsqldb.Expression[]);
    descriptor: ([Lorg/hsqldb/Expression;[Lorg/hsqldb/Expression;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=7, args_size=2
        start local 0 // org.hsqldb.Expression[] row1
        start local 1 // org.hsqldb.Expression[] row2
         0: .line 450
            aload 0 /* row1 */
            aload 1 /* row2 */
            if_acmpne 2
         1: .line 451
            iconst_1
            ireturn
         2: .line 454
      StackMap locals:
      StackMap stack:
            aload 0 /* row1 */
            arraylength
            aload 1 /* row2 */
            arraylength
            if_icmpeq 4
         3: .line 455
            iconst_0
            ireturn
         4: .line 458
      StackMap locals:
      StackMap stack:
            aload 0 /* row1 */
            arraylength
            istore 2 /* len */
        start local 2 // int len
         5: .line 460
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         6: goto 16
         7: .line 461
      StackMap locals: int int
      StackMap stack:
            aload 0 /* row1 */
            iload 3 /* i */
            aaload
            astore 4 /* e1 */
        start local 4 // org.hsqldb.Expression e1
         8: .line 462
            aload 1 /* row2 */
            iload 3 /* i */
            aaload
            astore 5 /* e2 */
        start local 5 // org.hsqldb.Expression e2
         9: .line 463
            aload 4 /* e1 */
            ifnonnull 11
            aload 5 /* e2 */
            ifnonnull 10
            iconst_1
            goto 12
      StackMap locals: org.hsqldb.Expression org.hsqldb.Expression
      StackMap stack:
        10: iconst_0
            goto 12
        11: .line 464
      StackMap locals:
      StackMap stack:
            aload 4 /* e1 */
            aload 5 /* e2 */
            invokevirtual org.hsqldb.Expression.equals:(Lorg/hsqldb/Expression;)Z
        12: .line 463
      StackMap locals:
      StackMap stack: int
            istore 6 /* equals */
        start local 6 // boolean equals
        13: .line 466
            iload 6 /* equals */
            ifne 15
        14: .line 467
            iconst_0
            ireturn
        end local 6 // boolean equals
        end local 5 // org.hsqldb.Expression e2
        end local 4 // org.hsqldb.Expression e1
        15: .line 460
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 3 /* i */
            iload 2 /* len */
            if_icmplt 7
        end local 3 // int i
        17: .line 471
            iconst_1
            ireturn
        end local 2 // int len
        end local 1 // org.hsqldb.Expression[] row2
        end local 0 // org.hsqldb.Expression[] row1
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   18     0    row1  [Lorg/hsqldb/Expression;
            0   18     1    row2  [Lorg/hsqldb/Expression;
            5   18     2     len  I
            6   17     3       i  I
            8   15     4      e1  Lorg/hsqldb/Expression;
            9   15     5      e2  Lorg/hsqldb/Expression;
           13   15     6  equals  Z
    MethodParameters:
      Name  Flags
      row1  
      row2  

  boolean isComposedOf(org.hsqldb.Expression[], int, int, org.hsqldb.lib.OrderedIntHashSet);
    descriptor: ([Lorg/hsqldb/Expression;IILorg/hsqldb/lib/OrderedIntHashSet;)Z
    flags: (0x0000) 
    Code:
      stack=6, locals=8, args_size=5
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Expression[] exprList
        start local 2 // int start
        start local 3 // int end
        start local 4 // org.hsqldb.lib.OrderedIntHashSet excludeSet
         0: .line 480
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            tableswitch { // 1 - 8
                    1: 1
                    2: 2
                    3: 2
                    4: 2
                    5: 2
                    6: 1
                    7: 1
                    8: 1
              default: 2
          }
         1: .line 486
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         2: .line 490
      StackMap locals:
      StackMap stack:
            aload 4 /* excludeSet */
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            invokevirtual org.hsqldb.lib.OrderedIntHashSet.contains:(I)Z
            ifeq 4
         3: .line 491
            iconst_1
            ireturn
         4: .line 494
      StackMap locals:
      StackMap stack:
            iload 2 /* start */
            istore 5 /* i */
        start local 5 // int i
         5: goto 9
         6: .line 495
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* exprList */
            iload 5 /* i */
            aaload
            invokevirtual org.hsqldb.Expression.equals:(Lorg/hsqldb/Expression;)Z
            ifeq 8
         7: .line 496
            iconst_1
            ireturn
         8: .line 494
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 5 /* i */
            iload 3 /* end */
            if_icmplt 6
        end local 5 // int i
        10: .line 500
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            lookupswitch { // 14
                    2: 11
                   19: 12
                   22: 13
                   23: 12
                   53: 12
                   55: 12
                   66: 12
                   68: 12
                   69: 12
                   70: 12
                   71: 12
                   72: 12
                   73: 12
                  100: 12
              default: 29
          }
        11: .line 503
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        12: .line 517
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        13: .line 520
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            ifnonnull 15
        14: .line 521
            goto 29
        15: .line 524
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            invokevirtual org.hsqldb.TableDerived.getQueryExpression:()Lorg/hsqldb/QueryExpression;
            instanceof org.hsqldb.QuerySpecification
        16: .line 525
            ifne 18
        17: .line 526
            iconst_0
            ireturn
        18: .line 530
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            invokevirtual org.hsqldb.TableDerived.getQueryExpression:()Lorg/hsqldb/QueryExpression;
            checkcast org.hsqldb.QuerySpecification
        19: .line 529
            astore 5 /* qs */
        start local 5 // org.hsqldb.QuerySpecification qs
        20: .line 531
            new org.hsqldb.lib.OrderedHashSet
            dup
            invokespecial org.hsqldb.lib.OrderedHashSet.<init>:()V
            astore 6 /* set */
        start local 6 // org.hsqldb.lib.OrderedHashSet set
        21: .line 533
            iload 2 /* start */
            istore 7 /* i */
        start local 7 // int i
        22: goto 26
        23: .line 534
      StackMap locals: org.hsqldb.QuerySpecification org.hsqldb.lib.OrderedHashSet int
      StackMap stack:
            aload 1 /* exprList */
            iload 7 /* i */
            aaload
            getfield org.hsqldb.Expression.opType:I
            iconst_2
            if_icmpne 25
        24: .line 535
            aload 6 /* set */
            aload 1 /* exprList */
            iload 7 /* i */
            aaload
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
        25: .line 533
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        26: iload 7 /* i */
            iload 3 /* end */
            if_icmplt 23
        end local 7 // int i
        27: .line 539
            aload 5 /* qs */
            aconst_null
            aload 6 /* set */
            invokevirtual org.hsqldb.QuerySpecification.collectOuterColumnExpressions:(Lorg/hsqldb/lib/OrderedHashSet;Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            ifnonnull 28
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        28: iconst_0
            ireturn
        end local 6 // org.hsqldb.lib.OrderedHashSet set
        end local 5 // org.hsqldb.QuerySpecification qs
        29: .line 543
      StackMap locals:
      StackMap stack:
            getstatic org.hsqldb.OpTypes.aggregateFunctionSet:Lorg/hsqldb/lib/OrderedIntHashSet;
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            invokevirtual org.hsqldb.lib.OrderedIntHashSet.contains:(I)Z
            ifeq 31
        30: .line 544
            iconst_0
            ireturn
        31: .line 547
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            ifne 33
        32: .line 548
            iconst_1
            ireturn
        33: .line 551
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 5 /* result */
        start local 5 // boolean result
        34: .line 553
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        35: goto 44
        36: .line 554
      StackMap locals: int int
      StackMap stack:
            iload 5 /* result */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 6 /* i */
            aaload
            ifnull 41
        37: .line 555
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 6 /* i */
            aaload
            aload 1 /* exprList */
            iload 2 /* start */
            iload 3 /* end */
        38: .line 556
            aload 4 /* excludeSet */
        39: .line 555
            invokevirtual org.hsqldb.Expression.isComposedOf:([Lorg/hsqldb/Expression;IILorg/hsqldb/lib/OrderedIntHashSet;)Z
        40: .line 556
            ifne 41
            iconst_0
            goto 42
      StackMap locals:
      StackMap stack: int
        41: iconst_1
      StackMap locals: org.hsqldb.Expression org.hsqldb.Expression[] int int org.hsqldb.lib.OrderedIntHashSet int int
      StackMap stack: int int
        42: iand
            istore 5 /* result */
        43: .line 553
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        44: iload 6 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 36
        end local 6 // int i
        45: .line 559
            iload 5 /* result */
            ireturn
        end local 5 // boolean result
        end local 4 // org.hsqldb.lib.OrderedIntHashSet excludeSet
        end local 3 // int end
        end local 2 // int start
        end local 1 // org.hsqldb.Expression[] exprList
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   46     0        this  Lorg/hsqldb/Expression;
            0   46     1    exprList  [Lorg/hsqldb/Expression;
            0   46     2       start  I
            0   46     3         end  I
            0   46     4  excludeSet  Lorg/hsqldb/lib/OrderedIntHashSet;
            5   10     5           i  I
           20   29     5          qs  Lorg/hsqldb/QuerySpecification;
           21   29     6         set  Lorg/hsqldb/lib/OrderedHashSet;
           22   27     7           i  I
           34   46     5      result  Z
           35   45     6           i  I
    MethodParameters:
            Name  Flags
      exprList    
      start       
      end         
      excludeSet  

  boolean isComposedOf(org.hsqldb.lib.OrderedHashSet, org.hsqldb.RangeGroup[], org.hsqldb.lib.OrderedIntHashSet);
    descriptor: (Lorg/hsqldb/lib/OrderedHashSet;[Lorg/hsqldb/RangeGroup;Lorg/hsqldb/lib/OrderedIntHashSet;)Z
    flags: (0x0000) 
    Code:
      stack=5, locals=7, args_size=4
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.lib.OrderedHashSet expressions
        start local 2 // org.hsqldb.RangeGroup[] rangeGroups
        start local 3 // org.hsqldb.lib.OrderedIntHashSet excludeSet
         0: .line 568
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            tableswitch { // 1 - 8
                    1: 1
                    2: 2
                    3: 2
                    4: 2
                    5: 2
                    6: 1
                    7: 1
                    8: 1
              default: 2
          }
         1: .line 574
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         2: .line 578
      StackMap locals:
      StackMap stack:
            aload 3 /* excludeSet */
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            invokevirtual org.hsqldb.lib.OrderedIntHashSet.contains:(I)Z
            ifeq 4
         3: .line 579
            iconst_1
            ireturn
         4: .line 582
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         5: goto 9
         6: .line 583
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* expressions */
            iload 4 /* i */
            invokevirtual org.hsqldb.lib.OrderedHashSet.get:(I)Ljava/lang/Object;
            invokevirtual org.hsqldb.Expression.equals:(Ljava/lang/Object;)Z
            ifeq 8
         7: .line 584
            iconst_1
            ireturn
         8: .line 582
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 4 /* i */
            aload 1 /* expressions */
            invokevirtual org.hsqldb.lib.OrderedHashSet.size:()I
            if_icmplt 6
        end local 4 // int i
        10: .line 588
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            iconst_2
            if_icmpne 22
        11: .line 589
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        12: goto 21
        13: .line 590
      StackMap locals:
      StackMap stack:
            aload 2 /* rangeGroups */
            iload 4 /* i */
            aaload
            invokeinterface org.hsqldb.RangeGroup.getRangeVariables:()[Lorg/hsqldb/RangeVariable;
            astore 5 /* ranges */
        start local 5 // org.hsqldb.RangeVariable[] ranges
        14: .line 592
            iconst_0
            istore 6 /* j */
        start local 6 // int j
        15: goto 19
        16: .line 593
      StackMap locals: org.hsqldb.RangeVariable[] int
      StackMap stack:
            aload 5 /* ranges */
            iload 6 /* j */
            aaload
            aload 0 /* this */
            invokevirtual org.hsqldb.Expression.getRangeVariable:()Lorg/hsqldb/RangeVariable;
            if_acmpne 18
        17: .line 594
            iconst_1
            ireturn
        18: .line 592
      StackMap locals:
      StackMap stack:
            iinc 6 /* j */ 1
      StackMap locals:
      StackMap stack:
        19: iload 6 /* j */
            aload 5 /* ranges */
            arraylength
            if_icmplt 16
        end local 6 // int j
        end local 5 // org.hsqldb.RangeVariable[] ranges
        20: .line 589
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        21: iload 4 /* i */
            aload 2 /* rangeGroups */
            arraylength
            if_icmplt 13
        end local 4 // int i
        22: .line 600
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            tableswitch { // 27 - 28
                   27: 23
                   28: 23
              default: 25
          }
        23: .line 604
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            ifne 25
        24: .line 605
            iconst_1
            ireturn
        25: .line 625
      StackMap locals:
      StackMap stack:
            getstatic org.hsqldb.OpTypes.aggregateFunctionSet:Lorg/hsqldb/lib/OrderedIntHashSet;
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            invokevirtual org.hsqldb.lib.OrderedIntHashSet.contains:(I)Z
            ifeq 27
        26: .line 626
            iconst_0
            ireturn
        27: .line 629
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            ifne 29
        28: .line 630
            iconst_0
            ireturn
        29: .line 633
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 4 /* result */
        start local 4 // boolean result
        30: .line 635
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        31: goto 40
        32: .line 636
      StackMap locals: int int
      StackMap stack:
            iload 4 /* result */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 5 /* i */
            aaload
            ifnull 37
        33: .line 637
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 5 /* i */
            aaload
            aload 1 /* expressions */
            aload 2 /* rangeGroups */
        34: .line 638
            aload 3 /* excludeSet */
        35: .line 637
            invokevirtual org.hsqldb.Expression.isComposedOf:(Lorg/hsqldb/lib/OrderedHashSet;[Lorg/hsqldb/RangeGroup;Lorg/hsqldb/lib/OrderedIntHashSet;)Z
        36: .line 638
            ifne 37
            iconst_0
            goto 38
      StackMap locals:
      StackMap stack: int
        37: iconst_1
      StackMap locals: org.hsqldb.Expression org.hsqldb.lib.OrderedHashSet org.hsqldb.RangeGroup[] org.hsqldb.lib.OrderedIntHashSet int int
      StackMap stack: int int
        38: iand
            istore 4 /* result */
        39: .line 635
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        40: iload 5 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 32
        end local 5 // int i
        41: .line 641
            iload 4 /* result */
            ireturn
        end local 4 // boolean result
        end local 3 // org.hsqldb.lib.OrderedIntHashSet excludeSet
        end local 2 // org.hsqldb.RangeGroup[] rangeGroups
        end local 1 // org.hsqldb.lib.OrderedHashSet expressions
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   42     0         this  Lorg/hsqldb/Expression;
            0   42     1  expressions  Lorg/hsqldb/lib/OrderedHashSet;
            0   42     2  rangeGroups  [Lorg/hsqldb/RangeGroup;
            0   42     3   excludeSet  Lorg/hsqldb/lib/OrderedIntHashSet;
            5   10     4            i  I
           12   22     4            i  I
           14   20     5       ranges  [Lorg/hsqldb/RangeVariable;
           15   20     6            j  I
           30   42     4       result  Z
           31   41     5            i  I
    MethodParameters:
             Name  Flags
      expressions  
      rangeGroups  
      excludeSet   

  org.hsqldb.Expression replaceColumnReferences(org.hsqldb.Session, org.hsqldb.RangeVariable, org.hsqldb.Expression[]);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/RangeVariable;[Lorg/hsqldb/Expression;)Lorg/hsqldb/Expression;
    flags: (0x0000) 
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.RangeVariable range
        start local 3 // org.hsqldb.Expression[] list
         0: .line 647
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: goto 6
         2: .line 648
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            ifnonnull 4
         3: .line 649
            goto 5
         4: .line 652
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            aload 1 /* session */
            aload 2 /* range */
            aload 3 /* list */
            invokevirtual org.hsqldb.Expression.replaceColumnReferences:(Lorg/hsqldb/Session;Lorg/hsqldb/RangeVariable;[Lorg/hsqldb/Expression;)Lorg/hsqldb/Expression;
            aastore
         5: .line 647
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 2
        end local 4 // int i
         7: .line 655
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            ifnull 11
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
            ifnull 11
         8: .line 656
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
            aload 1 /* session */
            aload 2 /* range */
         9: .line 657
            aload 3 /* list */
        10: .line 656
            invokevirtual org.hsqldb.QueryExpression.replaceColumnReferences:(Lorg/hsqldb/Session;Lorg/hsqldb/RangeVariable;[Lorg/hsqldb/Expression;)V
        11: .line 660
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 3 // org.hsqldb.Expression[] list
        end local 2 // org.hsqldb.RangeVariable range
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Lorg/hsqldb/Expression;
            0   12     1  session  Lorg/hsqldb/Session;
            0   12     2    range  Lorg/hsqldb/RangeVariable;
            0   12     3     list  [Lorg/hsqldb/Expression;
            1    7     4        i  I
    MethodParameters:
         Name  Flags
      session  
      range    
      list     

  void replaceRangeVariables(org.hsqldb.RangeVariable[], org.hsqldb.RangeVariable[]);
    descriptor: ([Lorg/hsqldb/RangeVariable;[Lorg/hsqldb/RangeVariable;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.RangeVariable[] ranges
        start local 2 // org.hsqldb.RangeVariable[] newRanges
         0: .line 666
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         1: goto 6
         2: .line 667
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
            ifnonnull 4
         3: .line 668
            goto 5
         4: .line 671
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
            aload 1 /* ranges */
            aload 2 /* newRanges */
            invokevirtual org.hsqldb.Expression.replaceRangeVariables:([Lorg/hsqldb/RangeVariable;[Lorg/hsqldb/RangeVariable;)V
         5: .line 666
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 2
        end local 3 // int i
         7: .line 674
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            ifnull 9
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
            ifnull 9
         8: .line 675
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
            aload 1 /* ranges */
            aload 2 /* newRanges */
            invokevirtual org.hsqldb.QueryExpression.replaceRangeVariables:([Lorg/hsqldb/RangeVariable;[Lorg/hsqldb/RangeVariable;)V
         9: .line 677
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.hsqldb.RangeVariable[] newRanges
        end local 1 // org.hsqldb.RangeVariable[] ranges
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       this  Lorg/hsqldb/Expression;
            0   10     1     ranges  [Lorg/hsqldb/RangeVariable;
            0   10     2  newRanges  [Lorg/hsqldb/RangeVariable;
            1    7     3          i  I
    MethodParameters:
           Name  Flags
      ranges     
      newRanges  

  void resetColumnReferences();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 681
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         1: goto 6
         2: .line 682
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 1 /* i */
            aaload
            ifnonnull 4
         3: .line 683
            goto 5
         4: .line 686
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 1 /* i */
            aaload
            invokevirtual org.hsqldb.Expression.resetColumnReferences:()V
         5: .line 681
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 1 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 2
        end local 1 // int i
         7: .line 688
            return
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/hsqldb/Expression;
            1    7     1     i  I

  org.hsqldb.Expression replaceExpressions(org.hsqldb.lib.OrderedHashSet, int);
    descriptor: (Lorg/hsqldb/lib/OrderedHashSet;I)Lorg/hsqldb/Expression;
    flags: (0x0000) 
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.lib.OrderedHashSet expressions
        start local 2 // int resultRangePosition
         0: .line 693
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            iconst_1
            if_icmpne 2
         1: .line 694
            aload 0 /* this */
            areturn
         2: .line 697
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            iconst_5
            if_icmpne 4
         3: .line 698
            aload 0 /* this */
            areturn
         4: .line 701
      StackMap locals:
      StackMap stack:
            aload 1 /* expressions */
            aload 0 /* this */
            invokevirtual org.hsqldb.lib.OrderedHashSet.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hsqldb.Expression
            astore 3 /* exp */
        start local 3 // org.hsqldb.Expression exp
         5: .line 703
            aload 3 /* exp */
            ifnull 11
         6: .line 704
            new org.hsqldb.ExpressionColumn
            dup
            aload 0 /* this */
         7: .line 705
            aload 3 /* exp */
            getfield org.hsqldb.Expression.resultTableColumnIndex:I
         8: .line 706
            iload 2 /* resultRangePosition */
         9: .line 704
            invokespecial org.hsqldb.ExpressionColumn.<init>:(Lorg/hsqldb/Expression;II)V
            astore 4 /* col */
        start local 4 // org.hsqldb.Expression col
        10: .line 708
            aload 4 /* col */
            areturn
        end local 4 // org.hsqldb.Expression col
        11: .line 711
      StackMap locals: org.hsqldb.Expression
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        12: goto 19
        13: .line 712
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            ifnonnull 15
        14: .line 713
            goto 18
        15: .line 716
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            aload 1 /* expressions */
        16: .line 717
            iload 2 /* resultRangePosition */
        17: .line 716
            invokevirtual org.hsqldb.Expression.replaceExpressions:(Lorg/hsqldb/lib/OrderedHashSet;I)Lorg/hsqldb/Expression;
            aastore
        18: .line 711
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        19: iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 13
        end local 4 // int i
        20: .line 720
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            ifnull 25
        21: .line 721
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
            ifnull 25
        22: .line 722
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
            aload 1 /* expressions */
        23: .line 723
            iload 2 /* resultRangePosition */
        24: .line 722
            invokevirtual org.hsqldb.QueryExpression.replaceExpressions:(Lorg/hsqldb/lib/OrderedHashSet;I)V
        25: .line 727
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 3 // org.hsqldb.Expression exp
        end local 2 // int resultRangePosition
        end local 1 // org.hsqldb.lib.OrderedHashSet expressions
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   26     0                 this  Lorg/hsqldb/Expression;
            0   26     1          expressions  Lorg/hsqldb/lib/OrderedHashSet;
            0   26     2  resultRangePosition  I
            5   26     3                  exp  Lorg/hsqldb/Expression;
           10   11     4                  col  Lorg/hsqldb/Expression;
           12   20     4                    i  I
    MethodParameters:
                     Name  Flags
      expressions          
      resultRangePosition  

  boolean hasAggregate();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 731
            aload 0 /* this */
            getfield org.hsqldb.Expression.hasAggregate:Z
            ireturn
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/Expression;

  boolean isDistinctAggregate();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 735
            aload 0 /* this */
            getfield org.hsqldb.Expression.isDistinctAggregate:Z
            ireturn
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/Expression;

  void setAggregate();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 739
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.Expression.hasAggregate:Z
         1: .line 740
            return
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/hsqldb/Expression;

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

  void setAlias(org.hsqldb.HsqlNameManager$SimpleName);
    descriptor: (Lorg/hsqldb/HsqlNameManager$SimpleName;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.HsqlNameManager$SimpleName name
         0: .line 750
            aload 0 /* this */
            aload 1 /* name */
            putfield org.hsqldb.Expression.alias:Lorg/hsqldb/HsqlNameManager$SimpleName;
         1: .line 751
            return
        end local 1 // org.hsqldb.HsqlNameManager$SimpleName name
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/hsqldb/Expression;
            0    2     1  name  Lorg/hsqldb/HsqlNameManager$SimpleName;
    MethodParameters:
      Name  Flags
      name  

  java.lang.String getAlias();
    descriptor: ()Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 758
            aload 0 /* this */
            getfield org.hsqldb.Expression.alias:Lorg/hsqldb/HsqlNameManager$SimpleName;
            ifnull 2
         1: .line 759
            aload 0 /* this */
            getfield org.hsqldb.Expression.alias:Lorg/hsqldb/HsqlNameManager$SimpleName;
            getfield org.hsqldb.HsqlNameManager$SimpleName.name:Ljava/lang/String;
            areturn
         2: .line 762
      StackMap locals:
      StackMap stack:
            ldc ""
            areturn
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/hsqldb/Expression;

  org.hsqldb.HsqlNameManager$SimpleName getSimpleName();
    descriptor: ()Lorg/hsqldb/HsqlNameManager$SimpleName;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 766
            aload 0 /* this */
            getfield org.hsqldb.Expression.alias:Lorg/hsqldb/HsqlNameManager$SimpleName;
            areturn
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/Expression;

  public int getType();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 773
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            ireturn
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/Expression;

  org.hsqldb.Expression getLeftNode();
    descriptor: ()Lorg/hsqldb/Expression;
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 780
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            ifle 1
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iconst_0
            aaload
            goto 2
         1: .line 781
      StackMap locals:
      StackMap stack:
            aconst_null
         2: .line 780
      StackMap locals:
      StackMap stack: org.hsqldb.Expression
            areturn
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/hsqldb/Expression;

  org.hsqldb.Expression getRightNode();
    descriptor: ()Lorg/hsqldb/Expression;
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 788
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            iconst_1
            if_icmple 1
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iconst_1
            aaload
            goto 2
         1: .line 789
      StackMap locals:
      StackMap stack:
            aconst_null
         2: .line 788
      StackMap locals:
      StackMap stack: org.hsqldb.Expression
            areturn
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/hsqldb/Expression;

  void setLeftNode(org.hsqldb.Expression);
    descriptor: (Lorg/hsqldb/Expression;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Expression e
         0: .line 793
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iconst_0
            aload 1 /* e */
            aastore
         1: .line 794
            return
        end local 1 // org.hsqldb.Expression e
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/hsqldb/Expression;
            0    2     1     e  Lorg/hsqldb/Expression;
    MethodParameters:
      Name  Flags
      e     

  void setRightNode(org.hsqldb.Expression);
    descriptor: (Lorg/hsqldb/Expression;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Expression e
         0: .line 797
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iconst_1
            aload 1 /* e */
            aastore
         1: .line 798
            return
        end local 1 // org.hsqldb.Expression e
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/hsqldb/Expression;
            0    2     1     e  Lorg/hsqldb/Expression;
    MethodParameters:
      Name  Flags
      e     

  int getSubType();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 801
            aload 0 /* this */
            getfield org.hsqldb.Expression.exprSubType:I
            ireturn
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/Expression;

  void setSubType(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.Expression this
        start local 1 // int subType
         0: .line 805
            aload 0 /* this */
            iload 1 /* subType */
            putfield org.hsqldb.Expression.exprSubType:I
         1: .line 806
            return
        end local 1 // int subType
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/hsqldb/Expression;
            0    2     1  subType  I
    MethodParameters:
         Name  Flags
      subType  

  org.hsqldb.RangeVariable getRangeVariable();
    descriptor: ()Lorg/hsqldb/RangeVariable;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 812
            aconst_null
            areturn
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/Expression;

  org.hsqldb.Expression replaceAliasInOrderBy(org.hsqldb.Session, org.hsqldb.Expression[], int);
    descriptor: (Lorg/hsqldb/Session;[Lorg/hsqldb/Expression;I)Lorg/hsqldb/Expression;
    flags: (0x0000) 
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.Expression[] columns
        start local 3 // int length
         0: .line 821
            aload 0 /* this */
            invokevirtual org.hsqldb.Expression.isSelfAggregate:()Z
            ifeq 2
         1: .line 822
            aload 0 /* this */
            areturn
         2: .line 825
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 10
         4: .line 826
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            ifnonnull 6
         5: .line 827
            goto 9
         6: .line 830
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            aload 1 /* session */
            aload 2 /* columns */
         7: .line 831
            iload 3 /* length */
         8: .line 830
            invokevirtual org.hsqldb.Expression.replaceAliasInOrderBy:(Lorg/hsqldb/Session;[Lorg/hsqldb/Expression;I)Lorg/hsqldb/Expression;
            aastore
         9: .line 825
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 4
        end local 4 // int i
        11: .line 834
            aload 0 /* this */
            areturn
        end local 3 // int length
        end local 2 // org.hsqldb.Expression[] columns
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Lorg/hsqldb/Expression;
            0   12     1  session  Lorg/hsqldb/Session;
            0   12     2  columns  [Lorg/hsqldb/Expression;
            0   12     3   length  I
            3   11     4        i  I
    MethodParameters:
         Name  Flags
      session  
      columns  
      length   

  org.hsqldb.lib.OrderedHashSet collectRangeVariables(org.hsqldb.lib.OrderedHashSet);
    descriptor: (Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.lib.OrderedHashSet set
         0: .line 842
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 5
         2: .line 843
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            ifnull 4
         3: .line 844
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            aload 1 /* set */
            invokevirtual org.hsqldb.Expression.collectRangeVariables:(Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 1 /* set */
         4: .line 842
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 2
        end local 2 // int i
         6: .line 848
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            ifnull 8
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
            ifnull 8
         7: .line 849
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
            aload 1 /* set */
            invokevirtual org.hsqldb.QueryExpression.collectRangeVariables:(Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 1 /* set */
         8: .line 852
      StackMap locals:
      StackMap stack:
            aload 1 /* set */
            areturn
        end local 1 // org.hsqldb.lib.OrderedHashSet set
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/hsqldb/Expression;
            0    9     1   set  Lorg/hsqldb/lib/OrderedHashSet;
            1    6     2     i  I
    MethodParameters:
      Name  Flags
      set   

  org.hsqldb.lib.OrderedHashSet collectRangeVariables(org.hsqldb.RangeVariable[], org.hsqldb.lib.OrderedHashSet);
    descriptor: ([Lorg/hsqldb/RangeVariable;Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.RangeVariable[] rangeVariables
        start local 2 // org.hsqldb.lib.OrderedHashSet set
         0: .line 858
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         1: goto 5
         2: .line 859
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
            ifnull 4
         3: .line 860
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
            aload 1 /* rangeVariables */
            aload 2 /* set */
            invokevirtual org.hsqldb.Expression.collectRangeVariables:([Lorg/hsqldb/RangeVariable;Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 2 /* set */
         4: .line 858
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 2
        end local 3 // int i
         6: .line 864
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            ifnull 10
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
            ifnull 10
         7: .line 865
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
            aload 1 /* rangeVariables */
         8: .line 866
            aload 2 /* set */
         9: .line 865
            invokevirtual org.hsqldb.QueryExpression.collectRangeVariables:([Lorg/hsqldb/RangeVariable;Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 2 /* set */
        10: .line 869
      StackMap locals:
      StackMap stack:
            aload 2 /* set */
            areturn
        end local 2 // org.hsqldb.lib.OrderedHashSet set
        end local 1 // org.hsqldb.RangeVariable[] rangeVariables
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   11     0            this  Lorg/hsqldb/Expression;
            0   11     1  rangeVariables  [Lorg/hsqldb/RangeVariable;
            0   11     2             set  Lorg/hsqldb/lib/OrderedHashSet;
            1    6     3               i  I
    MethodParameters:
                Name  Flags
      rangeVariables  
      set             

  void collectObjectNames(org.hsqldb.lib.Set);
    descriptor: (Lorg/hsqldb/lib/Set;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.lib.Set set
         0: .line 877
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 5
         2: .line 878
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            ifnull 4
         3: .line 879
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            aload 1 /* set */
            invokevirtual org.hsqldb.Expression.collectObjectNames:(Lorg/hsqldb/lib/Set;)V
         4: .line 877
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 2
        end local 2 // int i
         6: .line 883
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            ifnull 9
         7: .line 884
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
            ifnull 9
         8: .line 885
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
            aload 1 /* set */
            invokevirtual org.hsqldb.QueryExpression.collectObjectNames:(Lorg/hsqldb/lib/Set;)V
         9: .line 888
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.hsqldb.lib.Set set
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/hsqldb/Expression;
            0   10     1   set  Lorg/hsqldb/lib/Set;
            1    6     2     i  I
    MethodParameters:
      Name  Flags
      set   

  boolean hasReference(org.hsqldb.RangeVariable);
    descriptor: (Lorg/hsqldb/RangeVariable;)Z
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.RangeVariable range
         0: .line 895
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 6
         2: .line 896
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            ifnull 5
         3: .line 897
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            aload 1 /* range */
            invokevirtual org.hsqldb.Expression.hasReference:(Lorg/hsqldb/RangeVariable;)Z
            ifeq 5
         4: .line 898
            iconst_1
            ireturn
         5: .line 895
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 2
        end local 2 // int i
         7: .line 903
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            ifnull 10
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
            ifnull 10
         8: .line 904
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
            aload 1 /* range */
            invokevirtual org.hsqldb.QueryExpression.hasReference:(Lorg/hsqldb/RangeVariable;)Z
            ifeq 10
         9: .line 905
            iconst_1
            ireturn
        10: .line 909
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // org.hsqldb.RangeVariable range
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   11     0   this  Lorg/hsqldb/Expression;
            0   11     1  range  Lorg/hsqldb/RangeVariable;
            1    7     2      i  I
    MethodParameters:
       Name  Flags
      range  

  boolean hasReference(org.hsqldb.RangeVariable[], int);
    descriptor: ([Lorg/hsqldb/RangeVariable;I)Z
    flags: (0x0000) 
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.RangeVariable[] ranges
        start local 2 // int exclude
         0: .line 917
            aload 0 /* this */
            aload 1 /* ranges */
            aconst_null
            invokevirtual org.hsqldb.Expression.collectRangeVariables:([Lorg/hsqldb/RangeVariable;Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 3 /* set */
        start local 3 // org.hsqldb.lib.OrderedHashSet set
         1: .line 919
            aload 3 /* set */
            ifnonnull 3
         2: .line 920
            iconst_0
            ireturn
         3: .line 923
      StackMap locals: org.hsqldb.lib.OrderedHashSet
      StackMap stack:
            iconst_0
            istore 4 /* j */
        start local 4 // int j
         4: goto 8
         5: .line 924
      StackMap locals: int
      StackMap stack:
            aload 3 /* set */
            iload 4 /* j */
            invokevirtual org.hsqldb.lib.OrderedHashSet.get:(I)Ljava/lang/Object;
            aload 1 /* ranges */
            iload 2 /* exclude */
            aaload
            if_acmpeq 7
         6: .line 925
            iconst_1
            ireturn
         7: .line 923
      StackMap locals:
      StackMap stack:
            iinc 4 /* j */ 1
      StackMap locals:
      StackMap stack:
         8: iload 4 /* j */
            aload 3 /* set */
            invokevirtual org.hsqldb.lib.OrderedHashSet.size:()I
            if_icmplt 5
        end local 4 // int j
         9: .line 929
            iconst_0
            ireturn
        end local 3 // org.hsqldb.lib.OrderedHashSet set
        end local 2 // int exclude
        end local 1 // org.hsqldb.RangeVariable[] ranges
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Lorg/hsqldb/Expression;
            0   10     1   ranges  [Lorg/hsqldb/RangeVariable;
            0   10     2  exclude  I
            1   10     3      set  Lorg/hsqldb/lib/OrderedHashSet;
            4    9     4        j  I
    MethodParameters:
         Name  Flags
      ranges   
      exclude  

  public org.hsqldb.lib.HsqlList resolveColumnReferences(org.hsqldb.Session, org.hsqldb.RangeGroup, org.hsqldb.RangeGroup[], org.hsqldb.lib.HsqlList);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/RangeGroup;[Lorg/hsqldb/RangeGroup;Lorg/hsqldb/lib/HsqlList;)Lorg/hsqldb/lib/HsqlList;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=5
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.RangeGroup rangeGroup
        start local 3 // org.hsqldb.RangeGroup[] rangeGroups
        start local 4 // org.hsqldb.lib.HsqlList unresolvedSet
         0: .line 939
            aload 0 /* this */
            aload 1 /* session */
            aload 2 /* rangeGroup */
         1: .line 940
            aload 2 /* rangeGroup */
            invokeinterface org.hsqldb.RangeGroup.getRangeVariables:()[Lorg/hsqldb/RangeVariable;
            arraylength
         2: .line 941
            aload 3 /* rangeGroups */
            aload 4 /* unresolvedSet */
            iconst_1
         3: .line 939
            invokevirtual org.hsqldb.Expression.resolveColumnReferences:(Lorg/hsqldb/Session;Lorg/hsqldb/RangeGroup;I[Lorg/hsqldb/RangeGroup;Lorg/hsqldb/lib/HsqlList;Z)Lorg/hsqldb/lib/HsqlList;
            areturn
        end local 4 // org.hsqldb.lib.HsqlList unresolvedSet
        end local 3 // org.hsqldb.RangeGroup[] rangeGroups
        end local 2 // org.hsqldb.RangeGroup rangeGroup
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0           this  Lorg/hsqldb/Expression;
            0    4     1        session  Lorg/hsqldb/Session;
            0    4     2     rangeGroup  Lorg/hsqldb/RangeGroup;
            0    4     3    rangeGroups  [Lorg/hsqldb/RangeGroup;
            0    4     4  unresolvedSet  Lorg/hsqldb/lib/HsqlList;
    MethodParameters:
               Name  Flags
      session        
      rangeGroup     
      rangeGroups    
      unresolvedSet  

  public org.hsqldb.lib.HsqlList resolveColumnReferences(org.hsqldb.Session, org.hsqldb.RangeGroup, int, org.hsqldb.RangeGroup[], org.hsqldb.lib.HsqlList, boolean);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/RangeGroup;I[Lorg/hsqldb/RangeGroup;Lorg/hsqldb/lib/HsqlList;Z)Lorg/hsqldb/lib/HsqlList;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=10, args_size=7
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.RangeGroup rangeGroup
        start local 3 // int rangeCount
        start local 4 // org.hsqldb.RangeGroup[] rangeGroups
        start local 5 // org.hsqldb.lib.HsqlList unresolvedSet
        start local 6 // boolean acceptsSequences
         0: .line 948
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            iconst_1
            if_icmpne 2
         1: .line 949
            aload 5 /* unresolvedSet */
            areturn
         2: .line 952
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            tableswitch { // 26 - 30
                   26: 3
                   27: 28
                   28: 28
                   29: 28
                   30: 3
              default: 28
          }
         3: .line 956
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            ifnull 17
         4: .line 957
            aload 2 /* rangeGroup */
            invokeinterface org.hsqldb.RangeGroup.getRangeVariables:()[Lorg/hsqldb/RangeVariable;
            arraylength
            iload 3 /* rangeCount */
            if_icmple 11
         5: .line 960
            aload 2 /* rangeGroup */
            invokeinterface org.hsqldb.RangeGroup.getRangeVariables:()[Lorg/hsqldb/RangeVariable;
            iload 3 /* rangeCount */
         6: .line 959
            invokestatic org.hsqldb.lib.ArrayUtil.resizeArray:(Ljava/lang/Object;I)Ljava/lang/Object;
            checkcast org.hsqldb.RangeVariable[]
         7: .line 958
            astore 7 /* rangeVars */
        start local 7 // org.hsqldb.RangeVariable[] rangeVars
         8: .line 962
            new org.hsqldb.RangeGroup$RangeGroupSimple
            dup
            aload 7 /* rangeVars */
         9: .line 963
            aload 2 /* rangeGroup */
        10: .line 962
            invokespecial org.hsqldb.RangeGroup$RangeGroupSimple.<init>:([Lorg/hsqldb/RangeVariable;Lorg/hsqldb/RangeGroup;)V
            astore 2 /* rangeGroup */
        end local 7 // org.hsqldb.RangeVariable[] rangeVars
        11: .line 967
      StackMap locals:
      StackMap stack:
            aload 4 /* rangeGroups */
        12: .line 968
            aload 2 /* rangeGroup */
            aload 4 /* rangeGroups */
            arraylength
            iconst_1
        13: .line 967
            invokestatic org.hsqldb.lib.ArrayUtil.toAdjustedArray:(Ljava/lang/Object;Ljava/lang/Object;II)Ljava/lang/Object;
            checkcast org.hsqldb.RangeGroup[]
        14: .line 966
            astore 4 /* rangeGroups */
        15: .line 969
            new org.hsqldb.RangeGroup$RangeGroupSimple
            dup
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            invokespecial org.hsqldb.RangeGroup$RangeGroupSimple.<init>:(Lorg/hsqldb/TableDerived;)V
            astore 2 /* rangeGroup */
        16: .line 970
            iconst_0
            istore 3 /* rangeCount */
        17: .line 973
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        18: goto 26
        19: .line 974
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 7 /* i */
            aaload
            ifnonnull 21
        20: .line 975
            goto 25
        21: .line 978
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 7 /* i */
            aaload
            aload 1 /* session */
        22: .line 979
            aload 2 /* rangeGroup */
            iload 3 /* rangeCount */
            aload 4 /* rangeGroups */
        23: .line 980
            aload 5 /* unresolvedSet */
            iload 6 /* acceptsSequences */
        24: .line 978
            invokevirtual org.hsqldb.Expression.resolveColumnReferences:(Lorg/hsqldb/Session;Lorg/hsqldb/RangeGroup;I[Lorg/hsqldb/RangeGroup;Lorg/hsqldb/lib/HsqlList;Z)Lorg/hsqldb/lib/HsqlList;
            astore 5 /* unresolvedSet */
        25: .line 973
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        26: iload 7 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 19
        end local 7 // int i
        27: .line 983
            aload 5 /* unresolvedSet */
            areturn
        28: .line 987
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        29: goto 37
        30: .line 988
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 7 /* i */
            aaload
            ifnonnull 32
        31: .line 989
            goto 36
        32: .line 992
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 7 /* i */
            aaload
            aload 1 /* session */
        33: .line 993
            aload 2 /* rangeGroup */
            iload 3 /* rangeCount */
            aload 4 /* rangeGroups */
            aload 5 /* unresolvedSet */
        34: .line 994
            iload 6 /* acceptsSequences */
        35: .line 992
            invokevirtual org.hsqldb.Expression.resolveColumnReferences:(Lorg/hsqldb/Session;Lorg/hsqldb/RangeGroup;I[Lorg/hsqldb/RangeGroup;Lorg/hsqldb/lib/HsqlList;Z)Lorg/hsqldb/lib/HsqlList;
            astore 5 /* unresolvedSet */
        36: .line 987
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        37: iload 7 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 30
        end local 7 // int i
        38: .line 997
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            lookupswitch { // 4
                   19: 39
                   22: 40
                   23: 40
                  100: 40
              default: 67
          }
        39: .line 1000
      StackMap locals:
      StackMap stack:
            goto 67
        40: .line 1005
      StackMap locals:
      StackMap stack:
            aload 2 /* rangeGroup */
            invokeinterface org.hsqldb.RangeGroup.getRangeVariables:()[Lorg/hsqldb/RangeVariable;
            astore 7 /* rangeVars */
        start local 7 // org.hsqldb.RangeVariable[] rangeVars
        41: .line 1007
            aload 7 /* rangeVars */
            arraylength
            iload 3 /* rangeCount */
            if_icmple 47
        42: .line 1009
            aload 7 /* rangeVars */
        43: .line 1010
            iload 3 /* rangeCount */
        44: .line 1009
            invokestatic org.hsqldb.lib.ArrayUtil.resizeArray:(Ljava/lang/Object;I)Ljava/lang/Object;
            checkcast org.hsqldb.RangeVariable[]
        45: .line 1008
            astore 7 /* rangeVars */
        46: .line 1011
            new org.hsqldb.RangeGroup$RangeGroupSimple
            dup
            aload 7 /* rangeVars */
            aload 2 /* rangeGroup */
            invokespecial org.hsqldb.RangeGroup$RangeGroupSimple.<init>:([Lorg/hsqldb/RangeVariable;Lorg/hsqldb/RangeGroup;)V
            astore 2 /* rangeGroup */
        47: .line 1015
      StackMap locals: org.hsqldb.RangeVariable[]
      StackMap stack:
            aload 4 /* rangeGroups */
        48: .line 1016
            aload 2 /* rangeGroup */
            aload 4 /* rangeGroups */
            arraylength
            iconst_1
        49: .line 1015
            invokestatic org.hsqldb.lib.ArrayUtil.toAdjustedArray:(Ljava/lang/Object;Ljava/lang/Object;II)Ljava/lang/Object;
            checkcast org.hsqldb.RangeGroup[]
        50: .line 1014
            astore 4 /* rangeGroups */
        51: .line 1018
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
            astore 8 /* queryExpression */
        start local 8 // org.hsqldb.QueryExpression queryExpression
        52: .line 1020
            aload 8 /* queryExpression */
            ifnull 60
        53: .line 1021
            aload 8 /* queryExpression */
            aload 1 /* session */
            aload 4 /* rangeGroups */
            invokevirtual org.hsqldb.QueryExpression.resolveReferences:(Lorg/hsqldb/Session;[Lorg/hsqldb/RangeGroup;)V
        54: .line 1023
            aload 8 /* queryExpression */
            invokevirtual org.hsqldb.QueryExpression.areColumnsResolved:()Z
            ifne 60
        55: .line 1024
            aload 5 /* unresolvedSet */
            ifnonnull 57
        56: .line 1025
            new org.hsqldb.lib.ArrayListIdentity
            dup
            invokespecial org.hsqldb.lib.ArrayListIdentity.<init>:()V
            astore 5 /* unresolvedSet */
        57: .line 1028
      StackMap locals: org.hsqldb.QueryExpression
      StackMap stack:
            aload 5 /* unresolvedSet */
        58: .line 1029
            aload 8 /* queryExpression */
            invokevirtual org.hsqldb.QueryExpression.getUnresolvedExpressions:()Lorg/hsqldb/lib/HsqlList;
        59: .line 1028
            invokeinterface org.hsqldb.lib.HsqlList.addAll:(Lorg/hsqldb/lib/Collection;)Z
            pop
        60: .line 1033
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.dataExpression:Lorg/hsqldb/Expression;
            astore 9 /* dataExpression */
        start local 9 // org.hsqldb.Expression dataExpression
        61: .line 1035
            aload 9 /* dataExpression */
            ifnull 67
        62: .line 1037
            aload 9 /* dataExpression */
            aload 1 /* session */
        63: .line 1038
            aload 2 /* rangeGroup */
            iload 3 /* rangeCount */
            aload 4 /* rangeGroups */
        64: .line 1039
            aload 5 /* unresolvedSet */
            iload 6 /* acceptsSequences */
        65: .line 1037
            invokevirtual org.hsqldb.Expression.resolveColumnReferences:(Lorg/hsqldb/Session;Lorg/hsqldb/RangeGroup;I[Lorg/hsqldb/RangeGroup;Lorg/hsqldb/lib/HsqlList;Z)Lorg/hsqldb/lib/HsqlList;
        66: .line 1036
            astore 5 /* unresolvedSet */
        end local 9 // org.hsqldb.Expression dataExpression
        end local 8 // org.hsqldb.QueryExpression queryExpression
        end local 7 // org.hsqldb.RangeVariable[] rangeVars
        67: .line 1047
      StackMap locals:
      StackMap stack:
            aload 5 /* unresolvedSet */
            areturn
        end local 6 // boolean acceptsSequences
        end local 5 // org.hsqldb.lib.HsqlList unresolvedSet
        end local 4 // org.hsqldb.RangeGroup[] rangeGroups
        end local 3 // int rangeCount
        end local 2 // org.hsqldb.RangeGroup rangeGroup
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   68     0              this  Lorg/hsqldb/Expression;
            0   68     1           session  Lorg/hsqldb/Session;
            0   68     2        rangeGroup  Lorg/hsqldb/RangeGroup;
            0   68     3        rangeCount  I
            0   68     4       rangeGroups  [Lorg/hsqldb/RangeGroup;
            0   68     5     unresolvedSet  Lorg/hsqldb/lib/HsqlList;
            0   68     6  acceptsSequences  Z
            8   11     7         rangeVars  [Lorg/hsqldb/RangeVariable;
           18   27     7                 i  I
           29   38     7                 i  I
           41   67     7         rangeVars  [Lorg/hsqldb/RangeVariable;
           52   67     8   queryExpression  Lorg/hsqldb/QueryExpression;
           61   67     9    dataExpression  Lorg/hsqldb/Expression;
    MethodParameters:
                  Name  Flags
      session           
      rangeGroup        
      rangeCount        
      rangeGroups       
      unresolvedSet     
      acceptsSequences  

  public void setCorrelatedReferences(org.hsqldb.RangeGroup);
    descriptor: (Lorg/hsqldb/RangeGroup;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.RangeGroup resolvedRangeGroup
         0: .line 1052
            aload 0 /* this */
            getfield org.hsqldb.Expression.rangeGroups:[Lorg/hsqldb/RangeGroup;
            ifnonnull 8
         1: .line 1053
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 6
         3: .line 1054
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            ifnull 5
         4: .line 1055
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            aload 1 /* resolvedRangeGroup */
            invokevirtual org.hsqldb.Expression.setCorrelatedReferences:(Lorg/hsqldb/RangeGroup;)V
         5: .line 1053
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 3
        end local 2 // int i
         7: .line 1058
            goto 17
      StackMap locals:
      StackMap stack:
         8: aload 0 /* this */
            getfield org.hsqldb.Expression.rangeGroups:[Lorg/hsqldb/RangeGroup;
            aload 1 /* resolvedRangeGroup */
            invokestatic org.hsqldb.lib.ArrayUtil.find:([Ljava/lang/Object;Ljava/lang/Object;)I
            iconst_m1
            if_icmple 17
         9: .line 1059
            aload 0 /* this */
            getfield org.hsqldb.Expression.rangeGroups:[Lorg/hsqldb/RangeGroup;
            arraylength
            iconst_1
            isub
            istore 2 /* idx */
        start local 2 // int idx
        10: goto 15
        11: .line 1060
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.rangeGroups:[Lorg/hsqldb/RangeGroup;
            iload 2 /* idx */
            aaload
            aload 1 /* resolvedRangeGroup */
            if_acmpne 13
        12: .line 1061
            goto 16
        13: .line 1064
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.rangeGroups:[Lorg/hsqldb/RangeGroup;
            iload 2 /* idx */
            aaload
            invokeinterface org.hsqldb.RangeGroup.setCorrelated:()V
        14: .line 1059
            iinc 2 /* idx */ -1
      StackMap locals:
      StackMap stack:
        15: iload 2 /* idx */
            ifge 11
        end local 2 // int idx
        16: .line 1067
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.rangeGroup:Lorg/hsqldb/RangeGroup;
            invokeinterface org.hsqldb.RangeGroup.setCorrelated:()V
        17: .line 1069
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.hsqldb.RangeGroup resolvedRangeGroup
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   18     0                this  Lorg/hsqldb/Expression;
            0   18     1  resolvedRangeGroup  Lorg/hsqldb/RangeGroup;
            2    7     2                   i  I
           10   16     2                 idx  I
    MethodParameters:
                    Name  Flags
      resolvedRangeGroup  

  public org.hsqldb.lib.OrderedHashSet getUnkeyedColumns(org.hsqldb.lib.OrderedHashSet);
    descriptor: (Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.lib.OrderedHashSet unresolvedSet
         0: .line 1073
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            iconst_1
            if_icmpne 2
         1: .line 1074
            aload 1 /* unresolvedSet */
            areturn
         2: .line 1077
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: goto 8
         4: .line 1078
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            ifnonnull 6
         5: .line 1079
            goto 7
         6: .line 1082
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            aload 1 /* unresolvedSet */
            invokevirtual org.hsqldb.Expression.getUnkeyedColumns:(Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 1 /* unresolvedSet */
         7: .line 1077
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 4
        end local 2 // int i
         9: .line 1085
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            lookupswitch { // 4
                   19: 10
                   22: 10
                   23: 10
                  100: 10
              default: 14
          }
        10: .line 1091
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            ifnull 14
        11: .line 1092
            aload 1 /* unresolvedSet */
            ifnonnull 13
        12: .line 1093
            new org.hsqldb.lib.OrderedHashSet
            dup
            invokespecial org.hsqldb.lib.OrderedHashSet.<init>:()V
            astore 1 /* unresolvedSet */
        13: .line 1096
      StackMap locals:
      StackMap stack:
            aload 1 /* unresolvedSet */
            aload 0 /* this */
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
        14: .line 1103
      StackMap locals:
      StackMap stack:
            aload 1 /* unresolvedSet */
            areturn
        end local 1 // org.hsqldb.lib.OrderedHashSet unresolvedSet
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   15     0           this  Lorg/hsqldb/Expression;
            0   15     1  unresolvedSet  Lorg/hsqldb/lib/OrderedHashSet;
            3    9     2              i  I
    MethodParameters:
               Name  Flags
      unresolvedSet  

  public void resolveTypes(org.hsqldb.Session, org.hsqldb.Expression);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/Expression;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.Expression parent
         0: .line 1108
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         1: goto 5
         2: .line 1109
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
            ifnull 4
         3: .line 1110
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
            aload 1 /* session */
            aload 0 /* this */
            invokevirtual org.hsqldb.Expression.resolveTypes:(Lorg/hsqldb/Session;Lorg/hsqldb/Expression;)V
         4: .line 1108
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 2
        end local 3 // int i
         6: .line 1114
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            lookupswitch { // 7
                    1: 7
                   19: 18
                   22: 60
                   23: 60
                   25: 9
                   26: 8
                  100: 51
              default: 70
          }
         7: .line 1117
      StackMap locals:
      StackMap stack:
            goto 71
         8: .line 1122
      StackMap locals:
      StackMap stack:
            goto 71
         9: .line 1125
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            anewarray org.hsqldb.types.Type
            putfield org.hsqldb.Expression.nodeDataTypes:[Lorg/hsqldb/types/Type;
        10: .line 1127
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        11: goto 15
        12: .line 1128
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
            ifnull 14
        13: .line 1129
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodeDataTypes:[Lorg/hsqldb/types/Type;
            iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
            aastore
        14: .line 1127
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 12
        end local 3 // int i
        16: .line 1133
            aload 0 /* this */
            new org.hsqldb.types.RowType
            dup
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodeDataTypes:[Lorg/hsqldb/types/Type;
            invokespecial org.hsqldb.types.RowType.<init>:([Lorg/hsqldb/types/Type;)V
            putfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
        17: .line 1134
            goto 71
        18: .line 1137
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 3 /* nodeDataType */
        start local 3 // org.hsqldb.types.Type nodeDataType
        19: .line 1139
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        20: goto 25
        21: .line 1140
      StackMap locals: org.hsqldb.types.Type int
      StackMap stack:
            aload 3 /* nodeDataType */
        22: .line 1141
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
        23: .line 1140
            invokestatic org.hsqldb.types.Type.getAggregateType:(Lorg/hsqldb/types/Type;Lorg/hsqldb/types/Type;)Lorg/hsqldb/types/Type;
            astore 3 /* nodeDataType */
        24: .line 1139
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        25: iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 21
        end local 4 // int i
        26: .line 1144
            aload 3 /* nodeDataType */
            ifnull 44
        27: .line 1145
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        28: goto 43
        29: .line 1146
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
            ifnonnull 36
        30: .line 1147
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
        31: .line 1148
            aload 3 /* nodeDataType */
        32: .line 1149
            aload 1 /* session */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            getfield org.hsqldb.Expression.valueData:Ljava/lang/Object;
        33: .line 1148
            invokevirtual org.hsqldb.types.Type.convertToDefaultType:(Lorg/hsqldb/SessionInterface;Ljava/lang/Object;)Ljava/lang/Object;
        34: .line 1147
            putfield org.hsqldb.Expression.valueData:Ljava/lang/Object;
        35: .line 1150
            goto 42
        36: .line 1151
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
        37: .line 1152
            aload 3 /* nodeDataType */
            aload 1 /* session */
        38: .line 1153
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            getfield org.hsqldb.Expression.valueData:Ljava/lang/Object;
        39: .line 1154
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
        40: .line 1152
            invokevirtual org.hsqldb.types.Type.convertToType:(Lorg/hsqldb/SessionInterface;Ljava/lang/Object;Lorg/hsqldb/types/Type;)Ljava/lang/Object;
        41: .line 1151
            putfield org.hsqldb.Expression.valueData:Ljava/lang/Object;
        42: .line 1145
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        43: iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 29
        end local 4 // int i
        44: .line 1159
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        45: goto 48
        46: .line 1160
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            aload 3 /* nodeDataType */
            putfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
        47: .line 1159
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        48: iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 46
        end local 4 // int i
        49: .line 1163
            aload 0 /* this */
            new org.hsqldb.types.ArrayType
            dup
            aload 3 /* nodeDataType */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            invokespecial org.hsqldb.types.ArrayType.<init>:(Lorg/hsqldb/types/Type;I)V
            putfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
        50: .line 1165
            return
        end local 3 // org.hsqldb.types.Type nodeDataType
        51: .line 1168
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
            astore 3 /* queryExpression */
        start local 3 // org.hsqldb.QueryExpression queryExpression
        52: .line 1170
            aload 3 /* queryExpression */
            aload 1 /* session */
            invokevirtual org.hsqldb.QueryExpression.resolveTypes:(Lorg/hsqldb/Session;)V
        53: .line 1171
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            aload 1 /* session */
            invokevirtual org.hsqldb.TableDerived.prepareTable:(Lorg/hsqldb/Session;)V
        54: .line 1173
            aload 0 /* this */
            aload 3 /* queryExpression */
            invokevirtual org.hsqldb.QueryExpression.getColumnTypes:()[Lorg/hsqldb/types/Type;
            putfield org.hsqldb.Expression.nodeDataTypes:[Lorg/hsqldb/types/Type;
        55: .line 1174
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodeDataTypes:[Lorg/hsqldb/types/Type;
            iconst_0
            aaload
            putfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
        56: .line 1176
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodeDataTypes:[Lorg/hsqldb/types/Type;
            arraylength
            iconst_1
            if_icmple 58
        57: .line 1177
            sipush 5564
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        58: .line 1180
      StackMap locals: org.hsqldb.QueryExpression
      StackMap stack:
            aload 0 /* this */
            new org.hsqldb.types.ArrayType
            dup
            aload 0 /* this */
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
            ldc 2147483647
            invokespecial org.hsqldb.types.ArrayType.<init>:(Lorg/hsqldb/types/Type;I)V
            putfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
        59: .line 1182
            goto 71
        end local 3 // org.hsqldb.QueryExpression queryExpression
        60: .line 1186
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
            astore 3 /* queryExpression */
        start local 3 // org.hsqldb.QueryExpression queryExpression
        61: .line 1188
            aload 3 /* queryExpression */
            ifnull 63
        62: .line 1189
            aload 3 /* queryExpression */
            aload 1 /* session */
            invokevirtual org.hsqldb.QueryExpression.resolveTypes:(Lorg/hsqldb/Session;)V
        63: .line 1192
      StackMap locals: org.hsqldb.QueryExpression
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.dataExpression:Lorg/hsqldb/Expression;
            astore 4 /* dataExpression */
        start local 4 // org.hsqldb.Expression dataExpression
        64: .line 1194
            aload 4 /* dataExpression */
            ifnull 66
        65: .line 1195
            aload 4 /* dataExpression */
            aload 1 /* session */
            aconst_null
            invokevirtual org.hsqldb.Expression.resolveTypes:(Lorg/hsqldb/Session;Lorg/hsqldb/Expression;)V
        66: .line 1198
      StackMap locals: org.hsqldb.Expression
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            aload 1 /* session */
            invokevirtual org.hsqldb.TableDerived.prepareTable:(Lorg/hsqldb/Session;)V
        67: .line 1200
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            invokevirtual org.hsqldb.TableDerived.getColumnTypes:()[Lorg/hsqldb/types/Type;
            putfield org.hsqldb.Expression.nodeDataTypes:[Lorg/hsqldb/types/Type;
        68: .line 1201
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodeDataTypes:[Lorg/hsqldb/types/Type;
            iconst_0
            aaload
            putfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
        69: .line 1203
            goto 71
        end local 4 // org.hsqldb.Expression dataExpression
        end local 3 // org.hsqldb.QueryExpression queryExpression
        70: .line 1206
      StackMap locals:
      StackMap stack:
            sipush 201
            ldc "Expression"
            invokestatic org.hsqldb.error.Error.runtimeError:(ILjava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        71: .line 1208
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.hsqldb.Expression parent
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   72     0             this  Lorg/hsqldb/Expression;
            0   72     1          session  Lorg/hsqldb/Session;
            0   72     2           parent  Lorg/hsqldb/Expression;
            1    6     3                i  I
           11   16     3                i  I
           19   51     3     nodeDataType  Lorg/hsqldb/types/Type;
           20   26     4                i  I
           28   44     4                i  I
           45   49     4                i  I
           52   60     3  queryExpression  Lorg/hsqldb/QueryExpression;
           61   70     3  queryExpression  Lorg/hsqldb/QueryExpression;
           64   70     4   dataExpression  Lorg/hsqldb/Expression;
    MethodParameters:
         Name  Flags
      session  
      parent   

  void setAsConstantValue(org.hsqldb.Session, org.hsqldb.Expression);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/Expression;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.Expression parent
         0: .line 1212
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* session */
            invokevirtual org.hsqldb.Expression.getValue:(Lorg/hsqldb/Session;)Ljava/lang/Object;
            putfield org.hsqldb.Expression.valueData:Ljava/lang/Object;
         1: .line 1213
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.Expression.opType:I
         2: .line 1214
            aload 0 /* this */
            getstatic org.hsqldb.Expression.emptyArray:[Lorg/hsqldb/Expression;
            putfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
         3: .line 1215
            return
        end local 2 // org.hsqldb.Expression parent
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/hsqldb/Expression;
            0    4     1  session  Lorg/hsqldb/Session;
            0    4     2   parent  Lorg/hsqldb/Expression;
    MethodParameters:
         Name  Flags
      session  
      parent   

  void setAsConstantValue(java.lang.Object, org.hsqldb.Expression);
    descriptor: (Ljava/lang/Object;Lorg/hsqldb/Expression;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.hsqldb.Expression this
        start local 1 // java.lang.Object value
        start local 2 // org.hsqldb.Expression parent
         0: .line 1219
            aload 0 /* this */
            aload 1 /* value */
            putfield org.hsqldb.Expression.valueData:Ljava/lang/Object;
         1: .line 1220
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.Expression.opType:I
         2: .line 1221
            aload 0 /* this */
            getstatic org.hsqldb.Expression.emptyArray:[Lorg/hsqldb/Expression;
            putfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
         3: .line 1222
            return
        end local 2 // org.hsqldb.Expression parent
        end local 1 // java.lang.Object value
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/hsqldb/Expression;
            0    4     1   value  Ljava/lang/Object;
            0    4     2  parent  Lorg/hsqldb/Expression;
    MethodParameters:
        Name  Flags
      value   
      parent  

  void prepareTable(org.hsqldb.Session, org.hsqldb.Expression, int);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/Expression;I)V
    flags: (0x0000) 
    Code:
      stack=5, locals=10, args_size=4
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.Expression row
        start local 3 // int degree
         0: .line 1226
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodeDataTypes:[Lorg/hsqldb/types/Type;
            ifnull 2
         1: .line 1227
            return
         2: .line 1230
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 14
         4: .line 1231
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            astore 5 /* e */
        start local 5 // org.hsqldb.Expression e
         5: .line 1233
            aload 5 /* e */
            getfield org.hsqldb.Expression.opType:I
            bipush 25
            if_icmpne 8
         6: .line 1234
            iload 3 /* degree */
            aload 5 /* e */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmpeq 13
         7: .line 1235
            sipush 5564
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
         8: .line 1237
      StackMap locals: org.hsqldb.Expression
      StackMap stack:
            iload 3 /* degree */
            iconst_1
            if_icmpne 12
         9: .line 1238
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            new org.hsqldb.Expression
            dup
            bipush 25
            invokespecial org.hsqldb.Expression.<init>:(I)V
            aastore
        10: .line 1239
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            iconst_1
            anewarray org.hsqldb.Expression
            dup
            iconst_0
            aload 5 /* e */
            aastore
            putfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
        11: .line 1240
            goto 13
        12: .line 1241
      StackMap locals:
      StackMap stack:
            sipush 5564
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        end local 5 // org.hsqldb.Expression e
        13: .line 1230
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 4
        end local 4 // int i
        15: .line 1245
            aload 0 /* this */
            iload 3 /* degree */
            anewarray org.hsqldb.types.Type
            putfield org.hsqldb.Expression.nodeDataTypes:[Lorg/hsqldb/types/Type;
        16: .line 1247
            iconst_0
            istore 4 /* j */
        start local 4 // int j
        17: goto 62
        18: .line 1248
      StackMap locals:
      StackMap stack:
            aload 2 /* row */
            ifnonnull 19
            aconst_null
            goto 21
        19: .line 1249
      StackMap locals:
      StackMap stack:
            aload 2 /* row */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* j */
            aaload
        20: .line 1250
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
        21: .line 1248
      StackMap locals:
      StackMap stack: org.hsqldb.types.Type
            astore 5 /* type */
        start local 5 // org.hsqldb.types.Type type
        22: .line 1251
            aload 2 /* row */
            ifnonnull 23
            iconst_0
            goto 25
        23: .line 1252
      StackMap locals: org.hsqldb.types.Type
      StackMap stack:
            aload 2 /* row */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* j */
            aaload
        24: .line 1253
            invokevirtual org.hsqldb.Expression.isUnresolvedParam:()Z
        25: .line 1251
      StackMap locals:
      StackMap stack: int
            istore 6 /* hasUresolvedParameter */
        start local 6 // boolean hasUresolvedParameter
        26: .line 1255
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        27: goto 31
        28: .line 1256
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 7 /* i */
            aaload
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* j */
            aaload
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
            aload 5 /* type */
            invokestatic org.hsqldb.types.Type.getAggregateType:(Lorg/hsqldb/types/Type;Lorg/hsqldb/types/Type;)Lorg/hsqldb/types/Type;
            astore 5 /* type */
        29: .line 1257
            iload 6 /* hasUresolvedParameter */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 7 /* i */
            aaload
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* j */
            aaload
            invokevirtual org.hsqldb.Expression.isUnresolvedParam:()Z
            ior
            istore 6 /* hasUresolvedParameter */
        30: .line 1255
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        31: iload 7 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 28
        end local 7 // int i
        32: .line 1260
            aload 5 /* type */
            ifnonnull 34
        33: .line 1261
            getstatic org.hsqldb.types.Type.SQL_VARCHAR_DEFAULT:Lorg/hsqldb/types/CharacterType;
            astore 5 /* type */
        34: .line 1264
      StackMap locals:
      StackMap stack:
            aload 5 /* type */
            getfield org.hsqldb.types.Type.typeCode:I
            istore 7 /* typeCode */
        start local 7 // int typeCode
        35: .line 1266
            iload 6 /* hasUresolvedParameter */
            ifeq 48
            aload 5 /* type */
            invokevirtual org.hsqldb.types.Type.isCharacterType:()Z
            ifeq 48
        36: .line 1267
            iload 7 /* typeCode */
            iconst_1
            if_icmpeq 39
        37: .line 1268
            aload 5 /* type */
            getfield org.hsqldb.types.Type.precision:J
        38: .line 1269
            getstatic org.hsqldb.types.Type.SQL_VARCHAR_DEFAULT:Lorg/hsqldb/types/CharacterType;
            getfield org.hsqldb.types.CharacterType.precision:J
            lcmp
            ifge 48
        39: .line 1270
      StackMap locals: int
      StackMap stack:
            iload 7 /* typeCode */
            iconst_1
            if_icmpne 41
        40: .line 1271
            bipush 12
            istore 7 /* typeCode */
        41: .line 1275
      StackMap locals:
      StackMap stack:
            getstatic org.hsqldb.types.Type.SQL_VARCHAR_DEFAULT:Lorg/hsqldb/types/CharacterType;
            getfield org.hsqldb.types.CharacterType.precision:J
        42: .line 1276
            aload 5 /* type */
            getfield org.hsqldb.types.Type.precision:J
        43: .line 1275
            invokestatic java.lang.Math.max:(JJ)J
        44: .line 1274
            lstore 8 /* precision */
        start local 8 // long precision
        45: .line 1278
            iload 7 /* typeCode */
            lload 8 /* precision */
        46: .line 1279
            aload 5 /* type */
            invokevirtual org.hsqldb.types.Type.getCollation:()Lorg/hsqldb/types/Collation;
        47: .line 1278
            invokestatic org.hsqldb.types.CharacterType.getCharacterType:(IJLorg/hsqldb/types/Collation;)Lorg/hsqldb/types/CharacterType;
            astore 5 /* type */
        end local 8 // long precision
        48: .line 1283
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodeDataTypes:[Lorg/hsqldb/types/Type;
            iload 4 /* j */
            aload 5 /* type */
            aastore
        49: .line 1285
            aload 2 /* row */
            ifnull 51
            aload 2 /* row */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* j */
            aaload
            invokevirtual org.hsqldb.Expression.isUnresolvedParam:()Z
            ifeq 51
        50: .line 1286
            aload 2 /* row */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* j */
            aaload
            aload 5 /* type */
            putfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
        51: .line 1289
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        52: goto 60
        53: .line 1290
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 8 /* i */
            aaload
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* j */
            aaload
            invokevirtual org.hsqldb.Expression.isUnresolvedParam:()Z
            ifeq 56
        54: .line 1291
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 8 /* i */
            aaload
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* j */
            aaload
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodeDataTypes:[Lorg/hsqldb/types/Type;
            iload 4 /* j */
            aaload
            putfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
        55: .line 1293
            goto 59
        56: .line 1296
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 8 /* i */
            aaload
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* j */
            aaload
            getfield org.hsqldb.Expression.opType:I
            iconst_1
            if_icmpne 59
        57: .line 1297
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 8 /* i */
            aaload
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* j */
            aaload
            getfield org.hsqldb.Expression.valueData:Ljava/lang/Object;
            ifnonnull 59
        58: .line 1298
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 8 /* i */
            aaload
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* j */
            aaload
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodeDataTypes:[Lorg/hsqldb/types/Type;
            iload 4 /* j */
            aaload
            putfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
        59: .line 1289
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        60: iload 8 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 53
        end local 8 // int i
        end local 7 // int typeCode
        end local 6 // boolean hasUresolvedParameter
        end local 5 // org.hsqldb.types.Type type
        61: .line 1247
            iinc 4 /* j */ 1
      StackMap locals: org.hsqldb.Expression org.hsqldb.Session org.hsqldb.Expression int int
      StackMap stack:
        62: iload 4 /* j */
            iload 3 /* degree */
            if_icmplt 18
        end local 4 // int j
        63: .line 1303
            return
        end local 3 // int degree
        end local 2 // org.hsqldb.Expression row
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   64     0                   this  Lorg/hsqldb/Expression;
            0   64     1                session  Lorg/hsqldb/Session;
            0   64     2                    row  Lorg/hsqldb/Expression;
            0   64     3                 degree  I
            3   15     4                      i  I
            5   13     5                      e  Lorg/hsqldb/Expression;
           17   63     4                      j  I
           22   61     5                   type  Lorg/hsqldb/types/Type;
           26   61     6  hasUresolvedParameter  Z
           27   32     7                      i  I
           35   61     7               typeCode  I
           45   48     8              precision  J
           52   61     8                      i  I
    MethodParameters:
         Name  Flags
      session  
      row      
      degree   

  void insertValuesIntoSubqueryTable(org.hsqldb.Session, org.hsqldb.persist.PersistentStore);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/persist/PersistentStore;)V
    flags: (0x0000) 
    Code:
      stack=7, locals=7, args_size=3
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.persist.PersistentStore store
         0: .line 1330
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         1: goto 16
         2: .line 1331
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
            aload 1 /* session */
            invokevirtual org.hsqldb.Expression.getRowValue:(Lorg/hsqldb/Session;)[Ljava/lang/Object;
            astore 4 /* values */
        start local 4 // java.lang.Object[] values
         3: .line 1332
            aload 2 /* store */
            invokeinterface org.hsqldb.persist.PersistentStore.getTable:()Lorg/hsqldb/TableBase;
            invokevirtual org.hsqldb.TableBase.getEmptyRowData:()[Ljava/lang/Object;
            astore 5 /* data */
        start local 5 // java.lang.Object[] data
         4: .line 1334
            iconst_0
            istore 6 /* j */
        start local 6 // int j
         5: goto 10
         6: .line 1335
      StackMap locals: java.lang.Object[] java.lang.Object[] int
      StackMap stack:
            aload 5 /* data */
            iload 6 /* j */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodeDataTypes:[Lorg/hsqldb/types/Type;
            iload 6 /* j */
            aaload
            aload 1 /* session */
            aload 4 /* values */
            iload 6 /* j */
            aaload
         7: .line 1336
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 6 /* j */
            aaload
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
         8: .line 1335
            invokevirtual org.hsqldb.types.Type.convertToType:(Lorg/hsqldb/SessionInterface;Ljava/lang/Object;Lorg/hsqldb/types/Type;)Ljava/lang/Object;
            aastore
         9: .line 1334
            iinc 6 /* j */ 1
      StackMap locals:
      StackMap stack:
        10: iload 6 /* j */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodeDataTypes:[Lorg/hsqldb/types/Type;
            arraylength
            if_icmplt 6
        end local 6 // int j
        11: .line 1339
            aload 2 /* store */
            aload 1 /* session */
            aload 5 /* data */
            iconst_0
            invokeinterface org.hsqldb.persist.PersistentStore.getNewCachedObject:(Lorg/hsqldb/Session;Ljava/lang/Object;Z)Lorg/hsqldb/persist/CachedObject;
            checkcast org.hsqldb.Row
            astore 6 /* row */
        start local 6 // org.hsqldb.Row row
        12: .line 1342
            aload 2 /* store */
            aload 1 /* session */
            aload 6 /* row */
            invokeinterface org.hsqldb.persist.PersistentStore.indexRow:(Lorg/hsqldb/Session;Lorg/hsqldb/Row;)V
        13: .line 1343
            goto 15
      StackMap locals: org.hsqldb.Expression org.hsqldb.Session org.hsqldb.persist.PersistentStore int java.lang.Object[] java.lang.Object[] org.hsqldb.Row
      StackMap stack: org.hsqldb.HsqlException
        14: pop
        end local 6 // org.hsqldb.Row row
        end local 5 // java.lang.Object[] data
        end local 4 // java.lang.Object[] values
        15: .line 1330
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 2
        end local 3 // int i
        17: .line 1345
            return
        end local 2 // org.hsqldb.persist.PersistentStore store
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   18     0     this  Lorg/hsqldb/Expression;
            0   18     1  session  Lorg/hsqldb/Session;
            0   18     2    store  Lorg/hsqldb/persist/PersistentStore;
            1   17     3        i  I
            3   15     4   values  [Ljava/lang/Object;
            4   15     5     data  [Ljava/lang/Object;
            5   11     6        j  I
           12   15     6      row  Lorg/hsqldb/Row;
      Exception table:
        from    to  target  type
          12    13      14  Class org.hsqldb.HsqlException
    MethodParameters:
         Name  Flags
      session  
      store    

  java.lang.String getColumnName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 1353
            aload 0 /* this */
            invokevirtual org.hsqldb.Expression.getAlias:()Ljava/lang/String;
            areturn
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/Expression;

  public org.hsqldb.ColumnSchema getColumn();
    descriptor: ()Lorg/hsqldb/ColumnSchema;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 1357
            aconst_null
            areturn
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/Expression;

  int getColumnIndex();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 1364
            aload 0 /* this */
            getfield org.hsqldb.Expression.columnIndex:I
            ireturn
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/Expression;

  org.hsqldb.types.Type getDataType();
    descriptor: ()Lorg/hsqldb/types/Type;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 1371
            aload 0 /* this */
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
            areturn
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/Expression;

  byte getNullability();
    descriptor: ()B
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 1375
            aload 0 /* this */
            getfield org.hsqldb.Expression.nullability:B
            ireturn
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/Expression;

  org.hsqldb.types.Type getNodeDataType(int);
    descriptor: (I)Lorg/hsqldb/types/Type;
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.Expression this
        start local 1 // int i
         0: .line 1380
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodeDataTypes:[Lorg/hsqldb/types/Type;
            ifnonnull 4
         1: .line 1381
            iload 1 /* i */
            ifle 3
         2: .line 1382
            sipush 201
            ldc "Expression"
            invokestatic org.hsqldb.error.Error.runtimeError:(ILjava/lang/String;)Ljava/lang/RuntimeException;
            athrow
         3: .line 1385
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
            areturn
         4: .line 1387
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodeDataTypes:[Lorg/hsqldb/types/Type;
            iload 1 /* i */
            aaload
            areturn
        end local 1 // int i
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/hsqldb/Expression;
            0    5     1     i  I
    MethodParameters:
      Name  Flags
      i     

  org.hsqldb.types.Type[] getNodeDataTypes();
    descriptor: ()[Lorg/hsqldb/types/Type;
    flags: (0x0000) 
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 1393
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodeDataTypes:[Lorg/hsqldb/types/Type;
            ifnonnull 2
         1: .line 1394
            iconst_1
            anewarray org.hsqldb.types.Type
            dup
            iconst_0
            aload 0 /* this */
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
            aastore
            areturn
         2: .line 1396
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodeDataTypes:[Lorg/hsqldb/types/Type;
            areturn
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/hsqldb/Expression;

  int getDegree();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 1402
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            tableswitch { // 22 - 30
                   22: 2
                   23: 2
                   24: 5
                   25: 1
                   26: 5
                   27: 5
                   28: 5
                   29: 5
                   30: 2
              default: 5
          }
         1: .line 1405
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            ireturn
         2: .line 1410
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            ifnonnull 4
         3: .line 1411
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodeDataTypes:[Lorg/hsqldb/types/Type;
            arraylength
            ireturn
         4: .line 1414
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
            invokevirtual org.hsqldb.QueryExpression.getColumnCount:()I
            ireturn
         5: .line 1417
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/hsqldb/Expression;

  public org.hsqldb.Table getTable();
    descriptor: ()Lorg/hsqldb/Table;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 1422
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            areturn
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/Expression;

  public void materialise(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Session session
         0: .line 1427
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            ifnonnull 2
         1: .line 1428
            return
         2: .line 1431
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            invokevirtual org.hsqldb.TableDerived.isCorrelated:()Z
            ifeq 5
         3: .line 1432
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            aload 1 /* session */
            invokevirtual org.hsqldb.TableDerived.materialiseCorrelated:(Lorg/hsqldb/Session;)V
         4: .line 1433
            goto 6
         5: .line 1434
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            aload 1 /* session */
            invokevirtual org.hsqldb.TableDerived.materialise:(Lorg/hsqldb/Session;)V
         6: .line 1436
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/hsqldb/Expression;
            0    7     1  session  Lorg/hsqldb/Session;
    MethodParameters:
         Name  Flags
      session  

  java.lang.Object getValue(org.hsqldb.Session, org.hsqldb.types.Type);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/types/Type;)Ljava/lang/Object;
    flags: (0x0000) 
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.types.Type type
         0: .line 1440
            aload 0 /* this */
            aload 1 /* session */
            invokevirtual org.hsqldb.Expression.getValue:(Lorg/hsqldb/Session;)Ljava/lang/Object;
            astore 3 /* o */
        start local 3 // java.lang.Object o
         1: .line 1442
            aload 3 /* o */
            ifnull 2
            aload 0 /* this */
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
            aload 2 /* type */
            if_acmpne 3
         2: .line 1443
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 3 /* o */
            areturn
         3: .line 1446
      StackMap locals:
      StackMap stack:
            aload 2 /* type */
            aload 1 /* session */
            aload 3 /* o */
            aload 0 /* this */
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
            invokevirtual org.hsqldb.types.Type.convertToType:(Lorg/hsqldb/SessionInterface;Ljava/lang/Object;Lorg/hsqldb/types/Type;)Ljava/lang/Object;
            areturn
        end local 3 // java.lang.Object o
        end local 2 // org.hsqldb.types.Type type
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/hsqldb/Expression;
            0    4     1  session  Lorg/hsqldb/Session;
            0    4     2     type  Lorg/hsqldb/types/Type;
            1    4     3        o  Ljava/lang/Object;
    MethodParameters:
         Name  Flags
      session  
      type     

  public java.lang.Object getConstantValueNoCheck(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Session session
         0: .line 1452
            aload 0 /* this */
            aload 1 /* session */
            invokevirtual org.hsqldb.Expression.getValue:(Lorg/hsqldb/Session;)Ljava/lang/Object;
         1: areturn
         2: .line 1453
      StackMap locals:
      StackMap stack: org.hsqldb.HsqlException
            pop
         3: .line 1454
            aconst_null
            areturn
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/hsqldb/Expression;
            0    4     1  session  Lorg/hsqldb/Session;
      Exception table:
        from    to  target  type
           0     1       2  Class org.hsqldb.HsqlException
    MethodParameters:
         Name  Flags
      session  

  public java.lang.Object[] getRowValue(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)[Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Session session
         0: .line 1460
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            tableswitch { // 22 - 25
                   22: 8
                   23: 8
                   24: 9
                   25: 1
              default: 9
          }
         1: .line 1463
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            anewarray java.lang.Object
            astore 2 /* data */
        start local 2 // java.lang.Object[] data
         2: .line 1465
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 6
         4: .line 1466
      StackMap locals: java.lang.Object[] int
      StackMap stack:
            aload 2 /* data */
            iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
            aload 1 /* session */
            invokevirtual org.hsqldb.Expression.getValue:(Lorg/hsqldb/Session;)Ljava/lang/Object;
            aastore
         5: .line 1465
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 4
        end local 3 // int i
         7: .line 1469
            aload 2 /* data */
            areturn
        end local 2 // java.lang.Object[] data
         8: .line 1473
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
            aload 1 /* session */
            invokevirtual org.hsqldb.QueryExpression.getValues:(Lorg/hsqldb/Session;)[Ljava/lang/Object;
            areturn
         9: .line 1476
      StackMap locals:
      StackMap stack:
            sipush 201
            ldc "Expression"
            invokestatic org.hsqldb.error.Error.runtimeError:(ILjava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Lorg/hsqldb/Expression;
            0   10     1  session  Lorg/hsqldb/Session;
            2    8     2     data  [Ljava/lang/Object;
            3    7     3        i  I
    MethodParameters:
         Name  Flags
      session  

  public java.lang.Object getValue(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Session session
         0: .line 1482
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            lookupswitch { // 6
                    1: 1
                   19: 11
                   22: 30
                   23: 30
                   25: 2
                  100: 18
              default: 35
          }
         1: .line 1485
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.valueData:Ljava/lang/Object;
            areturn
         2: .line 1488
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            iconst_1
            if_icmpne 4
         3: .line 1489
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iconst_0
            aaload
            aload 1 /* session */
            invokevirtual org.hsqldb.Expression.getValue:(Lorg/hsqldb/Session;)Ljava/lang/Object;
            areturn
         4: .line 1492
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            anewarray java.lang.Object
            astore 2 /* row */
        start local 2 // java.lang.Object[] row
         5: .line 1494
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         6: goto 9
         7: .line 1495
      StackMap locals: java.lang.Object[] int
      StackMap stack:
            aload 2 /* row */
            iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
            aload 1 /* session */
            invokevirtual org.hsqldb.Expression.getValue:(Lorg/hsqldb/Session;)Ljava/lang/Object;
            aastore
         8: .line 1494
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 7
        end local 3 // int i
        10: .line 1498
            aload 2 /* row */
            areturn
        end local 2 // java.lang.Object[] row
        11: .line 1501
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            anewarray java.lang.Object
            astore 2 /* array */
        start local 2 // java.lang.Object[] array
        12: .line 1503
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        13: goto 16
        14: .line 1504
      StackMap locals: java.lang.Object[] int
      StackMap stack:
            aload 2 /* array */
            iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
            aload 1 /* session */
            invokevirtual org.hsqldb.Expression.getValue:(Lorg/hsqldb/Session;)Ljava/lang/Object;
            aastore
        15: .line 1503
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 14
        end local 3 // int i
        17: .line 1507
            aload 2 /* array */
            areturn
        end local 2 // java.lang.Object[] array
        18: .line 1510
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            aload 1 /* session */
            invokevirtual org.hsqldb.TableDerived.materialiseCorrelated:(Lorg/hsqldb/Session;)V
        19: .line 1512
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            aload 1 /* session */
            invokevirtual org.hsqldb.TableDerived.getNavigator:(Lorg/hsqldb/Session;)Lorg/hsqldb/navigator/RowSetNavigatorData;
            astore 2 /* nav */
        start local 2 // org.hsqldb.navigator.RowSetNavigatorData nav
        20: .line 1513
            aload 2 /* nav */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.getSize:()I
            istore 3 /* size */
        start local 3 // int size
        21: .line 1514
            iload 3 /* size */
            anewarray java.lang.Object
            astore 4 /* array */
        start local 4 // java.lang.Object[] array
        22: .line 1516
            aload 2 /* nav */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.beforeFirst:()Z
            pop
        23: .line 1518
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        24: goto 28
        25: .line 1519
      StackMap locals: org.hsqldb.Expression org.hsqldb.Session org.hsqldb.navigator.RowSetNavigatorData int java.lang.Object[] int
      StackMap stack:
            aload 2 /* nav */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.getCurrent:()[Ljava/lang/Object;
            astore 6 /* data */
        start local 6 // java.lang.Object[] data
        26: .line 1521
            aload 4 /* array */
            iload 5 /* i */
            aload 6 /* data */
            iconst_0
            aaload
            aastore
        end local 6 // java.lang.Object[] data
        27: .line 1518
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        28: aload 2 /* nav */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.next:()Z
            ifne 25
        end local 5 // int i
        29: .line 1524
            aload 4 /* array */
            areturn
        end local 4 // java.lang.Object[] array
        end local 3 // int size
        end local 2 // org.hsqldb.navigator.RowSetNavigatorData nav
        30: .line 1528
      StackMap locals: org.hsqldb.Expression org.hsqldb.Session
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            aload 1 /* session */
            invokevirtual org.hsqldb.TableDerived.materialiseCorrelated:(Lorg/hsqldb/Session;)V
        31: .line 1530
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            aload 1 /* session */
            invokevirtual org.hsqldb.TableDerived.getValues:(Lorg/hsqldb/Session;)[Ljava/lang/Object;
            astore 2 /* value */
        start local 2 // java.lang.Object[] value
        32: .line 1532
            aload 2 /* value */
            arraylength
            iconst_1
            if_icmpne 34
        33: .line 1533
            aload 2 /* value */
            iconst_0
            aaload
            areturn
        34: .line 1536
      StackMap locals: java.lang.Object[]
      StackMap stack:
            aload 2 /* value */
            areturn
        end local 2 // java.lang.Object[] value
        35: .line 1539
      StackMap locals:
      StackMap stack:
            sipush 201
            ldc "Expression"
            invokestatic org.hsqldb.error.Error.runtimeError:(ILjava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   36     0     this  Lorg/hsqldb/Expression;
            0   36     1  session  Lorg/hsqldb/Session;
            5   11     2      row  [Ljava/lang/Object;
            6   10     3        i  I
           12   18     2    array  [Ljava/lang/Object;
           13   17     3        i  I
           20   30     2      nav  Lorg/hsqldb/navigator/RowSetNavigatorData;
           21   30     3     size  I
           22   30     4    array  [Ljava/lang/Object;
           24   29     5        i  I
           26   27     6     data  [Ljava/lang/Object;
           32   35     2    value  [Ljava/lang/Object;
    MethodParameters:
         Name  Flags
      session  

  public org.hsqldb.result.Result getResult(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)Lorg/hsqldb/result/Result;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Session session
         0: .line 1545
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            tableswitch { // 19 - 23
                   19: 1
                   20: 16
                   21: 16
                   22: 16
                   23: 11
              default: 16
          }
         1: .line 1548
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            aload 1 /* session */
            invokevirtual org.hsqldb.TableDerived.getNavigator:(Lorg/hsqldb/Session;)Lorg/hsqldb/navigator/RowSetNavigatorData;
            astore 2 /* navigator */
        start local 2 // org.hsqldb.navigator.RowSetNavigatorData navigator
         2: .line 1549
            aload 2 /* navigator */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.getSize:()I
            anewarray java.lang.Object
            astore 3 /* array */
        start local 3 // java.lang.Object[] array
         3: .line 1551
            aload 2 /* navigator */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.beforeFirst:()Z
            pop
         4: .line 1553
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         5: goto 9
         6: .line 1554
      StackMap locals: org.hsqldb.navigator.RowSetNavigatorData java.lang.Object[] int
      StackMap stack:
            aload 2 /* navigator */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.getCurrent:()[Ljava/lang/Object;
            astore 5 /* data */
        start local 5 // java.lang.Object[] data
         7: .line 1556
            aload 3 /* array */
            iload 4 /* i */
            aload 5 /* data */
            iconst_0
            aaload
            aastore
        end local 5 // java.lang.Object[] data
         8: .line 1553
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: aload 2 /* navigator */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.next:()Z
            ifne 6
        end local 4 // int i
        10: .line 1559
            aload 3 /* array */
            invokestatic org.hsqldb.result.Result.newPSMResult:(Ljava/lang/Object;)Lorg/hsqldb/result/Result;
            areturn
        end local 3 // java.lang.Object[] array
        end local 2 // org.hsqldb.navigator.RowSetNavigatorData navigator
        11: .line 1562
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            aload 1 /* session */
            invokevirtual org.hsqldb.TableDerived.materialiseCorrelated:(Lorg/hsqldb/Session;)V
        12: .line 1564
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            aload 1 /* session */
            invokevirtual org.hsqldb.TableDerived.getNavigator:(Lorg/hsqldb/Session;)Lorg/hsqldb/navigator/RowSetNavigatorData;
            astore 2 /* navigator */
        start local 2 // org.hsqldb.navigator.RowSetNavigatorData navigator
        13: .line 1565
            aload 2 /* navigator */
            invokestatic org.hsqldb.result.Result.newResult:(Lorg/hsqldb/navigator/RowSetNavigator;)Lorg/hsqldb/result/Result;
            astore 3 /* result */
        start local 3 // org.hsqldb.result.Result result
        14: .line 1567
            aload 3 /* result */
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
            invokevirtual org.hsqldb.QueryExpression.getMetaData:()Lorg/hsqldb/result/ResultMetaData;
            putfield org.hsqldb.result.Result.metaData:Lorg/hsqldb/result/ResultMetaData;
        15: .line 1569
            aload 3 /* result */
            areturn
        end local 3 // org.hsqldb.result.Result result
        end local 2 // org.hsqldb.navigator.RowSetNavigatorData navigator
        16: .line 1572
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* session */
            invokevirtual org.hsqldb.Expression.getValue:(Lorg/hsqldb/Session;)Ljava/lang/Object;
            astore 2 /* value */
        start local 2 // java.lang.Object value
        17: .line 1574
            aload 2 /* value */
            invokestatic org.hsqldb.result.Result.newPSMResult:(Ljava/lang/Object;)Lorg/hsqldb/result/Result;
            areturn
        end local 2 // java.lang.Object value
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   18     0       this  Lorg/hsqldb/Expression;
            0   18     1    session  Lorg/hsqldb/Session;
            2   11     2  navigator  Lorg/hsqldb/navigator/RowSetNavigatorData;
            3   11     3      array  [Ljava/lang/Object;
            5   10     4          i  I
            7    8     5       data  [Ljava/lang/Object;
           13   16     2  navigator  Lorg/hsqldb/navigator/RowSetNavigatorData;
           14   16     3     result  Lorg/hsqldb/result/Result;
           17   18     2      value  Ljava/lang/Object;
    MethodParameters:
         Name  Flags
      session  

  public boolean testCondition(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Session session
         0: .line 1580
            getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
            aload 0 /* this */
            aload 1 /* session */
            invokevirtual org.hsqldb.Expression.getValue:(Lorg/hsqldb/Session;)Ljava/lang/Object;
            invokevirtual java.lang.Boolean.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hsqldb/Expression;
            0    1     1  session  Lorg/hsqldb/Session;
    MethodParameters:
         Name  Flags
      session  

  static int countNulls(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // java.lang.Object[] a
         0: .line 1585
            iconst_0
            istore 1 /* nulls */
        start local 1 // int nulls
         1: .line 1587
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 6
         3: .line 1588
      StackMap locals: int int
      StackMap stack:
            aload 0 /* a */
            iload 2 /* i */
            aaload
            ifnonnull 5
         4: .line 1589
            iinc 1 /* nulls */ 1
         5: .line 1587
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* i */
            aload 0 /* a */
            arraylength
            if_icmplt 3
        end local 2 // int i
         7: .line 1593
            iload 1 /* nulls */
            ireturn
        end local 1 // int nulls
        end local 0 // java.lang.Object[] a
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0      a  [Ljava/lang/Object;
            1    8     1  nulls  I
            2    7     2      i  I
    MethodParameters:
      Name  Flags
      a     

  public boolean isTrue();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 1597
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            iconst_1
            if_icmpne 3
            aload 0 /* this */
            getfield org.hsqldb.Expression.valueData:Ljava/lang/Object;
            instanceof java.lang.Boolean
            ifeq 3
         1: .line 1598
            aload 0 /* this */
            getfield org.hsqldb.Expression.valueData:Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 3
         2: .line 1597
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/hsqldb/Expression;

  public boolean isFalse();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 1602
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            iconst_1
            if_icmpne 3
            aload 0 /* this */
            getfield org.hsqldb.Expression.valueData:Ljava/lang/Object;
            instanceof java.lang.Boolean
            ifeq 3
         1: .line 1603
            aload 0 /* this */
            getfield org.hsqldb.Expression.valueData:Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifne 3
         2: .line 1602
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/hsqldb/Expression;

  public boolean isIndexable(org.hsqldb.RangeVariable);
    descriptor: (Lorg/hsqldb/RangeVariable;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.RangeVariable range
         0: .line 1607
            iconst_0
            ireturn
        end local 1 // org.hsqldb.RangeVariable range
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/hsqldb/Expression;
            0    1     1  range  Lorg/hsqldb/RangeVariable;
    MethodParameters:
       Name  Flags
      range  

  static void convertToType(org.hsqldb.Session, java.lang.Object[], org.hsqldb.types.Type[], org.hsqldb.types.Type[]);
    descriptor: (Lorg/hsqldb/Session;[Ljava/lang/Object;[Lorg/hsqldb/types/Type;[Lorg/hsqldb/types/Type;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=5, args_size=4
        start local 0 // org.hsqldb.Session session
        start local 1 // java.lang.Object[] data
        start local 2 // org.hsqldb.types.Type[] dataType
        start local 3 // org.hsqldb.types.Type[] newType
         0: .line 1613
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: goto 7
         2: .line 1614
      StackMap locals: int
      StackMap stack:
            aload 2 /* dataType */
            iload 4 /* i */
            aaload
            aload 3 /* newType */
            iload 4 /* i */
            aaload
            invokevirtual org.hsqldb.types.Type.canConvertFrom:(Lorg/hsqldb/types/Type;)Z
            ifne 6
         3: .line 1615
            aload 1 /* data */
            iload 4 /* i */
            aload 3 /* newType */
            iload 4 /* i */
            aaload
            aload 0 /* session */
            aload 1 /* data */
            iload 4 /* i */
            aaload
         4: .line 1616
            aload 2 /* dataType */
            iload 4 /* i */
            aaload
         5: .line 1615
            invokevirtual org.hsqldb.types.Type.convertToType:(Lorg/hsqldb/SessionInterface;Ljava/lang/Object;Lorg/hsqldb/types/Type;)Ljava/lang/Object;
            aastore
         6: .line 1613
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 4 /* i */
            aload 1 /* data */
            arraylength
            if_icmplt 2
        end local 4 // int i
         8: .line 1619
            return
        end local 3 // org.hsqldb.types.Type[] newType
        end local 2 // org.hsqldb.types.Type[] dataType
        end local 1 // java.lang.Object[] data
        end local 0 // org.hsqldb.Session session
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0   session  Lorg/hsqldb/Session;
            0    9     1      data  [Ljava/lang/Object;
            0    9     2  dataType  [Lorg/hsqldb/types/Type;
            0    9     3   newType  [Lorg/hsqldb/types/Type;
            1    8     4         i  I
    MethodParameters:
          Name  Flags
      session   
      data      
      dataType  
      newType   

  static org.hsqldb.QuerySpecification getCheckSelect(org.hsqldb.Session, org.hsqldb.Table, org.hsqldb.Expression);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/Table;Lorg/hsqldb/Expression;)Lorg/hsqldb/QuerySpecification;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=9, args_size=3
        start local 0 // org.hsqldb.Session session
        start local 1 // org.hsqldb.Table t
        start local 2 // org.hsqldb.Expression e
         0: .line 1628
            new org.hsqldb.ParserDQL$CompileContext
            dup
            aload 0 /* session */
            invokespecial org.hsqldb.ParserDQL$CompileContext.<init>:(Lorg/hsqldb/Session;)V
            astore 3 /* compileContext */
        start local 3 // org.hsqldb.ParserDQL$CompileContext compileContext
         1: .line 1630
            aload 3 /* compileContext */
            iconst_0
            invokevirtual org.hsqldb.ParserDQL$CompileContext.setNextRangeVarIndex:(I)V
         2: .line 1632
            new org.hsqldb.QuerySpecification
            dup
            aload 3 /* compileContext */
            invokespecial org.hsqldb.QuerySpecification.<init>:(Lorg/hsqldb/ParserDQL$CompileContext;)V
            astore 4 /* s */
        start local 4 // org.hsqldb.QuerySpecification s
         3: .line 1633
            new org.hsqldb.RangeVariable
            dup
            aload 1 /* t */
            aconst_null
            aconst_null
            aconst_null
         4: .line 1634
            aload 3 /* compileContext */
         5: .line 1633
            invokespecial org.hsqldb.RangeVariable.<init>:(Lorg/hsqldb/Table;Lorg/hsqldb/HsqlNameManager$SimpleName;Lorg/hsqldb/lib/OrderedHashSet;[Lorg/hsqldb/HsqlNameManager$SimpleName;Lorg/hsqldb/ParserDQL$CompileContext;)V
            astore 5 /* range */
        start local 5 // org.hsqldb.RangeVariable range
         6: .line 1635
            iconst_1
            anewarray org.hsqldb.RangeVariable
            dup
            iconst_0
            aload 5 /* range */
            aastore
            astore 6 /* ranges */
        start local 6 // org.hsqldb.RangeVariable[] ranges
         7: .line 1636
            new org.hsqldb.RangeGroup$RangeGroupSimple
            dup
            aload 6 /* ranges */
            iconst_0
            invokespecial org.hsqldb.RangeGroup$RangeGroupSimple.<init>:([Lorg/hsqldb/RangeVariable;Z)V
            astore 7 /* rangeGroup */
        start local 7 // org.hsqldb.RangeGroup rangeGroup
         8: .line 1638
            aload 2 /* e */
            aload 0 /* session */
            aload 7 /* rangeGroup */
            iconst_1
            invokevirtual org.hsqldb.Expression.resolveCheckOrGenExpression:(Lorg/hsqldb/Session;Lorg/hsqldb/RangeGroup;Z)V
         9: .line 1640
            getstatic org.hsqldb.types.Type.SQL_BOOLEAN:Lorg/hsqldb/types/BooleanType;
            aload 2 /* e */
            invokevirtual org.hsqldb.Expression.getDataType:()Lorg/hsqldb/types/Type;
            if_acmpeq 11
        10: .line 1641
            sipush 5568
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        11: .line 1644
      StackMap locals: org.hsqldb.Session org.hsqldb.Table org.hsqldb.Expression org.hsqldb.ParserDQL$CompileContext org.hsqldb.QuerySpecification org.hsqldb.RangeVariable org.hsqldb.RangeVariable[] org.hsqldb.RangeGroup
      StackMap stack:
            new org.hsqldb.ExpressionLogical
            dup
            bipush 48
            aload 2 /* e */
            invokespecial org.hsqldb.ExpressionLogical.<init>:(ILorg/hsqldb/Expression;)V
            astore 8 /* condition */
        start local 8 // org.hsqldb.Expression condition
        12: .line 1646
            aload 4 /* s */
            getstatic org.hsqldb.Expression.EXPR_TRUE:Lorg/hsqldb/Expression;
            invokevirtual org.hsqldb.QuerySpecification.addSelectColumnExpression:(Lorg/hsqldb/Expression;)V
        13: .line 1647
            aload 4 /* s */
            aload 0 /* session */
            aload 5 /* range */
            invokevirtual org.hsqldb.QuerySpecification.addRangeVariable:(Lorg/hsqldb/Session;Lorg/hsqldb/RangeVariable;)V
        14: .line 1648
            aload 4 /* s */
            aload 8 /* condition */
            invokevirtual org.hsqldb.QuerySpecification.addQueryCondition:(Lorg/hsqldb/Expression;)V
        15: .line 1649
            aload 4 /* s */
            aload 0 /* session */
            invokevirtual org.hsqldb.QuerySpecification.resolve:(Lorg/hsqldb/Session;)V
        16: .line 1651
            aload 4 /* s */
            areturn
        end local 8 // org.hsqldb.Expression condition
        end local 7 // org.hsqldb.RangeGroup rangeGroup
        end local 6 // org.hsqldb.RangeVariable[] ranges
        end local 5 // org.hsqldb.RangeVariable range
        end local 4 // org.hsqldb.QuerySpecification s
        end local 3 // org.hsqldb.ParserDQL$CompileContext compileContext
        end local 2 // org.hsqldb.Expression e
        end local 1 // org.hsqldb.Table t
        end local 0 // org.hsqldb.Session session
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   17     0         session  Lorg/hsqldb/Session;
            0   17     1               t  Lorg/hsqldb/Table;
            0   17     2               e  Lorg/hsqldb/Expression;
            1   17     3  compileContext  Lorg/hsqldb/ParserDQL$CompileContext;
            3   17     4               s  Lorg/hsqldb/QuerySpecification;
            6   17     5           range  Lorg/hsqldb/RangeVariable;
            7   17     6          ranges  [Lorg/hsqldb/RangeVariable;
            8   17     7      rangeGroup  Lorg/hsqldb/RangeGroup;
           12   17     8       condition  Lorg/hsqldb/Expression;
    MethodParameters:
         Name  Flags
      session  
      t        
      e        

  public void resolveCheckOrGenExpression(org.hsqldb.Session, org.hsqldb.RangeGroup, boolean);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/RangeGroup;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=13, args_size=4
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.RangeGroup rangeGroup
        start local 3 // boolean isCheck
         0: .line 1657
            iconst_0
            istore 4 /* nonDeterministic */
        start local 4 // boolean nonDeterministic
         1: .line 1658
            new org.hsqldb.lib.OrderedHashSet
            dup
            invokespecial org.hsqldb.lib.OrderedHashSet.<init>:()V
            astore 5 /* set */
        start local 5 // org.hsqldb.lib.OrderedHashSet set
         2: .line 1659
            aload 0 /* this */
            aload 1 /* session */
            aload 2 /* rangeGroup */
         3: .line 1660
            getstatic org.hsqldb.RangeGroup.emptyArray:[Lorg/hsqldb/RangeGroup;
            aconst_null
         4: .line 1659
            invokevirtual org.hsqldb.Expression.resolveColumnReferences:(Lorg/hsqldb/Session;Lorg/hsqldb/RangeGroup;[Lorg/hsqldb/RangeGroup;Lorg/hsqldb/lib/HsqlList;)Lorg/hsqldb/lib/HsqlList;
            astore 6 /* unresolved */
        start local 6 // org.hsqldb.lib.HsqlList unresolved
         5: .line 1662
            aload 6 /* unresolved */
            invokestatic org.hsqldb.ExpressionColumn.checkColumnsResolved:(Lorg/hsqldb/lib/HsqlList;)V
         6: .line 1663
            aload 0 /* this */
            aload 1 /* session */
            aconst_null
            invokevirtual org.hsqldb.Expression.resolveTypes:(Lorg/hsqldb/Session;Lorg/hsqldb/Expression;)V
         7: .line 1664
            aload 0 /* this */
            aload 5 /* set */
            getstatic org.hsqldb.OpTypes.subqueryAggregateExpressionSet:Lorg/hsqldb/lib/OrderedIntHashSet;
         8: .line 1665
            getstatic org.hsqldb.OpTypes.emptyExpressionSet:Lorg/hsqldb/lib/OrderedIntHashSet;
         9: .line 1664
            invokevirtual org.hsqldb.Expression.collectAllExpressions:(Lorg/hsqldb/lib/OrderedHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            pop
        10: .line 1667
            aload 5 /* set */
            invokevirtual org.hsqldb.lib.OrderedHashSet.isEmpty:()Z
            ifne 12
        11: .line 1668
            sipush 5512
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        12: .line 1671
      StackMap locals: int org.hsqldb.lib.OrderedHashSet org.hsqldb.lib.HsqlList
      StackMap stack:
            aload 0 /* this */
            aload 5 /* set */
            getstatic org.hsqldb.OpTypes.functionExpressionSet:Lorg/hsqldb/lib/OrderedIntHashSet;
        13: .line 1672
            getstatic org.hsqldb.OpTypes.emptyExpressionSet:Lorg/hsqldb/lib/OrderedIntHashSet;
        14: .line 1671
            invokevirtual org.hsqldb.Expression.collectAllExpressions:(Lorg/hsqldb/lib/OrderedHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            pop
        15: .line 1674
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        16: goto 28
        17: .line 1675
      StackMap locals: int
      StackMap stack:
            aload 5 /* set */
            iload 7 /* i */
            invokevirtual org.hsqldb.lib.OrderedHashSet.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.Expression
            astore 8 /* current */
        start local 8 // org.hsqldb.Expression current
        18: .line 1677
            aload 8 /* current */
            getfield org.hsqldb.Expression.opType:I
            bipush 27
            if_icmpne 21
        19: .line 1678
            aload 8 /* current */
            checkcast org.hsqldb.FunctionSQLInvoked
            invokevirtual org.hsqldb.FunctionSQLInvoked.isDeterministic:()Z
            ifne 21
        20: .line 1679
            sipush 5512
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        21: .line 1683
      StackMap locals: org.hsqldb.Expression
      StackMap stack:
            aload 8 /* current */
            getfield org.hsqldb.Expression.opType:I
            bipush 28
            if_icmpne 27
        22: .line 1684
            aload 8 /* current */
            checkcast org.hsqldb.FunctionSQL
            invokevirtual org.hsqldb.FunctionSQL.isDeterministic:()Z
            ifne 27
        23: .line 1685
            iload 3 /* isCheck */
            ifeq 26
        24: .line 1686
            iconst_1
            istore 4 /* nonDeterministic */
        25: .line 1688
            goto 27
        26: .line 1691
      StackMap locals:
      StackMap stack:
            sipush 5512
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        end local 8 // org.hsqldb.Expression current
        27: .line 1674
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        28: iload 7 /* i */
            aload 5 /* set */
            invokevirtual org.hsqldb.lib.OrderedHashSet.size:()I
            if_icmplt 17
        end local 7 // int i
        29: .line 1696
            iload 3 /* isCheck */
            ifeq 69
            iload 4 /* nonDeterministic */
            ifeq 69
        30: .line 1697
            new org.hsqldb.lib.HsqlArrayList
            dup
            invokespecial org.hsqldb.lib.HsqlArrayList.<init>:()V
            astore 7 /* list */
        start local 7 // org.hsqldb.lib.HsqlArrayList list
        31: .line 1699
            aload 1 /* session */
            aload 0 /* this */
            aload 7 /* list */
            invokestatic org.hsqldb.RangeVariableResolver.decomposeAndConditions:(Lorg/hsqldb/Session;Lorg/hsqldb/Expression;Lorg/hsqldb/lib/HsqlList;)Lorg/hsqldb/Expression;
            pop
        32: .line 1701
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        33: goto 66
        34: .line 1702
      StackMap locals: org.hsqldb.Expression org.hsqldb.Session org.hsqldb.RangeGroup int int org.hsqldb.lib.OrderedHashSet org.hsqldb.lib.HsqlList org.hsqldb.lib.HsqlArrayList int
      StackMap stack:
            iconst_1
            istore 4 /* nonDeterministic */
        35: .line 1704
            aload 7 /* list */
            iload 8 /* i */
            invokevirtual org.hsqldb.lib.HsqlArrayList.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.Expression
            astore 9 /* e */
        start local 9 // org.hsqldb.Expression e
        36: .line 1707
            aload 9 /* e */
            instanceof org.hsqldb.ExpressionLogical
            ifeq 67
        37: .line 1708
            aload 9 /* e */
            checkcast org.hsqldb.ExpressionLogical
            invokevirtual org.hsqldb.ExpressionLogical.convertToSmaller:()Z
            istore 11 /* b */
        start local 11 // boolean b
        38: .line 1710
            iload 11 /* b */
            ifne 40
        39: .line 1711
            goto 67
        40: .line 1714
      StackMap locals: org.hsqldb.Expression org.hsqldb.Session org.hsqldb.RangeGroup int int org.hsqldb.lib.OrderedHashSet org.hsqldb.lib.HsqlList org.hsqldb.lib.HsqlArrayList int org.hsqldb.Expression top int
      StackMap stack:
            aload 9 /* e */
            invokevirtual org.hsqldb.Expression.getRightNode:()Lorg/hsqldb/Expression;
            astore 10 /* e1 */
        start local 10 // org.hsqldb.Expression e1
        41: .line 1715
            aload 9 /* e */
            invokevirtual org.hsqldb.Expression.getLeftNode:()Lorg/hsqldb/Expression;
            astore 9 /* e */
        42: .line 1717
            aload 9 /* e */
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
            invokevirtual org.hsqldb.types.Type.isDateTimeType:()Z
            ifne 45
        43: .line 1718
            iconst_1
            istore 4 /* nonDeterministic */
        44: .line 1720
            goto 67
        45: .line 1723
      StackMap locals: org.hsqldb.Expression org.hsqldb.Session org.hsqldb.RangeGroup int int org.hsqldb.lib.OrderedHashSet org.hsqldb.lib.HsqlList org.hsqldb.lib.HsqlArrayList int org.hsqldb.Expression org.hsqldb.Expression int
      StackMap stack:
            aload 9 /* e */
            invokevirtual org.hsqldb.Expression.hasNonDeterministicFunction:()Z
            ifeq 48
        46: .line 1724
            iconst_1
            istore 4 /* nonDeterministic */
        47: .line 1726
            goto 67
        48: .line 1731
      StackMap locals:
      StackMap stack:
            aload 10 /* e1 */
            instanceof org.hsqldb.ExpressionArithmetic
            ifeq 59
        49: .line 1732
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            bipush 32
            if_icmpne 54
        50: .line 1733
            aload 10 /* e1 */
            invokevirtual org.hsqldb.Expression.getRightNode:()Lorg/hsqldb/Expression;
        51: .line 1734
            invokevirtual org.hsqldb.Expression.hasNonDeterministicFunction:()Z
            ifeq 56
        52: .line 1735
            aload 10 /* e1 */
            invokevirtual org.hsqldb.Expression.swapLeftAndRightNodes:()V
        53: .line 1737
            goto 56
      StackMap locals:
      StackMap stack:
        54: aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            bipush 33
            if_icmpeq 56
        55: .line 1739
            goto 67
        56: .line 1742
      StackMap locals:
      StackMap stack:
            aload 10 /* e1 */
            invokevirtual org.hsqldb.Expression.getRightNode:()Lorg/hsqldb/Expression;
            invokevirtual org.hsqldb.Expression.hasNonDeterministicFunction:()Z
            ifeq 58
        57: .line 1743
            goto 67
        58: .line 1746
      StackMap locals:
      StackMap stack:
            aload 10 /* e1 */
            invokevirtual org.hsqldb.Expression.getLeftNode:()Lorg/hsqldb/Expression;
            astore 10 /* e1 */
        59: .line 1749
      StackMap locals:
      StackMap stack:
            aload 10 /* e1 */
            getfield org.hsqldb.Expression.opType:I
            bipush 28
            if_icmpne 67
        60: .line 1750
            aload 10 /* e1 */
            checkcast org.hsqldb.FunctionSQL
            astore 12 /* function */
        start local 12 // org.hsqldb.FunctionSQL function
        61: .line 1752
            aload 12 /* function */
            getfield org.hsqldb.FunctionSQL.funcType:I
            lookupswitch { // 3
                   43: 62
                   50: 62
                   52: 62
              default: 64
          }
        62: .line 1757
      StackMap locals: org.hsqldb.FunctionSQL
      StackMap stack:
            iconst_0
            istore 4 /* nonDeterministic */
        63: .line 1759
            goto 65
        64: .line 1764
      StackMap locals:
      StackMap stack:
            goto 67
        end local 12 // org.hsqldb.FunctionSQL function
        end local 11 // boolean b
        end local 10 // org.hsqldb.Expression e1
        end local 9 // org.hsqldb.Expression e
        65: .line 1701
      StackMap locals: org.hsqldb.Expression org.hsqldb.Session org.hsqldb.RangeGroup int int org.hsqldb.lib.OrderedHashSet org.hsqldb.lib.HsqlList org.hsqldb.lib.HsqlArrayList int
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        66: iload 8 /* i */
            aload 7 /* list */
            invokevirtual org.hsqldb.lib.HsqlArrayList.size:()I
            if_icmplt 34
        end local 8 // int i
        67: .line 1773
      StackMap locals:
      StackMap stack:
            iload 4 /* nonDeterministic */
            ifeq 69
        68: .line 1774
            sipush 5512
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        end local 7 // org.hsqldb.lib.HsqlArrayList list
        69: .line 1778
      StackMap locals:
      StackMap stack:
            aload 5 /* set */
            invokevirtual org.hsqldb.lib.OrderedHashSet.clear:()V
        70: .line 1779
            aload 0 /* this */
            aload 5 /* set */
            invokevirtual org.hsqldb.Expression.collectObjectNames:(Lorg/hsqldb/lib/Set;)V
        71: .line 1781
            aload 2 /* rangeGroup */
            invokeinterface org.hsqldb.RangeGroup.getRangeVariables:()[Lorg/hsqldb/RangeVariable;
            astore 7 /* ranges */
        start local 7 // org.hsqldb.RangeVariable[] ranges
        72: .line 1783
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        73: goto 95
        74: .line 1784
      StackMap locals: org.hsqldb.RangeVariable[] int
      StackMap stack:
            aload 5 /* set */
            iload 8 /* i */
            invokevirtual org.hsqldb.lib.OrderedHashSet.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.HsqlNameManager$HsqlName
            astore 9 /* name */
        start local 9 // org.hsqldb.HsqlNameManager$HsqlName name
        75: .line 1786
            aload 9 /* name */
            getfield org.hsqldb.HsqlNameManager$HsqlName.type:I
            lookupswitch { // 3
                    7: 83
                    9: 76
                   24: 84
              default: 94
          }
        76: .line 1789
      StackMap locals: org.hsqldb.HsqlNameManager$HsqlName
      StackMap stack:
            iload 3 /* isCheck */
            ifeq 78
        77: .line 1790
            goto 94
        78: .line 1793
      StackMap locals:
      StackMap stack:
            aload 7 /* ranges */
            iconst_0
            aaload
            getfield org.hsqldb.RangeVariable.rangeTable:Lorg/hsqldb/Table;
            aload 9 /* name */
            getfield org.hsqldb.HsqlNameManager$HsqlName.name:Ljava/lang/String;
            invokevirtual org.hsqldb.Table.findColumn:(Ljava/lang/String;)I
            istore 10 /* colIndex */
        start local 10 // int colIndex
        79: .line 1795
            aload 7 /* ranges */
            iconst_0
            aaload
            getfield org.hsqldb.RangeVariable.rangeTable:Lorg/hsqldb/Table;
            iload 10 /* colIndex */
            invokevirtual org.hsqldb.Table.getColumn:(I)Lorg/hsqldb/ColumnSchema;
        80: .line 1794
            astore 11 /* column */
        start local 11 // org.hsqldb.ColumnSchema column
        81: .line 1797
            aload 11 /* column */
            invokevirtual org.hsqldb.ColumnSchema.isGenerated:()Z
            ifeq 94
        82: .line 1798
            sipush 5512
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        end local 11 // org.hsqldb.ColumnSchema column
        end local 10 // int colIndex
        83: .line 1804
      StackMap locals:
      StackMap stack:
            sipush 5512
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        84: .line 1808
      StackMap locals:
      StackMap stack:
            aload 1 /* session */
            getfield org.hsqldb.Session.database:Lorg/hsqldb/Database;
            getfield org.hsqldb.Database.schemaManager:Lorg/hsqldb/SchemaManager;
        85: .line 1809
            aload 9 /* name */
            invokevirtual org.hsqldb.SchemaManager.getSchemaObject:(Lorg/hsqldb/HsqlNameManager$HsqlName;)Lorg/hsqldb/SchemaObject;
        86: .line 1808
            checkcast org.hsqldb.Routine
        87: .line 1807
            astore 10 /* routine */
        start local 10 // org.hsqldb.Routine routine
        88: .line 1811
            aload 10 /* routine */
            invokevirtual org.hsqldb.Routine.isDeterministic:()Z
            ifne 90
        89: .line 1812
            sipush 5512
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        90: .line 1815
      StackMap locals: org.hsqldb.Routine
      StackMap stack:
            aload 10 /* routine */
            invokevirtual org.hsqldb.Routine.getDataImpact:()I
            istore 11 /* impact */
        start local 11 // int impact
        91: .line 1817
            iload 11 /* impact */
            iconst_3
            if_icmpeq 93
        92: .line 1818
            iload 11 /* impact */
            iconst_4
            if_icmpne 94
        93: .line 1819
      StackMap locals: int
      StackMap stack:
            sipush 5512
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        end local 11 // int impact
        end local 10 // org.hsqldb.Routine routine
        end local 9 // org.hsqldb.HsqlNameManager$HsqlName name
        94: .line 1783
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        95: iload 8 /* i */
            aload 5 /* set */
            invokevirtual org.hsqldb.lib.OrderedHashSet.size:()I
            if_icmplt 74
        end local 8 // int i
        96: .line 1825
            aload 5 /* set */
            invokevirtual org.hsqldb.lib.OrderedHashSet.clear:()V
        97: .line 1826
            return
        end local 7 // org.hsqldb.RangeVariable[] ranges
        end local 6 // org.hsqldb.lib.HsqlList unresolved
        end local 5 // org.hsqldb.lib.OrderedHashSet set
        end local 4 // boolean nonDeterministic
        end local 3 // boolean isCheck
        end local 2 // org.hsqldb.RangeGroup rangeGroup
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   98     0              this  Lorg/hsqldb/Expression;
            0   98     1           session  Lorg/hsqldb/Session;
            0   98     2        rangeGroup  Lorg/hsqldb/RangeGroup;
            0   98     3           isCheck  Z
            1   98     4  nonDeterministic  Z
            2   98     5               set  Lorg/hsqldb/lib/OrderedHashSet;
            5   98     6        unresolved  Lorg/hsqldb/lib/HsqlList;
           16   29     7                 i  I
           18   27     8           current  Lorg/hsqldb/Expression;
           31   69     7              list  Lorg/hsqldb/lib/HsqlArrayList;
           33   67     8                 i  I
           36   65     9                 e  Lorg/hsqldb/Expression;
           41   65    10                e1  Lorg/hsqldb/Expression;
           38   65    11                 b  Z
           61   65    12          function  Lorg/hsqldb/FunctionSQL;
           72   98     7            ranges  [Lorg/hsqldb/RangeVariable;
           73   96     8                 i  I
           75   94     9              name  Lorg/hsqldb/HsqlNameManager$HsqlName;
           79   83    10          colIndex  I
           81   83    11            column  Lorg/hsqldb/ColumnSchema;
           88   94    10           routine  Lorg/hsqldb/Routine;
           91   94    11            impact  I
    MethodParameters:
            Name  Flags
      session     
      rangeGroup  
      isCheck     

  boolean isUnresolvedParam();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 1829
            iconst_0
            ireturn
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/Expression;

  boolean isDynamicParam();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 1833
            iconst_0
            ireturn
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/Expression;

  boolean hasNonDeterministicFunction();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 1838
            aconst_null
            astore 1 /* list */
        start local 1 // org.hsqldb.lib.OrderedHashSet list
         1: .line 1840
            aload 0 /* this */
            aload 1 /* list */
            getstatic org.hsqldb.OpTypes.functionExpressionSet:Lorg/hsqldb/lib/OrderedIntHashSet;
         2: .line 1841
            getstatic org.hsqldb.OpTypes.emptyExpressionSet:Lorg/hsqldb/lib/OrderedIntHashSet;
         3: .line 1840
            invokevirtual org.hsqldb.Expression.collectAllExpressions:(Lorg/hsqldb/lib/OrderedHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 1 /* list */
         4: .line 1843
            aload 1 /* list */
            ifnonnull 6
         5: .line 1844
            iconst_0
            ireturn
         6: .line 1847
      StackMap locals: org.hsqldb.lib.OrderedHashSet
      StackMap stack:
            iconst_0
            istore 2 /* j */
        start local 2 // int j
         7: goto 16
         8: .line 1848
      StackMap locals: int
      StackMap stack:
            aload 1 /* list */
            iload 2 /* j */
            invokevirtual org.hsqldb.lib.OrderedHashSet.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.Expression
            astore 3 /* current */
        start local 3 // org.hsqldb.Expression current
         9: .line 1850
            aload 3 /* current */
            getfield org.hsqldb.Expression.opType:I
            bipush 27
            if_icmpne 12
        10: .line 1851
            aload 3 /* current */
            checkcast org.hsqldb.FunctionSQLInvoked
            invokevirtual org.hsqldb.FunctionSQLInvoked.isDeterministic:()Z
            ifne 15
        11: .line 1852
            iconst_1
            ireturn
        12: .line 1854
      StackMap locals: org.hsqldb.Expression
      StackMap stack:
            aload 3 /* current */
            getfield org.hsqldb.Expression.opType:I
            bipush 28
            if_icmpne 15
        13: .line 1855
            aload 3 /* current */
            checkcast org.hsqldb.FunctionSQL
            invokevirtual org.hsqldb.FunctionSQL.isDeterministic:()Z
            ifne 15
        14: .line 1856
            iconst_1
            ireturn
        end local 3 // org.hsqldb.Expression current
        15: .line 1847
      StackMap locals:
      StackMap stack:
            iinc 2 /* j */ 1
      StackMap locals:
      StackMap stack:
        16: iload 2 /* j */
            aload 1 /* list */
            invokevirtual org.hsqldb.lib.OrderedHashSet.size:()I
            if_icmplt 8
        end local 2 // int j
        17: .line 1861
            iconst_0
            ireturn
        end local 1 // org.hsqldb.lib.OrderedHashSet list
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   18     0     this  Lorg/hsqldb/Expression;
            1   18     1     list  Lorg/hsqldb/lib/OrderedHashSet;
            7   17     2        j  I
            9   15     3  current  Lorg/hsqldb/Expression;

  void swapLeftAndRightNodes();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 1866
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iconst_0
            aaload
            astore 1 /* temp */
        start local 1 // org.hsqldb.Expression temp
         1: .line 1868
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iconst_0
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iconst_1
            aaload
            aastore
         2: .line 1869
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iconst_1
            aload 1 /* temp */
            aastore
         3: .line 1870
            return
        end local 1 // org.hsqldb.Expression temp
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/hsqldb/Expression;
            1    4     1  temp  Lorg/hsqldb/Expression;

  void setAttributesAsColumn(org.hsqldb.ColumnSchema, boolean);
    descriptor: (Lorg/hsqldb/ColumnSchema;Z)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.ColumnSchema column
        start local 2 // boolean isWritable
         0: .line 1873
            sipush 201
            ldc "Expression"
            invokestatic org.hsqldb.error.Error.runtimeError:(ILjava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        end local 2 // boolean isWritable
        end local 1 // org.hsqldb.ColumnSchema column
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/hsqldb/Expression;
            0    1     1      column  Lorg/hsqldb/ColumnSchema;
            0    1     2  isWritable  Z
    MethodParameters:
            Name  Flags
      column      
      isWritable  

  java.lang.String getValueClassName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 1878
            aload 0 /* this */
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
            ifnonnull 1
            invokestatic org.hsqldb.types.NullType.getNullType:()Lorg/hsqldb/types/Type;
            goto 2
         1: .line 1879
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
         2: .line 1878
      StackMap locals:
      StackMap stack: org.hsqldb.types.Type
            astore 1 /* type */
        start local 1 // org.hsqldb.types.Type type
         3: .line 1881
            aload 1 /* type */
            invokevirtual org.hsqldb.types.Type.getJDBCClassName:()Ljava/lang/String;
            areturn
        end local 1 // org.hsqldb.types.Type type
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/hsqldb/Expression;
            3    4     1  type  Lorg/hsqldb/types/Type;

  org.hsqldb.lib.OrderedHashSet collectAllExpressions(org.hsqldb.lib.OrderedHashSet, org.hsqldb.lib.OrderedIntHashSet, org.hsqldb.lib.OrderedIntHashSet);
    descriptor: (Lorg/hsqldb/lib/OrderedHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
    flags: (0x0000) 
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.lib.OrderedHashSet set
        start local 2 // org.hsqldb.lib.OrderedIntHashSet typeSet
        start local 3 // org.hsqldb.lib.OrderedIntHashSet stopAtTypeSet
         0: .line 1892
            aload 3 /* stopAtTypeSet */
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            invokevirtual org.hsqldb.lib.OrderedIntHashSet.contains:(I)Z
            ifeq 2
         1: .line 1893
            aload 1 /* set */
            areturn
         2: .line 1896
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 9
         4: .line 1897
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            ifnull 8
         5: .line 1898
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            aload 1 /* set */
            aload 2 /* typeSet */
         6: .line 1899
            aload 3 /* stopAtTypeSet */
         7: .line 1898
            invokevirtual org.hsqldb.Expression.collectAllExpressions:(Lorg/hsqldb/lib/OrderedHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 1 /* set */
         8: .line 1896
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 4
        end local 4 // int i
        10: .line 1903
            iconst_0
            istore 4 /* added */
        start local 4 // boolean added
        11: .line 1905
            aload 2 /* typeSet */
            aload 0 /* this */
            getfield org.hsqldb.Expression.opType:I
            invokevirtual org.hsqldb.lib.OrderedIntHashSet.contains:(I)Z
            ifeq 16
        12: .line 1906
            aload 1 /* set */
            ifnonnull 14
        13: .line 1907
            new org.hsqldb.lib.OrderedHashSet
            dup
            invokespecial org.hsqldb.lib.OrderedHashSet.<init>:()V
            astore 1 /* set */
        14: .line 1910
      StackMap locals: org.hsqldb.Expression org.hsqldb.lib.OrderedHashSet org.hsqldb.lib.OrderedIntHashSet org.hsqldb.lib.OrderedIntHashSet int
      StackMap stack:
            aload 1 /* set */
            aload 0 /* this */
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
        15: .line 1912
            iconst_1
            istore 4 /* added */
        16: .line 1915
      StackMap locals:
      StackMap stack:
            iload 4 /* added */
            ifne 21
        17: .line 1916
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            ifnull 21
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
            ifnull 21
        18: .line 1917
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
            aload 1 /* set */
        19: .line 1918
            aload 2 /* typeSet */
            aload 3 /* stopAtTypeSet */
        20: .line 1917
            invokevirtual org.hsqldb.QueryExpression.collectAllExpressions:(Lorg/hsqldb/lib/OrderedHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 1 /* set */
        21: .line 1922
      StackMap locals:
      StackMap stack:
            aload 1 /* set */
            areturn
        end local 4 // boolean added
        end local 3 // org.hsqldb.lib.OrderedIntHashSet stopAtTypeSet
        end local 2 // org.hsqldb.lib.OrderedIntHashSet typeSet
        end local 1 // org.hsqldb.lib.OrderedHashSet set
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   22     0           this  Lorg/hsqldb/Expression;
            0   22     1            set  Lorg/hsqldb/lib/OrderedHashSet;
            0   22     2        typeSet  Lorg/hsqldb/lib/OrderedIntHashSet;
            0   22     3  stopAtTypeSet  Lorg/hsqldb/lib/OrderedIntHashSet;
            3   10     4              i  I
           11   22     4          added  Z
    MethodParameters:
               Name  Flags
      set            
      typeSet        
      stopAtTypeSet  

  public org.hsqldb.lib.OrderedHashSet getSubqueries();
    descriptor: ()Lorg/hsqldb/lib/OrderedHashSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 1926
            aload 0 /* this */
            aconst_null
            invokevirtual org.hsqldb.Expression.collectAllSubqueries:(Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            areturn
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/Expression;

  org.hsqldb.lib.OrderedHashSet collectAllSubqueries(org.hsqldb.lib.OrderedHashSet);
    descriptor: (Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.lib.OrderedHashSet set
         0: .line 1931
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 5
         2: .line 1932
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            ifnull 4
         3: .line 1933
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            aload 1 /* set */
            invokevirtual org.hsqldb.Expression.collectAllSubqueries:(Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 1 /* set */
         4: .line 1931
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 2
        end local 2 // int i
         6: .line 1937
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            ifnull 14
         7: .line 1938
            aconst_null
            astore 2 /* tempSet */
        start local 2 // org.hsqldb.lib.OrderedHashSet tempSet
         8: .line 1940
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
            ifnull 11
         9: .line 1941
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            getfield org.hsqldb.TableDerived.queryExpression:Lorg/hsqldb/QueryExpression;
            invokevirtual org.hsqldb.QueryExpression.getSubqueries:()Lorg/hsqldb/lib/OrderedHashSet;
            astore 2 /* tempSet */
        10: .line 1942
            aload 1 /* set */
            aload 2 /* tempSet */
            invokestatic org.hsqldb.lib.OrderedHashSet.addAll:(Lorg/hsqldb/lib/OrderedHashSet;Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 1 /* set */
        11: .line 1945
      StackMap locals: org.hsqldb.Expression org.hsqldb.lib.OrderedHashSet org.hsqldb.lib.OrderedHashSet
      StackMap stack:
            aload 1 /* set */
            ifnonnull 13
        12: .line 1946
            new org.hsqldb.lib.OrderedHashSet
            dup
            invokespecial org.hsqldb.lib.OrderedHashSet.<init>:()V
            astore 1 /* set */
        13: .line 1949
      StackMap locals:
      StackMap stack:
            aload 1 /* set */
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
        end local 2 // org.hsqldb.lib.OrderedHashSet tempSet
        14: .line 1952
      StackMap locals:
      StackMap stack:
            aload 1 /* set */
            areturn
        end local 1 // org.hsqldb.lib.OrderedHashSet set
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   15     0     this  Lorg/hsqldb/Expression;
            0   15     1      set  Lorg/hsqldb/lib/OrderedHashSet;
            1    6     2        i  I
            8   14     2  tempSet  Lorg/hsqldb/lib/OrderedHashSet;
    MethodParameters:
      Name  Flags
      set   

  public boolean isCorrelated();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 1960
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            ifnonnull 2
         1: .line 1961
            iconst_0
            ireturn
         2: .line 1964
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.table:Lorg/hsqldb/TableDerived;
            invokevirtual org.hsqldb.TableDerived.isCorrelated:()Z
            ireturn
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/hsqldb/Expression;

  public void checkValidCheckConstraint();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 1972
            aconst_null
            astore 1 /* set */
        start local 1 // org.hsqldb.lib.OrderedHashSet set
         1: .line 1974
            aload 0 /* this */
            aload 1 /* set */
         2: .line 1975
            getstatic org.hsqldb.OpTypes.subqueryAggregateExpressionSet:Lorg/hsqldb/lib/OrderedIntHashSet;
         3: .line 1976
            getstatic org.hsqldb.OpTypes.emptyExpressionSet:Lorg/hsqldb/lib/OrderedIntHashSet;
         4: .line 1974
            invokevirtual org.hsqldb.Expression.collectAllExpressions:(Lorg/hsqldb/lib/OrderedHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 1 /* set */
         5: .line 1978
            aload 1 /* set */
            ifnull 9
            aload 1 /* set */
            invokevirtual org.hsqldb.lib.OrderedHashSet.isEmpty:()Z
            ifne 9
         6: .line 1979
            sipush 1500
         7: .line 1980
            ldc "subquery in check constraint"
         8: .line 1979
            invokestatic org.hsqldb.error.Error.error:(ILjava/lang/String;)Lorg/hsqldb/HsqlException;
            athrow
         9: .line 1982
      StackMap locals: org.hsqldb.lib.OrderedHashSet
      StackMap stack:
            return
        end local 1 // org.hsqldb.lib.OrderedHashSet set
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/hsqldb/Expression;
            1   10     1   set  Lorg/hsqldb/lib/OrderedHashSet;

  static org.hsqldb.lib.HsqlList resolveColumnSet(org.hsqldb.Session, org.hsqldb.RangeVariable[], org.hsqldb.RangeGroup[], org.hsqldb.lib.HsqlList);
    descriptor: (Lorg/hsqldb/Session;[Lorg/hsqldb/RangeVariable;[Lorg/hsqldb/RangeGroup;Lorg/hsqldb/lib/HsqlList;)Lorg/hsqldb/lib/HsqlList;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // org.hsqldb.Session session
        start local 1 // org.hsqldb.RangeVariable[] rangeVars
        start local 2 // org.hsqldb.RangeGroup[] rangeGroups
        start local 3 // org.hsqldb.lib.HsqlList sourceSet
         0: .line 1988
            aload 0 /* session */
            aload 1 /* rangeVars */
            aload 1 /* rangeVars */
            arraylength
         1: .line 1989
            aload 2 /* rangeGroups */
            aload 3 /* sourceSet */
            aconst_null
         2: .line 1988
            invokestatic org.hsqldb.Expression.resolveColumnSet:(Lorg/hsqldb/Session;[Lorg/hsqldb/RangeVariable;I[Lorg/hsqldb/RangeGroup;Lorg/hsqldb/lib/HsqlList;Lorg/hsqldb/lib/HsqlList;)Lorg/hsqldb/lib/HsqlList;
            areturn
        end local 3 // org.hsqldb.lib.HsqlList sourceSet
        end local 2 // org.hsqldb.RangeGroup[] rangeGroups
        end local 1 // org.hsqldb.RangeVariable[] rangeVars
        end local 0 // org.hsqldb.Session session
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0      session  Lorg/hsqldb/Session;
            0    3     1    rangeVars  [Lorg/hsqldb/RangeVariable;
            0    3     2  rangeGroups  [Lorg/hsqldb/RangeGroup;
            0    3     3    sourceSet  Lorg/hsqldb/lib/HsqlList;
    MethodParameters:
             Name  Flags
      session      
      rangeVars    
      rangeGroups  
      sourceSet    

  static org.hsqldb.lib.HsqlList resolveColumnSet(org.hsqldb.Session, org.hsqldb.RangeVariable[], int, org.hsqldb.RangeGroup[], org.hsqldb.lib.HsqlList, org.hsqldb.lib.HsqlList);
    descriptor: (Lorg/hsqldb/Session;[Lorg/hsqldb/RangeVariable;I[Lorg/hsqldb/RangeGroup;Lorg/hsqldb/lib/HsqlList;Lorg/hsqldb/lib/HsqlList;)Lorg/hsqldb/lib/HsqlList;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=9, args_size=6
        start local 0 // org.hsqldb.Session session
        start local 1 // org.hsqldb.RangeVariable[] rangeVars
        start local 2 // int rangeCount
        start local 3 // org.hsqldb.RangeGroup[] rangeGroups
        start local 4 // org.hsqldb.lib.HsqlList sourceSet
        start local 5 // org.hsqldb.lib.HsqlList targetSet
         0: .line 1997
            aload 4 /* sourceSet */
            ifnonnull 2
         1: .line 1998
            aload 5 /* targetSet */
            areturn
         2: .line 2001
      StackMap locals:
      StackMap stack:
            new org.hsqldb.RangeGroup$RangeGroupSimple
            dup
            aload 1 /* rangeVars */
            iconst_0
            invokespecial org.hsqldb.RangeGroup$RangeGroupSimple.<init>:([Lorg/hsqldb/RangeVariable;Z)V
            astore 6 /* rangeGroup */
        start local 6 // org.hsqldb.RangeGroup rangeGroup
         3: .line 2003
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         4: goto 11
         5: .line 2004
      StackMap locals: org.hsqldb.RangeGroup int
      StackMap stack:
            aload 4 /* sourceSet */
            iload 7 /* i */
            invokeinterface org.hsqldb.lib.HsqlList.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.Expression
            astore 8 /* e */
        start local 8 // org.hsqldb.Expression e
         6: .line 2006
            aload 8 /* e */
            aload 0 /* session */
            aload 6 /* rangeGroup */
         7: .line 2007
            iload 2 /* rangeCount */
            aload 3 /* rangeGroups */
         8: .line 2008
            aload 5 /* targetSet */
            iconst_0
         9: .line 2006
            invokevirtual org.hsqldb.Expression.resolveColumnReferences:(Lorg/hsqldb/Session;Lorg/hsqldb/RangeGroup;I[Lorg/hsqldb/RangeGroup;Lorg/hsqldb/lib/HsqlList;Z)Lorg/hsqldb/lib/HsqlList;
            astore 5 /* targetSet */
        end local 8 // org.hsqldb.Expression e
        10: .line 2003
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 7 /* i */
            aload 4 /* sourceSet */
            invokeinterface org.hsqldb.lib.HsqlList.size:()I
            if_icmplt 5
        end local 7 // int i
        12: .line 2011
            aload 5 /* targetSet */
            areturn
        end local 6 // org.hsqldb.RangeGroup rangeGroup
        end local 5 // org.hsqldb.lib.HsqlList targetSet
        end local 4 // org.hsqldb.lib.HsqlList sourceSet
        end local 3 // org.hsqldb.RangeGroup[] rangeGroups
        end local 2 // int rangeCount
        end local 1 // org.hsqldb.RangeVariable[] rangeVars
        end local 0 // org.hsqldb.Session session
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   13     0      session  Lorg/hsqldb/Session;
            0   13     1    rangeVars  [Lorg/hsqldb/RangeVariable;
            0   13     2   rangeCount  I
            0   13     3  rangeGroups  [Lorg/hsqldb/RangeGroup;
            0   13     4    sourceSet  Lorg/hsqldb/lib/HsqlList;
            0   13     5    targetSet  Lorg/hsqldb/lib/HsqlList;
            3   13     6   rangeGroup  Lorg/hsqldb/RangeGroup;
            4   12     7            i  I
            6   10     8            e  Lorg/hsqldb/Expression;
    MethodParameters:
             Name  Flags
      session      
      rangeVars    
      rangeCount   
      rangeGroups  
      sourceSet    
      targetSet    

  boolean isConditionRangeVariable(org.hsqldb.RangeVariable);
    descriptor: (Lorg/hsqldb/RangeVariable;)Z
    flags: (0x0000) 
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.RangeVariable range
         0: .line 2015
            iconst_0
            ireturn
        end local 1 // org.hsqldb.RangeVariable range
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/hsqldb/Expression;
            0    1     1  range  Lorg/hsqldb/RangeVariable;
    MethodParameters:
       Name  Flags
      range  

  void getJoinRangeVariables(org.hsqldb.RangeVariable[], org.hsqldb.lib.HsqlList);
    descriptor: ([Lorg/hsqldb/RangeVariable;Lorg/hsqldb/lib/HsqlList;)V
    flags: (0x0000) 
    Code:
      stack=0, locals=3, args_size=3
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.RangeVariable[] ranges
        start local 2 // org.hsqldb.lib.HsqlList list
         0: .line 2018
            return
        end local 2 // org.hsqldb.lib.HsqlList list
        end local 1 // org.hsqldb.RangeVariable[] ranges
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/hsqldb/Expression;
            0    1     1  ranges  [Lorg/hsqldb/RangeVariable;
            0    1     2    list  Lorg/hsqldb/lib/HsqlList;
    MethodParameters:
        Name  Flags
      ranges  
      list    

  double costFactor(org.hsqldb.Session, org.hsqldb.RangeVariable, int);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/RangeVariable;I)D
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.RangeVariable range
        start local 3 // int operation
         0: .line 2021
            ldc 16.0
            dreturn
        end local 3 // int operation
        end local 2 // org.hsqldb.RangeVariable range
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/hsqldb/Expression;
            0    1     1    session  Lorg/hsqldb/Session;
            0    1     2      range  Lorg/hsqldb/RangeVariable;
            0    1     3  operation  I
    MethodParameters:
           Name  Flags
      session    
      range      
      operation  

  org.hsqldb.Expression getIndexableExpression(org.hsqldb.RangeVariable);
    descriptor: (Lorg/hsqldb/RangeVariable;)Lorg/hsqldb/Expression;
    flags: (0x0000) 
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.RangeVariable rangeVar
         0: .line 2025
            aconst_null
            areturn
        end local 1 // org.hsqldb.RangeVariable rangeVar
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/hsqldb/Expression;
            0    1     1  rangeVar  Lorg/hsqldb/RangeVariable;
    MethodParameters:
          Name  Flags
      rangeVar  

  public org.hsqldb.Expression duplicate();
    descriptor: ()Lorg/hsqldb/Expression;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 2030
            aconst_null
            astore 1 /* e */
        start local 1 // org.hsqldb.Expression e
         1: .line 2033
            aload 0 /* this */
            invokespecial java.lang.Object.clone:()Ljava/lang/Object;
            checkcast org.hsqldb.Expression
            astore 1 /* e */
         2: .line 2034
            aload 1 /* e */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            invokevirtual org.hsqldb.Expression[].clone:()Ljava/lang/Object;
            checkcast org.hsqldb.Expression[]
            putfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
         3: .line 2036
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         4: goto 8
         5: .line 2037
      StackMap locals: org.hsqldb.Expression int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            ifnull 7
         6: .line 2038
            aload 1 /* e */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            invokevirtual org.hsqldb.Expression.duplicate:()Lorg/hsqldb/Expression;
            aastore
         7: .line 2036
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 5
        end local 2 // int i
         9: .line 2041
            goto 12
      StackMap locals: org.hsqldb.Expression org.hsqldb.Expression
      StackMap stack: java.lang.CloneNotSupportedException
        10: pop
        11: .line 2042
            sipush 201
            ldc "Expression"
            invokestatic org.hsqldb.error.Error.runtimeError:(ILjava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        12: .line 2045
      StackMap locals:
      StackMap stack:
            aload 1 /* e */
            areturn
        end local 1 // org.hsqldb.Expression e
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Lorg/hsqldb/Expression;
            1   13     1     e  Lorg/hsqldb/Expression;
            4    9     2     i  I
      Exception table:
        from    to  target  type
           1     9      10  Class java.lang.CloneNotSupportedException

  void replaceNode(org.hsqldb.Expression, org.hsqldb.Expression);
    descriptor: (Lorg/hsqldb/Expression;Lorg/hsqldb/Expression;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Expression existing
        start local 2 // org.hsqldb.Expression replacement
         0: .line 2050
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         1: goto 7
         2: .line 2051
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
            aload 1 /* existing */
            if_acmpne 6
         3: .line 2052
            aload 2 /* replacement */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
            getfield org.hsqldb.Expression.alias:Lorg/hsqldb/HsqlNameManager$SimpleName;
            putfield org.hsqldb.Expression.alias:Lorg/hsqldb/HsqlNameManager$SimpleName;
         4: .line 2053
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aload 2 /* replacement */
            aastore
         5: .line 2055
            return
         6: .line 2050
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 2
        end local 3 // int i
         8: .line 2059
            sipush 201
            ldc "Expression"
            invokestatic org.hsqldb.error.Error.runtimeError:(ILjava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        end local 2 // org.hsqldb.Expression replacement
        end local 1 // org.hsqldb.Expression existing
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0         this  Lorg/hsqldb/Expression;
            0    9     1     existing  Lorg/hsqldb/Expression;
            0    9     2  replacement  Lorg/hsqldb/Expression;
            1    8     3            i  I
    MethodParameters:
             Name  Flags
      existing     
      replacement  

  public org.hsqldb.SetFunction updateAggregatingValue(org.hsqldb.Session, org.hsqldb.SetFunction);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/SetFunction;)Lorg/hsqldb/SetFunction;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.SetFunction currValue
         0: .line 2064
            sipush 201
            ldc "Expression"
            invokestatic org.hsqldb.error.Error.runtimeError:(ILjava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        end local 2 // org.hsqldb.SetFunction currValue
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/hsqldb/Expression;
            0    1     1    session  Lorg/hsqldb/Session;
            0    1     2  currValue  Lorg/hsqldb/SetFunction;
    MethodParameters:
           Name  Flags
      session    
      currValue  

  public java.lang.Object getAggregatedValue(org.hsqldb.Session, org.hsqldb.SetFunction);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/SetFunction;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.SetFunction currValue
         0: .line 2068
            sipush 201
            ldc "Expression"
            invokestatic org.hsqldb.error.Error.runtimeError:(ILjava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        end local 2 // org.hsqldb.SetFunction currValue
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/hsqldb/Expression;
            0    1     1    session  Lorg/hsqldb/Session;
            0    1     2  currValue  Lorg/hsqldb/SetFunction;
    MethodParameters:
           Name  Flags
      session    
      currValue  

  public org.hsqldb.Expression getCondition();
    descriptor: ()Lorg/hsqldb/Expression;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.Expression this
         0: .line 2072
            aconst_null
            areturn
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/Expression;

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

  public void setCondition(org.hsqldb.ExpressionLogical);
    descriptor: (Lorg/hsqldb/ExpressionLogical;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.ExpressionLogical e
         0: .line 2080
            sipush 201
            ldc "Expression"
            invokestatic org.hsqldb.error.Error.runtimeError:(ILjava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        end local 1 // org.hsqldb.ExpressionLogical e
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/Expression;
            0    1     1     e  Lorg/hsqldb/ExpressionLogical;
    MethodParameters:
      Name  Flags
      e     

  public void setCollation(org.hsqldb.types.Collation);
    descriptor: (Lorg/hsqldb/types/Collation;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.Expression this
        start local 1 // org.hsqldb.types.Collation collation
         0: .line 2084
            aload 0 /* this */
            aload 1 /* collation */
            putfield org.hsqldb.Expression.collation:Lorg/hsqldb/types/Collation;
         1: .line 2085
            return
        end local 1 // org.hsqldb.types.Collation collation
        end local 0 // org.hsqldb.Expression this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/hsqldb/Expression;
            0    2     1  collation  Lorg/hsqldb/types/Collation;
    MethodParameters:
           Name  Flags
      collation  
}
SourceFile: "Expression.java"
InnerClasses:
  public final HsqlName = org.hsqldb.HsqlNameManager$HsqlName of org.hsqldb.HsqlNameManager
  public SimpleName = org.hsqldb.HsqlNameManager$SimpleName of org.hsqldb.HsqlNameManager
  public final CompileContext = org.hsqldb.ParserDQL$CompileContext of org.hsqldb.ParserDQL
  public RangeGroupSimple = org.hsqldb.RangeGroup$RangeGroupSimple of org.hsqldb.RangeGroup