public class org.hsqldb.QuerySpecification extends org.hsqldb.QueryExpression
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.hsqldb.QuerySpecification
  super_class: org.hsqldb.QueryExpression
{
  public int resultRangePosition;
    descriptor: I
    flags: (0x0001) ACC_PUBLIC

  public boolean isDistinctSelect;
    descriptor: Z
    flags: (0x0001) ACC_PUBLIC

  public boolean isAggregated;
    descriptor: Z
    flags: (0x0001) ACC_PUBLIC

  public boolean isGrouped;
    descriptor: Z
    flags: (0x0001) ACC_PUBLIC

  public boolean isOrderSensitive;
    descriptor: Z
    flags: (0x0001) ACC_PUBLIC

  public boolean isSimpleDistinct;
    descriptor: Z
    flags: (0x0001) ACC_PUBLIC

  org.hsqldb.RangeVariable[] rangeVariables;
    descriptor: [Lorg/hsqldb/RangeVariable;
    flags: (0x0000) 

  private org.hsqldb.lib.HsqlArrayList rangeVariableList;
    descriptor: Lorg/hsqldb/lib/HsqlArrayList;
    flags: (0x0002) ACC_PRIVATE

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

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

  org.hsqldb.Expression queryCondition;
    descriptor: Lorg/hsqldb/Expression;
    flags: (0x0000) 

  org.hsqldb.Expression checkQueryCondition;
    descriptor: Lorg/hsqldb/Expression;
    flags: (0x0000) 

  private org.hsqldb.Expression havingCondition;
    descriptor: Lorg/hsqldb/Expression;
    flags: (0x0002) ACC_PRIVATE

  org.hsqldb.Expression rowExpression;
    descriptor: Lorg/hsqldb/Expression;
    flags: (0x0000) 

  org.hsqldb.Expression[] exprColumns;
    descriptor: [Lorg/hsqldb/Expression;
    flags: (0x0000) 

  org.hsqldb.lib.HsqlArrayList exprColumnList;
    descriptor: Lorg/hsqldb/lib/HsqlArrayList;
    flags: (0x0000) 

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

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

  public int indexLimitVisible;
    descriptor: I
    flags: (0x0001) ACC_PUBLIC

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

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

  public int indexStartOrderBy;
    descriptor: I
    flags: (0x0001) ACC_PUBLIC

  public int indexStartAggregates;
    descriptor: I
    flags: (0x0001) ACC_PUBLIC

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

  public int indexLimitData;
    descriptor: I
    flags: (0x0001) ACC_PUBLIC

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

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

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

  public boolean isUniqueResultRows;
    descriptor: Z
    flags: (0x0001) ACC_PUBLIC

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

  private org.hsqldb.lib.ArrayListIdentity aggregateSet;
    descriptor: Lorg/hsqldb/lib/ArrayListIdentity;
    flags: (0x0002) ACC_PRIVATE

  private org.hsqldb.lib.ArrayListIdentity resolvedSubqueryExpressions;
    descriptor: Lorg/hsqldb/lib/ArrayListIdentity;
    flags: (0x0002) ACC_PRIVATE

  private boolean[] aggregateCheck;
    descriptor: [Z
    flags: (0x0002) ACC_PRIVATE

  private org.hsqldb.lib.OrderedHashSet tempSet;
    descriptor: Lorg/hsqldb/lib/OrderedHashSet;
    flags: (0x0002) ACC_PRIVATE

  int[] columnMap;
    descriptor: [I
    flags: (0x0000) 

  private org.hsqldb.Table baseTable;
    descriptor: Lorg/hsqldb/Table;
    flags: (0x0002) ACC_PRIVATE

  public org.hsqldb.index.Index groupIndex;
    descriptor: Lorg/hsqldb/index/Index;
    flags: (0x0001) ACC_PUBLIC

  private org.hsqldb.RangeGroup[] outerRanges;
    descriptor: [Lorg/hsqldb/RangeGroup;
    flags: (0x0002) ACC_PRIVATE

  void <init>(org.hsqldb.Session, org.hsqldb.Table, org.hsqldb.ParserDQL$CompileContext, boolean);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/Table;Lorg/hsqldb/ParserDQL$CompileContext;Z)V
    flags: (0x0000) 
    Code:
      stack=7, locals=6, args_size=5
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.Table table
        start local 3 // org.hsqldb.ParserDQL$CompileContext compileContext
        start local 4 // boolean isValueList
         0: .line 133
            aload 0 /* this */
            aload 3 /* compileContext */
            invokespecial org.hsqldb.QuerySpecification.<init>:(Lorg/hsqldb/ParserDQL$CompileContext;)V
         1: .line 135
            aload 0 /* this */
            iload 4 /* isValueList */
            putfield org.hsqldb.QuerySpecification.isValueList:Z
         2: .line 137
            new org.hsqldb.RangeVariable
            dup
            aload 2 /* table */
            aconst_null
            aconst_null
            aconst_null
         3: .line 138
            aload 3 /* compileContext */
         4: .line 137
            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
         5: .line 140
            aload 5 /* range */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumnList:Lorg/hsqldb/lib/HsqlArrayList;
            iconst_0
            aconst_null
            invokevirtual org.hsqldb.RangeVariable.addTableColumns:(Lorg/hsqldb/lib/HsqlArrayList;ILorg/hsqldb/lib/HashSet;)I
            pop
         6: .line 142
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumnList:Lorg/hsqldb/lib/HsqlArrayList;
            invokevirtual org.hsqldb.lib.HsqlArrayList.size:()I
            putfield org.hsqldb.QuerySpecification.indexLimitVisible:I
         7: .line 144
            aload 0 /* this */
            aload 1 /* session */
            aload 5 /* range */
            invokevirtual org.hsqldb.QuerySpecification.addRangeVariable:(Lorg/hsqldb/Session;Lorg/hsqldb/RangeVariable;)V
         8: .line 146
            aload 0 /* this */
            getstatic org.hsqldb.SortAndSlice.noSort:Lorg/hsqldb/SortAndSlice;
            putfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
         9: .line 147
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.QuerySpecification.isBaseMergeable:Z
        10: .line 148
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.QuerySpecification.isMergeable:Z
        11: .line 149
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.QuerySpecification.isTable:Z
        12: .line 150
            return
        end local 5 // org.hsqldb.RangeVariable range
        end local 4 // boolean isValueList
        end local 3 // org.hsqldb.ParserDQL$CompileContext compileContext
        end local 2 // org.hsqldb.Table table
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   13     0            this  Lorg/hsqldb/QuerySpecification;
            0   13     1         session  Lorg/hsqldb/Session;
            0   13     2           table  Lorg/hsqldb/Table;
            0   13     3  compileContext  Lorg/hsqldb/ParserDQL$CompileContext;
            0   13     4     isValueList  Z
            5   13     5           range  Lorg/hsqldb/RangeVariable;
    MethodParameters:
                Name  Flags
      session         
      table           
      compileContext  
      isValueList     

  void <init>(org.hsqldb.ParserDQL$CompileContext);
    descriptor: (Lorg/hsqldb/ParserDQL$CompileContext;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.ParserDQL$CompileContext compileContext
         0: .line 154
            aload 0 /* this */
            aload 1 /* compileContext */
            invokespecial org.hsqldb.QueryExpression.<init>:(Lorg/hsqldb/ParserDQL$CompileContext;)V
         1: .line 81
            aload 0 /* this */
            iconst_m1
            putfield org.hsqldb.QuerySpecification.startInnerRange:I
         2: .line 82
            aload 0 /* this */
            iconst_m1
            putfield org.hsqldb.QuerySpecification.endInnerRange:I
         3: .line 110
            aload 0 /* this */
            aconst_null
            putfield org.hsqldb.QuerySpecification.resolvedSubqueryExpressions:Lorg/hsqldb/lib/ArrayListIdentity;
         4: .line 117
            aload 0 /* this */
            new org.hsqldb.lib.OrderedHashSet
            dup
            invokespecial org.hsqldb.lib.OrderedHashSet.<init>:()V
            putfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
         5: .line 156
            aload 0 /* this */
            aload 1 /* compileContext */
            invokevirtual org.hsqldb.ParserDQL$CompileContext.getNextResultRangeVarIndex:()I
            putfield org.hsqldb.QuerySpecification.resultRangePosition:I
         6: .line 157
            aload 0 /* this */
            new org.hsqldb.lib.HsqlArrayList
            dup
            invokespecial org.hsqldb.lib.HsqlArrayList.<init>:()V
            putfield org.hsqldb.QuerySpecification.rangeVariableList:Lorg/hsqldb/lib/HsqlArrayList;
         7: .line 158
            aload 0 /* this */
            new org.hsqldb.lib.HsqlArrayList
            dup
            invokespecial org.hsqldb.lib.HsqlArrayList.<init>:()V
            putfield org.hsqldb.QuerySpecification.exprColumnList:Lorg/hsqldb/lib/HsqlArrayList;
         8: .line 159
            aload 0 /* this */
            getstatic org.hsqldb.SortAndSlice.noSort:Lorg/hsqldb/SortAndSlice;
            putfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
         9: .line 160
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.QuerySpecification.isBaseMergeable:Z
        10: .line 161
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.QuerySpecification.isMergeable:Z
        11: .line 162
            return
        end local 1 // org.hsqldb.ParserDQL$CompileContext compileContext
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   12     0            this  Lorg/hsqldb/QuerySpecification;
            0   12     1  compileContext  Lorg/hsqldb/ParserDQL$CompileContext;
    MethodParameters:
                Name  Flags
      compileContext  

  void addRangeVariable(org.hsqldb.Session, org.hsqldb.RangeVariable);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/RangeVariable;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.RangeVariable rangeVar
         0: .line 165
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariableList:Lorg/hsqldb/lib/HsqlArrayList;
            aload 2 /* rangeVar */
            invokevirtual org.hsqldb.lib.HsqlArrayList.add:(Ljava/lang/Object;)Z
            pop
         1: .line 166
            return
        end local 2 // org.hsqldb.RangeVariable rangeVar
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/hsqldb/QuerySpecification;
            0    2     1   session  Lorg/hsqldb/Session;
            0    2     2  rangeVar  Lorg/hsqldb/RangeVariable;
    MethodParameters:
          Name  Flags
      session   
      rangeVar  

  public org.hsqldb.TableDerived getValueListTable();
    descriptor: ()Lorg/hsqldb/TableDerived;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.hsqldb.QuerySpecification this
         0: .line 170
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isValueList:Z
            ifeq 10
         1: .line 171
            aconst_null
            astore 1 /* range */
        start local 1 // org.hsqldb.RangeVariable range
         2: .line 173
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            ifnonnull 6
         3: .line 174
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariableList:Lorg/hsqldb/lib/HsqlArrayList;
            invokevirtual org.hsqldb.lib.HsqlArrayList.size:()I
            iconst_1
            if_icmpne 8
         4: .line 175
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariableList:Lorg/hsqldb/lib/HsqlArrayList;
            iconst_0
            invokevirtual org.hsqldb.lib.HsqlArrayList.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.RangeVariable
            astore 1 /* range */
         5: .line 177
            goto 8
      StackMap locals: org.hsqldb.RangeVariable
      StackMap stack:
         6: aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            iconst_1
            if_icmpne 8
         7: .line 178
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iconst_0
            aaload
            astore 1 /* range */
         8: .line 181
      StackMap locals:
      StackMap stack:
            aload 1 /* range */
            ifnull 10
         9: .line 182
            aload 1 /* range */
            invokevirtual org.hsqldb.RangeVariable.getTable:()Lorg/hsqldb/Table;
            checkcast org.hsqldb.TableDerived
            areturn
        end local 1 // org.hsqldb.RangeVariable range
        10: .line 186
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   11     0   this  Lorg/hsqldb/QuerySpecification;
            2   10     1  range  Lorg/hsqldb/RangeVariable;

  public org.hsqldb.RangeVariable[] getRangeVariables();
    descriptor: ()[Lorg/hsqldb/RangeVariable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.QuerySpecification this
         0: .line 190
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            areturn
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/QuerySpecification;

  public int getCurrentRangeVariableCount();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.QuerySpecification this
         0: .line 194
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariableList:Lorg/hsqldb/lib/HsqlArrayList;
            invokevirtual org.hsqldb.lib.HsqlArrayList.size:()I
            ireturn
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/QuerySpecification;

  private void resolveRangeVariables(org.hsqldb.Session, org.hsqldb.RangeGroup[]);
    descriptor: (Lorg/hsqldb/Session;[Lorg/hsqldb/RangeGroup;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.RangeGroup[] rangeGroups
         0: .line 201
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            ifnull 2
         1: .line 202
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariableList:Lorg/hsqldb/lib/HsqlArrayList;
            invokevirtual org.hsqldb.lib.HsqlArrayList.size:()I
            if_icmpge 4
         2: .line 203
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariableList:Lorg/hsqldb/lib/HsqlArrayList;
            invokevirtual org.hsqldb.lib.HsqlArrayList.size:()I
            anewarray org.hsqldb.RangeVariable
            putfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
         3: .line 205
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariableList:Lorg/hsqldb/lib/HsqlArrayList;
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            invokevirtual org.hsqldb.lib.HsqlArrayList.toArray:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 208
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         5: goto 21
         6: .line 211
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iload 3 /* i */
            aaload
            getfield org.hsqldb.RangeVariable.isLateral:Z
            ifeq 11
         7: .line 213
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iload 3 /* i */
            invokestatic org.hsqldb.lib.ArrayUtil.resizeArray:(Ljava/lang/Object;I)Ljava/lang/Object;
            checkcast org.hsqldb.RangeVariable[]
         8: .line 212
            astore 5 /* rangeVars */
        start local 5 // org.hsqldb.RangeVariable[] rangeVars
         9: .line 215
            new org.hsqldb.RangeGroup$RangeGroupSimple
            dup
            aload 5 /* rangeVars */
            aload 0 /* this */
            invokespecial org.hsqldb.RangeGroup$RangeGroupSimple.<init>:([Lorg/hsqldb/RangeVariable;Lorg/hsqldb/RangeGroup;)V
            astore 4 /* rangeGroup */
        end local 5 // org.hsqldb.RangeVariable[] rangeVars
        start local 4 // org.hsqldb.RangeGroup rangeGroup
        10: .line 216
            goto 17
        end local 4 // org.hsqldb.RangeGroup rangeGroup
      StackMap locals:
      StackMap stack:
        11: aload 2 /* rangeGroups */
            getstatic org.hsqldb.RangeGroup.emptyArray:[Lorg/hsqldb/RangeGroup;
            if_acmpne 14
        12: .line 217
            getstatic org.hsqldb.RangeGroup.emptyGroup:Lorg/hsqldb/RangeGroup;
            astore 4 /* rangeGroup */
        start local 4 // org.hsqldb.RangeGroup rangeGroup
        13: .line 218
            goto 17
        end local 4 // org.hsqldb.RangeGroup rangeGroup
        14: .line 219
      StackMap locals:
      StackMap stack:
            new org.hsqldb.RangeGroup$RangeGroupSimple
            dup
            getstatic org.hsqldb.RangeVariable.emptyArray:[Lorg/hsqldb/RangeVariable;
        15: .line 220
            aload 0 /* this */
        16: .line 219
            invokespecial org.hsqldb.RangeGroup$RangeGroupSimple.<init>:([Lorg/hsqldb/RangeVariable;Lorg/hsqldb/RangeGroup;)V
            astore 4 /* rangeGroup */
        start local 4 // org.hsqldb.RangeGroup rangeGroup
        17: .line 223
      StackMap locals: org.hsqldb.RangeGroup
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iload 3 /* i */
            aaload
            aload 1 /* session */
            aload 4 /* rangeGroup */
        18: .line 224
            aload 2 /* rangeGroups */
        19: .line 223
            invokevirtual org.hsqldb.RangeVariable.resolveRangeTable:(Lorg/hsqldb/Session;Lorg/hsqldb/RangeGroup;[Lorg/hsqldb/RangeGroup;)V
        end local 4 // org.hsqldb.RangeGroup rangeGroup
        20: .line 208
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        21: iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            if_icmplt 6
        end local 3 // int i
        22: .line 226
            return
        end local 2 // org.hsqldb.RangeGroup[] rangeGroups
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   23     0         this  Lorg/hsqldb/QuerySpecification;
            0   23     1      session  Lorg/hsqldb/Session;
            0   23     2  rangeGroups  [Lorg/hsqldb/RangeGroup;
            5   22     3            i  I
           10   11     4   rangeGroup  Lorg/hsqldb/RangeGroup;
           13   14     4   rangeGroup  Lorg/hsqldb/RangeGroup;
           17   20     4   rangeGroup  Lorg/hsqldb/RangeGroup;
            9   10     5    rangeVars  [Lorg/hsqldb/RangeVariable;
    MethodParameters:
             Name  Flags
      session      
      rangeGroups  

  void addSelectColumnExpression(org.hsqldb.Expression);
    descriptor: (Lorg/hsqldb/Expression;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Expression e
         0: .line 230
            aload 1 /* e */
            invokevirtual org.hsqldb.Expression.getType:()I
            bipush 25
            if_icmpne 2
         1: .line 231
            sipush 5564
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
         2: .line 234
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            ifle 10
         3: .line 235
            aload 1 /* e */
            getfield org.hsqldb.Expression.opType:I
            bipush 96
            if_icmpne 6
         4: .line 236
            aload 1 /* e */
            checkcast org.hsqldb.ExpressionColumn
            invokevirtual org.hsqldb.ExpressionColumn.getTableName:()Ljava/lang/String;
            ifnonnull 6
         5: .line 237
            sipush 5578
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
         6: .line 241
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumnList:Lorg/hsqldb/lib/HsqlArrayList;
            iconst_0
            invokevirtual org.hsqldb.lib.HsqlArrayList.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.Expression
            astore 2 /* first */
        start local 2 // org.hsqldb.Expression first
         7: .line 243
            aload 2 /* first */
            getfield org.hsqldb.Expression.opType:I
            bipush 96
            if_icmpne 10
         8: .line 244
            aload 2 /* first */
            checkcast org.hsqldb.ExpressionColumn
            invokevirtual org.hsqldb.ExpressionColumn.getTableName:()Ljava/lang/String;
            ifnonnull 10
         9: .line 245
            sipush 5578
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        end local 2 // org.hsqldb.Expression first
        10: .line 249
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumnList:Lorg/hsqldb/lib/HsqlArrayList;
            aload 1 /* e */
            invokevirtual org.hsqldb.lib.HsqlArrayList.add:(Ljava/lang/Object;)Z
            pop
        11: .line 251
            aload 0 /* this */
            dup
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            iconst_1
            iadd
            putfield org.hsqldb.QuerySpecification.indexLimitVisible:I
        12: .line 252
            return
        end local 1 // org.hsqldb.Expression e
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   13     0   this  Lorg/hsqldb/QuerySpecification;
            0   13     1      e  Lorg/hsqldb/Expression;
            7   10     2  first  Lorg/hsqldb/Expression;
    MethodParameters:
      Name  Flags
      e     

  void addQueryCondition(org.hsqldb.Expression);
    descriptor: (Lorg/hsqldb/Expression;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Expression e
         0: .line 255
            aload 0 /* this */
            aload 1 /* e */
            putfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
         1: .line 256
            return
        end local 1 // org.hsqldb.Expression e
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/hsqldb/QuerySpecification;
            0    2     1     e  Lorg/hsqldb/Expression;
    MethodParameters:
      Name  Flags
      e     

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

  void addGroupByColumnExpression(org.hsqldb.Expression);
    descriptor: (Lorg/hsqldb/Expression;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Expression e
         0: .line 264
            aload 1 /* e */
            invokevirtual org.hsqldb.Expression.getType:()I
            bipush 25
            if_icmpne 2
         1: .line 265
            sipush 5564
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
         2: .line 268
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumnList:Lorg/hsqldb/lib/HsqlArrayList;
            aload 1 /* e */
            invokevirtual org.hsqldb.lib.HsqlArrayList.add:(Ljava/lang/Object;)Z
            pop
         3: .line 270
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.QuerySpecification.isGrouped:Z
         4: .line 272
            aload 0 /* this */
            dup
            getfield org.hsqldb.QuerySpecification.groupByColumnCount:I
            iconst_1
            iadd
            putfield org.hsqldb.QuerySpecification.groupByColumnCount:I
         5: .line 273
            return
        end local 1 // org.hsqldb.Expression e
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/hsqldb/QuerySpecification;
            0    6     1     e  Lorg/hsqldb/Expression;
    MethodParameters:
      Name  Flags
      e     

  void addHavingExpression(org.hsqldb.Expression);
    descriptor: (Lorg/hsqldb/Expression;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Expression e
         0: .line 277
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumnList:Lorg/hsqldb/lib/HsqlArrayList;
            aload 1 /* e */
            invokevirtual org.hsqldb.lib.HsqlArrayList.add:(Ljava/lang/Object;)Z
            pop
         1: .line 279
            aload 0 /* this */
            aload 1 /* e */
            putfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
         2: .line 280
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.QuerySpecification.havingColumnCount:I
         3: .line 281
            return
        end local 1 // org.hsqldb.Expression e
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/hsqldb/QuerySpecification;
            0    4     1     e  Lorg/hsqldb/Expression;
    MethodParameters:
      Name  Flags
      e     

  void addSortAndSlice(org.hsqldb.SortAndSlice);
    descriptor: (Lorg/hsqldb/SortAndSlice;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.SortAndSlice sortAndSlice
         0: .line 284
            aload 0 /* this */
            aload 1 /* sortAndSlice */
            putfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
         1: .line 285
            return
        end local 1 // org.hsqldb.SortAndSlice sortAndSlice
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lorg/hsqldb/QuerySpecification;
            0    2     1  sortAndSlice  Lorg/hsqldb/SortAndSlice;
    MethodParameters:
              Name  Flags
      sortAndSlice  

  public void resolveReferences(org.hsqldb.Session, org.hsqldb.RangeGroup[]);
    descriptor: (Lorg/hsqldb/Session;[Lorg/hsqldb/RangeGroup;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.RangeGroup[] rangeGroups
         0: .line 289
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isReferencesResolved:Z
            ifeq 2
         1: .line 290
            return
         2: .line 293
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* rangeGroups */
            putfield org.hsqldb.QuerySpecification.outerRanges:[Lorg/hsqldb/RangeGroup;
         3: .line 295
            aload 0 /* this */
            aload 1 /* session */
            aload 2 /* rangeGroups */
            invokevirtual org.hsqldb.QuerySpecification.resolveRangeVariables:(Lorg/hsqldb/Session;[Lorg/hsqldb/RangeGroup;)V
         4: .line 296
            aload 0 /* this */
            invokevirtual org.hsqldb.QuerySpecification.resolveColumnReferencesForAsterisk:()V
         5: .line 297
            aload 0 /* this */
            invokevirtual org.hsqldb.QuerySpecification.finaliseColumns:()V
         6: .line 298
            aload 0 /* this */
            aload 1 /* session */
            aload 2 /* rangeGroups */
            invokevirtual org.hsqldb.QuerySpecification.resolveColumnReferences:(Lorg/hsqldb/Session;[Lorg/hsqldb/RangeGroup;)V
         7: .line 299
            aload 0 /* this */
            invokevirtual org.hsqldb.QuerySpecification.setReferenceableColumns:()V
         8: .line 301
            aload 0 /* this */
            aload 1 /* session */
         9: .line 302
            getstatic org.hsqldb.RangeVariable.emptyArray:[Lorg/hsqldb/RangeVariable;
            aload 2 /* rangeGroups */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.unresolvedExpressions:Lorg/hsqldb/lib/HsqlList;
        10: .line 301
            invokestatic org.hsqldb.Expression.resolveColumnSet:(Lorg/hsqldb/Session;[Lorg/hsqldb/RangeVariable;[Lorg/hsqldb/RangeGroup;Lorg/hsqldb/lib/HsqlList;)Lorg/hsqldb/lib/HsqlList;
            putfield org.hsqldb.QuerySpecification.unresolvedExpressions:Lorg/hsqldb/lib/HsqlList;
        11: .line 303
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            anewarray org.hsqldb.types.Type
            putfield org.hsqldb.QuerySpecification.unionColumnTypes:[Lorg/hsqldb/types/Type;
        12: .line 304
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.QuerySpecification.isReferencesResolved:Z
        13: .line 305
            return
        end local 2 // org.hsqldb.RangeGroup[] rangeGroups
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   14     0         this  Lorg/hsqldb/QuerySpecification;
            0   14     1      session  Lorg/hsqldb/Session;
            0   14     2  rangeGroups  [Lorg/hsqldb/RangeGroup;
    MethodParameters:
             Name  Flags
      session      
      rangeGroups  

  public boolean hasReference(org.hsqldb.RangeVariable);
    descriptor: (Lorg/hsqldb/RangeVariable;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.RangeVariable range
         0: .line 309
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.unresolvedExpressions:Lorg/hsqldb/lib/HsqlList;
            ifnonnull 2
         1: .line 310
            iconst_0
            ireturn
         2: .line 313
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: goto 10
         4: .line 314
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.unresolvedExpressions:Lorg/hsqldb/lib/HsqlList;
            iload 2 /* i */
            invokeinterface org.hsqldb.lib.HsqlList.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.Expression
         5: .line 315
            aload 1 /* range */
         6: .line 314
            invokevirtual org.hsqldb.Expression.hasReference:(Lorg/hsqldb/RangeVariable;)Z
         7: .line 315
            ifeq 9
         8: .line 316
            iconst_1
            ireturn
         9: .line 313
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.unresolvedExpressions:Lorg/hsqldb/lib/HsqlList;
            invokeinterface org.hsqldb.lib.HsqlList.size:()I
            if_icmplt 4
        end local 2 // int i
        11: .line 320
            iconst_0
            ireturn
        end local 1 // org.hsqldb.RangeVariable range
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   12     0   this  Lorg/hsqldb/QuerySpecification;
            0   12     1  range  Lorg/hsqldb/RangeVariable;
            3   11     2      i  I
    MethodParameters:
       Name  Flags
      range  

  public boolean areColumnsResolved();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.QuerySpecification this
         0: .line 324
            aload 0 /* this */
            invokespecial org.hsqldb.QueryExpression.areColumnsResolved:()Z
            ireturn
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/QuerySpecification;

  public void resolveTypes(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
         0: .line 329
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isResolved:Z
            ifeq 2
         1: .line 330
            return
         2: .line 333
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* session */
            invokevirtual org.hsqldb.QuerySpecification.resolveTypesPartOne:(Lorg/hsqldb/Session;)V
         3: .line 334
            aload 0 /* this */
            aload 1 /* session */
            invokevirtual org.hsqldb.QuerySpecification.resolveTypesPartTwo:(Lorg/hsqldb/Session;)V
         4: .line 335
            aload 0 /* this */
            aload 1 /* session */
            invokevirtual org.hsqldb.QuerySpecification.resolveTypesPartThree:(Lorg/hsqldb/Session;)V
         5: .line 336
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resultTable:Lorg/hsqldb/TableBase;
            getfield org.hsqldb.TableBase.colTypes:[Lorg/hsqldb/types/Type;
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.unionColumnTypes:[Lorg/hsqldb/types/Type;
         6: .line 337
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.unionColumnTypes:[Lorg/hsqldb/types/Type;
            arraylength
         7: .line 336
            invokestatic org.hsqldb.lib.ArrayUtil.copyArray:(Ljava/lang/Object;Ljava/lang/Object;I)V
         8: .line 338
            return
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Lorg/hsqldb/QuerySpecification;
            0    9     1  session  Lorg/hsqldb/Session;
    MethodParameters:
         Name  Flags
      session  

  void resolveTypesPartOne(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
         0: .line 342
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isPartOneResolved:Z
            ifeq 2
         1: .line 343
            return
         2: .line 346
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* session */
            invokevirtual org.hsqldb.QuerySpecification.resolveExpressionTypes:(Lorg/hsqldb/Session;)V
         3: .line 347
            aload 0 /* this */
            invokevirtual org.hsqldb.QuerySpecification.resolveAggregates:()V
         4: .line 349
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         5: goto 10
         6: .line 350
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.unionColumnTypes:[Lorg/hsqldb/types/Type;
            iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.unionColumnTypes:[Lorg/hsqldb/types/Type;
            iload 2 /* i */
            aaload
         7: .line 351
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            invokevirtual org.hsqldb.Expression.getDataType:()Lorg/hsqldb/types/Type;
         8: .line 350
            invokestatic org.hsqldb.types.Type.getAggregateType:(Lorg/hsqldb/types/Type;Lorg/hsqldb/types/Type;)Lorg/hsqldb/types/Type;
            aastore
         9: .line 349
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.unionColumnTypes:[Lorg/hsqldb/types/Type;
            arraylength
            if_icmplt 6
        end local 2 // int i
        11: .line 354
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.QuerySpecification.isPartOneResolved:Z
        12: .line 355
            return
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   13     0     this  Lorg/hsqldb/QuerySpecification;
            0   13     1  session  Lorg/hsqldb/Session;
            5   11     2        i  I
    MethodParameters:
         Name  Flags
      session  

  void resolveTypesPartTwoRecursive(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
         0: .line 362
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 5
         2: .line 363
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.unionColumnTypes:[Lorg/hsqldb/types/Type;
            iload 2 /* i */
            aaload
            astore 3 /* type */
        start local 3 // org.hsqldb.types.Type type
         3: .line 365
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            aload 1 /* session */
            aload 3 /* type */
            invokevirtual org.hsqldb.Expression.setDataType:(Lorg/hsqldb/Session;Lorg/hsqldb/types/Type;)V
        end local 3 // org.hsqldb.types.Type type
         4: .line 362
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.unionColumnTypes:[Lorg/hsqldb/types/Type;
            arraylength
            if_icmplt 2
        end local 2 // int i
         6: .line 368
            aload 0 /* this */
            invokevirtual org.hsqldb.QuerySpecification.setResultColumnTypes:()V
         7: .line 369
            aload 0 /* this */
            aload 1 /* session */
            invokevirtual org.hsqldb.QuerySpecification.createResultMetaData:(Lorg/hsqldb/Session;)V
         8: .line 370
            aload 0 /* this */
            aload 1 /* session */
            invokevirtual org.hsqldb.QuerySpecification.createTable:(Lorg/hsqldb/Session;)V
         9: .line 371
            return
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Lorg/hsqldb/QuerySpecification;
            0   10     1  session  Lorg/hsqldb/Session;
            1    6     2        i  I
            3    4     3     type  Lorg/hsqldb/types/Type;
    MethodParameters:
         Name  Flags
      session  

  void resolveTypesPartTwo(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
         0: .line 375
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isPartTwoResolved:Z
            ifeq 2
         1: .line 376
            return
         2: .line 379
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hsqldb.QuerySpecification.resolveGroups:()V
         3: .line 381
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         4: goto 16
         5: .line 382
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.unionColumnTypes:[Lorg/hsqldb/types/Type;
            iload 2 /* i */
            aaload
            astore 3 /* type */
        start local 3 // org.hsqldb.types.Type type
         6: .line 384
            aload 3 /* type */
            ifnonnull 11
         7: .line 385
            aload 1 /* session */
            getfield org.hsqldb.Session.database:Lorg/hsqldb/Database;
            getfield org.hsqldb.Database.sqlEnforceTypes:Z
            ifeq 9
         8: .line 386
            sipush 5567
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
         9: .line 389
      StackMap locals: org.hsqldb.types.Type
      StackMap stack:
            getstatic org.hsqldb.types.Type.SQL_VARCHAR_DEFAULT:Lorg/hsqldb/types/CharacterType;
            astore 3 /* type */
        10: .line 390
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.unionColumnTypes:[Lorg/hsqldb/types/Type;
            iload 2 /* i */
            aload 3 /* type */
            aastore
        11: .line 393
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            aload 1 /* session */
            aload 3 /* type */
            invokevirtual org.hsqldb.Expression.setDataType:(Lorg/hsqldb/Session;Lorg/hsqldb/types/Type;)V
        12: .line 395
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
            invokevirtual org.hsqldb.types.Type.isArrayType:()Z
            ifeq 15
        13: .line 396
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
            invokevirtual org.hsqldb.types.Type.collectionBaseType:()Lorg/hsqldb/types/Type;
            ifnonnull 15
        14: .line 397
            sipush 5567
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        end local 3 // org.hsqldb.types.Type type
        15: .line 381
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.unionColumnTypes:[Lorg/hsqldb/types/Type;
            arraylength
            if_icmplt 5
        end local 2 // int i
        17: .line 401
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            istore 2 /* i */
        start local 2 // int i
        18: goto 22
        19: .line 402
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
            ifnonnull 21
        20: .line 403
            sipush 5567
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        21: .line 401
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        22: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartHaving:I
            if_icmplt 19
        end local 2 // int i
        23: .line 407
            aload 0 /* this */
            invokevirtual org.hsqldb.QuerySpecification.checkLobUsage:()V
        24: .line 408
            aload 0 /* this */
            invokevirtual org.hsqldb.QuerySpecification.setMergeability:()V
        25: .line 409
            aload 0 /* this */
            invokevirtual org.hsqldb.QuerySpecification.setUpdatability:()V
        26: .line 410
            aload 0 /* this */
            invokevirtual org.hsqldb.QuerySpecification.setResultColumnTypes:()V
        27: .line 411
            aload 0 /* this */
            aload 1 /* session */
            invokevirtual org.hsqldb.QuerySpecification.createResultMetaData:(Lorg/hsqldb/Session;)V
        28: .line 412
            aload 0 /* this */
            aload 1 /* session */
            invokevirtual org.hsqldb.QuerySpecification.createTable:(Lorg/hsqldb/Session;)V
        29: .line 413
            aload 0 /* this */
            aload 1 /* session */
            invokevirtual org.hsqldb.QuerySpecification.mergeQuery:(Lorg/hsqldb/Session;)V
        30: .line 415
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.QuerySpecification.isPartTwoResolved:Z
        31: .line 416
            return
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   32     0     this  Lorg/hsqldb/QuerySpecification;
            0   32     1  session  Lorg/hsqldb/Session;
            4   17     2        i  I
            6   15     3     type  Lorg/hsqldb/types/Type;
           18   23     2        i  I
    MethodParameters:
         Name  Flags
      session  

  void resolveTypesPartThree(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
         0: .line 420
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isResolved:Z
            ifeq 2
         1: .line 421
            return
         2: .line 424
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            aload 0 /* this */
            invokevirtual org.hsqldb.SortAndSlice.setSortIndex:(Lorg/hsqldb/QuerySpecification;)V
         3: .line 425
            aload 0 /* this */
            aload 1 /* session */
            invokevirtual org.hsqldb.QuerySpecification.setRangeVariableConditions:(Lorg/hsqldb/Session;)V
         4: .line 426
            aload 0 /* this */
            aload 1 /* session */
            invokevirtual org.hsqldb.QuerySpecification.setDistinctConditions:(Lorg/hsqldb/Session;)V
         5: .line 427
            aload 0 /* this */
            aload 1 /* session */
            invokevirtual org.hsqldb.QuerySpecification.setAggregateConditions:(Lorg/hsqldb/Session;)V
         6: .line 428
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            aload 0 /* this */
            invokevirtual org.hsqldb.SortAndSlice.setSortRange:(Lorg/hsqldb/QuerySpecification;)V
         7: .line 430
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         8: goto 11
         9: .line 431
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iload 2 /* i */
            aaload
            aload 1 /* session */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            invokevirtual org.hsqldb.RangeVariable.resolveRangeTableTypes:(Lorg/hsqldb/Session;[Lorg/hsqldb/RangeVariable;)V
        10: .line 430
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            if_icmplt 9
        end local 2 // int i
        12: .line 434
            aload 0 /* this */
            invokevirtual org.hsqldb.QuerySpecification.setResultNullability:()V
        13: .line 436
            aload 0 /* this */
            aconst_null
            putfield org.hsqldb.QuerySpecification.rangeVariableList:Lorg/hsqldb/lib/HsqlArrayList;
        14: .line 437
            aload 0 /* this */
            aconst_null
            putfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
        15: .line 438
            aload 0 /* this */
            aconst_null
            putfield org.hsqldb.QuerySpecification.compileContext:Lorg/hsqldb/ParserDQL$CompileContext;
        16: .line 439
            aload 0 /* this */
            aconst_null
            putfield org.hsqldb.QuerySpecification.outerRanges:[Lorg/hsqldb/RangeGroup;
        17: .line 440
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.QuerySpecification.isResolved:Z
        18: .line 441
            return
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   19     0     this  Lorg/hsqldb/QuerySpecification;
            0   19     1  session  Lorg/hsqldb/Session;
            8   12     2        i  I
    MethodParameters:
         Name  Flags
      session  

  public void addExtraConditions(org.hsqldb.Expression);
    descriptor: (Lorg/hsqldb/Expression;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Expression e
         0: .line 445
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isAggregated:Z
            ifne 1
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isGrouped:Z
            ifeq 2
         1: .line 446
      StackMap locals:
      StackMap stack:
            return
         2: .line 449
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            aload 1 /* e */
            invokestatic org.hsqldb.ExpressionLogical.andExpressions:(Lorg/hsqldb/Expression;Lorg/hsqldb/Expression;)Lorg/hsqldb/Expression;
            putfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
         3: .line 450
            return
        end local 1 // org.hsqldb.Expression e
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/hsqldb/QuerySpecification;
            0    4     1     e  Lorg/hsqldb/Expression;
    MethodParameters:
      Name  Flags
      e     

  private void resolveColumnReferences(org.hsqldb.Session, org.hsqldb.RangeGroup[]);
    descriptor: (Lorg/hsqldb/Session;[Lorg/hsqldb/RangeGroup;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.RangeGroup[] rangeGroups
         0: .line 460
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isDistinctSelect:Z
            ifne 1
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isGrouped:Z
            ifeq 2
         1: .line 461
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.QuerySpecification.acceptsSequences:Z
         2: .line 464
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 11
         4: .line 465
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iload 3 /* i */
            aaload
            invokevirtual org.hsqldb.RangeVariable.getJoinCondition:()Lorg/hsqldb/Expression;
            astore 4 /* e */
        start local 4 // org.hsqldb.Expression e
         5: .line 467
            aload 4 /* e */
            ifnonnull 7
         6: .line 468
            goto 10
         7: .line 471
      StackMap locals: org.hsqldb.Expression
      StackMap stack:
            aload 0 /* this */
            aload 1 /* session */
            aload 4 /* e */
            iload 3 /* i */
            iconst_1
            iadd
            aload 2 /* rangeGroups */
         8: .line 472
            iconst_0
         9: .line 471
            invokevirtual org.hsqldb.QuerySpecification.resolveColumnReferencesAndAllocate:(Lorg/hsqldb/Session;Lorg/hsqldb/Expression;I[Lorg/hsqldb/RangeGroup;Z)V
        end local 4 // org.hsqldb.Expression e
        10: .line 464
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            if_icmplt 4
        end local 3 // int i
        12: .line 475
            aload 0 /* this */
            aload 1 /* session */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
        13: .line 476
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            aload 2 /* rangeGroups */
        14: .line 477
            iconst_0
        15: .line 475
            invokevirtual org.hsqldb.QuerySpecification.resolveColumnReferencesAndAllocate:(Lorg/hsqldb/Session;Lorg/hsqldb/Expression;I[Lorg/hsqldb/RangeGroup;Z)V
        16: .line 479
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resolvedSubqueryExpressions:Lorg/hsqldb/lib/ArrayListIdentity;
            ifnull 18
        17: .line 482
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resolvedSubqueryExpressions:Lorg/hsqldb/lib/ArrayListIdentity;
            iconst_0
            invokevirtual org.hsqldb.lib.ArrayListIdentity.setSize:(I)V
        18: .line 485
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        19: goto 37
        20: .line 486
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* session */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
        21: .line 487
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
        22: .line 488
            aload 2 /* rangeGroups */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.acceptsSequences:Z
        23: .line 486
            invokevirtual org.hsqldb.QuerySpecification.resolveColumnReferencesAndAllocate:(Lorg/hsqldb/Session;Lorg/hsqldb/Expression;I[Lorg/hsqldb/RangeGroup;Z)V
        24: .line 490
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isGrouped:Z
            ifne 36
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isDistinctSelect:Z
            ifne 36
        25: .line 491
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
            aconst_null
            invokevirtual org.hsqldb.Expression.collectAllSubqueries:(Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 4 /* list */
        start local 4 // org.hsqldb.lib.HsqlList list
        26: .line 493
            aload 4 /* list */
            ifnull 28
        27: .line 494
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.QuerySpecification.isMergeable:Z
        28: .line 497
      StackMap locals: org.hsqldb.lib.HsqlList
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
            aconst_null
        29: .line 498
            getstatic org.hsqldb.OpTypes.sequenceExpressionSet:Lorg/hsqldb/lib/OrderedIntHashSet;
        30: .line 499
            getstatic org.hsqldb.OpTypes.subqueryAggregateExpressionSet:Lorg/hsqldb/lib/OrderedIntHashSet;
        31: .line 497
            invokevirtual org.hsqldb.Expression.collectAllExpressions:(Lorg/hsqldb/lib/OrderedHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 4 /* list */
        32: .line 501
            aload 4 /* list */
            ifnull 36
        33: .line 502
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.QuerySpecification.isOrderSensitive:Z
        34: .line 503
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.QuerySpecification.isMergeable:Z
        35: .line 504
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.QuerySpecification.isBaseMergeable:Z
        end local 4 // org.hsqldb.lib.HsqlList list
        36: .line 485
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        37: iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            if_icmplt 20
        end local 3 // int i
        38: .line 509
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            istore 3 /* i */
        start local 3 // int i
        39: goto 44
        40: .line 510
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aload 0 /* this */
            aload 1 /* session */
        41: .line 511
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
        42: .line 510
            invokevirtual org.hsqldb.QuerySpecification.resolveColumnReferencesInGroupBy:(Lorg/hsqldb/Session;Lorg/hsqldb/Expression;)Lorg/hsqldb/Expression;
            aastore
        43: .line 509
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        44: iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartHaving:I
            if_icmplt 40
        end local 3 // int i
        45: .line 514
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartHaving:I
            istore 3 /* i */
        start local 3 // int i
        46: goto 52
        47: .line 515
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* session */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
        48: .line 516
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
        49: .line 517
            aload 2 /* rangeGroups */
            iconst_0
        50: .line 515
            invokevirtual org.hsqldb.QuerySpecification.resolveColumnReferencesAndAllocate:(Lorg/hsqldb/Session;Lorg/hsqldb/Expression;I[Lorg/hsqldb/RangeGroup;Z)V
        51: .line 514
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        52: iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartOrderBy:I
            if_icmplt 47
        end local 3 // int i
        53: .line 520
            aload 0 /* this */
            aload 1 /* session */
            aload 2 /* rangeGroups */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            invokevirtual org.hsqldb.QuerySpecification.resolveColumnReferencesInOrderBy:(Lorg/hsqldb/Session;[Lorg/hsqldb/RangeGroup;Lorg/hsqldb/SortAndSlice;)V
        54: .line 521
            return
        end local 2 // org.hsqldb.RangeGroup[] rangeGroups
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   55     0         this  Lorg/hsqldb/QuerySpecification;
            0   55     1      session  Lorg/hsqldb/Session;
            0   55     2  rangeGroups  [Lorg/hsqldb/RangeGroup;
            3   12     3            i  I
            5   10     4            e  Lorg/hsqldb/Expression;
           19   38     3            i  I
           26   36     4         list  Lorg/hsqldb/lib/HsqlList;
           39   45     3            i  I
           46   53     3            i  I
    MethodParameters:
             Name  Flags
      session      
      rangeGroups  

  void resolveColumnReferencesInOrderBy(org.hsqldb.Session, org.hsqldb.RangeGroup[], org.hsqldb.SortAndSlice);
    descriptor: (Lorg/hsqldb/Session;[Lorg/hsqldb/RangeGroup;Lorg/hsqldb/SortAndSlice;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=8, args_size=4
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.RangeGroup[] rangeGroups
        start local 3 // org.hsqldb.SortAndSlice sortAndSlice
         0: .line 529
            aload 3 /* sortAndSlice */
            invokevirtual org.hsqldb.SortAndSlice.getOrderLength:()I
            istore 4 /* orderCount */
        start local 4 // int orderCount
         1: .line 531
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         2: goto 24
         3: .line 533
      StackMap locals: int int
      StackMap stack:
            aload 3 /* sortAndSlice */
            getfield org.hsqldb.SortAndSlice.exprList:Lorg/hsqldb/lib/HsqlArrayList;
            iload 5 /* i */
            invokevirtual org.hsqldb.lib.HsqlArrayList.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.ExpressionOrderBy
         4: .line 532
            astore 6 /* e */
        start local 6 // org.hsqldb.ExpressionOrderBy e
         5: .line 535
            aload 0 /* this */
            aload 6 /* e */
            invokevirtual org.hsqldb.QuerySpecification.replaceColumnIndexInOrderBy:(Lorg/hsqldb/Expression;)V
         6: .line 537
            aload 6 /* e */
            invokevirtual org.hsqldb.ExpressionOrderBy.getLeftNode:()Lorg/hsqldb/Expression;
            getfield org.hsqldb.Expression.queryTableColumnIndex:I
            iconst_m1
            if_icmpeq 8
         7: .line 538
            goto 23
         8: .line 541
      StackMap locals: org.hsqldb.ExpressionOrderBy
      StackMap stack:
            aload 3 /* sortAndSlice */
            getfield org.hsqldb.SortAndSlice.sortUnion:Z
            ifeq 11
         9: .line 542
            aload 6 /* e */
            invokevirtual org.hsqldb.ExpressionOrderBy.getLeftNode:()Lorg/hsqldb/Expression;
            invokevirtual org.hsqldb.Expression.getType:()I
            iconst_2
            if_icmpeq 11
        10: .line 543
            sipush 5576
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        11: .line 547
      StackMap locals:
      StackMap stack:
            aload 6 /* e */
            aload 1 /* session */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            invokevirtual org.hsqldb.ExpressionOrderBy.replaceAliasInOrderBy:(Lorg/hsqldb/Session;[Lorg/hsqldb/Expression;I)Lorg/hsqldb/Expression;
            pop
        12: .line 548
            aload 0 /* this */
            aload 1 /* session */
            aload 6 /* e */
        13: .line 549
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
        14: .line 550
            getstatic org.hsqldb.RangeGroup.emptyArray:[Lorg/hsqldb/RangeGroup;
            iconst_0
        15: .line 548
            invokevirtual org.hsqldb.QuerySpecification.resolveColumnReferencesAndAllocate:(Lorg/hsqldb/Session;Lorg/hsqldb/Expression;I[Lorg/hsqldb/RangeGroup;Z)V
        16: .line 552
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isAggregated:Z
            ifne 17
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isGrouped:Z
            ifeq 23
        17: .line 553
      StackMap locals:
      StackMap stack:
            aload 6 /* e */
            invokevirtual org.hsqldb.ExpressionOrderBy.getLeftNode:()Lorg/hsqldb/Expression;
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iconst_0
        18: .line 554
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.groupByColumnCount:I
            iadd
        19: .line 555
            getstatic org.hsqldb.OpTypes.aggregateFunctionSet:Lorg/hsqldb/lib/OrderedIntHashSet;
        20: .line 553
            invokevirtual org.hsqldb.Expression.isComposedOf:([Lorg/hsqldb/Expression;IILorg/hsqldb/lib/OrderedIntHashSet;)Z
            istore 7 /* check */
        start local 7 // boolean check
        21: .line 557
            iload 7 /* check */
            ifne 23
        22: .line 558
            sipush 5576
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        end local 7 // boolean check
        end local 6 // org.hsqldb.ExpressionOrderBy e
        23: .line 531
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        24: iload 5 /* i */
            iload 4 /* orderCount */
            if_icmplt 3
        end local 5 // int i
        25: .line 563
            aload 3 /* sortAndSlice */
            getfield org.hsqldb.SortAndSlice.limitCondition:Lorg/hsqldb/ExpressionOp;
            ifnull 31
        26: .line 564
            aload 0 /* this */
        27: .line 565
            aload 3 /* sortAndSlice */
            getfield org.hsqldb.SortAndSlice.limitCondition:Lorg/hsqldb/ExpressionOp;
            aload 1 /* session */
        28: .line 566
            aload 0 /* this */
            aload 2 /* rangeGroups */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.unresolvedExpressions:Lorg/hsqldb/lib/HsqlList;
        29: .line 565
            invokevirtual org.hsqldb.ExpressionOp.resolveColumnReferences:(Lorg/hsqldb/Session;Lorg/hsqldb/RangeGroup;[Lorg/hsqldb/RangeGroup;Lorg/hsqldb/lib/HsqlList;)Lorg/hsqldb/lib/HsqlList;
        30: .line 564
            putfield org.hsqldb.QuerySpecification.unresolvedExpressions:Lorg/hsqldb/lib/HsqlList;
        31: .line 569
      StackMap locals:
      StackMap stack:
            aload 3 /* sortAndSlice */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartOrderBy:I
            invokevirtual org.hsqldb.SortAndSlice.prepare:(I)V
        32: .line 570
            return
        end local 4 // int orderCount
        end local 3 // org.hsqldb.SortAndSlice sortAndSlice
        end local 2 // org.hsqldb.RangeGroup[] rangeGroups
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   33     0          this  Lorg/hsqldb/QuerySpecification;
            0   33     1       session  Lorg/hsqldb/Session;
            0   33     2   rangeGroups  [Lorg/hsqldb/RangeGroup;
            0   33     3  sortAndSlice  Lorg/hsqldb/SortAndSlice;
            1   33     4    orderCount  I
            2   25     5             i  I
            5   23     6             e  Lorg/hsqldb/ExpressionOrderBy;
           21   23     7         check  Z
    MethodParameters:
              Name  Flags
      session       
      rangeGroups   
      sortAndSlice  

  private boolean resolveColumnReferences(org.hsqldb.Session, org.hsqldb.Expression, int, boolean);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/Expression;IZ)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=7, args_size=5
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.Expression e
        start local 3 // int rangeCount
        start local 4 // boolean withSequences
         0: .line 575
            aload 2 /* e */
            ifnonnull 2
         1: .line 576
            iconst_1
            ireturn
         2: .line 579
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.unresolvedExpressions:Lorg/hsqldb/lib/HsqlList;
            ifnonnull 3
            iconst_0
            goto 5
         3: .line 580
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.unresolvedExpressions:Lorg/hsqldb/lib/HsqlList;
         4: .line 581
            invokeinterface org.hsqldb.lib.HsqlList.size:()I
         5: .line 579
      StackMap locals:
      StackMap stack: int
            istore 5 /* oldSize */
        start local 5 // int oldSize
         6: .line 583
            aload 0 /* this */
            aload 2 /* e */
            aload 1 /* session */
            aload 0 /* this */
         7: .line 584
            iload 3 /* rangeCount */
            getstatic org.hsqldb.RangeGroup.emptyArray:[Lorg/hsqldb/RangeGroup;
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.unresolvedExpressions:Lorg/hsqldb/lib/HsqlList;
         8: .line 585
            iload 4 /* withSequences */
         9: .line 583
            invokevirtual org.hsqldb.Expression.resolveColumnReferences:(Lorg/hsqldb/Session;Lorg/hsqldb/RangeGroup;I[Lorg/hsqldb/RangeGroup;Lorg/hsqldb/lib/HsqlList;Z)Lorg/hsqldb/lib/HsqlList;
            putfield org.hsqldb.QuerySpecification.unresolvedExpressions:Lorg/hsqldb/lib/HsqlList;
        10: .line 587
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.unresolvedExpressions:Lorg/hsqldb/lib/HsqlList;
            ifnonnull 11
            iconst_0
            goto 13
        11: .line 588
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.unresolvedExpressions:Lorg/hsqldb/lib/HsqlList;
        12: .line 589
            invokeinterface org.hsqldb.lib.HsqlList.size:()I
        13: .line 587
      StackMap locals:
      StackMap stack: int
            istore 6 /* newSize */
        start local 6 // int newSize
        14: .line 591
            iload 5 /* oldSize */
            iload 6 /* newSize */
            if_icmpne 15
            iconst_1
            ireturn
      StackMap locals: int
      StackMap stack:
        15: iconst_0
            ireturn
        end local 6 // int newSize
        end local 5 // int oldSize
        end local 4 // boolean withSequences
        end local 3 // int rangeCount
        end local 2 // org.hsqldb.Expression e
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   16     0           this  Lorg/hsqldb/QuerySpecification;
            0   16     1        session  Lorg/hsqldb/Session;
            0   16     2              e  Lorg/hsqldb/Expression;
            0   16     3     rangeCount  I
            0   16     4  withSequences  Z
            6   16     5        oldSize  I
           14   16     6        newSize  I
    MethodParameters:
               Name  Flags
      session        
      e              
      rangeCount     
      withSequences  

  private void resolveColumnReferencesForAsterisk();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=8, args_size=1
        start local 0 // org.hsqldb.QuerySpecification this
         0: .line 596
            iconst_0
            istore 1 /* pos */
        start local 1 // int pos
         1: goto 34
         2: .line 597
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumnList:Lorg/hsqldb/lib/HsqlArrayList;
            iload 1 /* pos */
            invokevirtual org.hsqldb.lib.HsqlArrayList.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.Expression
            astore 2 /* e */
        start local 2 // org.hsqldb.Expression e
         3: .line 599
            aload 2 /* e */
            invokevirtual org.hsqldb.Expression.getType:()I
            bipush 96
            if_icmpne 33
         4: .line 600
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumnList:Lorg/hsqldb/lib/HsqlArrayList;
            iload 1 /* pos */
            invokevirtual org.hsqldb.lib.HsqlArrayList.remove:(I)Ljava/lang/Object;
            pop
         5: .line 602
            aload 2 /* e */
            checkcast org.hsqldb.ExpressionColumn
            invokevirtual org.hsqldb.ExpressionColumn.getTableName:()Ljava/lang/String;
            astore 3 /* tablename */
        start local 3 // java.lang.String tablename
         6: .line 604
            aload 3 /* tablename */
            ifnonnull 9
         7: .line 605
            aload 0 /* this */
            aload 2 /* e */
            invokevirtual org.hsqldb.QuerySpecification.addAllJoinedColumns:(Lorg/hsqldb/Expression;)V
         8: .line 606
            goto 25
         9: .line 607
      StackMap locals: org.hsqldb.Expression java.lang.String
      StackMap stack:
            iconst_0
            istore 4 /* resolved */
        start local 4 // boolean resolved
        10: .line 609
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        11: goto 22
        12: .line 611
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iload 5 /* i */
            aaload
            aload 3 /* tablename */
            invokevirtual org.hsqldb.RangeVariable.getRangeForTableName:(Ljava/lang/String;)Lorg/hsqldb/RangeVariable;
        13: .line 610
            astore 6 /* range */
        start local 6 // org.hsqldb.RangeVariable range
        14: .line 613
            aload 6 /* range */
            ifnull 21
        15: .line 614
            aload 0 /* this */
            invokevirtual org.hsqldb.QuerySpecification.getAllNamedJoinColumns:()Lorg/hsqldb/lib/HashSet;
            astore 7 /* exclude */
        start local 7 // org.hsqldb.lib.HashSet exclude
        16: .line 616
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iload 5 /* i */
            aaload
            aload 6 /* range */
            aload 2 /* e */
        17: .line 617
            aload 7 /* exclude */
        18: .line 616
            invokevirtual org.hsqldb.RangeVariable.addTableColumns:(Lorg/hsqldb/RangeVariable;Lorg/hsqldb/Expression;Lorg/hsqldb/lib/HashSet;)V
        19: .line 619
            iconst_1
            istore 4 /* resolved */
        20: .line 621
            goto 23
        end local 7 // org.hsqldb.lib.HashSet exclude
        end local 6 // org.hsqldb.RangeVariable range
        21: .line 609
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        22: iload 5 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            if_icmplt 12
        end local 5 // int i
        23: .line 625
      StackMap locals:
      StackMap stack:
            iload 4 /* resolved */
            ifne 25
        24: .line 626
            sipush 5501
            aload 3 /* tablename */
            invokestatic org.hsqldb.error.Error.error:(ILjava/lang/String;)Lorg/hsqldb/HsqlException;
            athrow
        end local 4 // boolean resolved
        25: .line 630
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        26: goto 30
        27: .line 631
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumnList:Lorg/hsqldb/lib/HsqlArrayList;
            iload 1 /* pos */
            aload 2 /* e */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            invokevirtual org.hsqldb.lib.HsqlArrayList.add:(ILjava/lang/Object;)V
        28: .line 633
            iinc 1 /* pos */ 1
        29: .line 630
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        30: iload 4 /* i */
            aload 2 /* e */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 27
        end local 4 // int i
        31: .line 636
            aload 0 /* this */
            dup
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            aload 2 /* e */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            iconst_1
            isub
            iadd
            putfield org.hsqldb.QuerySpecification.indexLimitVisible:I
        end local 3 // java.lang.String tablename
        32: .line 637
            goto 34
        33: .line 638
      StackMap locals:
      StackMap stack:
            iinc 1 /* pos */ 1
        end local 2 // org.hsqldb.Expression e
        34: .line 596
      StackMap locals:
      StackMap stack:
            iload 1 /* pos */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            if_icmplt 2
        end local 1 // int pos
        35: .line 641
            return
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   36     0       this  Lorg/hsqldb/QuerySpecification;
            1   35     1        pos  I
            3   34     2          e  Lorg/hsqldb/Expression;
            6   32     3  tablename  Ljava/lang/String;
           10   25     4   resolved  Z
           11   23     5          i  I
           14   21     6      range  Lorg/hsqldb/RangeVariable;
           16   21     7    exclude  Lorg/hsqldb/lib/HashSet;
           26   31     4          i  I

  private void resolveColumnReferencesAndAllocate(org.hsqldb.Session, org.hsqldb.Expression, int, org.hsqldb.RangeGroup[], boolean);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/Expression;I[Lorg/hsqldb/RangeGroup;Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=13, args_size=6
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.Expression expression
        start local 3 // int count
        start local 4 // org.hsqldb.RangeGroup[] rangeGroups
        start local 5 // boolean withSequences
         0: .line 647
            aload 2 /* expression */
            ifnonnull 2
         1: .line 648
            return
         2: .line 651
      StackMap locals:
      StackMap stack:
            aload 2 /* expression */
            aload 1 /* session */
            aload 0 /* this */
         3: .line 652
            iload 3 /* count */
            aload 4 /* rangeGroups */
            aconst_null
            iload 5 /* withSequences */
         4: .line 651
            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 6 /* list */
        start local 6 // org.hsqldb.lib.HsqlList list
         5: .line 654
            aload 6 /* list */
            ifnull 52
         6: .line 655
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         7: goto 51
         8: .line 656
      StackMap locals: org.hsqldb.lib.HsqlList int
      StackMap stack:
            aload 6 /* list */
            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
         9: .line 657
            iconst_1
            istore 9 /* resolved */
        start local 9 // boolean resolved
        10: .line 659
            aload 8 /* e */
            invokevirtual org.hsqldb.Expression.isSelfAggregate:()Z
            ifeq 32
        11: .line 660
            iconst_0
            istore 10 /* j */
        start local 10 // int j
        12: goto 30
        13: .line 661
      StackMap locals: org.hsqldb.Expression int int
      StackMap stack:
            aload 8 /* e */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            iload 10 /* j */
            aaload
        14: .line 662
            aload 1 /* session */
            aload 0 /* this */
            iload 3 /* count */
            getstatic org.hsqldb.RangeGroup.emptyArray:[Lorg/hsqldb/RangeGroup;
            aconst_null
        15: .line 663
            iconst_0
        16: .line 661
            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 11 /* colList */
        start local 11 // org.hsqldb.lib.HsqlList colList
        17: .line 665
            iconst_0
            istore 12 /* k */
        start local 12 // int k
        18: goto 25
        19: .line 666
      StackMap locals: org.hsqldb.lib.HsqlList int
      StackMap stack:
            aload 4 /* rangeGroups */
            iload 12 /* k */
            aaload
            invokeinterface org.hsqldb.RangeGroup.isVariable:()Z
            ifeq 24
        20: .line 668
            aload 1 /* session */
        21: .line 669
            aload 4 /* rangeGroups */
            iload 12 /* k */
            aaload
            invokeinterface org.hsqldb.RangeGroup.getRangeVariables:()[Lorg/hsqldb/RangeVariable;
        22: .line 670
            getstatic org.hsqldb.RangeGroup.emptyArray:[Lorg/hsqldb/RangeGroup;
            aload 11 /* colList */
        23: .line 667
            invokestatic org.hsqldb.Expression.resolveColumnSet:(Lorg/hsqldb/Session;[Lorg/hsqldb/RangeVariable;[Lorg/hsqldb/RangeGroup;Lorg/hsqldb/lib/HsqlList;)Lorg/hsqldb/lib/HsqlList;
            astore 11 /* colList */
        24: .line 665
      StackMap locals:
      StackMap stack:
            iinc 12 /* k */ 1
      StackMap locals:
      StackMap stack:
        25: iload 12 /* k */
            aload 4 /* rangeGroups */
            arraylength
            if_icmplt 19
        end local 12 // int k
        26: .line 674
            iload 9 /* resolved */
            aload 11 /* colList */
            ifnonnull 27
            iconst_1
            goto 28
      StackMap locals: org.hsqldb.QuerySpecification org.hsqldb.Session org.hsqldb.Expression int org.hsqldb.RangeGroup[] int org.hsqldb.lib.HsqlList int org.hsqldb.Expression int int org.hsqldb.lib.HsqlList
      StackMap stack: int
        27: iconst_0
      StackMap locals: org.hsqldb.QuerySpecification org.hsqldb.Session org.hsqldb.Expression int org.hsqldb.RangeGroup[] int org.hsqldb.lib.HsqlList int org.hsqldb.Expression int int org.hsqldb.lib.HsqlList
      StackMap stack: int int
        28: iand
            istore 9 /* resolved */
        end local 11 // org.hsqldb.lib.HsqlList colList
        29: .line 660
            iinc 10 /* j */ 1
      StackMap locals:
      StackMap stack:
        30: iload 10 /* j */
            aload 8 /* e */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            arraylength
            if_icmplt 13
        end local 10 // int j
        31: .line 676
            goto 35
        32: .line 677
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* session */
            aload 8 /* e */
            iload 3 /* count */
        33: .line 678
            iload 5 /* withSequences */
        34: .line 677
            invokevirtual org.hsqldb.QuerySpecification.resolveColumnReferences:(Lorg/hsqldb/Session;Lorg/hsqldb/Expression;IZ)Z
            istore 9 /* resolved */
        35: .line 681
      StackMap locals:
      StackMap stack:
            iload 9 /* resolved */
            ifeq 47
        36: .line 682
            aload 8 /* e */
            invokevirtual org.hsqldb.Expression.isSelfAggregate:()Z
            ifeq 43
        37: .line 683
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.aggregateSet:Lorg/hsqldb/lib/ArrayListIdentity;
            ifnonnull 39
        38: .line 684
            aload 0 /* this */
            new org.hsqldb.lib.ArrayListIdentity
            dup
            invokespecial org.hsqldb.lib.ArrayListIdentity.<init>:()V
            putfield org.hsqldb.QuerySpecification.aggregateSet:Lorg/hsqldb/lib/ArrayListIdentity;
        39: .line 687
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.aggregateSet:Lorg/hsqldb/lib/ArrayListIdentity;
            aload 8 /* e */
            invokevirtual org.hsqldb.lib.ArrayListIdentity.add:(Ljava/lang/Object;)Z
            pop
        40: .line 689
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.QuerySpecification.isAggregated:Z
        41: .line 691
            aload 2 /* expression */
            invokevirtual org.hsqldb.Expression.setAggregate:()V
        42: .line 692
            aload 8 /* e */
            aload 0 /* this */
            invokevirtual org.hsqldb.Expression.setCorrelatedReferences:(Lorg/hsqldb/RangeGroup;)V
        43: .line 695
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resolvedSubqueryExpressions:Lorg/hsqldb/lib/ArrayListIdentity;
            ifnonnull 45
        44: .line 696
            aload 0 /* this */
            new org.hsqldb.lib.ArrayListIdentity
            dup
            invokespecial org.hsqldb.lib.ArrayListIdentity.<init>:()V
            putfield org.hsqldb.QuerySpecification.resolvedSubqueryExpressions:Lorg/hsqldb/lib/ArrayListIdentity;
        45: .line 699
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resolvedSubqueryExpressions:Lorg/hsqldb/lib/ArrayListIdentity;
            aload 8 /* e */
            invokevirtual org.hsqldb.lib.ArrayListIdentity.add:(Ljava/lang/Object;)Z
            pop
        46: .line 700
            goto 50
        47: .line 701
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.unresolvedExpressions:Lorg/hsqldb/lib/HsqlList;
            ifnonnull 49
        48: .line 702
            aload 0 /* this */
            new org.hsqldb.lib.ArrayListIdentity
            dup
            invokespecial org.hsqldb.lib.ArrayListIdentity.<init>:()V
            putfield org.hsqldb.QuerySpecification.unresolvedExpressions:Lorg/hsqldb/lib/HsqlList;
        49: .line 705
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.unresolvedExpressions:Lorg/hsqldb/lib/HsqlList;
            aload 8 /* e */
            invokeinterface org.hsqldb.lib.HsqlList.add:(Ljava/lang/Object;)Z
            pop
        end local 9 // boolean resolved
        end local 8 // org.hsqldb.Expression e
        50: .line 655
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        51: iload 7 /* i */
            aload 6 /* list */
            invokeinterface org.hsqldb.lib.HsqlList.size:()I
            if_icmplt 8
        end local 7 // int i
        52: .line 709
      StackMap locals:
      StackMap stack:
            return
        end local 6 // org.hsqldb.lib.HsqlList list
        end local 5 // boolean withSequences
        end local 4 // org.hsqldb.RangeGroup[] rangeGroups
        end local 3 // int count
        end local 2 // org.hsqldb.Expression expression
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   53     0           this  Lorg/hsqldb/QuerySpecification;
            0   53     1        session  Lorg/hsqldb/Session;
            0   53     2     expression  Lorg/hsqldb/Expression;
            0   53     3          count  I
            0   53     4    rangeGroups  [Lorg/hsqldb/RangeGroup;
            0   53     5  withSequences  Z
            5   53     6           list  Lorg/hsqldb/lib/HsqlList;
            7   52     7              i  I
            9   50     8              e  Lorg/hsqldb/Expression;
           10   50     9       resolved  Z
           12   31    10              j  I
           17   29    11        colList  Lorg/hsqldb/lib/HsqlList;
           18   26    12              k  I
    MethodParameters:
               Name  Flags
      session        
      expression     
      count          
      rangeGroups    
      withSequences  

  private org.hsqldb.Expression resolveColumnReferencesInGroupBy(org.hsqldb.Session, org.hsqldb.Expression);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/Expression;)Lorg/hsqldb/Expression;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=5, args_size=3
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.Expression expression
         0: .line 714
            aload 2 /* expression */
            ifnonnull 2
         1: .line 715
            aconst_null
            areturn
         2: .line 718
      StackMap locals:
      StackMap stack:
            aload 2 /* expression */
            aload 1 /* session */
            aload 0 /* this */
         3: .line 719
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            getstatic org.hsqldb.RangeGroup.emptyArray:[Lorg/hsqldb/RangeGroup;
            aconst_null
            iconst_0
         4: .line 718
            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 3 /* list */
        start local 3 // org.hsqldb.lib.HsqlList list
         5: .line 721
            aload 3 /* list */
            ifnull 16
         6: .line 724
            aload 2 /* expression */
            invokevirtual org.hsqldb.Expression.getType:()I
            iconst_2
            if_icmpne 12
         7: .line 725
            aload 2 /* expression */
            aload 1 /* session */
         8: .line 726
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
         9: .line 725
            invokevirtual org.hsqldb.Expression.replaceAliasInOrderBy:(Lorg/hsqldb/Session;[Lorg/hsqldb/Expression;I)Lorg/hsqldb/Expression;
            astore 4 /* resolved */
        start local 4 // org.hsqldb.Expression resolved
        10: .line 728
            aload 4 /* resolved */
            aload 2 /* expression */
            if_acmpeq 12
        11: .line 729
            aload 4 /* resolved */
            areturn
        end local 4 // org.hsqldb.Expression resolved
        12: .line 734
      StackMap locals: org.hsqldb.lib.HsqlList
      StackMap stack:
            aload 0 /* this */
            aload 1 /* session */
            aload 2 /* expression */
        13: .line 735
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
        14: .line 736
            getstatic org.hsqldb.RangeGroup.emptyArray:[Lorg/hsqldb/RangeGroup;
            iconst_0
        15: .line 734
            invokevirtual org.hsqldb.QuerySpecification.resolveColumnReferencesAndAllocate:(Lorg/hsqldb/Session;Lorg/hsqldb/Expression;I[Lorg/hsqldb/RangeGroup;Z)V
        16: .line 739
      StackMap locals:
      StackMap stack:
            aload 2 /* expression */
            areturn
        end local 3 // org.hsqldb.lib.HsqlList list
        end local 2 // org.hsqldb.Expression expression
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   17     0        this  Lorg/hsqldb/QuerySpecification;
            0   17     1     session  Lorg/hsqldb/Session;
            0   17     2  expression  Lorg/hsqldb/Expression;
            5   17     3        list  Lorg/hsqldb/lib/HsqlList;
           10   12     4    resolved  Lorg/hsqldb/Expression;
    MethodParameters:
            Name  Flags
      session     
      expression  

  private org.hsqldb.lib.HashSet getAllNamedJoinColumns();
    descriptor: ()Lorg/hsqldb/lib/HashSet;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // org.hsqldb.QuerySpecification this
         0: .line 744
            aconst_null
            astore 1 /* set */
        start local 1 // org.hsqldb.lib.HashSet set
         1: .line 746
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 9
         3: .line 747
      StackMap locals: org.hsqldb.lib.HashSet int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariableList:Lorg/hsqldb/lib/HsqlArrayList;
            iload 2 /* i */
            invokevirtual org.hsqldb.lib.HsqlArrayList.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.RangeVariable
            astore 3 /* range */
        start local 3 // org.hsqldb.RangeVariable range
         4: .line 749
            aload 3 /* range */
            getfield org.hsqldb.RangeVariable.namedJoinColumns:Lorg/hsqldb/lib/OrderedHashSet;
            ifnull 8
         5: .line 750
            aload 1 /* set */
            ifnonnull 7
         6: .line 751
            new org.hsqldb.lib.HashSet
            dup
            invokespecial org.hsqldb.lib.HashSet.<init>:()V
            astore 1 /* set */
         7: .line 754
      StackMap locals: org.hsqldb.RangeVariable
      StackMap stack:
            aload 1 /* set */
            aload 3 /* range */
            getfield org.hsqldb.RangeVariable.namedJoinColumns:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.HashSet.addAll:(Lorg/hsqldb/lib/Collection;)Z
            pop
        end local 3 // org.hsqldb.RangeVariable range
         8: .line 746
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariableList:Lorg/hsqldb/lib/HsqlArrayList;
            invokevirtual org.hsqldb.lib.HsqlArrayList.size:()I
            if_icmplt 3
        end local 2 // int i
        10: .line 758
            aload 1 /* set */
            areturn
        end local 1 // org.hsqldb.lib.HashSet set
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   11     0   this  Lorg/hsqldb/QuerySpecification;
            1   11     1    set  Lorg/hsqldb/lib/HashSet;
            2   10     2      i  I
            4    8     3  range  Lorg/hsqldb/RangeVariable;

  public org.hsqldb.Expression getEquiJoinExpressions(org.hsqldb.lib.OrderedHashSet, org.hsqldb.RangeVariable, boolean);
    descriptor: (Lorg/hsqldb/lib/OrderedHashSet;Lorg/hsqldb/RangeVariable;Z)Lorg/hsqldb/Expression;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=20, args_size=4
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.lib.OrderedHashSet nameSet
        start local 2 // org.hsqldb.RangeVariable rightRange
        start local 3 // boolean fullList
         0: .line 764
            new org.hsqldb.lib.HashSet
            dup
            invokespecial org.hsqldb.lib.HashSet.<init>:()V
            astore 4 /* set */
        start local 4 // org.hsqldb.lib.HashSet set
         1: .line 765
            aconst_null
            astore 5 /* result */
        start local 5 // org.hsqldb.Expression result
         2: .line 766
            new org.hsqldb.lib.OrderedHashSet
            dup
            invokespecial org.hsqldb.lib.OrderedHashSet.<init>:()V
            astore 6 /* joinColumnNames */
        start local 6 // org.hsqldb.lib.OrderedHashSet joinColumnNames
         3: .line 768
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariableList:Lorg/hsqldb/lib/HsqlArrayList;
            invokevirtual org.hsqldb.lib.HsqlArrayList.size:()I
            iconst_1
            isub
            istore 7 /* i */
        start local 7 // int i
         4: goto 63
         5: .line 769
      StackMap locals: org.hsqldb.QuerySpecification org.hsqldb.lib.OrderedHashSet org.hsqldb.RangeVariable int org.hsqldb.lib.HashSet org.hsqldb.Expression org.hsqldb.lib.OrderedHashSet int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariableList:Lorg/hsqldb/lib/HsqlArrayList;
            iload 7 /* i */
            invokevirtual org.hsqldb.lib.HsqlArrayList.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.RangeVariable
            astore 8 /* range */
        start local 8 // org.hsqldb.RangeVariable range
         6: .line 770
            aload 8 /* range */
            getfield org.hsqldb.RangeVariable.rangeTable:Lorg/hsqldb/Table;
            getfield org.hsqldb.Table.columnList:Lorg/hsqldb/lib/HashMappedList;
            astore 9 /* columnList */
        start local 9 // org.hsqldb.lib.HashMappedList columnList
         7: .line 772
            iconst_0
            istore 10 /* j */
        start local 10 // int j
         8: goto 59
         9: .line 773
      StackMap locals: org.hsqldb.RangeVariable org.hsqldb.lib.HashMappedList int
      StackMap stack:
            aload 9 /* columnList */
            iload 10 /* j */
            invokevirtual org.hsqldb.lib.HashMappedList.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.ColumnSchema
            astore 11 /* column */
        start local 11 // org.hsqldb.ColumnSchema column
        10: .line 774
            aload 8 /* range */
            iload 10 /* j */
            invokevirtual org.hsqldb.RangeVariable.getColumnAlias:(I)Lorg/hsqldb/HsqlNameManager$SimpleName;
            getfield org.hsqldb.HsqlNameManager$SimpleName.name:Ljava/lang/String;
            astore 12 /* name */
        start local 12 // java.lang.String name
        11: .line 775
            aload 1 /* nameSet */
            aload 12 /* name */
            invokevirtual org.hsqldb.lib.OrderedHashSet.contains:(Ljava/lang/Object;)Z
            istore 13 /* columnInList */
        start local 13 // boolean columnInList
        12: .line 776
            aload 8 /* range */
            getfield org.hsqldb.RangeVariable.namedJoinColumns:Lorg/hsqldb/lib/OrderedHashSet;
            ifnull 15
        13: .line 777
            aload 8 /* range */
            getfield org.hsqldb.RangeVariable.namedJoinColumns:Lorg/hsqldb/lib/OrderedHashSet;
            aload 12 /* name */
            invokevirtual org.hsqldb.lib.OrderedHashSet.contains:(Ljava/lang/Object;)Z
            ifeq 15
        14: .line 776
            iconst_1
            goto 16
      StackMap locals: org.hsqldb.ColumnSchema java.lang.String int
      StackMap stack:
        15: iconst_0
      StackMap locals:
      StackMap stack: int
        16: istore 14 /* namedJoin */
        start local 14 // boolean namedJoin
        17: .line 778
            iload 14 /* namedJoin */
            ifne 18
            aload 4 /* set */
            aload 12 /* name */
            invokevirtual org.hsqldb.lib.HashSet.add:(Ljava/lang/Object;)Z
            ifne 18
            iconst_1
            goto 19
      StackMap locals: int
      StackMap stack:
        18: iconst_0
      StackMap locals:
      StackMap stack: int
        19: istore 15 /* repeated */
        start local 15 // boolean repeated
        20: .line 780
            iload 15 /* repeated */
            ifeq 22
            iload 3 /* fullList */
            ifeq 21
            iload 13 /* columnInList */
            ifeq 22
        21: .line 781
      StackMap locals: int
      StackMap stack:
            sipush 5578
            aload 12 /* name */
            invokestatic org.hsqldb.error.Error.error:(ILjava/lang/String;)Lorg/hsqldb/HsqlException;
            athrow
        22: .line 784
      StackMap locals:
      StackMap stack:
            iload 13 /* columnInList */
            ifne 24
        23: .line 785
            goto 58
        24: .line 788
      StackMap locals:
      StackMap stack:
            aload 6 /* joinColumnNames */
            aload 12 /* name */
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
        25: .line 791
            aload 8 /* range */
            getfield org.hsqldb.RangeVariable.rangeTable:Lorg/hsqldb/Table;
            aload 11 /* column */
            invokevirtual org.hsqldb.ColumnSchema.getNameString:()Ljava/lang/String;
            invokevirtual org.hsqldb.Table.getColumnIndex:(Ljava/lang/String;)I
        26: .line 790
            istore 16 /* leftPosition */
        start local 16 // int leftPosition
        27: .line 792
            aload 2 /* rightRange */
            getfield org.hsqldb.RangeVariable.rangeTable:Lorg/hsqldb/Table;
            aload 12 /* name */
            invokevirtual org.hsqldb.Table.getColumnIndex:(Ljava/lang/String;)I
            istore 17 /* rightPosition */
        start local 17 // int rightPosition
        28: .line 793
            new org.hsqldb.ExpressionLogical
            dup
            aload 8 /* range */
            iload 16 /* leftPosition */
        29: .line 794
            aload 2 /* rightRange */
        30: .line 795
            iload 17 /* rightPosition */
        31: .line 793
            invokespecial org.hsqldb.ExpressionLogical.<init>:(Lorg/hsqldb/RangeVariable;ILorg/hsqldb/RangeVariable;I)V
            astore 18 /* e */
        start local 18 // org.hsqldb.Expression e
        32: .line 796
            aload 8 /* range */
            aload 12 /* name */
            invokevirtual org.hsqldb.RangeVariable.getColumnExpression:(Ljava/lang/String;)Lorg/hsqldb/ExpressionColumn;
            astore 19 /* col */
        start local 19 // org.hsqldb.ExpressionColumn col
        33: .line 798
            aload 19 /* col */
            ifnonnull 46
        34: .line 799
            new org.hsqldb.ExpressionColumn
            dup
            iconst_2
            anewarray org.hsqldb.Expression
            dup
            iconst_0
        35: .line 800
            aload 18 /* e */
            invokevirtual org.hsqldb.Expression.getLeftNode:()Lorg/hsqldb/Expression;
            aastore
            dup
            iconst_1
            aload 18 /* e */
            invokevirtual org.hsqldb.Expression.getRightNode:()Lorg/hsqldb/Expression;
            aastore
        36: .line 801
            aload 12 /* name */
        37: .line 799
            invokespecial org.hsqldb.ExpressionColumn.<init>:([Lorg/hsqldb/Expression;Ljava/lang/String;)V
            astore 19 /* col */
        38: .line 803
            aload 8 /* range */
            aload 12 /* name */
            aload 19 /* col */
        39: .line 804
            iload 16 /* leftPosition */
        40: .line 803
            invokevirtual org.hsqldb.RangeVariable.addNamedJoinColumnExpression:(Ljava/lang/String;Lorg/hsqldb/Expression;I)V
        41: .line 806
            aload 5 /* result */
            aload 18 /* e */
            invokestatic org.hsqldb.ExpressionLogical.andExpressions:(Lorg/hsqldb/Expression;Lorg/hsqldb/Expression;)Lorg/hsqldb/Expression;
            astore 5 /* result */
        42: .line 808
            aload 2 /* rightRange */
            aload 12 /* name */
            aload 19 /* col */
        43: .line 809
            iload 17 /* rightPosition */
        44: .line 808
            invokevirtual org.hsqldb.RangeVariable.addNamedJoinColumnExpression:(Ljava/lang/String;Lorg/hsqldb/Expression;I)V
        45: .line 810
            goto 58
      StackMap locals: org.hsqldb.QuerySpecification org.hsqldb.lib.OrderedHashSet org.hsqldb.RangeVariable int org.hsqldb.lib.HashSet org.hsqldb.Expression org.hsqldb.lib.OrderedHashSet int org.hsqldb.RangeVariable org.hsqldb.lib.HashMappedList int org.hsqldb.ColumnSchema java.lang.String int int int int int org.hsqldb.Expression org.hsqldb.ExpressionColumn
      StackMap stack:
        46: aload 2 /* rightRange */
            aload 12 /* name */
            invokevirtual org.hsqldb.RangeVariable.getColumnExpression:(Ljava/lang/String;)Lorg/hsqldb/ExpressionColumn;
            ifnonnull 58
        47: .line 811
            aload 8 /* range */
            getfield org.hsqldb.RangeVariable.isLeftJoin:Z
            ifeq 48
            aload 8 /* range */
            getfield org.hsqldb.RangeVariable.isRightJoin:Z
            ifeq 58
        48: .line 812
      StackMap locals:
      StackMap stack:
            aload 8 /* range */
            getfield org.hsqldb.RangeVariable.isLeftJoin:Z
            ifeq 50
            aload 8 /* range */
            getfield org.hsqldb.RangeVariable.isRightJoin:Z
            ifeq 50
        49: .line 813
            new org.hsqldb.ExpressionLogical
            dup
            aload 19 /* col */
            aload 18 /* e */
            invokevirtual org.hsqldb.Expression.getRightNode:()Lorg/hsqldb/Expression;
            invokespecial org.hsqldb.ExpressionLogical.<init>:(Lorg/hsqldb/Expression;Lorg/hsqldb/Expression;)V
            astore 18 /* e */
        50: .line 816
      StackMap locals:
      StackMap stack:
            aload 19 /* col */
            aload 19 /* col */
            getfield org.hsqldb.ExpressionColumn.nodes:[Lorg/hsqldb/Expression;
        51: .line 817
            aload 19 /* col */
            getfield org.hsqldb.ExpressionColumn.nodes:[Lorg/hsqldb/Expression;
            arraylength
            iconst_1
            iadd
        52: .line 816
            invokestatic org.hsqldb.lib.ArrayUtil.resizeArray:(Ljava/lang/Object;I)Ljava/lang/Object;
            checkcast org.hsqldb.Expression[]
            putfield org.hsqldb.ExpressionColumn.nodes:[Lorg/hsqldb/Expression;
        53: .line 818
            aload 19 /* col */
            getfield org.hsqldb.ExpressionColumn.nodes:[Lorg/hsqldb/Expression;
            aload 19 /* col */
            getfield org.hsqldb.ExpressionColumn.nodes:[Lorg/hsqldb/Expression;
            arraylength
            iconst_1
            isub
            aload 18 /* e */
            invokevirtual org.hsqldb.Expression.getRightNode:()Lorg/hsqldb/Expression;
            aastore
        54: .line 819
            aload 5 /* result */
            aload 18 /* e */
            invokestatic org.hsqldb.ExpressionLogical.andExpressions:(Lorg/hsqldb/Expression;Lorg/hsqldb/Expression;)Lorg/hsqldb/Expression;
            astore 5 /* result */
        55: .line 821
            aload 2 /* rightRange */
            aload 12 /* name */
            aload 19 /* col */
        56: .line 822
            iload 17 /* rightPosition */
        57: .line 821
            invokevirtual org.hsqldb.RangeVariable.addNamedJoinColumnExpression:(Ljava/lang/String;Lorg/hsqldb/Expression;I)V
        end local 19 // org.hsqldb.ExpressionColumn col
        end local 18 // org.hsqldb.Expression e
        end local 17 // int rightPosition
        end local 16 // int leftPosition
        end local 15 // boolean repeated
        end local 14 // boolean namedJoin
        end local 13 // boolean columnInList
        end local 12 // java.lang.String name
        end local 11 // org.hsqldb.ColumnSchema column
        58: .line 772
      StackMap locals: org.hsqldb.QuerySpecification org.hsqldb.lib.OrderedHashSet org.hsqldb.RangeVariable int org.hsqldb.lib.HashSet org.hsqldb.Expression org.hsqldb.lib.OrderedHashSet int org.hsqldb.RangeVariable org.hsqldb.lib.HashMappedList int
      StackMap stack:
            iinc 10 /* j */ 1
      StackMap locals:
      StackMap stack:
        59: iload 10 /* j */
            aload 9 /* columnList */
            invokevirtual org.hsqldb.lib.HashMappedList.size:()I
            if_icmplt 9
        end local 10 // int j
        60: .line 826
            aload 8 /* range */
            getfield org.hsqldb.RangeVariable.isJoin:Z
            ifne 62
        61: .line 827
            goto 64
        end local 9 // org.hsqldb.lib.HashMappedList columnList
        end local 8 // org.hsqldb.RangeVariable range
        62: .line 768
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ -1
      StackMap locals:
      StackMap stack:
        63: iload 7 /* i */
            ifge 5
        end local 7 // int i
        64: .line 831
      StackMap locals:
      StackMap stack:
            iload 3 /* fullList */
            ifeq 66
            aload 6 /* joinColumnNames */
            aload 1 /* nameSet */
            invokevirtual org.hsqldb.lib.OrderedHashSet.containsAll:(Lorg/hsqldb/lib/Collection;)Z
            ifne 66
        65: .line 832
            sipush 5501
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        66: .line 835
      StackMap locals:
      StackMap stack:
            aload 2 /* rightRange */
            aload 6 /* joinColumnNames */
            invokevirtual org.hsqldb.RangeVariable.addNamedJoinColumns:(Lorg/hsqldb/lib/OrderedHashSet;)V
        67: .line 837
            aload 5 /* result */
            areturn
        end local 6 // org.hsqldb.lib.OrderedHashSet joinColumnNames
        end local 5 // org.hsqldb.Expression result
        end local 4 // org.hsqldb.lib.HashSet set
        end local 3 // boolean fullList
        end local 2 // org.hsqldb.RangeVariable rightRange
        end local 1 // org.hsqldb.lib.OrderedHashSet nameSet
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   68     0             this  Lorg/hsqldb/QuerySpecification;
            0   68     1          nameSet  Lorg/hsqldb/lib/OrderedHashSet;
            0   68     2       rightRange  Lorg/hsqldb/RangeVariable;
            0   68     3         fullList  Z
            1   68     4              set  Lorg/hsqldb/lib/HashSet;
            2   68     5           result  Lorg/hsqldb/Expression;
            3   68     6  joinColumnNames  Lorg/hsqldb/lib/OrderedHashSet;
            4   64     7                i  I
            6   62     8            range  Lorg/hsqldb/RangeVariable;
            7   62     9       columnList  Lorg/hsqldb/lib/HashMappedList;
            8   60    10                j  I
           10   58    11           column  Lorg/hsqldb/ColumnSchema;
           11   58    12             name  Ljava/lang/String;
           12   58    13     columnInList  Z
           17   58    14        namedJoin  Z
           20   58    15         repeated  Z
           27   58    16     leftPosition  I
           28   58    17    rightPosition  I
           32   58    18                e  Lorg/hsqldb/Expression;
           33   58    19              col  Lorg/hsqldb/ExpressionColumn;
    MethodParameters:
            Name  Flags
      nameSet     
      rightRange  
      fullList    

  private void addAllJoinedColumns(org.hsqldb.Expression);
    descriptor: (Lorg/hsqldb/Expression;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Expression e
         0: .line 842
            new org.hsqldb.lib.HsqlArrayList
            dup
            invokespecial org.hsqldb.lib.HsqlArrayList.<init>:()V
            astore 2 /* list */
        start local 2 // org.hsqldb.lib.HsqlArrayList list
         1: .line 844
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 5
         3: .line 845
      StackMap locals: org.hsqldb.lib.HsqlArrayList int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iload 3 /* i */
            aaload
            aload 2 /* list */
            invokevirtual org.hsqldb.RangeVariable.addTableColumns:(Lorg/hsqldb/lib/HsqlArrayList;)V
         4: .line 844
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            if_icmplt 3
        end local 3 // int i
         6: .line 848
            aload 2 /* list */
            invokevirtual org.hsqldb.lib.HsqlArrayList.size:()I
            anewarray org.hsqldb.Expression
            astore 3 /* nodes */
        start local 3 // org.hsqldb.Expression[] nodes
         7: .line 850
            aload 2 /* list */
            aload 3 /* nodes */
            invokevirtual org.hsqldb.lib.HsqlArrayList.toArray:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 852
            aload 1 /* e */
            aload 3 /* nodes */
            putfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
         9: .line 853
            return
        end local 3 // org.hsqldb.Expression[] nodes
        end local 2 // org.hsqldb.lib.HsqlArrayList list
        end local 1 // org.hsqldb.Expression e
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0   this  Lorg/hsqldb/QuerySpecification;
            0   10     1      e  Lorg/hsqldb/Expression;
            1   10     2   list  Lorg/hsqldb/lib/HsqlArrayList;
            2    6     3      i  I
            7   10     3  nodes  [Lorg/hsqldb/Expression;
    MethodParameters:
      Name  Flags
      e     

  private void finaliseColumns();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // org.hsqldb.QuerySpecification this
         0: .line 857
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            putfield org.hsqldb.QuerySpecification.indexLimitRowId:I
         1: .line 858
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitRowId:I
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.groupByColumnCount:I
            iadd
            putfield org.hsqldb.QuerySpecification.indexStartHaving:I
         2: .line 859
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartHaving:I
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingColumnCount:I
            iadd
            putfield org.hsqldb.QuerySpecification.indexStartOrderBy:I
         3: .line 860
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartOrderBy:I
         4: .line 861
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            invokevirtual org.hsqldb.SortAndSlice.getOrderLength:()I
            iadd
         5: .line 860
            putfield org.hsqldb.QuerySpecification.indexStartAggregates:I
         6: .line 862
            aload 0 /* this */
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartAggregates:I
            dup_x1
            putfield org.hsqldb.QuerySpecification.indexLimitExpressions:I
            putfield org.hsqldb.QuerySpecification.indexLimitData:I
         7: .line 863
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitExpressions:I
            anewarray org.hsqldb.Expression
            putfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
         8: .line 865
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumnList:Lorg/hsqldb/lib/HsqlArrayList;
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            invokevirtual org.hsqldb.lib.HsqlArrayList.toArray:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         9: .line 867
            aload 0 /* this */
            aconst_null
            putfield org.hsqldb.QuerySpecification.exprColumnList:Lorg/hsqldb/lib/HsqlArrayList;
        10: .line 869
            iconst_0
            istore 1 /* i */
        start local 1 // int i
        11: goto 14
        12: .line 870
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 1 /* i */
            aaload
            iload 1 /* i */
            putfield org.hsqldb.Expression.queryTableColumnIndex:I
        13: .line 869
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 1 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            if_icmplt 12
        end local 1 // int i
        15: .line 873
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            invokevirtual org.hsqldb.SortAndSlice.hasOrder:()Z
            ifeq 23
        16: .line 874
            iconst_0
            istore 1 /* i */
        start local 1 // int i
        17: goto 22
        18: .line 875
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartOrderBy:I
            iload 1 /* i */
            iadd
        19: .line 876
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            getfield org.hsqldb.SortAndSlice.exprList:Lorg/hsqldb/lib/HsqlArrayList;
            iload 1 /* i */
            invokevirtual org.hsqldb.lib.HsqlArrayList.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.Expression
        20: .line 875
            aastore
        21: .line 874
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
        22: iload 1 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            invokevirtual org.hsqldb.SortAndSlice.getOrderLength:()I
            if_icmplt 18
        end local 1 // int i
        23: .line 880
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.hsqldb.Expression
            dup
            bipush 25
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            invokespecial org.hsqldb.Expression.<init>:(I[Lorg/hsqldb/Expression;)V
            putfield org.hsqldb.QuerySpecification.rowExpression:Lorg/hsqldb/Expression;
        24: .line 881
            return
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   25     0  this  Lorg/hsqldb/QuerySpecification;
           11   15     1     i  I
           17   23     1     i  I

  private void replaceColumnIndexInOrderBy(org.hsqldb.Expression);
    descriptor: (Lorg/hsqldb/Expression;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Expression orderBy
         0: .line 885
            aload 1 /* orderBy */
            invokevirtual org.hsqldb.Expression.getLeftNode:()Lorg/hsqldb/Expression;
            astore 2 /* e */
        start local 2 // org.hsqldb.Expression e
         1: .line 887
            aload 2 /* e */
            invokevirtual org.hsqldb.Expression.getType:()I
            iconst_1
            if_icmpeq 3
         2: .line 888
            return
         3: .line 891
      StackMap locals: org.hsqldb.Expression
      StackMap stack:
            aload 2 /* e */
            invokevirtual org.hsqldb.Expression.getDataType:()Lorg/hsqldb/types/Type;
            astore 3 /* type */
        start local 3 // org.hsqldb.types.Type type
         4: .line 893
            aload 3 /* type */
            ifnull 9
            aload 3 /* type */
            getfield org.hsqldb.types.Type.typeCode:I
            iconst_4
            if_icmpne 9
         5: .line 894
            aload 2 /* e */
            aconst_null
            invokevirtual org.hsqldb.Expression.getValue:(Lorg/hsqldb/Session;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            istore 4 /* i */
        start local 4 // int i
         6: .line 896
            iload 4 /* i */
            ifle 9
            iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            if_icmpgt 9
         7: .line 897
            aload 1 /* orderBy */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            iconst_1
            isub
            aaload
            invokevirtual org.hsqldb.Expression.setLeftNode:(Lorg/hsqldb/Expression;)V
         8: .line 899
            return
        end local 4 // int i
         9: .line 903
      StackMap locals: org.hsqldb.types.Type
      StackMap stack:
            sipush 5576
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        end local 3 // org.hsqldb.types.Type type
        end local 2 // org.hsqldb.Expression e
        end local 1 // org.hsqldb.Expression orderBy
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Lorg/hsqldb/QuerySpecification;
            0   10     1  orderBy  Lorg/hsqldb/Expression;
            1   10     2        e  Lorg/hsqldb/Expression;
            4   10     3     type  Lorg/hsqldb/types/Type;
            6    9     4        i  I
    MethodParameters:
         Name  Flags
      orderBy  

  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.QuerySpecification this
        start local 1 // org.hsqldb.RangeVariable[] rangeVars
        start local 2 // org.hsqldb.lib.OrderedHashSet set
         0: .line 909
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         1: goto 4
         2: .line 910
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
            aload 1 /* rangeVars */
            aload 2 /* set */
            invokevirtual org.hsqldb.Expression.collectRangeVariables:([Lorg/hsqldb/RangeVariable;Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 2 /* set */
         3: .line 909
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartAggregates:I
            if_icmplt 2
        end local 3 // int i
         5: .line 913
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            ifnull 7
         6: .line 914
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            aload 1 /* rangeVars */
            aload 2 /* set */
            invokevirtual org.hsqldb.Expression.collectRangeVariables:([Lorg/hsqldb/RangeVariable;Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 2 /* set */
         7: .line 917
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
            ifnull 9
         8: .line 918
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
            aload 1 /* rangeVars */
            aload 2 /* set */
            invokevirtual org.hsqldb.Expression.collectRangeVariables:([Lorg/hsqldb/RangeVariable;Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 2 /* set */
         9: .line 921
      StackMap locals:
      StackMap stack:
            aload 2 /* set */
            areturn
        end local 2 // org.hsqldb.lib.OrderedHashSet set
        end local 1 // org.hsqldb.RangeVariable[] rangeVars
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       this  Lorg/hsqldb/QuerySpecification;
            0   10     1  rangeVars  [Lorg/hsqldb/RangeVariable;
            0   10     2        set  Lorg/hsqldb/lib/OrderedHashSet;
            1    5     3          i  I
    MethodParameters:
           Name  Flags
      rangeVars  
      set        

  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.QuerySpecification this
        start local 1 // org.hsqldb.lib.OrderedHashSet set
         0: .line 926
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 4
         2: .line 927
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[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 */
         3: .line 926
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartAggregates:I
            if_icmplt 2
        end local 2 // int i
         5: .line 930
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            ifnull 7
         6: .line 931
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            aload 1 /* set */
            invokevirtual org.hsqldb.Expression.collectRangeVariables:(Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 1 /* set */
         7: .line 934
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
            ifnull 9
         8: .line 935
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
            aload 1 /* set */
            invokevirtual org.hsqldb.Expression.collectRangeVariables:(Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 1 /* set */
         9: .line 938
      StackMap locals:
      StackMap stack:
            aload 1 /* set */
            areturn
        end local 1 // org.hsqldb.lib.OrderedHashSet set
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/hsqldb/QuerySpecification;
            0   10     1   set  Lorg/hsqldb/lib/OrderedHashSet;
            1    5     2     i  I
    MethodParameters:
      Name  Flags
      set   

  public void resolveExpressionTypes(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
         0: .line 946
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 12
         2: .line 947
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            astore 3 /* e */
        start local 3 // org.hsqldb.Expression e
         3: .line 949
            aload 3 /* e */
            aload 1 /* session */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rowExpression:Lorg/hsqldb/Expression;
            invokevirtual org.hsqldb.Expression.resolveTypes:(Lorg/hsqldb/Session;Lorg/hsqldb/Expression;)V
         4: .line 951
            aload 3 /* e */
            invokevirtual org.hsqldb.Expression.getType:()I
            bipush 25
            if_icmpne 6
         5: .line 952
            sipush 5565
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
         6: .line 955
      StackMap locals: org.hsqldb.Expression
      StackMap stack:
            aload 3 /* e */
            invokevirtual org.hsqldb.Expression.getType:()I
            bipush 22
            if_icmpne 8
            aload 3 /* e */
            invokevirtual org.hsqldb.Expression.getDegree:()I
            iconst_1
            if_icmple 8
         7: .line 956
            sipush 5565
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
         8: .line 959
      StackMap locals:
      StackMap stack:
            aload 3 /* e */
            invokevirtual org.hsqldb.Expression.getDataType:()Lorg/hsqldb/types/Type;
            ifnull 11
         9: .line 960
            aload 3 /* e */
            invokevirtual org.hsqldb.Expression.getDataType:()Lorg/hsqldb/types/Type;
            getfield org.hsqldb.types.Type.typeCode:I
            bipush 19
            if_icmpne 11
        10: .line 961
            sipush 5565
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        end local 3 // org.hsqldb.Expression e
        11: .line 946
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartAggregates:I
            if_icmplt 2
        end local 2 // int i
        13: .line 965
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        14: goto 21
        15: .line 966
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iload 2 /* i */
            aaload
            invokevirtual org.hsqldb.RangeVariable.getJoinCondition:()Lorg/hsqldb/Expression;
            astore 3 /* e */
        start local 3 // org.hsqldb.Expression e
        16: .line 968
            aload 3 /* e */
            ifnull 20
        17: .line 969
            aload 3 /* e */
            aload 1 /* session */
            aconst_null
            invokevirtual org.hsqldb.Expression.resolveTypes:(Lorg/hsqldb/Session;Lorg/hsqldb/Expression;)V
        18: .line 971
            aload 3 /* e */
            invokevirtual org.hsqldb.Expression.getDataType:()Lorg/hsqldb/types/Type;
            getstatic org.hsqldb.types.Type.SQL_BOOLEAN:Lorg/hsqldb/types/BooleanType;
            if_acmpeq 20
        19: .line 972
            sipush 5568
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        end local 3 // org.hsqldb.Expression e
        20: .line 965
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        21: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            if_icmplt 15
        end local 2 // int i
        22: .line 977
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            ifnull 26
        23: .line 978
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            aload 1 /* session */
            aconst_null
            invokevirtual org.hsqldb.Expression.resolveTypes:(Lorg/hsqldb/Session;Lorg/hsqldb/Expression;)V
        24: .line 980
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            invokevirtual org.hsqldb.Expression.getDataType:()Lorg/hsqldb/types/Type;
            getstatic org.hsqldb.types.Type.SQL_BOOLEAN:Lorg/hsqldb/types/BooleanType;
            if_acmpeq 26
        25: .line 981
            sipush 5568
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        26: .line 985
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
            ifnull 30
        27: .line 986
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
            aload 1 /* session */
            aconst_null
            invokevirtual org.hsqldb.Expression.resolveTypes:(Lorg/hsqldb/Session;Lorg/hsqldb/Expression;)V
        28: .line 988
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
            invokevirtual org.hsqldb.Expression.getDataType:()Lorg/hsqldb/types/Type;
            getstatic org.hsqldb.types.Type.SQL_BOOLEAN:Lorg/hsqldb/types/BooleanType;
            if_acmpeq 30
        29: .line 989
            sipush 5568
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        30: .line 993
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            getfield org.hsqldb.SortAndSlice.limitCondition:Lorg/hsqldb/ExpressionOp;
            ifnull 32
        31: .line 994
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            getfield org.hsqldb.SortAndSlice.limitCondition:Lorg/hsqldb/ExpressionOp;
            aload 1 /* session */
            aconst_null
            invokevirtual org.hsqldb.ExpressionOp.resolveTypes:(Lorg/hsqldb/Session;Lorg/hsqldb/Expression;)V
        32: .line 996
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   33     0     this  Lorg/hsqldb/QuerySpecification;
            0   33     1  session  Lorg/hsqldb/Session;
            1   13     2        i  I
            3   11     3        e  Lorg/hsqldb/Expression;
           14   22     2        i  I
           16   20     3        e  Lorg/hsqldb/Expression;
    MethodParameters:
         Name  Flags
      session  

  private void resolveAggregates();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // org.hsqldb.QuerySpecification this
         0: .line 1000
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.clear:()V
         1: .line 1002
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isAggregated:Z
            ifeq 21
         2: .line 1003
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartAggregates:I
            newarray 4
            putfield org.hsqldb.QuerySpecification.aggregateCheck:[Z
         3: .line 1005
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.aggregateSet:Lorg/hsqldb/lib/ArrayListIdentity;
            invokevirtual org.hsqldb.lib.OrderedHashSet.addAll:(Lorg/hsqldb/lib/Collection;)Z
            pop
         4: .line 1007
            aload 0 /* this */
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            arraylength
         5: .line 1008
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.size:()I
            iadd
         6: .line 1007
            dup_x1
            putfield org.hsqldb.QuerySpecification.indexLimitExpressions:I
            putfield org.hsqldb.QuerySpecification.indexLimitData:I
         7: .line 1009
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
         8: .line 1010
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitExpressions:I
         9: .line 1009
            invokestatic org.hsqldb.lib.ArrayUtil.resizeArray:(Ljava/lang/Object;I)Ljava/lang/Object;
            checkcast org.hsqldb.Expression[]
            putfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
        10: .line 1012
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartAggregates:I
            istore 1 /* i */
        start local 1 // int i
        11: iconst_0
            istore 2 /* j */
        start local 2 // int j
        12: .line 1013
            goto 18
        13: .line 1014
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            iload 2 /* j */
            invokevirtual org.hsqldb.lib.OrderedHashSet.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.Expression
            astore 3 /* e */
        start local 3 // org.hsqldb.Expression e
        14: .line 1016
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 1 /* i */
            aload 3 /* e */
            invokevirtual org.hsqldb.Expression.duplicate:()Lorg/hsqldb/Expression;
            aastore
        15: .line 1017
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 1 /* i */
            aaload
            aload 3 /* e */
            getfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
            putfield org.hsqldb.Expression.nodes:[Lorg/hsqldb/Expression;
        16: .line 1018
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 1 /* i */
            aaload
            aload 3 /* e */
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
            putfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
        end local 3 // org.hsqldb.Expression e
        17: .line 1013
            iinc 1 /* i */ 1
            iinc 2 /* j */ 1
      StackMap locals:
      StackMap stack:
        18: iload 1 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitExpressions:I
        19: .line 1012
            if_icmplt 13
        end local 2 // int j
        end local 1 // int i
        20: .line 1021
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.clear:()V
        21: .line 1023
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   22     0  this  Lorg/hsqldb/QuerySpecification;
           11   20     1     i  I
           12   20     2     j  I
           14   17     3     e  Lorg/hsqldb/Expression;

  private void setRangeVariableConditions(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
         0: .line 1028
            new org.hsqldb.RangeVariableResolver
            dup
            aload 1 /* session */
            aload 0 /* this */
            invokespecial org.hsqldb.RangeVariableResolver.<init>:(Lorg/hsqldb/Session;Lorg/hsqldb/QuerySpecification;)V
         1: .line 1027
            astore 2 /* rangeResolver */
        start local 2 // org.hsqldb.RangeVariableResolver rangeResolver
         2: .line 1030
            aload 2 /* rangeResolver */
            invokevirtual org.hsqldb.RangeVariableResolver.processConditions:()V
         3: .line 1032
            aload 0 /* this */
            aload 2 /* rangeResolver */
            getfield org.hsqldb.RangeVariableResolver.rangeVariables:[Lorg/hsqldb/RangeVariable;
            putfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
         4: .line 1034
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            iconst_1
            if_icmple 6
         5: .line 1035
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.QuerySpecification.isMergeable:Z
         6: .line 1037
      StackMap locals: org.hsqldb.RangeVariableResolver
      StackMap stack:
            return
        end local 2 // org.hsqldb.RangeVariableResolver rangeResolver
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    7     0           this  Lorg/hsqldb/QuerySpecification;
            0    7     1        session  Lorg/hsqldb/Session;
            2    7     2  rangeResolver  Lorg/hsqldb/RangeVariableResolver;
    MethodParameters:
         Name  Flags
      session  

  private void setDistinctConditions(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
         0: .line 1041
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isDistinctSelect:Z
            ifne 2
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isGrouped:Z
            ifne 2
         1: .line 1042
            return
         2: .line 1045
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isAggregated:Z
            ifeq 4
         3: .line 1046
            return
         4: .line 1049
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         5: goto 9
         6: .line 1050
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iload 2 /* i */
            aaload
            getfield org.hsqldb.RangeVariable.isRightJoin:Z
            ifeq 8
         7: .line 1051
            return
         8: .line 1049
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            if_icmplt 6
        end local 2 // int i
        10: .line 1055
            aconst_null
            astore 2 /* range */
        start local 2 // org.hsqldb.RangeVariable range
        11: .line 1058
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isGrouped:Z
            ifeq 31
        12: .line 1059
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.groupByColumnCount:I
            newarray 10
            astore 3 /* colMap */
        start local 3 // int[] colMap
        13: .line 1061
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        14: goto 29
        15: .line 1062
      StackMap locals: org.hsqldb.QuerySpecification org.hsqldb.Session org.hsqldb.RangeVariable int[] int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitRowId:I
            iload 4 /* i */
            iadd
            aaload
            invokevirtual org.hsqldb.Expression.getType:()I
        16: .line 1063
            iconst_2
        17: .line 1062
            if_icmpeq 19
        18: .line 1064
            return
        19: .line 1067
      StackMap locals:
      StackMap stack:
            aload 2 /* range */
            ifnonnull 23
        20: .line 1069
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitRowId:I
            iload 4 /* i */
            iadd
            aaload
            invokevirtual org.hsqldb.Expression.getRangeVariable:()Lorg/hsqldb/RangeVariable;
        21: .line 1068
            astore 2 /* range */
        22: .line 1070
            goto 27
        23: .line 1071
      StackMap locals:
      StackMap stack:
            aload 2 /* range */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitRowId:I
            iload 4 /* i */
            iadd
            aaload
        24: .line 1072
            invokevirtual org.hsqldb.Expression.getRangeVariable:()Lorg/hsqldb/RangeVariable;
        25: .line 1071
            if_acmpeq 27
        26: .line 1073
            return
        27: .line 1077
      StackMap locals:
      StackMap stack:
            aload 3 /* colMap */
            iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            getfield org.hsqldb.Expression.columnIndex:I
            iastore
        28: .line 1061
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        29: iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.groupByColumnCount:I
            if_icmplt 15
        end local 4 // int i
        30: .line 1079
            goto 32
        end local 3 // int[] colMap
        31: .line 1080
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            newarray 10
            astore 3 /* colMap */
        start local 3 // int[] colMap
        32: .line 1083
      StackMap locals: int[]
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        33: goto 44
        34: .line 1084
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            invokevirtual org.hsqldb.Expression.getType:()I
            iconst_2
            if_icmpeq 36
        35: .line 1085
            return
        36: .line 1088
      StackMap locals:
      StackMap stack:
            aload 2 /* range */
            ifnonnull 39
        37: .line 1089
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            invokevirtual org.hsqldb.Expression.getRangeVariable:()Lorg/hsqldb/RangeVariable;
            astore 2 /* range */
        38: .line 1090
            goto 41
        39: .line 1091
      StackMap locals:
      StackMap stack:
            aload 2 /* range */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            invokevirtual org.hsqldb.Expression.getRangeVariable:()Lorg/hsqldb/RangeVariable;
            if_acmpeq 41
        40: .line 1092
            return
        41: .line 1096
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isGrouped:Z
            ifne 43
        42: .line 1097
            aload 3 /* colMap */
            iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            getfield org.hsqldb.Expression.columnIndex:I
            iastore
        43: .line 1083
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        44: iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            if_icmplt 34
        end local 4 // int i
        45: .line 1101
            aload 2 /* range */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iconst_0
            aaload
            if_acmpeq 47
        46: .line 1102
            return
        47: .line 1105
      StackMap locals:
      StackMap stack:
            aload 3 /* colMap */
        48: .line 1106
            aload 2 /* range */
            getfield org.hsqldb.RangeVariable.usedColumns:[Z
        49: .line 1105
            invokestatic org.hsqldb.lib.ArrayUtil.areAllIntIndexesAsBooleanArray:([I[Z)Z
            istore 4 /* check */
        start local 4 // boolean check
        50: .line 1108
            iload 4 /* check */
            ifne 52
        51: .line 1109
            return
        52: .line 1112
      StackMap locals: int
      StackMap stack:
            aload 2 /* range */
            invokevirtual org.hsqldb.RangeVariable.hasAnyIndexCondition:()Z
            ifne 56
        53: .line 1113
            aload 2 /* range */
            getfield org.hsqldb.RangeVariable.rangeTable:Lorg/hsqldb/Table;
            aload 3 /* colMap */
            invokevirtual org.hsqldb.Table.getIndexForAllColumns:([I)Lorg/hsqldb/index/Index;
            astore 5 /* index */
        start local 5 // org.hsqldb.index.Index index
        54: .line 1115
            aload 5 /* index */
            ifnull 56
        55: .line 1116
            aload 2 /* range */
            aload 5 /* index */
            iconst_0
            invokevirtual org.hsqldb.RangeVariable.setSortIndex:(Lorg/hsqldb/index/Index;Z)Z
            pop
        end local 5 // org.hsqldb.index.Index index
        56: .line 1120
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* range */
            aload 3 /* colMap */
            invokevirtual org.hsqldb.RangeVariable.setDistinctColumnsOnIndex:([I)Z
            putfield org.hsqldb.QuerySpecification.isSimpleDistinct:Z
        57: .line 1121
            return
        end local 4 // boolean check
        end local 3 // int[] colMap
        end local 2 // org.hsqldb.RangeVariable range
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   58     0     this  Lorg/hsqldb/QuerySpecification;
            0   58     1  session  Lorg/hsqldb/Session;
            5   10     2        i  I
           11   58     2    range  Lorg/hsqldb/RangeVariable;
           13   31     3   colMap  [I
           32   58     3   colMap  [I
           14   30     4        i  I
           33   45     4        i  I
           50   58     4    check  Z
           54   56     5    index  Lorg/hsqldb/index/Index;
    MethodParameters:
         Name  Flags
      session  

  private void setAggregateConditions(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
         0: .line 1125
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isAggregated:Z
            ifne 2
         1: .line 1126
            return
         2: .line 1129
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isGrouped:Z
            ifeq 5
         3: .line 1130
            aload 0 /* this */
            aload 1 /* session */
            invokevirtual org.hsqldb.QuerySpecification.setGroupedAggregateConditions:(Lorg/hsqldb/Session;)V
         4: .line 1131
            goto 36
      StackMap locals:
      StackMap stack:
         5: aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            invokevirtual org.hsqldb.SortAndSlice.hasOrder:()Z
            ifne 36
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            invokevirtual org.hsqldb.SortAndSlice.hasLimit:()Z
            ifne 36
         6: .line 1132
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.aggregateSet:Lorg/hsqldb/lib/ArrayListIdentity;
            invokevirtual org.hsqldb.lib.ArrayListIdentity.size:()I
            iconst_1
            if_icmpne 36
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            iconst_1
            if_icmpne 36
         7: .line 1133
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartAggregates:I
            aaload
            astore 2 /* e */
        start local 2 // org.hsqldb.Expression e
         8: .line 1134
            aload 2 /* e */
            invokevirtual org.hsqldb.Expression.getType:()I
            istore 3 /* opType */
        start local 3 // int opType
         9: .line 1135
            aload 2 /* e */
            invokevirtual org.hsqldb.Expression.getLeftNode:()Lorg/hsqldb/Expression;
            astore 4 /* expr */
        start local 4 // org.hsqldb.Expression expr
        10: .line 1137
            iload 3 /* opType */
            tableswitch { // 74 - 77
                   74: 19
                   75: 36
                   76: 11
                   77: 11
              default: 36
          }
        11: .line 1141
      StackMap locals: org.hsqldb.Expression int org.hsqldb.Expression
      StackMap stack:
            aload 2 /* e */
            invokevirtual org.hsqldb.Expression.hasCondition:()Z
            ifeq 13
        12: .line 1142
            goto 36
        13: .line 1145
      StackMap locals:
      StackMap stack:
            new org.hsqldb.SortAndSlice
            dup
            invokespecial org.hsqldb.SortAndSlice.<init>:()V
            astore 5 /* slice */
        start local 5 // org.hsqldb.SortAndSlice slice
        14: .line 1147
            aload 5 /* slice */
            iconst_1
            putfield org.hsqldb.SortAndSlice.isGenerated:Z
        15: .line 1149
            aload 5 /* slice */
            getstatic org.hsqldb.ExpressionOp.limitOneExpression:Lorg/hsqldb/ExpressionOp;
            invokevirtual org.hsqldb.SortAndSlice.addLimitCondition:(Lorg/hsqldb/ExpressionOp;)V
        16: .line 1151
            aload 5 /* slice */
            aload 1 /* session */
            aload 0 /* this */
            invokevirtual org.hsqldb.SortAndSlice.prepareSpecial:(Lorg/hsqldb/Session;Lorg/hsqldb/QuerySpecification;)Z
            ifeq 36
        17: .line 1152
            aload 0 /* this */
            aload 5 /* slice */
            putfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
        18: .line 1155
            goto 36
        end local 5 // org.hsqldb.SortAndSlice slice
        19: .line 1158
      StackMap locals:
      StackMap stack:
            aload 2 /* e */
            invokevirtual org.hsqldb.Expression.hasCondition:()Z
            ifne 36
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            iconst_1
            if_icmpne 36
        20: .line 1159
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            ifnonnull 36
        21: .line 1160
            aload 4 /* expr */
            invokevirtual org.hsqldb.Expression.getType:()I
            bipush 11
            if_icmpne 24
        22: .line 1161
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.QuerySpecification.isSimpleCount:Z
        23: .line 1163
            goto 36
        24: .line 1164
      StackMap locals:
      StackMap stack:
            aload 4 /* expr */
            invokevirtual org.hsqldb.Expression.getNullability:()B
            ifne 36
        25: .line 1166
            aload 2 /* e */
            getfield org.hsqldb.Expression.isDistinctAggregate:Z
            ifeq 35
        26: .line 1167
            aload 4 /* expr */
            getfield org.hsqldb.Expression.opType:I
            iconst_2
            if_icmpne 36
        27: .line 1169
            aload 4 /* expr */
            invokevirtual org.hsqldb.Expression.getRangeVariable:()Lorg/hsqldb/RangeVariable;
            invokevirtual org.hsqldb.RangeVariable.getTable:()Lorg/hsqldb/Table;
        28: .line 1168
            astore 5 /* t */
        start local 5 // org.hsqldb.Table t
        29: .line 1171
            aload 5 /* t */
            invokevirtual org.hsqldb.Table.getPrimaryKey:()[I
            arraylength
            iconst_1
            if_icmpne 36
        30: .line 1172
            aload 5 /* t */
            aload 5 /* t */
            invokevirtual org.hsqldb.Table.getPrimaryKey:()[I
            iconst_0
            iaload
            invokevirtual org.hsqldb.Table.getColumn:(I)Lorg/hsqldb/ColumnSchema;
        31: .line 1173
            aload 4 /* expr */
            invokevirtual org.hsqldb.Expression.getColumn:()Lorg/hsqldb/ColumnSchema;
        32: .line 1172
            if_acmpne 36
        33: .line 1174
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.QuerySpecification.isSimpleCount:Z
        34: .line 1176
            goto 36
        end local 5 // org.hsqldb.Table t
        35: .line 1181
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.QuerySpecification.isSimpleCount:Z
        end local 4 // org.hsqldb.Expression expr
        end local 3 // int opType
        end local 2 // org.hsqldb.Expression e
        36: .line 1193
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   37     0     this  Lorg/hsqldb/QuerySpecification;
            0   37     1  session  Lorg/hsqldb/Session;
            8   36     2        e  Lorg/hsqldb/Expression;
            9   36     3   opType  I
           10   36     4     expr  Lorg/hsqldb/Expression;
           14   19     5    slice  Lorg/hsqldb/SortAndSlice;
           29   35     5        t  Lorg/hsqldb/Table;
    MethodParameters:
         Name  Flags
      session  

  private void setGroupedAggregateConditions(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
         0: .line 1198
            return
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hsqldb/QuerySpecification;
            0    1     1  session  Lorg/hsqldb/Session;
    MethodParameters:
         Name  Flags
      session  

  void checkLobUsage();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // org.hsqldb.QuerySpecification this
         0: .line 1200
            return
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/QuerySpecification;

  private void resolveGroups();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // org.hsqldb.QuerySpecification this
         0: .line 1233
            aconst_null
            astore 1 /* extraSet */
        start local 1 // org.hsqldb.lib.OrderedHashSet extraSet
         1: .line 1235
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.clear:()V
         2: .line 1237
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isGrouped:Z
            ifeq 35
         3: .line 1238
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            istore 2 /* i */
        start local 2 // int i
         4: .line 1239
            goto 14
         5: .line 1240
      StackMap locals: org.hsqldb.lib.OrderedHashSet int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
         6: .line 1241
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            getstatic org.hsqldb.OpTypes.aggregateFunctionSet:Lorg/hsqldb/lib/OrderedIntHashSet;
         7: .line 1242
            getstatic org.hsqldb.OpTypes.subqueryExpressionSet:Lorg/hsqldb/lib/OrderedIntHashSet;
         8: .line 1240
            invokevirtual org.hsqldb.Expression.collectAllExpressions:(Lorg/hsqldb/lib/OrderedHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            pop
         9: .line 1244
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.isEmpty:()Z
            ifne 13
        10: .line 1245
            sipush 5572
        11: .line 1246
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            iconst_0
            invokevirtual org.hsqldb.lib.OrderedHashSet.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.Expression
            invokevirtual org.hsqldb.Expression.getSQL:()Ljava/lang/String;
        12: .line 1245
            invokestatic org.hsqldb.error.Error.error:(ILjava/lang/String;)Lorg/hsqldb/HsqlException;
            athrow
        13: .line 1239
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.groupByColumnCount:I
            iadd
        15: .line 1238
            if_icmplt 5
        end local 2 // int i
        16: .line 1250
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        17: goto 26
        18: .line 1251
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
        19: .line 1252
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
        20: .line 1253
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.groupByColumnCount:I
            iadd
        21: .line 1254
            getstatic org.hsqldb.OpTypes.aggregateFunctionSet:Lorg/hsqldb/lib/OrderedIntHashSet;
        22: .line 1251
            invokevirtual org.hsqldb.Expression.isComposedOf:([Lorg/hsqldb/Expression;IILorg/hsqldb/lib/OrderedIntHashSet;)Z
        23: .line 1254
            ifne 25
        24: .line 1255
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
        25: .line 1250
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        26: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            if_icmplt 18
        end local 2 // int i
        27: .line 1259
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.isEmpty:()Z
            ifne 56
        28: .line 1260
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.QuerySpecification.resolveForGroupBy:(Lorg/hsqldb/lib/HsqlList;)Z
            ifne 32
        29: .line 1261
            sipush 5574
        30: .line 1262
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            iconst_0
            invokevirtual org.hsqldb.lib.OrderedHashSet.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.Expression
            invokevirtual org.hsqldb.Expression.getSQL:()Ljava/lang/String;
        31: .line 1261
            invokestatic org.hsqldb.error.Error.error:(ILjava/lang/String;)Lorg/hsqldb/HsqlException;
            athrow
        32: .line 1265
      StackMap locals:
      StackMap stack:
            new org.hsqldb.lib.OrderedHashSet
            dup
            invokespecial org.hsqldb.lib.OrderedHashSet.<init>:()V
            astore 1 /* extraSet */
        33: .line 1267
            aload 1 /* extraSet */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.addAll:(Lorg/hsqldb/lib/OrderedHashSet;)V
        34: .line 1269
            goto 56
      StackMap locals:
      StackMap stack:
        35: aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isAggregated:Z
            ifeq 56
        36: .line 1270
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        37: goto 55
        38: .line 1271
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
        39: .line 1272
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            getstatic org.hsqldb.OpTypes.columnExpressionSet:Lorg/hsqldb/lib/OrderedIntHashSet;
        40: .line 1273
            getstatic org.hsqldb.OpTypes.aggregateFunctionSet:Lorg/hsqldb/lib/OrderedIntHashSet;
        41: .line 1271
            invokevirtual org.hsqldb.Expression.collectAllExpressions:(Lorg/hsqldb/lib/OrderedHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            pop
        42: .line 1275
            iconst_0
            istore 3 /* j */
        start local 3 // int j
        43: goto 52
        44: .line 1276
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            iload 3 /* j */
            invokevirtual org.hsqldb.lib.OrderedHashSet.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.Expression
            astore 4 /* e */
        start local 4 // org.hsqldb.Expression e
        45: .line 1278
            iconst_0
            istore 5 /* k */
        start local 5 // int k
        46: goto 50
        47: .line 1279
      StackMap locals: org.hsqldb.Expression int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iload 5 /* k */
            aaload
            aload 4 /* e */
            invokevirtual org.hsqldb.Expression.getRangeVariable:()Lorg/hsqldb/RangeVariable;
            if_acmpne 49
        48: .line 1280
            sipush 5574
            aload 4 /* e */
            invokevirtual org.hsqldb.Expression.getSQL:()Ljava/lang/String;
            invokestatic org.hsqldb.error.Error.error:(ILjava/lang/String;)Lorg/hsqldb/HsqlException;
            athrow
        49: .line 1278
      StackMap locals:
      StackMap stack:
            iinc 5 /* k */ 1
      StackMap locals:
      StackMap stack:
        50: iload 5 /* k */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            if_icmplt 47
        end local 5 // int k
        end local 4 // org.hsqldb.Expression e
        51: .line 1275
            iinc 3 /* j */ 1
      StackMap locals:
      StackMap stack:
        52: iload 3 /* j */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.size:()I
            if_icmplt 44
        end local 3 // int j
        53: .line 1285
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.clear:()V
        54: .line 1270
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        55: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            if_icmplt 38
        end local 2 // int i
        56: .line 1289
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.clear:()V
        57: .line 1291
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
            ifnull 75
        58: .line 1292
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.unresolvedExpressions:Lorg/hsqldb/lib/HsqlList;
            ifnull 60
        59: .line 1293
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.unresolvedExpressions:Lorg/hsqldb/lib/HsqlList;
            invokevirtual org.hsqldb.lib.OrderedHashSet.addAll:(Lorg/hsqldb/lib/Collection;)Z
            pop
        60: .line 1296
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            istore 2 /* i */
        start local 2 // int i
        61: .line 1297
            goto 64
        62: .line 1298
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
        63: .line 1297
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        64: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.groupByColumnCount:I
            iadd
        65: .line 1296
            if_icmplt 62
        end local 2 // int i
        66: .line 1301
            aload 1 /* extraSet */
            ifnull 68
        67: .line 1302
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            aload 1 /* extraSet */
            invokevirtual org.hsqldb.lib.OrderedHashSet.addAll:(Lorg/hsqldb/lib/OrderedHashSet;)V
        68: .line 1305
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
        69: .line 1306
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.outerRanges:[Lorg/hsqldb/RangeGroup;
        70: .line 1307
            getstatic org.hsqldb.OpTypes.subqueryAggregateExpressionSet:Lorg/hsqldb/lib/OrderedIntHashSet;
        71: .line 1305
            invokevirtual org.hsqldb.Expression.isComposedOf:(Lorg/hsqldb/lib/OrderedHashSet;[Lorg/hsqldb/RangeGroup;Lorg/hsqldb/lib/OrderedIntHashSet;)Z
        72: .line 1307
            ifne 74
        73: .line 1308
            sipush 5573
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        74: .line 1311
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.clear:()V
        75: .line 1314
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isDistinctSelect:Z
            ifeq 89
        76: .line 1315
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            invokevirtual org.hsqldb.SortAndSlice.getOrderLength:()I
            istore 2 /* orderCount */
        start local 2 // int orderCount
        77: .line 1317
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        78: goto 88
        79: .line 1318
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            getfield org.hsqldb.SortAndSlice.exprList:Lorg/hsqldb/lib/HsqlArrayList;
            iload 3 /* i */
            invokevirtual org.hsqldb.lib.HsqlArrayList.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.Expression
            astore 4 /* e */
        start local 4 // org.hsqldb.Expression e
        80: .line 1320
            aload 4 /* e */
            getfield org.hsqldb.Expression.queryTableColumnIndex:I
            iconst_m1
            if_icmpeq 82
        81: .line 1321
            goto 87
        82: .line 1324
      StackMap locals: org.hsqldb.Expression
      StackMap stack:
            aload 4 /* e */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iconst_0
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
        83: .line 1325
            getstatic org.hsqldb.OpTypes.emptyExpressionSet:Lorg/hsqldb/lib/OrderedIntHashSet;
        84: .line 1324
            invokevirtual org.hsqldb.Expression.isComposedOf:([Lorg/hsqldb/Expression;IILorg/hsqldb/lib/OrderedIntHashSet;)Z
        85: .line 1325
            ifne 87
        86: .line 1326
            sipush 5576
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        end local 4 // org.hsqldb.Expression e
        87: .line 1317
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        88: iload 3 /* i */
            iload 2 /* orderCount */
            if_icmplt 79
        end local 3 // int i
        end local 2 // int orderCount
        89: .line 1331
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isGrouped:Z
            ifeq 106
        90: .line 1332
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            invokevirtual org.hsqldb.SortAndSlice.getOrderLength:()I
            istore 2 /* orderCount */
        start local 2 // int orderCount
        91: .line 1334
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        92: goto 105
        93: .line 1335
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            getfield org.hsqldb.SortAndSlice.exprList:Lorg/hsqldb/lib/HsqlArrayList;
            iload 3 /* i */
            invokevirtual org.hsqldb.lib.HsqlArrayList.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.Expression
            astore 4 /* e */
        start local 4 // org.hsqldb.Expression e
        94: .line 1337
            aload 4 /* e */
            getfield org.hsqldb.Expression.queryTableColumnIndex:I
            iconst_m1
            if_icmpeq 96
        95: .line 1338
            goto 104
        96: .line 1341
      StackMap locals: org.hsqldb.Expression
      StackMap stack:
            aload 4 /* e */
            invokevirtual org.hsqldb.Expression.hasAggregate:()Z
            ifne 104
        97: .line 1342
            aload 4 /* e */
        98: .line 1343
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iconst_0
        99: .line 1344
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.groupByColumnCount:I
            iadd
       100: .line 1345
            getstatic org.hsqldb.OpTypes.emptyExpressionSet:Lorg/hsqldb/lib/OrderedIntHashSet;
       101: .line 1342
            invokevirtual org.hsqldb.Expression.isComposedOf:([Lorg/hsqldb/Expression;IILorg/hsqldb/lib/OrderedIntHashSet;)Z
       102: .line 1345
            ifne 104
       103: .line 1346
            sipush 5576
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        end local 4 // org.hsqldb.Expression e
       104: .line 1334
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
       105: iload 3 /* i */
            iload 2 /* orderCount */
            if_icmplt 93
        end local 3 // int i
        end local 2 // int orderCount
       106: .line 1351
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isAggregated:Z
            ifne 108
       107: .line 1352
            return
       108: .line 1355
      StackMap locals:
      StackMap stack:
            new org.hsqldb.lib.OrderedHashSet
            dup
            invokespecial org.hsqldb.lib.OrderedHashSet.<init>:()V
            astore 2 /* expressions */
        start local 2 // org.hsqldb.lib.OrderedHashSet expressions
       109: .line 1357
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartAggregates:I
            istore 3 /* i */
        start local 3 // int i
       110: goto 115
       111: .line 1358
      StackMap locals: org.hsqldb.lib.OrderedHashSet int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
            astore 4 /* e */
        start local 4 // org.hsqldb.Expression e
       112: .line 1360
            aload 4 /* e */
            iload 3 /* i */
            putfield org.hsqldb.Expression.resultTableColumnIndex:I
       113: .line 1362
            aload 2 /* expressions */
            aload 4 /* e */
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // org.hsqldb.Expression e
       114: .line 1357
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
       115: iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitExpressions:I
            if_icmplt 111
        end local 3 // int i
       116: .line 1365
            iconst_0
            istore 3 /* i */
        start local 3 // int i
       117: goto 124
       118: .line 1366
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
            invokevirtual org.hsqldb.Expression.hasAggregate:()Z
            ifeq 120
       119: .line 1367
            goto 123
       120: .line 1370
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
            astore 4 /* e */
        start local 4 // org.hsqldb.Expression e
       121: .line 1372
            aload 4 /* e */
            iload 3 /* i */
            putfield org.hsqldb.Expression.resultTableColumnIndex:I
       122: .line 1374
            aload 2 /* expressions */
            aload 4 /* e */
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // org.hsqldb.Expression e
       123: .line 1365
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
       124: iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartHaving:I
            if_icmplt 118
        end local 3 // int i
       125: .line 1378
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            invokevirtual org.hsqldb.SortAndSlice.getOrderLength:()I
            istore 3 /* orderCount */
        start local 3 // int orderCount
       126: .line 1380
            iconst_0
            istore 4 /* i */
        start local 4 // int i
       127: goto 132
       128: .line 1381
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            getfield org.hsqldb.SortAndSlice.exprList:Lorg/hsqldb/lib/HsqlArrayList;
            iload 4 /* i */
            invokevirtual org.hsqldb.lib.HsqlArrayList.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.Expression
            astore 5 /* e */
        start local 5 // org.hsqldb.Expression e
       129: .line 1383
            aload 5 /* e */
            invokevirtual org.hsqldb.Expression.getLeftNode:()Lorg/hsqldb/Expression;
            invokevirtual org.hsqldb.Expression.hasAggregate:()Z
            ifeq 131
       130: .line 1384
            aload 5 /* e */
            invokevirtual org.hsqldb.Expression.setAggregate:()V
        end local 5 // org.hsqldb.Expression e
       131: .line 1380
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
       132: iload 4 /* i */
            iload 3 /* orderCount */
            if_icmplt 128
        end local 4 // int i
       133: .line 1388
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartOrderBy:I
            istore 4 /* i */
        start local 4 // int i
       134: goto 138
       135: .line 1389
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            invokevirtual org.hsqldb.Expression.getLeftNode:()Lorg/hsqldb/Expression;
            invokevirtual org.hsqldb.Expression.hasAggregate:()Z
            ifeq 137
       136: .line 1390
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            invokevirtual org.hsqldb.Expression.setAggregate:()V
       137: .line 1388
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
       138: iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartAggregates:I
            if_icmplt 135
        end local 4 // int i
       139: .line 1394
            iconst_0
            istore 4 /* i */
        start local 4 // int i
       140: goto 149
       141: .line 1395
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            astore 5 /* e */
        start local 5 // org.hsqldb.Expression e
       142: .line 1397
            aload 5 /* e */
            invokevirtual org.hsqldb.Expression.hasAggregate:()Z
            ifne 144
       143: .line 1398
            goto 148
       144: .line 1401
      StackMap locals: org.hsqldb.Expression
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.aggregateCheck:[Z
            iload 4 /* i */
            iconst_1
            bastore
       145: .line 1402
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aload 5 /* e */
            aload 2 /* expressions */
       146: .line 1403
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resultRangePosition:I
       147: .line 1402
            invokevirtual org.hsqldb.Expression.replaceExpressions:(Lorg/hsqldb/lib/OrderedHashSet;I)Lorg/hsqldb/Expression;
            aastore
        end local 5 // org.hsqldb.Expression e
       148: .line 1394
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
       149: iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartAggregates:I
            if_icmplt 141
        end local 4 // int i
       150: .line 1406
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resolvedSubqueryExpressions:Lorg/hsqldb/lib/ArrayListIdentity;
            ifnull 157
       151: .line 1407
            iconst_0
            istore 4 /* i */
        start local 4 // int i
       152: goto 156
       153: .line 1408
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resolvedSubqueryExpressions:Lorg/hsqldb/lib/ArrayListIdentity;
            iload 4 /* i */
            invokevirtual org.hsqldb.lib.ArrayListIdentity.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.Expression
            astore 5 /* e */
        start local 5 // org.hsqldb.Expression e
       154: .line 1410
            aload 5 /* e */
            aload 2 /* expressions */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resultRangePosition:I
            invokevirtual org.hsqldb.Expression.replaceExpressions:(Lorg/hsqldb/lib/OrderedHashSet;I)Lorg/hsqldb/Expression;
            pop
        end local 5 // org.hsqldb.Expression e
       155: .line 1407
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
       156: iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resolvedSubqueryExpressions:Lorg/hsqldb/lib/ArrayListIdentity;
            invokevirtual org.hsqldb.lib.ArrayListIdentity.size:()I
            if_icmplt 153
        end local 4 // int i
       157: .line 1413
      StackMap locals:
      StackMap stack:
            return
        end local 3 // int orderCount
        end local 2 // org.hsqldb.lib.OrderedHashSet expressions
        end local 1 // org.hsqldb.lib.OrderedHashSet extraSet
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0  158     0         this  Lorg/hsqldb/QuerySpecification;
            1  158     1     extraSet  Lorg/hsqldb/lib/OrderedHashSet;
            4   16     2            i  I
           17   27     2            i  I
           37   56     2            i  I
           43   53     3            j  I
           45   51     4            e  Lorg/hsqldb/Expression;
           46   51     5            k  I
           61   66     2            i  I
           77   89     2   orderCount  I
           78   89     3            i  I
           80   87     4            e  Lorg/hsqldb/Expression;
           91  106     2   orderCount  I
           92  106     3            i  I
           94  104     4            e  Lorg/hsqldb/Expression;
          109  158     2  expressions  Lorg/hsqldb/lib/OrderedHashSet;
          110  116     3            i  I
          112  114     4            e  Lorg/hsqldb/Expression;
          117  125     3            i  I
          121  123     4            e  Lorg/hsqldb/Expression;
          126  158     3   orderCount  I
          127  133     4            i  I
          129  131     5            e  Lorg/hsqldb/Expression;
          134  139     4            i  I
          140  150     4            i  I
          142  148     5            e  Lorg/hsqldb/Expression;
          152  157     4            i  I
          154  155     5            e  Lorg/hsqldb/Expression;

  boolean resolveForGroupBy(org.hsqldb.lib.HsqlList);
    descriptor: (Lorg/hsqldb/lib/HsqlList;)Z
    flags: (0x0000) 
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.lib.HsqlList unresolvedSet
         0: .line 1417
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            istore 2 /* i */
        start local 2 // int i
         1: .line 1418
            goto 8
         2: .line 1419
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            astore 3 /* e */
        start local 3 // org.hsqldb.Expression e
         3: .line 1421
            aload 3 /* e */
            invokevirtual org.hsqldb.Expression.getType:()I
            iconst_2
            if_icmpne 7
         4: .line 1422
            aload 3 /* e */
            invokevirtual org.hsqldb.Expression.getRangeVariable:()Lorg/hsqldb/RangeVariable;
            astore 4 /* range */
        start local 4 // org.hsqldb.RangeVariable range
         5: .line 1423
            aload 3 /* e */
            invokevirtual org.hsqldb.Expression.getColumnIndex:()I
            istore 5 /* colIndex */
        start local 5 // int colIndex
         6: .line 1425
            aload 4 /* range */
            getfield org.hsqldb.RangeVariable.columnsInGroupBy:[Z
            iload 5 /* colIndex */
            iconst_1
            bastore
        end local 5 // int colIndex
        end local 4 // org.hsqldb.RangeVariable range
        end local 3 // org.hsqldb.Expression e
         7: .line 1418
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.groupByColumnCount:I
            iadd
         9: .line 1417
            if_icmplt 2
        end local 2 // int i
        10: .line 1429
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        11: goto 20
        12: .line 1430
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iload 2 /* i */
            aaload
            astore 3 /* range */
        start local 3 // org.hsqldb.RangeVariable range
        13: .line 1432
            aload 3 /* range */
        14: .line 1433
            aload 3 /* range */
            getfield org.hsqldb.RangeVariable.rangeTable:Lorg/hsqldb/Table;
        15: .line 1434
            aload 3 /* range */
            getfield org.hsqldb.RangeVariable.columnsInGroupBy:[Z
        16: .line 1433
            invokevirtual org.hsqldb.Table.getUniqueNotNullColumnGroup:([Z)[I
            ifnull 17
            iconst_1
            goto 18
      StackMap locals: org.hsqldb.QuerySpecification org.hsqldb.lib.HsqlList int org.hsqldb.RangeVariable
      StackMap stack: org.hsqldb.RangeVariable
        17: iconst_0
        18: .line 1432
      StackMap locals: org.hsqldb.QuerySpecification org.hsqldb.lib.HsqlList int org.hsqldb.RangeVariable
      StackMap stack: org.hsqldb.RangeVariable int
            putfield org.hsqldb.RangeVariable.hasKeyedColumnInGroupBy:Z
        end local 3 // org.hsqldb.RangeVariable range
        19: .line 1429
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        20: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            if_icmplt 12
        end local 2 // int i
        21: .line 1437
            aconst_null
            astore 2 /* set */
        start local 2 // org.hsqldb.lib.OrderedHashSet set
        22: .line 1439
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        23: goto 27
        24: .line 1440
      StackMap locals: org.hsqldb.QuerySpecification org.hsqldb.lib.HsqlList org.hsqldb.lib.OrderedHashSet int
      StackMap stack:
            aload 1 /* unresolvedSet */
            iload 3 /* i */
            invokeinterface org.hsqldb.lib.HsqlList.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.Expression
            astore 4 /* e */
        start local 4 // org.hsqldb.Expression e
        25: .line 1442
            aload 4 /* e */
            aload 2 /* set */
            invokevirtual org.hsqldb.Expression.getUnkeyedColumns:(Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 2 /* set */
        end local 4 // org.hsqldb.Expression e
        26: .line 1439
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        27: iload 3 /* i */
            aload 1 /* unresolvedSet */
            invokeinterface org.hsqldb.lib.HsqlList.size:()I
            if_icmplt 24
        end local 3 // int i
        28: .line 1445
            aload 2 /* set */
            ifnonnull 29
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        29: iconst_0
            ireturn
        end local 2 // org.hsqldb.lib.OrderedHashSet set
        end local 1 // org.hsqldb.lib.HsqlList unresolvedSet
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   30     0           this  Lorg/hsqldb/QuerySpecification;
            0   30     1  unresolvedSet  Lorg/hsqldb/lib/HsqlList;
            1   10     2              i  I
            3    7     3              e  Lorg/hsqldb/Expression;
            5    7     4          range  Lorg/hsqldb/RangeVariable;
            6    7     5       colIndex  I
           11   21     2              i  I
           13   19     3          range  Lorg/hsqldb/RangeVariable;
           22   30     2            set  Lorg/hsqldb/lib/OrderedHashSet;
           23   28     3              i  I
           25   26     4              e  Lorg/hsqldb/Expression;
    MethodParameters:
               Name  Flags
      unresolvedSet  

  org.hsqldb.result.Result getResult(org.hsqldb.Session, int);
    descriptor: (Lorg/hsqldb/Session;I)Lorg/hsqldb/result/Result;
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
        start local 2 // int maxrows
         0: .line 1458
            aload 0 /* this */
            aload 1 /* session */
            iload 2 /* maxrows */
            invokevirtual org.hsqldb.QuerySpecification.getSingleResult:(Lorg/hsqldb/Session;I)Lorg/hsqldb/result/Result;
            astore 3 /* r */
        start local 3 // org.hsqldb.result.Result r
         1: .line 1460
            aload 3 /* r */
            invokevirtual org.hsqldb.result.Result.getNavigator:()Lorg/hsqldb/navigator/RowSetNavigator;
            invokevirtual org.hsqldb.navigator.RowSetNavigator.reset:()V
         2: .line 1462
            aload 3 /* r */
            areturn
        end local 3 // org.hsqldb.result.Result r
        end local 2 // int maxrows
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/hsqldb/QuerySpecification;
            0    3     1  session  Lorg/hsqldb/Session;
            0    3     2  maxrows  I
            1    3     3        r  Lorg/hsqldb/result/Result;
    MethodParameters:
         Name  Flags
      session  
      maxrows  

  private org.hsqldb.result.Result getSingleResult(org.hsqldb.Session, int);
    descriptor: (Lorg/hsqldb/Session;I)Lorg/hsqldb/result/Result;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
        start local 2 // int maxRows
         0: .line 1467
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            aload 1 /* session */
            aload 0 /* this */
            iload 2 /* maxRows */
            invokevirtual org.hsqldb.SortAndSlice.getLimits:(Lorg/hsqldb/Session;Lorg/hsqldb/QueryExpression;I)[I
            astore 3 /* limits */
        start local 3 // int[] limits
         1: .line 1468
            aload 0 /* this */
            aload 1 /* session */
            aload 3 /* limits */
            invokevirtual org.hsqldb.QuerySpecification.buildResult:(Lorg/hsqldb/Session;[I)Lorg/hsqldb/result/Result;
            astore 4 /* r */
        start local 4 // org.hsqldb.result.Result r
         2: .line 1469
            aload 4 /* r */
            invokevirtual org.hsqldb.result.Result.getNavigator:()Lorg/hsqldb/navigator/RowSetNavigator;
            checkcast org.hsqldb.navigator.RowSetNavigatorData
            astore 5 /* navigator */
        start local 5 // org.hsqldb.navigator.RowSetNavigatorData navigator
         3: .line 1471
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isDistinctSelect:Z
            ifeq 5
         4: .line 1472
            aload 5 /* navigator */
            aload 1 /* session */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.removeDuplicates:(Lorg/hsqldb/Session;)V
         5: .line 1475
      StackMap locals: int[] org.hsqldb.result.Result org.hsqldb.navigator.RowSetNavigatorData
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            invokevirtual org.hsqldb.SortAndSlice.hasOrder:()Z
            ifeq 7
         6: .line 1476
            aload 5 /* navigator */
            aload 1 /* session */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.sortOrder:(Lorg/hsqldb/Session;)V
         7: .line 1479
      StackMap locals:
      StackMap stack:
            aload 3 /* limits */
            getstatic org.hsqldb.SortAndSlice.defaultLimits:[I
            if_acmpeq 10
         8: .line 1480
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            getfield org.hsqldb.SortAndSlice.skipFullResult:Z
            ifne 10
         9: .line 1481
            aload 5 /* navigator */
            aload 3 /* limits */
            iconst_0
            iaload
            aload 3 /* limits */
            iconst_1
            iaload
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.trim:(II)V
        10: .line 1484
      StackMap locals:
      StackMap stack:
            aload 4 /* r */
            areturn
        end local 5 // org.hsqldb.navigator.RowSetNavigatorData navigator
        end local 4 // org.hsqldb.result.Result r
        end local 3 // int[] limits
        end local 2 // int maxRows
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0       this  Lorg/hsqldb/QuerySpecification;
            0   11     1    session  Lorg/hsqldb/Session;
            0   11     2    maxRows  I
            1   11     3     limits  [I
            2   11     4          r  Lorg/hsqldb/result/Result;
            3   11     5  navigator  Lorg/hsqldb/navigator/RowSetNavigatorData;
    MethodParameters:
         Name  Flags
      session  
      maxRows  

  private org.hsqldb.result.Result buildResult(org.hsqldb.Session, int[]);
    descriptor: (Lorg/hsqldb/Session;[I)Lorg/hsqldb/result/Result;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=15, args_size=3
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
        start local 2 // int[] limits
         0: .line 1489
            new org.hsqldb.navigator.RowSetNavigatorData
            dup
            aload 1 /* session */
            aload 0 /* this */
            invokespecial org.hsqldb.navigator.RowSetNavigatorData.<init>:(Lorg/hsqldb/Session;Lorg/hsqldb/QuerySpecification;)V
            astore 3 /* navigator */
        start local 3 // org.hsqldb.navigator.RowSetNavigatorData navigator
         1: .line 1490
            aload 3 /* navigator */
            invokestatic org.hsqldb.result.Result.newResult:(Lorg/hsqldb/navigator/RowSetNavigator;)Lorg/hsqldb/result/Result;
            astore 4 /* result */
        start local 4 // org.hsqldb.result.Result result
         2: .line 1491
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isGrouped:Z
            ifeq 3
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isSimpleDistinct:Z
            ifne 3
            iconst_1
            goto 4
      StackMap locals: org.hsqldb.navigator.RowSetNavigatorData org.hsqldb.result.Result
      StackMap stack:
         3: iconst_0
      StackMap locals:
      StackMap stack: int
         4: istore 5 /* resultGrouped */
        start local 5 // boolean resultGrouped
         5: .line 1493
            aload 4 /* result */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resultMetaData:Lorg/hsqldb/result/ResultMetaData;
            putfield org.hsqldb.result.Result.metaData:Lorg/hsqldb/result/ResultMetaData;
         6: .line 1495
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isUpdatable:Z
            ifeq 8
         7: .line 1496
            aload 4 /* result */
            bipush 8
            putfield org.hsqldb.result.Result.rsProperties:I
         8: .line 1499
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 6 /* skipCount */
        start local 6 // int skipCount
         9: .line 1500
            aload 2 /* limits */
            iconst_2
            iaload
            istore 7 /* limitCount */
        start local 7 // int limitCount
        10: .line 1502
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            getfield org.hsqldb.SortAndSlice.skipFullResult:Z
            ifeq 13
        11: .line 1503
            aload 2 /* limits */
            iconst_0
            iaload
            istore 6 /* skipCount */
        12: .line 1504
            aload 2 /* limits */
            iconst_1
            iaload
            istore 7 /* limitCount */
        13: .line 1507
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isSimpleCount:Z
            ifeq 32
        14: .line 1508
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitData:I
            anewarray java.lang.Object
            astore 8 /* data */
        start local 8 // java.lang.Object[] data
        15: .line 1509
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iconst_0
            aaload
            invokevirtual org.hsqldb.RangeVariable.getTable:()Lorg/hsqldb/Table;
            astore 9 /* table */
        start local 9 // org.hsqldb.Table table
        16: .line 1511
            aload 9 /* table */
            aload 1 /* session */
            invokevirtual org.hsqldb.Table.materialise:(Lorg/hsqldb/Session;)V
        17: .line 1513
            aload 9 /* table */
            aload 1 /* session */
            invokevirtual org.hsqldb.Table.getRowStore:(Lorg/hsqldb/Session;)Lorg/hsqldb/persist/PersistentStore;
            astore 10 /* store */
        start local 10 // org.hsqldb.persist.PersistentStore store
        18: .line 1514
            aload 10 /* store */
            aload 1 /* session */
            invokeinterface org.hsqldb.persist.PersistentStore.elementCount:(Lorg/hsqldb/Session;)J
            lstore 11 /* count */
        start local 11 // long count
        19: .line 1516
            aload 8 /* data */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartAggregates:I
            lload 11 /* count */
            invokestatic org.hsqldb.map.ValuePool.getLong:(J)Ljava/lang/Long;
            aastore
        20: .line 1518
            aload 3 /* navigator */
            aload 8 /* data */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.add:([Ljava/lang/Object;)V
        21: .line 1519
            aload 3 /* navigator */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.reset:()V
        22: .line 1520
            aload 1 /* session */
            getfield org.hsqldb.Session.sessionContext:Lorg/hsqldb/SessionContext;
            aload 3 /* navigator */
            invokevirtual org.hsqldb.SessionContext.setRangeIterator:(Lorg/hsqldb/navigator/RangeIterator;)V
        23: .line 1522
            aload 3 /* navigator */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.next:()Z
            ifeq 30
        24: .line 1523
            aload 3 /* navigator */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.getCurrent:()[Ljava/lang/Object;
            astore 8 /* data */
        25: .line 1525
            iconst_0
            istore 13 /* i */
        start local 13 // int i
        26: goto 29
        27: .line 1526
      StackMap locals: org.hsqldb.QuerySpecification org.hsqldb.Session int[] org.hsqldb.navigator.RowSetNavigatorData org.hsqldb.result.Result int int int java.lang.Object[] org.hsqldb.Table org.hsqldb.persist.PersistentStore long int
      StackMap stack:
            aload 8 /* data */
            iload 13 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 13 /* i */
            aaload
            aload 1 /* session */
            invokevirtual org.hsqldb.Expression.getValue:(Lorg/hsqldb/Session;)Ljava/lang/Object;
            aastore
        28: .line 1525
            iinc 13 /* i */ 1
      StackMap locals:
      StackMap stack:
        29: iload 13 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartAggregates:I
            if_icmplt 27
        end local 13 // int i
        30: .line 1530
      StackMap locals:
      StackMap stack:
            aload 1 /* session */
            getfield org.hsqldb.Session.sessionContext:Lorg/hsqldb/SessionContext;
            aload 3 /* navigator */
            invokevirtual org.hsqldb.SessionContext.unsetRangeIterator:(Lorg/hsqldb/navigator/RangeIterator;)V
        31: .line 1532
            aload 4 /* result */
            areturn
        end local 11 // long count
        end local 10 // org.hsqldb.persist.PersistentStore store
        end local 9 // org.hsqldb.Table table
        end local 8 // java.lang.Object[] data
        32: .line 1535
      StackMap locals: org.hsqldb.QuerySpecification org.hsqldb.Session int[] org.hsqldb.navigator.RowSetNavigatorData org.hsqldb.result.Result int int int
      StackMap stack:
            iconst_0
            istore 8 /* fullJoinIndex */
        start local 8 // int fullJoinIndex
        33: .line 1537
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            anewarray org.hsqldb.navigator.RangeIterator
        34: .line 1536
            astore 9 /* rangeIterators */
        start local 9 // org.hsqldb.navigator.RangeIterator[] rangeIterators
        35: .line 1539
            iconst_0
            istore 10 /* i */
        start local 10 // int i
        36: goto 39
        37: .line 1540
      StackMap locals: int org.hsqldb.navigator.RangeIterator[] int
      StackMap stack:
            aload 9 /* rangeIterators */
            iload 10 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iload 10 /* i */
            aaload
            aload 1 /* session */
            invokevirtual org.hsqldb.RangeVariable.getIterator:(Lorg/hsqldb/Session;)Lorg/hsqldb/RangeVariable$RangeIteratorMain;
            aastore
        38: .line 1539
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        39: iload 10 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            if_icmplt 37
        end local 10 // int i
        40: .line 1543
            aload 1 /* session */
            getfield org.hsqldb.Session.sessionContext:Lorg/hsqldb/SessionContext;
            iconst_1
            putfield org.hsqldb.SessionContext.rownum:I
        41: .line 1545
            iconst_0
            istore 10 /* currentIndex */
        start local 10 // int currentIndex
        42: .line 1546
      StackMap locals:
      StackMap stack:
            iload 10 /* currentIndex */
            iload 8 /* fullJoinIndex */
            if_icmpge 57
        43: .line 1550
            iconst_1
            istore 11 /* end */
        start local 11 // boolean end
        44: .line 1552
            iload 8 /* fullJoinIndex */
            iconst_1
            iadd
            istore 12 /* i */
        start local 12 // int i
        45: goto 54
        46: .line 1554
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iload 12 /* i */
            aaload
            getfield org.hsqldb.RangeVariable.isRightJoin:Z
            ifeq 53
        47: .line 1555
            iload 12 /* i */
            istore 8 /* fullJoinIndex */
        48: .line 1556
            iload 12 /* i */
            istore 10 /* currentIndex */
        49: .line 1557
            iconst_0
            istore 11 /* end */
        50: .line 1559
            aload 9 /* rangeIterators */
            iload 12 /* i */
            aaload
            checkcast org.hsqldb.RangeVariable$RangeIteratorRight
        51: .line 1560
            invokevirtual org.hsqldb.RangeVariable$RangeIteratorRight.setOnOuterRows:()V
        52: .line 1562
            goto 55
        53: .line 1553
      StackMap locals:
      StackMap stack:
            iinc 12 /* i */ 1
        54: .line 1552
      StackMap locals:
      StackMap stack:
            iload 12 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            if_icmplt 46
        end local 12 // int i
        55: .line 1566
      StackMap locals:
      StackMap stack:
            iload 11 /* end */
            ifeq 57
        56: .line 1567
            goto 123
        end local 11 // boolean end
        57: .line 1571
      StackMap locals:
      StackMap stack:
            aload 9 /* rangeIterators */
            iload 10 /* currentIndex */
            aaload
            astore 11 /* it */
        start local 11 // org.hsqldb.navigator.RangeIterator it
        58: .line 1573
            aload 11 /* it */
            invokeinterface org.hsqldb.navigator.RangeIterator.next:()Z
            ifeq 62
        59: .line 1574
            iload 10 /* currentIndex */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            iconst_1
            isub
            if_icmpge 65
        60: .line 1575
            iinc 10 /* currentIndex */ 1
        61: .line 1577
            goto 42
        62: .line 1580
      StackMap locals: org.hsqldb.navigator.RangeIterator
      StackMap stack:
            aload 11 /* it */
            invokeinterface org.hsqldb.navigator.RangeIterator.reset:()V
        63: .line 1582
            iinc 10 /* currentIndex */ -1
        64: .line 1584
            goto 42
        65: .line 1587
      StackMap locals:
      StackMap stack:
            iload 7 /* limitCount */
            ifne 67
        66: .line 1588
            goto 123
        67: .line 1591
      StackMap locals:
      StackMap stack:
            aload 1 /* session */
            getfield org.hsqldb.Session.sessionData:Lorg/hsqldb/SessionData;
            invokevirtual org.hsqldb.SessionData.startRowProcessing:()V
        68: .line 1593
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitData:I
            anewarray java.lang.Object
            astore 12 /* data */
        start local 12 // java.lang.Object[] data
        69: .line 1595
            iconst_0
            istore 13 /* i */
        start local 13 // int i
        70: goto 75
        71: .line 1596
      StackMap locals: java.lang.Object[] int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isAggregated:Z
            ifeq 73
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.aggregateCheck:[Z
            iload 13 /* i */
            baload
            ifeq 73
        72: .line 1597
            goto 74
        73: .line 1599
      StackMap locals:
      StackMap stack:
            aload 12 /* data */
            iload 13 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 13 /* i */
            aaload
            aload 1 /* session */
            invokevirtual org.hsqldb.Expression.getValue:(Lorg/hsqldb/Session;)Ljava/lang/Object;
            aastore
        74: .line 1595
      StackMap locals:
      StackMap stack:
            iinc 13 /* i */ 1
      StackMap locals:
      StackMap stack:
        75: iload 13 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartAggregates:I
            if_icmplt 71
        end local 13 // int i
        76: .line 1603
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            istore 13 /* i */
        start local 13 // int i
        77: goto 83
        78: .line 1604
      StackMap locals:
      StackMap stack:
            iload 13 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            if_icmpne 81
        79: .line 1605
            aload 12 /* data */
            iload 13 /* i */
            aload 11 /* it */
            invokeinterface org.hsqldb.navigator.RangeIterator.getRowId:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
        80: .line 1606
            goto 82
        81: .line 1607
      StackMap locals:
      StackMap stack:
            aload 12 /* data */
            iload 13 /* i */
            aload 11 /* it */
            invokeinterface org.hsqldb.navigator.RangeIterator.getCurrentRow:()Lorg/hsqldb/Row;
            aastore
        82: .line 1603
      StackMap locals:
      StackMap stack:
            iinc 13 /* i */ 1
      StackMap locals:
      StackMap stack:
        83: iload 13 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitRowId:I
            if_icmplt 78
        end local 13 // int i
        84: .line 1611
            aload 1 /* session */
            getfield org.hsqldb.Session.sessionContext:Lorg/hsqldb/SessionContext;
            dup
            getfield org.hsqldb.SessionContext.rownum:I
            iconst_1
            iadd
            putfield org.hsqldb.SessionContext.rownum:I
        85: .line 1613
            iload 6 /* skipCount */
            ifle 88
        86: .line 1614
            iinc 6 /* skipCount */ -1
        87: .line 1616
            goto 42
        88: .line 1619
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 13 /* groupData */
        start local 13 // java.lang.Object[] groupData
        89: .line 1621
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isAggregated:Z
            ifne 90
            iload 5 /* resultGrouped */
            ifeq 93
        90: .line 1622
      StackMap locals: java.lang.Object[]
      StackMap stack:
            aload 3 /* navigator */
            aload 12 /* data */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.getGroupData:([Ljava/lang/Object;)[Ljava/lang/Object;
            astore 13 /* groupData */
        91: .line 1624
            aload 13 /* groupData */
            ifnull 93
        92: .line 1625
            aload 13 /* groupData */
            astore 12 /* data */
        93: .line 1629
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartAggregates:I
            istore 14 /* i */
        start local 14 // int i
        94: goto 99
        95: .line 1631
      StackMap locals: int
      StackMap stack:
            aload 12 /* data */
            iload 14 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 14 /* i */
            aaload
            aload 1 /* session */
        96: .line 1632
            aload 12 /* data */
            iload 14 /* i */
            aaload
            checkcast org.hsqldb.SetFunction
        97: .line 1631
            invokevirtual org.hsqldb.Expression.updateAggregatingValue:(Lorg/hsqldb/Session;Lorg/hsqldb/SetFunction;)Lorg/hsqldb/SetFunction;
            aastore
        98: .line 1630
            iinc 14 /* i */ 1
        99: .line 1629
      StackMap locals:
      StackMap stack:
            iload 14 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitExpressions:I
            if_icmplt 95
        end local 14 // int i
       100: .line 1635
            aload 13 /* groupData */
            ifnonnull 110
       101: .line 1636
            aload 3 /* navigator */
            aload 12 /* data */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.add:([Ljava/lang/Object;)V
       102: .line 1638
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isSimpleDistinct:Z
            ifeq 112
       103: .line 1639
            iconst_1
            istore 14 /* i */
        start local 14 // int i
       104: goto 107
       105: .line 1640
      StackMap locals:
      StackMap stack:
            aload 9 /* rangeIterators */
            iload 14 /* i */
            aaload
            invokeinterface org.hsqldb.navigator.RangeIterator.reset:()V
       106: .line 1639
            iinc 14 /* i */ 1
      StackMap locals:
      StackMap stack:
       107: iload 14 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            if_icmplt 105
        end local 14 // int i
       108: .line 1643
            iconst_0
            istore 10 /* currentIndex */
       109: .line 1645
            goto 112
      StackMap locals:
      StackMap stack:
       110: aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isAggregated:Z
            ifeq 112
       111: .line 1646
            aload 3 /* navigator */
            aload 13 /* groupData */
            aload 12 /* data */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.update:([Ljava/lang/Object;[Ljava/lang/Object;)V
       112: .line 1649
      StackMap locals:
      StackMap stack:
            aload 3 /* navigator */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.getSize:()I
            istore 14 /* rowCount */
        start local 14 // int rowCount
       113: .line 1651
            iload 14 /* rowCount */
            aload 1 /* session */
            getfield org.hsqldb.Session.resultMaxMemoryRows:I
            if_icmpne 119
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isAggregated:Z
            ifne 119
       114: .line 1652
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isSingleMemoryTable:Z
            ifne 119
       115: .line 1653
            new org.hsqldb.navigator.RowSetNavigatorDataTable
            dup
            aload 1 /* session */
            aload 0 /* this */
       116: .line 1654
            aload 3 /* navigator */
       117: .line 1653
            invokespecial org.hsqldb.navigator.RowSetNavigatorDataTable.<init>:(Lorg/hsqldb/Session;Lorg/hsqldb/QuerySpecification;Lorg/hsqldb/navigator/RowSetNavigatorData;)V
            astore 3 /* navigator */
       118: .line 1656
            aload 4 /* result */
            aload 3 /* navigator */
            invokevirtual org.hsqldb.result.Result.setNavigator:(Lorg/hsqldb/navigator/RowSetNavigator;)V
       119: .line 1659
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isAggregated:Z
            ifne 120
            iload 5 /* resultGrouped */
            ifeq 122
       120: .line 1660
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            getfield org.hsqldb.SortAndSlice.isGenerated:Z
            ifne 122
       121: .line 1661
            goto 42
       122: .line 1665
      StackMap locals:
      StackMap stack:
            iload 14 /* rowCount */
            iload 7 /* limitCount */
            if_icmplt 42
        end local 14 // int rowCount
        end local 13 // java.lang.Object[] groupData
        end local 12 // java.lang.Object[] data
        end local 11 // org.hsqldb.navigator.RangeIterator it
        end local 10 // int currentIndex
       123: .line 1670
      StackMap locals: org.hsqldb.QuerySpecification org.hsqldb.Session int[] org.hsqldb.navigator.RowSetNavigatorData org.hsqldb.result.Result int int int int org.hsqldb.navigator.RangeIterator[]
      StackMap stack:
            aload 3 /* navigator */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.reset:()V
       124: .line 1672
            iconst_0
            istore 10 /* i */
        start local 10 // int i
       125: goto 128
       126: .line 1673
      StackMap locals: int
      StackMap stack:
            aload 9 /* rangeIterators */
            iload 10 /* i */
            aaload
            invokeinterface org.hsqldb.navigator.RangeIterator.reset:()V
       127: .line 1672
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
       128: iload 10 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            if_icmplt 126
        end local 10 // int i
       129: .line 1676
            iload 5 /* resultGrouped */
            ifne 131
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isAggregated:Z
            ifne 131
       130: .line 1677
            aload 4 /* result */
            areturn
       131: .line 1680
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isAggregated:Z
            ifeq 160
       132: .line 1681
            iload 5 /* resultGrouped */
            ifne 141
            aload 3 /* navigator */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.getSize:()I
            ifne 141
       133: .line 1682
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            arraylength
            anewarray java.lang.Object
            astore 10 /* data */
        start local 10 // java.lang.Object[] data
       134: .line 1684
            iconst_0
            istore 11 /* i */
        start local 11 // int i
       135: goto 139
       136: .line 1685
      StackMap locals: java.lang.Object[] int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.aggregateCheck:[Z
            iload 11 /* i */
            baload
            ifne 138
       137: .line 1686
            aload 10 /* data */
            iload 11 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 11 /* i */
            aaload
            aload 1 /* session */
            invokevirtual org.hsqldb.Expression.getValue:(Lorg/hsqldb/Session;)Ljava/lang/Object;
            aastore
       138: .line 1684
      StackMap locals:
      StackMap stack:
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
       139: iload 11 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartAggregates:I
            if_icmplt 136
        end local 11 // int i
       140: .line 1690
            aload 3 /* navigator */
            aload 10 /* data */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.add:([Ljava/lang/Object;)V
        end local 10 // java.lang.Object[] data
       141: .line 1693
      StackMap locals:
      StackMap stack:
            aload 3 /* navigator */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.reset:()V
       142: .line 1694
            aload 1 /* session */
            getfield org.hsqldb.Session.sessionContext:Lorg/hsqldb/SessionContext;
            aload 3 /* navigator */
            invokevirtual org.hsqldb.SessionContext.setRangeIterator:(Lorg/hsqldb/navigator/RangeIterator;)V
       143: .line 1696
            goto 158
       144: .line 1697
      StackMap locals:
      StackMap stack:
            aload 3 /* navigator */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.getCurrent:()[Ljava/lang/Object;
            astore 10 /* data */
        start local 10 // java.lang.Object[] data
       145: .line 1699
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartAggregates:I
            istore 11 /* i */
        start local 11 // int i
       146: goto 151
       147: .line 1701
      StackMap locals: java.lang.Object[] int
      StackMap stack:
            aload 10 /* data */
            iload 11 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 11 /* i */
            aaload
            aload 1 /* session */
       148: .line 1702
            aload 10 /* data */
            iload 11 /* i */
            aaload
            checkcast org.hsqldb.SetFunction
       149: .line 1701
            invokevirtual org.hsqldb.Expression.getAggregatedValue:(Lorg/hsqldb/Session;Lorg/hsqldb/SetFunction;)Ljava/lang/Object;
            aastore
       150: .line 1700
            iinc 11 /* i */ 1
       151: .line 1699
      StackMap locals:
      StackMap stack:
            iload 11 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitExpressions:I
            if_icmplt 147
        end local 11 // int i
       152: .line 1705
            iconst_0
            istore 11 /* i */
        start local 11 // int i
       153: goto 157
       154: .line 1706
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.aggregateCheck:[Z
            iload 11 /* i */
            baload
            ifeq 156
       155: .line 1707
            aload 10 /* data */
            iload 11 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 11 /* i */
            aaload
            aload 1 /* session */
            invokevirtual org.hsqldb.Expression.getValue:(Lorg/hsqldb/Session;)Ljava/lang/Object;
            aastore
       156: .line 1705
      StackMap locals:
      StackMap stack:
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
       157: iload 11 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartAggregates:I
            if_icmplt 154
        end local 11 // int i
        end local 10 // java.lang.Object[] data
       158: .line 1696
      StackMap locals:
      StackMap stack:
            aload 3 /* navigator */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.next:()Z
            ifne 144
       159: .line 1712
            aload 1 /* session */
            getfield org.hsqldb.Session.sessionContext:Lorg/hsqldb/SessionContext;
            aload 3 /* navigator */
            invokevirtual org.hsqldb.SessionContext.unsetRangeIterator:(Lorg/hsqldb/navigator/RangeIterator;)V
       160: .line 1715
      StackMap locals:
      StackMap stack:
            aload 3 /* navigator */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.reset:()V
       161: .line 1717
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
            ifnull 171
       162: .line 1718
            goto 169
       163: .line 1719
      StackMap locals:
      StackMap stack:
            aload 3 /* navigator */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.getCurrent:()[Ljava/lang/Object;
            astore 10 /* data */
        start local 10 // java.lang.Object[] data
       164: .line 1721
            getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
       165: .line 1722
            aload 10 /* data */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.groupByColumnCount:I
            iadd
            aaload
       166: .line 1721
            invokevirtual java.lang.Boolean.equals:(Ljava/lang/Object;)Z
       167: .line 1722
            ifne 169
       168: .line 1723
            aload 3 /* navigator */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.removeCurrent:()V
        end local 10 // java.lang.Object[] data
       169: .line 1718
      StackMap locals:
      StackMap stack:
            aload 3 /* navigator */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.next:()Z
            ifne 163
       170: .line 1727
            aload 3 /* navigator */
            invokevirtual org.hsqldb.navigator.RowSetNavigatorData.reset:()V
       171: .line 1730
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            areturn
        end local 9 // org.hsqldb.navigator.RangeIterator[] rangeIterators
        end local 8 // int fullJoinIndex
        end local 7 // int limitCount
        end local 6 // int skipCount
        end local 5 // boolean resultGrouped
        end local 4 // org.hsqldb.result.Result result
        end local 3 // org.hsqldb.navigator.RowSetNavigatorData navigator
        end local 2 // int[] limits
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0  172     0            this  Lorg/hsqldb/QuerySpecification;
            0  172     1         session  Lorg/hsqldb/Session;
            0  172     2          limits  [I
            1  172     3       navigator  Lorg/hsqldb/navigator/RowSetNavigatorData;
            2  172     4          result  Lorg/hsqldb/result/Result;
            5  172     5   resultGrouped  Z
            9  172     6       skipCount  I
           10  172     7      limitCount  I
           15   32     8            data  [Ljava/lang/Object;
           16   32     9           table  Lorg/hsqldb/Table;
           18   32    10           store  Lorg/hsqldb/persist/PersistentStore;
           19   32    11           count  J
           26   30    13               i  I
           33  172     8   fullJoinIndex  I
           35  172     9  rangeIterators  [Lorg/hsqldb/navigator/RangeIterator;
           36   40    10               i  I
           42  123    10    currentIndex  I
           44   57    11             end  Z
           45   55    12               i  I
           58  123    11              it  Lorg/hsqldb/navigator/RangeIterator;
           69  123    12            data  [Ljava/lang/Object;
           70   76    13               i  I
           77   84    13               i  I
           89  123    13       groupData  [Ljava/lang/Object;
           94  100    14               i  I
          104  108    14               i  I
          113  123    14        rowCount  I
          125  129    10               i  I
          134  141    10            data  [Ljava/lang/Object;
          135  140    11               i  I
          145  158    10            data  [Ljava/lang/Object;
          146  152    11               i  I
          153  158    11               i  I
          164  169    10            data  [Ljava/lang/Object;
    MethodParameters:
         Name  Flags
      session  
      limits   

  void setReferenceableColumns();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=6, args_size=1
        start local 0 // org.hsqldb.QuerySpecification this
         0: .line 1735
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            newarray 4
            putfield org.hsqldb.QuerySpecification.accessibleColumns:[Z
         1: .line 1737
            new org.hsqldb.lib.IntValueHashMap
            dup
            invokespecial org.hsqldb.lib.IntValueHashMap.<init>:()V
            astore 1 /* aliases */
        start local 1 // org.hsqldb.lib.IntValueHashMap aliases
         2: .line 1739
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: goto 17
         4: .line 1740
      StackMap locals: org.hsqldb.lib.IntValueHashMap int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            astore 3 /* expression */
        start local 3 // org.hsqldb.Expression expression
         5: .line 1741
            aload 3 /* expression */
            invokevirtual org.hsqldb.Expression.getAlias:()Ljava/lang/String;
            astore 4 /* alias */
        start local 4 // java.lang.String alias
         6: .line 1743
            aload 4 /* alias */
            invokevirtual java.lang.String.length:()I
            ifne 10
         7: .line 1744
            iload 2 /* i */
            invokestatic org.hsqldb.HsqlNameManager.getAutoColumnName:(I)Lorg/hsqldb/HsqlNameManager$HsqlName;
            astore 5 /* name */
        start local 5 // org.hsqldb.HsqlNameManager$SimpleName name
         8: .line 1746
            aload 3 /* expression */
            aload 5 /* name */
            invokevirtual org.hsqldb.Expression.setAlias:(Lorg/hsqldb/HsqlNameManager$SimpleName;)V
         9: .line 1748
            goto 16
        end local 5 // org.hsqldb.HsqlNameManager$SimpleName name
        10: .line 1751
      StackMap locals: org.hsqldb.Expression java.lang.String
      StackMap stack:
            aload 1 /* aliases */
            aload 4 /* alias */
            iconst_m1
            invokevirtual org.hsqldb.lib.IntValueHashMap.get:(Ljava/lang/Object;I)I
            istore 5 /* index */
        start local 5 // int index
        11: .line 1753
            iload 5 /* index */
            iconst_m1
            if_icmpne 15
        12: .line 1754
            aload 1 /* aliases */
            aload 4 /* alias */
            iload 2 /* i */
            invokevirtual org.hsqldb.lib.IntValueHashMap.put:(Ljava/lang/Object;I)Z
            pop
        13: .line 1756
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.accessibleColumns:[Z
            iload 2 /* i */
            iconst_1
            bastore
        14: .line 1757
            goto 16
        15: .line 1758
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.accessibleColumns:[Z
            iload 5 /* index */
            iconst_0
            bastore
        end local 5 // int index
        end local 4 // java.lang.String alias
        end local 3 // org.hsqldb.Expression expression
        16: .line 1739
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        17: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            if_icmplt 4
        end local 2 // int i
        18: .line 1761
            return
        end local 1 // org.hsqldb.lib.IntValueHashMap aliases
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   19     0        this  Lorg/hsqldb/QuerySpecification;
            2   19     1     aliases  Lorg/hsqldb/lib/IntValueHashMap;
            3   18     2           i  I
            5   16     3  expression  Lorg/hsqldb/Expression;
            6   16     4       alias  Ljava/lang/String;
            8   10     5        name  Lorg/hsqldb/HsqlNameManager$SimpleName;
           11   16     5       index  I

  void setColumnAliases(org.hsqldb.HsqlNameManager$SimpleName[]);
    descriptor: ([Lorg/hsqldb/HsqlNameManager$SimpleName;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.HsqlNameManager$SimpleName[] names
         0: .line 1765
            aload 1 /* names */
            arraylength
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            if_icmpeq 2
         1: .line 1766
            sipush 5593
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
         2: .line 1769
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: goto 6
         4: .line 1770
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            aload 1 /* names */
            iload 2 /* i */
            aaload
            invokevirtual org.hsqldb.Expression.setAlias:(Lorg/hsqldb/HsqlNameManager$SimpleName;)V
         5: .line 1769
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            if_icmplt 4
        end local 2 // int i
         7: .line 1772
            return
        end local 1 // org.hsqldb.HsqlNameManager$SimpleName[] names
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lorg/hsqldb/QuerySpecification;
            0    8     1  names  [Lorg/hsqldb/HsqlNameManager$SimpleName;
            3    7     2      i  I
    MethodParameters:
       Name  Flags
      names  

  private void createResultMetaData(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
         0: .line 1776
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resultColumnTypes:[Lorg/hsqldb/types/Type;
         1: .line 1777
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.columnMap:[I
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitRowId:I
         2: .line 1776
            invokestatic org.hsqldb.result.ResultMetaData.newResultMetaData:([Lorg/hsqldb/types/Type;[III)Lorg/hsqldb/result/ResultMetaData;
            putfield org.hsqldb.QuerySpecification.resultMetaData:Lorg/hsqldb/result/ResultMetaData;
         3: .line 1779
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         4: goto 19
         5: .line 1780
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            astore 3 /* e */
        start local 3 // org.hsqldb.Expression e
         6: .line 1781
            aconst_null
            astore 4 /* tableColumn */
        start local 4 // org.hsqldb.ColumnSchema tableColumn
         7: .line 1784
            aload 3 /* e */
            invokevirtual org.hsqldb.Expression.getColumn:()Lorg/hsqldb/ColumnSchema;
            astore 4 /* tableColumn */
         8: .line 1785
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resultMetaData:Lorg/hsqldb/result/ResultMetaData;
            getfield org.hsqldb.result.ResultMetaData.columnTypes:[Lorg/hsqldb/types/Type;
            iload 2 /* i */
            aload 3 /* e */
            invokevirtual org.hsqldb.Expression.getDataType:()Lorg/hsqldb/types/Type;
            aastore
         9: .line 1787
            aload 4 /* tableColumn */
            ifnonnull 12
        10: .line 1788
            new org.hsqldb.ColumnBase
            dup
            invokespecial org.hsqldb.ColumnBase.<init>:()V
            astore 5 /* column */
        start local 5 // org.hsqldb.ColumnBase column
        11: .line 1789
            goto 15
        end local 5 // org.hsqldb.ColumnBase column
        12: .line 1790
      StackMap locals: org.hsqldb.Expression org.hsqldb.ColumnSchema
      StackMap stack:
            new org.hsqldb.ColumnBase
            dup
            aload 1 /* session */
            getfield org.hsqldb.Session.database:Lorg/hsqldb/Database;
            invokevirtual org.hsqldb.Database.getCatalogName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            getfield org.hsqldb.HsqlNameManager$HsqlName.name:Ljava/lang/String;
        13: .line 1791
            aload 4 /* tableColumn */
        14: .line 1790
            invokespecial org.hsqldb.ColumnBase.<init>:(Ljava/lang/String;Lorg/hsqldb/ColumnSchema;)V
            astore 5 /* column */
        start local 5 // org.hsqldb.ColumnBase column
        15: .line 1794
      StackMap locals: org.hsqldb.ColumnBase
      StackMap stack:
            aload 5 /* column */
            aload 3 /* e */
            invokevirtual org.hsqldb.Expression.getDataType:()Lorg/hsqldb/types/Type;
            invokevirtual org.hsqldb.ColumnBase.setType:(Lorg/hsqldb/types/Type;)V
        16: .line 1796
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resultMetaData:Lorg/hsqldb/result/ResultMetaData;
            getfield org.hsqldb.result.ResultMetaData.columns:[Lorg/hsqldb/ColumnBase;
            iload 2 /* i */
            aload 5 /* column */
            aastore
        17: .line 1797
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resultMetaData:Lorg/hsqldb/result/ResultMetaData;
            getfield org.hsqldb.result.ResultMetaData.columnLabels:[Ljava/lang/String;
            iload 2 /* i */
            aload 3 /* e */
            invokevirtual org.hsqldb.Expression.getAlias:()Ljava/lang/String;
            aastore
        end local 5 // org.hsqldb.ColumnBase column
        end local 4 // org.hsqldb.ColumnSchema tableColumn
        end local 3 // org.hsqldb.Expression e
        18: .line 1779
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        19: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            if_icmplt 5
        end local 2 // int i
        20: .line 1799
            return
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   21     0         this  Lorg/hsqldb/QuerySpecification;
            0   21     1      session  Lorg/hsqldb/Session;
            4   20     2            i  I
            6   18     3            e  Lorg/hsqldb/Expression;
            7   18     4  tableColumn  Lorg/hsqldb/ColumnSchema;
           11   12     5       column  Lorg/hsqldb/ColumnBase;
           15   18     5       column  Lorg/hsqldb/ColumnBase;
    MethodParameters:
         Name  Flags
      session  

  private void setResultNullability();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // org.hsqldb.QuerySpecification this
         0: .line 1803
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         1: goto 12
         2: .line 1804
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 1 /* i */
            aaload
            astore 2 /* e */
        start local 2 // org.hsqldb.Expression e
         3: .line 1805
            aload 2 /* e */
            invokevirtual org.hsqldb.Expression.getNullability:()B
            istore 3 /* nullability */
        start local 3 // byte nullability
         4: .line 1807
            aload 2 /* e */
            getfield org.hsqldb.Expression.opType:I
            iconst_2
            if_icmpne 10
         5: .line 1808
            aload 2 /* e */
            invokevirtual org.hsqldb.Expression.getRangeVariable:()Lorg/hsqldb/RangeVariable;
            astore 4 /* range */
        start local 4 // org.hsqldb.RangeVariable range
         6: .line 1810
            aload 4 /* range */
            ifnull 10
         7: .line 1811
            aload 4 /* range */
            getfield org.hsqldb.RangeVariable.rangePositionInJoin:I
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.startInnerRange:I
            if_icmplt 9
         8: .line 1812
            aload 4 /* range */
            getfield org.hsqldb.RangeVariable.rangePositionInJoin:I
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.endInnerRange:I
            if_icmplt 10
         9: .line 1816
      StackMap locals: org.hsqldb.Expression int org.hsqldb.RangeVariable
      StackMap stack:
            iconst_1
            istore 3 /* nullability */
        end local 4 // org.hsqldb.RangeVariable range
        10: .line 1821
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resultMetaData:Lorg/hsqldb/result/ResultMetaData;
            getfield org.hsqldb.result.ResultMetaData.columns:[Lorg/hsqldb/ColumnBase;
            iload 1 /* i */
            aaload
            iload 3 /* nullability */
            invokevirtual org.hsqldb.ColumnBase.setNullability:(B)V
        end local 3 // byte nullability
        end local 2 // org.hsqldb.Expression e
        11: .line 1803
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 1 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            if_icmplt 2
        end local 1 // int i
        13: .line 1823
            return
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   14     0         this  Lorg/hsqldb/QuerySpecification;
            1   13     1            i  I
            3   11     2            e  Lorg/hsqldb/Expression;
            4   11     3  nullability  B
            6   10     4        range  Lorg/hsqldb/RangeVariable;

  void createTable(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)V
    flags: (0x0000) 
    Code:
      stack=10, locals=4, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
         0: .line 1827
            aload 0 /* this */
            aload 1 /* session */
            invokevirtual org.hsqldb.QuerySpecification.createResultTable:(Lorg/hsqldb/Session;)V
         1: .line 1829
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resultTable:Lorg/hsqldb/TableBase;
            invokevirtual org.hsqldb.TableBase.getPrimaryIndex:()Lorg/hsqldb/index/Index;
            putfield org.hsqldb.QuerySpecification.mainIndex:Lorg/hsqldb/index/Index;
         2: .line 1831
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            invokevirtual org.hsqldb.SortAndSlice.hasOrder:()Z
            ifeq 4
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            getfield org.hsqldb.SortAndSlice.skipSort:Z
            ifne 4
         3: .line 1832
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            aload 1 /* session */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resultTable:Lorg/hsqldb/TableBase;
            invokevirtual org.hsqldb.SortAndSlice.getNewIndex:(Lorg/hsqldb/Session;Lorg/hsqldb/TableBase;)Lorg/hsqldb/index/Index;
            putfield org.hsqldb.QuerySpecification.orderIndex:Lorg/hsqldb/index/Index;
         4: .line 1835
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isDistinctSelect:Z
            ifne 5
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isFullOrder:Z
            ifeq 6
         5: .line 1836
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* session */
            invokevirtual org.hsqldb.QuerySpecification.createFullIndex:(Lorg/hsqldb/Session;)V
         6: .line 1839
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isGrouped:Z
            ifeq 17
         7: .line 1840
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.groupByColumnCount:I
            newarray 10
            astore 2 /* groupCols */
        start local 2 // int[] groupCols
         8: .line 1842
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         9: goto 12
        10: .line 1843
      StackMap locals: int[] int
      StackMap stack:
            aload 2 /* groupCols */
            iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitRowId:I
            iload 3 /* i */
            iadd
            iastore
        11: .line 1842
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.groupByColumnCount:I
            if_icmplt 10
        end local 3 // int i
        13: .line 1846
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resultTable:Lorg/hsqldb/TableBase;
            aload 1 /* session */
            aconst_null
        14: .line 1847
            aload 2 /* groupCols */
            aconst_null
            aconst_null
            iconst_0
            iconst_0
            iconst_0
        15: .line 1846
            invokevirtual org.hsqldb.TableBase.createAndAddIndexStructure:(Lorg/hsqldb/Session;Lorg/hsqldb/HsqlNameManager$HsqlName;[I[Z[ZZZZ)Lorg/hsqldb/index/Index;
            putfield org.hsqldb.QuerySpecification.groupIndex:Lorg/hsqldb/index/Index;
        end local 2 // int[] groupCols
        16: .line 1848
            goto 19
      StackMap locals:
      StackMap stack:
        17: aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isAggregated:Z
            ifeq 19
        18: .line 1849
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.mainIndex:Lorg/hsqldb/index/Index;
            putfield org.hsqldb.QuerySpecification.groupIndex:Lorg/hsqldb/index/Index;
        19: .line 1852
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isUpdatable:Z
            ifeq 24
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.view:Lorg/hsqldb/View;
            ifnonnull 24
        20: .line 1853
            iconst_1
            newarray 10
            dup
            iconst_0
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            iastore
            astore 2 /* idCols */
        start local 2 // int[] idCols
        21: .line 1855
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resultTable:Lorg/hsqldb/TableBase;
            aload 1 /* session */
            aconst_null
        22: .line 1856
            aload 2 /* idCols */
            aconst_null
            aconst_null
            iconst_0
            iconst_0
            iconst_0
        23: .line 1855
            invokevirtual org.hsqldb.TableBase.createAndAddIndexStructure:(Lorg/hsqldb/Session;Lorg/hsqldb/HsqlNameManager$HsqlName;[I[Z[ZZZZ)Lorg/hsqldb/index/Index;
            putfield org.hsqldb.QuerySpecification.idIndex:Lorg/hsqldb/index/Index;
        end local 2 // int[] idCols
        24: .line 1858
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   25     0       this  Lorg/hsqldb/QuerySpecification;
            0   25     1    session  Lorg/hsqldb/Session;
            8   16     2  groupCols  [I
            9   13     3          i  I
           21   24     2     idCols  [I
    MethodParameters:
         Name  Flags
      session  

  private void createFullIndex(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=3, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
         0: .line 1862
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            newarray 10
            astore 2 /* fullCols */
        start local 2 // int[] fullCols
         1: .line 1864
            aload 2 /* fullCols */
            invokestatic org.hsqldb.lib.ArrayUtil.fillSequence:([I)V
         2: .line 1866
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resultTable:Lorg/hsqldb/TableBase;
            aload 1 /* session */
            aconst_null
         3: .line 1867
            aload 2 /* fullCols */
            aconst_null
            aconst_null
            iconst_0
            iconst_0
            iconst_0
         4: .line 1866
            invokevirtual org.hsqldb.TableBase.createAndAddIndexStructure:(Lorg/hsqldb/Session;Lorg/hsqldb/HsqlNameManager$HsqlName;[I[Z[ZZZZ)Lorg/hsqldb/index/Index;
            putfield org.hsqldb.QuerySpecification.fullIndex:Lorg/hsqldb/index/Index;
         5: .line 1868
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resultTable:Lorg/hsqldb/TableBase;
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.fullIndex:Lorg/hsqldb/index/Index;
            putfield org.hsqldb.TableBase.fullIndex:Lorg/hsqldb/index/Index;
         6: .line 1869
            return
        end local 2 // int[] fullCols
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Lorg/hsqldb/QuerySpecification;
            0    7     1   session  Lorg/hsqldb/Session;
            1    7     2  fullCols  [I
    MethodParameters:
         Name  Flags
      session  

  private void setResultColumnTypes();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // org.hsqldb.QuerySpecification this
         0: .line 1873
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitData:I
            anewarray org.hsqldb.types.Type
            putfield org.hsqldb.QuerySpecification.resultColumnTypes:[Lorg/hsqldb/types/Type;
         1: .line 1875
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         2: goto 6
         3: .line 1876
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 1 /* i */
            aaload
            astore 2 /* e */
        start local 2 // org.hsqldb.Expression e
         4: .line 1878
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resultColumnTypes:[Lorg/hsqldb/types/Type;
            iload 1 /* i */
            aload 2 /* e */
            invokevirtual org.hsqldb.Expression.getDataType:()Lorg/hsqldb/types/Type;
            aastore
        end local 2 // org.hsqldb.Expression e
         5: .line 1875
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 1 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            if_icmplt 3
        end local 1 // int i
         7: .line 1881
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            istore 1 /* i */
        start local 1 // int i
         8: goto 14
         9: .line 1882
      StackMap locals:
      StackMap stack:
            iload 1 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            if_icmpne 12
        10: .line 1883
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resultColumnTypes:[Lorg/hsqldb/types/Type;
            iload 1 /* i */
            getstatic org.hsqldb.types.Type.SQL_BIGINT:Lorg/hsqldb/types/NumberType;
            aastore
        11: .line 1884
            goto 13
        12: .line 1885
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resultColumnTypes:[Lorg/hsqldb/types/Type;
            iload 1 /* i */
            getstatic org.hsqldb.types.Type.SQL_ALL_TYPES:Lorg/hsqldb/types/Type;
            aastore
        13: .line 1881
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 1 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitRowId:I
            if_icmplt 9
        end local 1 // int i
        15: .line 1889
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitRowId:I
            istore 1 /* i */
        start local 1 // int i
        16: goto 23
        17: .line 1890
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 1 /* i */
            aaload
            astore 2 /* e */
        start local 2 // org.hsqldb.Expression e
        18: .line 1891
            aload 2 /* e */
            invokevirtual org.hsqldb.Expression.getDataType:()Lorg/hsqldb/types/Type;
            astore 3 /* type */
        start local 3 // org.hsqldb.types.Type type
        19: .line 1893
            aload 3 /* type */
            invokevirtual org.hsqldb.types.Type.getCollation:()Lorg/hsqldb/types/Collation;
            aload 2 /* e */
            getfield org.hsqldb.Expression.collation:Lorg/hsqldb/types/Collation;
            if_acmpeq 21
            aload 2 /* e */
            getfield org.hsqldb.Expression.collation:Lorg/hsqldb/types/Collation;
            ifnull 21
        20: .line 1894
            aload 3 /* type */
            aload 2 /* e */
            getfield org.hsqldb.Expression.collation:Lorg/hsqldb/types/Collation;
            invokestatic org.hsqldb.types.Type.getType:(Lorg/hsqldb/types/Type;Lorg/hsqldb/types/Collation;)Lorg/hsqldb/types/Type;
            astore 3 /* type */
        21: .line 1897
      StackMap locals: org.hsqldb.Expression org.hsqldb.types.Type
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resultColumnTypes:[Lorg/hsqldb/types/Type;
            iload 1 /* i */
            aload 3 /* type */
            aastore
        end local 3 // org.hsqldb.types.Type type
        end local 2 // org.hsqldb.Expression e
        22: .line 1889
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
        23: iload 1 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitData:I
            if_icmplt 17
        end local 1 // int i
        24: .line 1899
            return
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   25     0  this  Lorg/hsqldb/QuerySpecification;
            2    7     1     i  I
            4    5     2     e  Lorg/hsqldb/Expression;
            8   15     1     i  I
           16   24     1     i  I
           18   22     2     e  Lorg/hsqldb/Expression;
           19   22     3  type  Lorg/hsqldb/types/Type;

  void createResultTable(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)V
    flags: (0x0000) 
    Code:
      stack=9, locals=11, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
         0: .line 1904
            aload 1 /* session */
            getfield org.hsqldb.Session.database:Lorg/hsqldb/Database;
            getfield org.hsqldb.Database.nameManager:Lorg/hsqldb/HsqlNameManager;
            invokevirtual org.hsqldb.HsqlNameManager.getSubqueryTableName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
         1: .line 1903
            astore 2 /* tableName */
        start local 2 // org.hsqldb.HsqlNameManager$HsqlName tableName
         2: .line 1905
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.persistenceScope:I
            bipush 21
            if_icmpne 4
         3: .line 1906
            iconst_2
            goto 5
         4: .line 1907
      StackMap locals: org.hsqldb.HsqlNameManager$HsqlName
      StackMap stack:
            bipush 9
         5: .line 1905
      StackMap locals:
      StackMap stack: int
            istore 3 /* tableType */
        start local 3 // int tableType
         6: .line 1908
            new org.hsqldb.lib.HashMappedList
            dup
            invokespecial org.hsqldb.lib.HashMappedList.<init>:()V
            astore 4 /* columnList */
        start local 4 // org.hsqldb.lib.HashMappedList columnList
         7: .line 1910
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         8: goto 23
         9: .line 1911
      StackMap locals: int org.hsqldb.lib.HashMappedList int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 5 /* i */
            aaload
            astore 6 /* e */
        start local 6 // org.hsqldb.Expression e
        10: .line 1912
            aload 6 /* e */
            invokevirtual org.hsqldb.Expression.getSimpleName:()Lorg/hsqldb/HsqlNameManager$SimpleName;
            astore 7 /* simpleName */
        start local 7 // org.hsqldb.HsqlNameManager$SimpleName simpleName
        11: .line 1913
            aload 7 /* simpleName */
            getfield org.hsqldb.HsqlNameManager$SimpleName.name:Ljava/lang/String;
            astore 8 /* nameString */
        start local 8 // java.lang.String nameString
        12: .line 1915
            aload 1 /* session */
            getfield org.hsqldb.Session.database:Lorg/hsqldb/Database;
            getfield org.hsqldb.Database.nameManager:Lorg/hsqldb/HsqlNameManager;
            aload 2 /* tableName */
        13: .line 1916
            aload 7 /* simpleName */
        14: .line 1915
            invokevirtual org.hsqldb.HsqlNameManager.newColumnSchemaHsqlName:(Lorg/hsqldb/HsqlNameManager$HsqlName;Lorg/hsqldb/HsqlNameManager$SimpleName;)Lorg/hsqldb/HsqlNameManager$HsqlName;
        15: .line 1914
            astore 9 /* name */
        start local 9 // org.hsqldb.HsqlNameManager$HsqlName name
        16: .line 1918
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.accessibleColumns:[Z
            iload 5 /* i */
            baload
            ifne 18
        17: .line 1919
            iload 5 /* i */
            invokestatic org.hsqldb.HsqlNameManager.getAutoNoNameColumnString:(I)Ljava/lang/String;
            astore 8 /* nameString */
        18: .line 1922
      StackMap locals: org.hsqldb.QuerySpecification org.hsqldb.Session org.hsqldb.HsqlNameManager$HsqlName int org.hsqldb.lib.HashMappedList int org.hsqldb.Expression org.hsqldb.HsqlNameManager$SimpleName java.lang.String org.hsqldb.HsqlNameManager$HsqlName
      StackMap stack:
            new org.hsqldb.ColumnSchema
            dup
            aload 9 /* name */
            aload 6 /* e */
            getfield org.hsqldb.Expression.dataType:Lorg/hsqldb/types/Type;
            iconst_1
        19: .line 1923
            iconst_0
            aconst_null
        20: .line 1922
            invokespecial org.hsqldb.ColumnSchema.<init>:(Lorg/hsqldb/HsqlNameManager$HsqlName;Lorg/hsqldb/types/Type;ZZLorg/hsqldb/Expression;)V
            astore 10 /* column */
        start local 10 // org.hsqldb.ColumnSchema column
        21: .line 1925
            aload 4 /* columnList */
            aload 8 /* nameString */
            aload 10 /* column */
            invokevirtual org.hsqldb.lib.HashMappedList.add:(Ljava/lang/Object;Ljava/lang/Object;)Z
            pop
        end local 10 // org.hsqldb.ColumnSchema column
        end local 9 // org.hsqldb.HsqlNameManager$HsqlName name
        end local 8 // java.lang.String nameString
        end local 7 // org.hsqldb.HsqlNameManager$SimpleName simpleName
        end local 6 // org.hsqldb.Expression e
        22: .line 1910
            iinc 5 /* i */ 1
      StackMap locals: org.hsqldb.QuerySpecification org.hsqldb.Session org.hsqldb.HsqlNameManager$HsqlName int org.hsqldb.lib.HashMappedList int
      StackMap stack:
        23: iload 5 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            if_icmplt 9
        end local 5 // int i
        24: .line 1928
            aload 0 /* this */
            new org.hsqldb.TableDerived
            dup
            aload 1 /* session */
            getfield org.hsqldb.Session.database:Lorg/hsqldb/Database;
            aload 2 /* tableName */
            iload 3 /* tableType */
        25: .line 1929
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resultColumnTypes:[Lorg/hsqldb/types/Type;
            aload 4 /* columnList */
        26: .line 1930
            getstatic org.hsqldb.map.ValuePool.emptyIntArray:[I
            invokespecial org.hsqldb.TableDerived.<init>:(Lorg/hsqldb/Database;Lorg/hsqldb/HsqlNameManager$HsqlName;I[Lorg/hsqldb/types/Type;Lorg/hsqldb/lib/HashMappedList;[I)V
        27: .line 1928
            putfield org.hsqldb.QuerySpecification.resultTable:Lorg/hsqldb/TableBase;
        28: .line 1931
            return
        end local 4 // org.hsqldb.lib.HashMappedList columnList
        end local 3 // int tableType
        end local 2 // org.hsqldb.HsqlNameManager$HsqlName tableName
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   29     0        this  Lorg/hsqldb/QuerySpecification;
            0   29     1     session  Lorg/hsqldb/Session;
            2   29     2   tableName  Lorg/hsqldb/HsqlNameManager$HsqlName;
            6   29     3   tableType  I
            7   29     4  columnList  Lorg/hsqldb/lib/HashMappedList;
            8   24     5           i  I
           10   22     6           e  Lorg/hsqldb/Expression;
           11   22     7  simpleName  Lorg/hsqldb/HsqlNameManager$SimpleName;
           12   22     8  nameString  Ljava/lang/String;
           16   22     9        name  Lorg/hsqldb/HsqlNameManager$HsqlName;
           21   22    10      column  Lorg/hsqldb/ColumnSchema;
    MethodParameters:
         Name  Flags
      session  

  public java.lang.String getSQL();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // org.hsqldb.QuerySpecification this
         0: .line 1935
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         1: .line 1938
            aload 1 /* sb */
            ldc "SELECT"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         2: .line 1940
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            istore 2 /* limit */
        start local 2 // int limit
         3: .line 1942
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         4: goto 9
         5: .line 1943
      StackMap locals: java.lang.StringBuilder int int
      StackMap stack:
            iload 3 /* i */
            ifle 7
         6: .line 1944
            aload 1 /* sb */
            bipush 44
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         7: .line 1947
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
            invokevirtual org.hsqldb.Expression.getSQL:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         8: .line 1942
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 3 /* i */
            iload 2 /* limit */
            if_icmplt 5
        end local 3 // int i
        10: .line 1950
            aload 1 /* sb */
            ldc "FROM"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 1952
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            istore 2 /* limit */
        12: .line 1954
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        13: goto 27
        14: .line 1955
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iload 3 /* i */
            aaload
            astore 4 /* rangeVar */
        start local 4 // org.hsqldb.RangeVariable rangeVar
        15: .line 1957
            iload 3 /* i */
            ifle 25
        16: .line 1958
            aload 4 /* rangeVar */
            getfield org.hsqldb.RangeVariable.isLeftJoin:Z
            ifeq 19
            aload 4 /* rangeVar */
            getfield org.hsqldb.RangeVariable.isRightJoin:Z
            ifeq 19
        17: .line 1959
            aload 1 /* sb */
            ldc "FULL"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        18: .line 1960
            goto 24
      StackMap locals: org.hsqldb.RangeVariable
      StackMap stack:
        19: aload 4 /* rangeVar */
            getfield org.hsqldb.RangeVariable.isLeftJoin:Z
            ifeq 22
        20: .line 1961
            aload 1 /* sb */
            ldc "LEFT"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        21: .line 1962
            goto 24
      StackMap locals:
      StackMap stack:
        22: aload 4 /* rangeVar */
            getfield org.hsqldb.RangeVariable.isRightJoin:Z
            ifeq 24
        23: .line 1963
            aload 1 /* sb */
            ldc "RIGHT"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        24: .line 1966
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            ldc "JOIN"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        25: .line 1969
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            aload 4 /* rangeVar */
            invokevirtual org.hsqldb.RangeVariable.getTable:()Lorg/hsqldb/Table;
            invokevirtual org.hsqldb.Table.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            getfield org.hsqldb.HsqlNameManager$HsqlName.statementName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 4 // org.hsqldb.RangeVariable rangeVar
        26: .line 1954
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        27: iload 3 /* i */
            iload 2 /* limit */
            if_icmplt 14
        end local 3 // int i
        28: .line 1972
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isGrouped:Z
            ifeq 40
        29: .line 1973
            aload 1 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc "GROUP"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
        30: .line 1974
            ldc "BY"
        31: .line 1973
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        32: .line 1976
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.groupByColumnCount:I
            iadd
            istore 2 /* limit */
        33: .line 1978
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            istore 3 /* i */
        start local 3 // int i
        34: goto 39
        35: .line 1979
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
            invokevirtual org.hsqldb.Expression.getSQL:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        36: .line 1981
            iload 3 /* i */
            iload 2 /* limit */
            iconst_1
            isub
            if_icmpge 38
        37: .line 1982
            aload 1 /* sb */
            bipush 44
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        38: .line 1978
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        39: iload 3 /* i */
            iload 2 /* limit */
            if_icmplt 35
        end local 3 // int i
        40: .line 1987
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
            ifnull 43
        41: .line 1988
            aload 1 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc "HAVING"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        42: .line 1989
            aload 1 /* sb */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
            invokevirtual org.hsqldb.Expression.getSQL:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        43: .line 1992
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            invokevirtual org.hsqldb.SortAndSlice.hasOrder:()Z
            ifeq 55
        44: .line 1993
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartOrderBy:I
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            invokevirtual org.hsqldb.SortAndSlice.getOrderLength:()I
            iadd
            istore 2 /* limit */
        45: .line 1995
            aload 1 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc "ORDER"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "BY"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        46: .line 1996
            bipush 32
        47: .line 1995
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        48: .line 1998
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartOrderBy:I
            istore 3 /* i */
        start local 3 // int i
        49: goto 54
        50: .line 1999
      StackMap locals: int
      StackMap stack:
            aload 1 /* sb */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
            invokevirtual org.hsqldb.Expression.getSQL:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        51: .line 2001
            iload 3 /* i */
            iload 2 /* limit */
            iconst_1
            isub
            if_icmpge 53
        52: .line 2002
            aload 1 /* sb */
            bipush 44
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        53: .line 1998
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        54: iload 3 /* i */
            iload 2 /* limit */
            if_icmplt 50
        end local 3 // int i
        55: .line 2007
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            invokevirtual org.hsqldb.SortAndSlice.hasLimit:()Z
            ifeq 57
        56: .line 2008
            aload 1 /* sb */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            getfield org.hsqldb.SortAndSlice.limitCondition:Lorg/hsqldb/ExpressionOp;
            invokevirtual org.hsqldb.ExpressionOp.getLeftNode:()Lorg/hsqldb/Expression;
            invokevirtual org.hsqldb.Expression.getSQL:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        57: .line 2011
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // int limit
        end local 1 // java.lang.StringBuilder sb
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   58     0      this  Lorg/hsqldb/QuerySpecification;
            1   58     1        sb  Ljava/lang/StringBuilder;
            3   58     2     limit  I
            4   10     3         i  I
           13   28     3         i  I
           15   26     4  rangeVar  Lorg/hsqldb/RangeVariable;
           34   40     3         i  I
           49   55     3         i  I

  public org.hsqldb.result.ResultMetaData getMetaData();
    descriptor: ()Lorg/hsqldb/result/ResultMetaData;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.QuerySpecification this
         0: .line 2015
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resultMetaData:Lorg/hsqldb/result/ResultMetaData;
            areturn
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/QuerySpecification;

  public java.lang.String describe(org.hsqldb.Session, int);
    descriptor: (Lorg/hsqldb/Session;I)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=3
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
        start local 2 // int blanks
         0: .line 2022
            new java.lang.StringBuilder
            dup
            iload 2 /* blanks */
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 5 /* b */
        start local 5 // java.lang.StringBuilder b
         1: .line 2024
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         2: goto 5
         3: .line 2025
      StackMap locals: org.hsqldb.QuerySpecification org.hsqldb.Session int top top java.lang.StringBuilder int
      StackMap stack:
            aload 5 /* b */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         4: .line 2024
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 6 /* i */
            iload 2 /* blanks */
            if_icmplt 3
        end local 6 // int i
         6: .line 2028
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 3 /* sb */
        start local 3 // java.lang.StringBuilder sb
         7: .line 2030
            aload 3 /* sb */
            aload 5 /* b */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            ldc "isDistinctSelect=["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         8: .line 2031
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isDistinctSelect:Z
         9: .line 2030
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
        10: .line 2031
            ldc "]\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 2032
            aload 3 /* sb */
            aload 5 /* b */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            ldc "isGrouped=["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isGrouped:Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            ldc "]\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        12: .line 2033
            aload 3 /* sb */
            aload 5 /* b */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            ldc "isAggregated=["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isAggregated:Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
        13: .line 2034
            ldc "]\n"
        14: .line 2033
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        15: .line 2035
            aload 3 /* sb */
            aload 5 /* b */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            ldc "columns=["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        16: .line 2037
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        17: goto 29
        18: .line 2038
      StackMap locals: org.hsqldb.QuerySpecification org.hsqldb.Session int java.lang.StringBuilder top java.lang.StringBuilder int
      StackMap stack:
            iload 6 /* i */
            istore 7 /* index */
        start local 7 // int index
        19: .line 2040
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 6 /* i */
            aaload
            invokevirtual org.hsqldb.Expression.getType:()I
            iconst_5
            if_icmpne 21
        20: .line 2041
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 6 /* i */
            aaload
            getfield org.hsqldb.Expression.columnIndex:I
            istore 7 /* index */
        21: .line 2044
      StackMap locals: int
      StackMap stack:
            aload 3 /* sb */
            aload 5 /* b */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            pop
        22: .line 2046
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 7 /* index */
            aaload
            aload 1 /* session */
            iconst_2
            invokevirtual org.hsqldb.Expression.describe:(Lorg/hsqldb/Session;I)Ljava/lang/String;
            astore 4 /* temp */
        start local 4 // java.lang.String temp
        23: .line 2048
            aload 3 /* sb */
            aload 4 /* temp */
            iconst_0
            aload 4 /* temp */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;II)Ljava/lang/StringBuilder;
            pop
        24: .line 2050
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resultMetaData:Lorg/hsqldb/result/ResultMetaData;
            getfield org.hsqldb.result.ResultMetaData.columns:[Lorg/hsqldb/ColumnBase;
            iload 6 /* i */
            aaload
            invokevirtual org.hsqldb.ColumnBase.getNullability:()B
            ifne 27
        25: .line 2052
            aload 3 /* sb */
            ldc " not nullable\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        26: .line 2053
            goto 28
        27: .line 2054
      StackMap locals: org.hsqldb.QuerySpecification org.hsqldb.Session int java.lang.StringBuilder java.lang.String java.lang.StringBuilder int int
      StackMap stack:
            aload 3 /* sb */
            ldc " nullable\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 7 // int index
        28: .line 2037
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
        end local 4 // java.lang.String temp
      StackMap locals: org.hsqldb.QuerySpecification org.hsqldb.Session int java.lang.StringBuilder top java.lang.StringBuilder int
      StackMap stack:
        29: iload 6 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            if_icmplt 18
        end local 6 // int i
        30: .line 2058
            aload 3 /* sb */
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        31: .line 2059
            aload 3 /* sb */
            aload 5 /* b */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            ldc "]\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        32: .line 2061
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        33: goto 39
        34: .line 2062
      StackMap locals:
      StackMap stack:
            aload 3 /* sb */
            aload 5 /* b */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            ldc "["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        35: .line 2063
            aload 3 /* sb */
            ldc "range variable "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 6 /* i */
            iconst_1
            iadd
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        36: .line 2064
            aload 3 /* sb */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iload 6 /* i */
            aaload
            aload 1 /* session */
            iload 2 /* blanks */
            iconst_2
            iadd
            invokevirtual org.hsqldb.RangeVariable.describe:(Lorg/hsqldb/Session;I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        37: .line 2065
            aload 3 /* sb */
            aload 5 /* b */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        38: .line 2061
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        39: iload 6 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            if_icmplt 34
        end local 6 // int i
        40: .line 2068
            aload 3 /* sb */
            aload 5 /* b */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            ldc "]\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        41: .line 2070
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            ifnonnull 42
            ldc "null"
            goto 45
        42: .line 2071
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            aload 1 /* session */
        43: .line 2072
            iload 2 /* blanks */
        44: .line 2071
            invokevirtual org.hsqldb.Expression.describe:(Lorg/hsqldb/Session;I)Ljava/lang/String;
        45: .line 2070
      StackMap locals:
      StackMap stack: java.lang.String
            astore 4 /* temp */
        start local 4 // java.lang.String temp
        46: .line 2074
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isGrouped:Z
            ifeq 58
        47: .line 2075
            aload 3 /* sb */
            aload 5 /* b */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            ldc "groupColumns=["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        48: .line 2077
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitRowId:I
            istore 6 /* i */
        start local 6 // int i
        49: .line 2078
            goto 55
        50: .line 2079
      StackMap locals: org.hsqldb.QuerySpecification org.hsqldb.Session int java.lang.StringBuilder java.lang.String java.lang.StringBuilder int
      StackMap stack:
            iload 6 /* i */
            istore 7 /* index */
        start local 7 // int index
        51: .line 2081
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 6 /* i */
            aaload
            invokevirtual org.hsqldb.Expression.getType:()I
            iconst_5
            if_icmpne 53
        52: .line 2082
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 6 /* i */
            aaload
            getfield org.hsqldb.Expression.columnIndex:I
            istore 7 /* index */
        53: .line 2085
      StackMap locals: int
      StackMap stack:
            aload 3 /* sb */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 7 /* index */
            aaload
            aload 1 /* session */
            iload 2 /* blanks */
            invokevirtual org.hsqldb.Expression.describe:(Lorg/hsqldb/Session;I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 7 // int index
        54: .line 2078
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        55: iload 6 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitRowId:I
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.groupByColumnCount:I
            iadd
        56: .line 2077
            if_icmplt 50
        end local 6 // int i
        57: .line 2088
            aload 3 /* sb */
            aload 5 /* b */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            ldc "]\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        58: .line 2091
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
            ifnull 63
        59: .line 2092
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
            aload 1 /* session */
            iload 2 /* blanks */
            invokevirtual org.hsqldb.Expression.describe:(Lorg/hsqldb/Session;I)Ljava/lang/String;
            astore 4 /* temp */
        60: .line 2094
            aload 3 /* sb */
            aload 5 /* b */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            ldc "havingCondition=["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* temp */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        61: .line 2095
            ldc "]\n"
        62: .line 2094
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        63: .line 2098
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            invokevirtual org.hsqldb.SortAndSlice.hasOrder:()Z
            ifeq 77
        64: .line 2099
            aload 3 /* sb */
            aload 5 /* b */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            ldc "order by=[\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        65: .line 2101
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        66: goto 73
        67: .line 2102
      StackMap locals: int
      StackMap stack:
            aload 3 /* sb */
            aload 5 /* b */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
        68: .line 2103
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            getfield org.hsqldb.SortAndSlice.exprList:Lorg/hsqldb/lib/HsqlArrayList;
            iload 6 /* i */
            invokevirtual org.hsqldb.lib.HsqlArrayList.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.Expression
        69: .line 2104
            aload 1 /* session */
            iload 2 /* blanks */
        70: .line 2103
            invokevirtual org.hsqldb.Expression.describe:(Lorg/hsqldb/Session;I)Ljava/lang/String;
        71: .line 2102
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        72: .line 2101
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        73: iload 6 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            getfield org.hsqldb.SortAndSlice.exprList:Lorg/hsqldb/lib/HsqlArrayList;
            invokevirtual org.hsqldb.lib.HsqlArrayList.size:()I
            if_icmplt 67
        end local 6 // int i
        74: .line 2107
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            getfield org.hsqldb.SortAndSlice.primaryTableIndex:Lorg/hsqldb/index/Index;
            ifnull 76
        75: .line 2108
            aload 3 /* sb */
            aload 5 /* b */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            ldc "uses index"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        76: .line 2111
      StackMap locals:
      StackMap stack:
            aload 3 /* sb */
            aload 5 /* b */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            ldc "]\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        77: .line 2114
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            invokevirtual org.hsqldb.SortAndSlice.hasLimit:()Z
            ifeq 92
        78: .line 2115
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            getfield org.hsqldb.SortAndSlice.limitCondition:Lorg/hsqldb/ExpressionOp;
            invokevirtual org.hsqldb.ExpressionOp.getLeftNode:()Lorg/hsqldb/Expression;
            ifnull 85
        79: .line 2116
            aload 3 /* sb */
            aload 5 /* b */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            ldc "offset=["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        80: .line 2117
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            getfield org.hsqldb.SortAndSlice.limitCondition:Lorg/hsqldb/ExpressionOp;
            invokevirtual org.hsqldb.ExpressionOp.getLeftNode:()Lorg/hsqldb/Expression;
        81: .line 2118
            aload 1 /* session */
            aload 5 /* b */
            invokevirtual java.lang.StringBuilder.length:()I
        82: .line 2117
            invokevirtual org.hsqldb.Expression.describe:(Lorg/hsqldb/Session;I)Ljava/lang/String;
        83: .line 2116
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        84: .line 2118
            ldc "]\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        85: .line 2121
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            getfield org.hsqldb.SortAndSlice.limitCondition:Lorg/hsqldb/ExpressionOp;
            invokevirtual org.hsqldb.ExpressionOp.getRightNode:()Lorg/hsqldb/Expression;
            ifnull 92
        86: .line 2122
            aload 3 /* sb */
            aload 5 /* b */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            ldc "limit=["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        87: .line 2123
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            getfield org.hsqldb.SortAndSlice.limitCondition:Lorg/hsqldb/ExpressionOp;
            invokevirtual org.hsqldb.ExpressionOp.getRightNode:()Lorg/hsqldb/Expression;
        88: .line 2124
            aload 1 /* session */
            aload 5 /* b */
            invokevirtual java.lang.StringBuilder.length:()I
        89: .line 2123
            invokevirtual org.hsqldb.Expression.describe:(Lorg/hsqldb/Session;I)Ljava/lang/String;
        90: .line 2122
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        91: .line 2124
            ldc "]\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        92: .line 2128
      StackMap locals:
      StackMap stack:
            aload 3 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 5 // java.lang.StringBuilder b
        end local 4 // java.lang.String temp
        end local 3 // java.lang.StringBuilder sb
        end local 2 // int blanks
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   93     0     this  Lorg/hsqldb/QuerySpecification;
            0   93     1  session  Lorg/hsqldb/Session;
            0   93     2   blanks  I
            7   93     3       sb  Ljava/lang/StringBuilder;
           23   29     4     temp  Ljava/lang/String;
           46   93     4     temp  Ljava/lang/String;
            1   93     5        b  Ljava/lang/StringBuilder;
            2    6     6        i  I
           17   30     6        i  I
           19   28     7    index  I
           33   40     6        i  I
           49   57     6        i  I
           51   54     7    index  I
           66   74     6        i  I
    MethodParameters:
         Name  Flags
      session  
      blanks   

  void setMergeability();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.hsqldb.QuerySpecification this
         0: .line 2133
            aload 0 /* this */
            dup
            getfield org.hsqldb.QuerySpecification.isOrderSensitive:Z
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            invokevirtual org.hsqldb.SortAndSlice.hasLimit:()Z
            ifne 1
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            invokevirtual org.hsqldb.SortAndSlice.hasOrder:()Z
            ifne 1
            iconst_0
            goto 2
      StackMap locals: org.hsqldb.QuerySpecification
      StackMap stack: org.hsqldb.QuerySpecification int
         1: iconst_1
      StackMap locals: org.hsqldb.QuerySpecification
      StackMap stack: org.hsqldb.QuerySpecification int int
         2: ior
            putfield org.hsqldb.QuerySpecification.isOrderSensitive:Z
         3: .line 2135
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isOrderSensitive:Z
            ifeq 5
         4: .line 2136
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.QuerySpecification.isMergeable:Z
         5: .line 2139
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isAggregated:Z
            ifeq 7
         6: .line 2140
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.QuerySpecification.isMergeable:Z
         7: .line 2143
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isGrouped:Z
            ifne 8
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isDistinctSelect:Z
            ifeq 10
         8: .line 2144
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.QuerySpecification.isBaseMergeable:Z
         9: .line 2145
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.QuerySpecification.isMergeable:Z
        10: .line 2148
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            iconst_1
            if_icmpeq 13
        11: .line 2149
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.QuerySpecification.isBaseMergeable:Z
        12: .line 2150
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.QuerySpecification.isMergeable:Z
        13: .line 2152
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   14     0  this  Lorg/hsqldb/QuerySpecification;

  void setUpdatability();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=4, locals=12, args_size=1
        start local 0 // org.hsqldb.QuerySpecification this
         0: .line 2156
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isUpdatable:Z
            ifne 2
         1: .line 2157
            return
         2: .line 2160
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.QuerySpecification.isUpdatable:Z
         3: .line 2162
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isGrouped:Z
            ifne 4
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isDistinctSelect:Z
            ifne 4
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isAggregated:Z
            ifeq 5
         4: .line 2163
      StackMap locals:
      StackMap stack:
            return
         5: .line 2166
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isBaseMergeable:Z
            ifne 7
         6: .line 2167
            return
         7: .line 2170
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isTopLevel:Z
            ifne 9
         8: .line 2171
            return
         9: .line 2174
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            invokevirtual org.hsqldb.SortAndSlice.hasLimit:()Z
            ifne 10
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.sortAndSlice:Lorg/hsqldb/SortAndSlice;
            invokevirtual org.hsqldb.SortAndSlice.hasOrder:()Z
            ifeq 11
        10: .line 2175
      StackMap locals:
      StackMap stack:
            return
        11: .line 2178
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iconst_0
            aaload
            astore 1 /* rangeVar */
        start local 1 // org.hsqldb.RangeVariable rangeVar
        12: .line 2179
            aload 1 /* rangeVar */
            invokevirtual org.hsqldb.RangeVariable.getTable:()Lorg/hsqldb/Table;
            astore 2 /* table */
        start local 2 // org.hsqldb.Table table
        13: .line 2180
            aload 2 /* table */
            invokevirtual org.hsqldb.Table.getBaseTable:()Lorg/hsqldb/Table;
            astore 3 /* baseTable */
        start local 3 // org.hsqldb.Table baseTable
        14: .line 2182
            aload 3 /* baseTable */
            ifnonnull 16
        15: .line 2183
            return
        16: .line 2186
      StackMap locals: org.hsqldb.RangeVariable org.hsqldb.Table org.hsqldb.Table
      StackMap stack:
            aload 0 /* this */
            aload 2 /* table */
            invokevirtual org.hsqldb.Table.isInsertable:()Z
            putfield org.hsqldb.QuerySpecification.isInsertable:Z
        17: .line 2187
            aload 0 /* this */
            aload 2 /* table */
            invokevirtual org.hsqldb.Table.isUpdatable:()Z
            putfield org.hsqldb.QuerySpecification.isUpdatable:Z
        18: .line 2189
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isInsertable:Z
            ifne 20
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isUpdatable:Z
            ifne 20
        19: .line 2190
            return
        20: .line 2193
      StackMap locals:
      StackMap stack:
            new org.hsqldb.lib.IntValueHashMap
            dup
            invokespecial org.hsqldb.lib.IntValueHashMap.<init>:()V
            astore 4 /* columns */
        start local 4 // org.hsqldb.lib.IntValueHashMap columns
        21: .line 2195
            aload 2 /* table */
            invokevirtual org.hsqldb.Table.getBaseTableColumnMap:()[I
            astore 6 /* baseColumnMap */
        start local 6 // int[] baseColumnMap
        22: .line 2196
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            newarray 10
            astore 7 /* columnMap */
        start local 7 // int[] columnMap
        23: .line 2198
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            ifnull 31
        24: .line 2199
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.clear:()V
        25: .line 2200
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            invokestatic org.hsqldb.QuerySpecification.collectSubQueriesAndReferences:(Lorg/hsqldb/lib/OrderedHashSet;Lorg/hsqldb/Expression;)V
        26: .line 2202
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            aload 2 /* table */
            invokevirtual org.hsqldb.Table.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.lib.OrderedHashSet.contains:(Ljava/lang/Object;)Z
            ifne 28
        27: .line 2203
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            aload 3 /* baseTable */
            invokevirtual org.hsqldb.Table.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.lib.OrderedHashSet.contains:(Ljava/lang/Object;)Z
            ifeq 31
        28: .line 2204
      StackMap locals: org.hsqldb.QuerySpecification org.hsqldb.RangeVariable org.hsqldb.Table org.hsqldb.Table org.hsqldb.lib.IntValueHashMap top int[] int[]
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.QuerySpecification.isUpdatable:Z
        29: .line 2205
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.QuerySpecification.isInsertable:Z
        30: .line 2207
            return
        31: .line 2211
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        32: goto 48
        33: .line 2212
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 8 /* i */
            aaload
            astore 9 /* expression */
        start local 9 // org.hsqldb.Expression expression
        34: .line 2214
            aload 9 /* expression */
            invokevirtual org.hsqldb.Expression.getType:()I
            iconst_2
            if_icmpne 41
        35: .line 2215
            aload 9 /* expression */
            invokevirtual org.hsqldb.Expression.getColumn:()Lorg/hsqldb/ColumnSchema;
            invokevirtual org.hsqldb.ColumnSchema.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            getfield org.hsqldb.HsqlNameManager$HsqlName.name:Ljava/lang/String;
            astore 10 /* name */
        start local 10 // java.lang.String name
        36: .line 2217
            aload 4 /* columns */
            aload 10 /* name */
            invokevirtual org.hsqldb.lib.IntValueHashMap.containsKey:(Ljava/lang/Object;)Z
            ifeq 39
        37: .line 2218
            aload 4 /* columns */
            aload 10 /* name */
            iconst_1
            invokevirtual org.hsqldb.lib.IntValueHashMap.put:(Ljava/lang/Object;I)Z
            pop
        38: .line 2220
            goto 47
        39: .line 2223
      StackMap locals: org.hsqldb.Expression java.lang.String
      StackMap stack:
            aload 4 /* columns */
            aload 10 /* name */
            iconst_0
            invokevirtual org.hsqldb.lib.IntValueHashMap.put:(Ljava/lang/Object;I)Z
            pop
        end local 10 // java.lang.String name
        40: .line 2224
            goto 47
        41: .line 2225
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.clear:()V
        42: .line 2226
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            aload 9 /* expression */
            invokestatic org.hsqldb.QuerySpecification.collectSubQueriesAndReferences:(Lorg/hsqldb/lib/OrderedHashSet;Lorg/hsqldb/Expression;)V
        43: .line 2228
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.tempSet:Lorg/hsqldb/lib/OrderedHashSet;
            aload 2 /* table */
            invokevirtual org.hsqldb.Table.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.lib.OrderedHashSet.contains:(Ljava/lang/Object;)Z
            ifeq 47
        44: .line 2229
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.QuerySpecification.isUpdatable:Z
        45: .line 2230
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.QuerySpecification.isInsertable:Z
        46: .line 2232
            return
        end local 9 // org.hsqldb.Expression expression
        47: .line 2211
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        48: iload 8 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            if_icmplt 33
        end local 8 // int i
        49: .line 2237
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.QuerySpecification.isUpdatable:Z
        50: .line 2239
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        51: goto 65
        52: .line 2240
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.accessibleColumns:[Z
            iload 8 /* i */
            baload
            ifeq 62
        53: .line 2241
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 8 /* i */
            aaload
            astore 9 /* expression */
        start local 9 // org.hsqldb.Expression expression
        54: .line 2243
            aload 9 /* expression */
            invokevirtual org.hsqldb.Expression.getType:()I
            iconst_2
            if_icmpne 62
        55: .line 2244
            aload 9 /* expression */
            invokevirtual org.hsqldb.Expression.getColumn:()Lorg/hsqldb/ColumnSchema;
            invokevirtual org.hsqldb.ColumnSchema.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            getfield org.hsqldb.HsqlNameManager$HsqlName.name:Ljava/lang/String;
            astore 10 /* name */
        start local 10 // java.lang.String name
        56: .line 2246
            aload 4 /* columns */
            aload 10 /* name */
            invokevirtual org.hsqldb.lib.IntValueHashMap.get:(Ljava/lang/Object;)I
            ifne 62
        57: .line 2247
            aload 2 /* table */
            aload 10 /* name */
            invokevirtual org.hsqldb.Table.findColumn:(Ljava/lang/String;)I
            istore 11 /* index */
        start local 11 // int index
        58: .line 2249
            aload 7 /* columnMap */
            iload 8 /* i */
            aload 6 /* baseColumnMap */
            iload 11 /* index */
            iaload
            iastore
        59: .line 2251
            aload 7 /* columnMap */
            iload 8 /* i */
            iaload
            iconst_m1
            if_icmpeq 64
        60: .line 2252
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.QuerySpecification.isUpdatable:Z
        61: .line 2255
            goto 64
        end local 11 // int index
        end local 10 // java.lang.String name
        end local 9 // org.hsqldb.Expression expression
        62: .line 2260
      StackMap locals:
      StackMap stack:
            aload 7 /* columnMap */
            iload 8 /* i */
            iconst_m1
            iastore
        63: .line 2261
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.QuerySpecification.isInsertable:Z
        64: .line 2239
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        65: iload 8 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            if_icmplt 52
        end local 8 // int i
        66: .line 2264
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isInsertable:Z
            ifeq 79
        67: .line 2265
            aload 3 /* baseTable */
            aload 7 /* columnMap */
            invokevirtual org.hsqldb.Table.getColumnCheckList:([I)[Z
            astore 5 /* checkList */
        start local 5 // boolean[] checkList
        68: .line 2267
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        69: goto 78
        70: .line 2268
      StackMap locals: org.hsqldb.QuerySpecification org.hsqldb.RangeVariable org.hsqldb.Table org.hsqldb.Table org.hsqldb.lib.IntValueHashMap boolean[] int[] int[] int
      StackMap stack:
            aload 5 /* checkList */
            iload 8 /* i */
            baload
            ifeq 72
        71: .line 2269
            goto 77
        72: .line 2272
      StackMap locals:
      StackMap stack:
            aload 3 /* baseTable */
            iload 8 /* i */
            invokevirtual org.hsqldb.Table.getColumn:(I)Lorg/hsqldb/ColumnSchema;
            astore 9 /* column */
        start local 9 // org.hsqldb.ColumnSchema column
        73: .line 2274
            aload 9 /* column */
            invokevirtual org.hsqldb.ColumnSchema.isIdentity:()Z
            ifne 77
            aload 9 /* column */
            invokevirtual org.hsqldb.ColumnSchema.isGenerated:()Z
            ifne 77
        74: .line 2275
            aload 9 /* column */
            invokevirtual org.hsqldb.ColumnSchema.hasDefault:()Z
            ifne 77
            aload 9 /* column */
            invokevirtual org.hsqldb.ColumnSchema.isNullable:()Z
            ifne 77
        75: .line 2277
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.QuerySpecification.isInsertable:Z
        76: .line 2279
            goto 79
        end local 9 // org.hsqldb.ColumnSchema column
        77: .line 2267
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        78: iload 8 /* i */
            aload 5 /* checkList */
            arraylength
            if_icmplt 70
        end local 8 // int i
        end local 5 // boolean[] checkList
        79: .line 2284
      StackMap locals: org.hsqldb.QuerySpecification org.hsqldb.RangeVariable org.hsqldb.Table org.hsqldb.Table org.hsqldb.lib.IntValueHashMap top int[] int[]
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isUpdatable:Z
            ifne 81
        80: .line 2285
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.QuerySpecification.isInsertable:Z
        81: .line 2288
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isUpdatable:Z
            ifeq 92
        82: .line 2289
            aload 0 /* this */
            aload 7 /* columnMap */
            putfield org.hsqldb.QuerySpecification.columnMap:[I
        83: .line 2290
            aload 0 /* this */
            aload 3 /* baseTable */
            putfield org.hsqldb.QuerySpecification.baseTable:Lorg/hsqldb/Table;
        84: .line 2292
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.view:Lorg/hsqldb/View;
            ifnull 86
        85: .line 2293
            return
        86: .line 2296
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.hsqldb.QuerySpecification.indexLimitRowId:I
            iconst_1
            iadd
            putfield org.hsqldb.QuerySpecification.indexLimitRowId:I
        87: .line 2298
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.QuerySpecification.hasRowID:Z
        88: .line 2300
            aload 3 /* baseTable */
            invokevirtual org.hsqldb.Table.isFileBased:()Z
            ifne 91
        89: .line 2301
            aload 0 /* this */
            dup
            getfield org.hsqldb.QuerySpecification.indexLimitRowId:I
            iconst_1
            iadd
            putfield org.hsqldb.QuerySpecification.indexLimitRowId:I
        90: .line 2303
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.QuerySpecification.isSingleMemoryTable:Z
        91: .line 2306
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitRowId:I
            putfield org.hsqldb.QuerySpecification.indexLimitData:I
        92: .line 2308
      StackMap locals:
      StackMap stack:
            return
        end local 7 // int[] columnMap
        end local 6 // int[] baseColumnMap
        end local 4 // org.hsqldb.lib.IntValueHashMap columns
        end local 3 // org.hsqldb.Table baseTable
        end local 2 // org.hsqldb.Table table
        end local 1 // org.hsqldb.RangeVariable rangeVar
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   93     0           this  Lorg/hsqldb/QuerySpecification;
           12   93     1       rangeVar  Lorg/hsqldb/RangeVariable;
           13   93     2          table  Lorg/hsqldb/Table;
           14   93     3      baseTable  Lorg/hsqldb/Table;
           21   93     4        columns  Lorg/hsqldb/lib/IntValueHashMap;
           68   79     5      checkList  [Z
           22   93     6  baseColumnMap  [I
           23   93     7      columnMap  [I
           32   49     8              i  I
           34   47     9     expression  Lorg/hsqldb/Expression;
           36   40    10           name  Ljava/lang/String;
           51   66     8              i  I
           54   62     9     expression  Lorg/hsqldb/Expression;
           56   62    10           name  Ljava/lang/String;
           58   62    11          index  I
           69   79     8              i  I
           73   77     9         column  Lorg/hsqldb/ColumnSchema;

  void mergeQuery(org.hsqldb.Session);
    descriptor: (Lorg/hsqldb/Session;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=9, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
         0: .line 2317
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iconst_0
            aaload
            astore 2 /* rangeVar */
        start local 2 // org.hsqldb.RangeVariable rangeVar
         1: .line 2318
            aload 2 /* rangeVar */
            invokevirtual org.hsqldb.RangeVariable.getTable:()Lorg/hsqldb/Table;
            astore 3 /* table */
        start local 3 // org.hsqldb.Table table
         2: .line 2319
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            astore 4 /* localQueryCondition */
        start local 4 // org.hsqldb.Expression localQueryCondition
         3: .line 2320
            aload 3 /* table */
            invokevirtual org.hsqldb.Table.getQueryExpression:()Lorg/hsqldb/QueryExpression;
            astore 5 /* baseQueryExpression */
        start local 5 // org.hsqldb.QueryExpression baseQueryExpression
         4: .line 2322
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isBaseMergeable:Z
            ifeq 30
            aload 5 /* baseQueryExpression */
            ifnull 30
         5: .line 2323
            aload 5 /* baseQueryExpression */
            getfield org.hsqldb.QueryExpression.isMergeable:Z
            ifeq 30
         6: .line 2325
            aload 5 /* baseQueryExpression */
            invokevirtual org.hsqldb.QueryExpression.getMainSelect:()Lorg/hsqldb/QuerySpecification;
         7: .line 2324
            astore 6 /* baseSelect */
        start local 6 // org.hsqldb.QuerySpecification baseSelect
         8: .line 2327
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iconst_0
            aload 6 /* baseSelect */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iconst_0
            aaload
            aastore
         9: .line 2329
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iconst_0
            aaload
            invokevirtual org.hsqldb.RangeVariable.resetConditions:()V
        10: .line 2331
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        11: goto 17
        12: .line 2332
      StackMap locals: org.hsqldb.QuerySpecification org.hsqldb.Session org.hsqldb.RangeVariable org.hsqldb.Table org.hsqldb.Expression org.hsqldb.QueryExpression org.hsqldb.QuerySpecification int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 7 /* i */
            aaload
            astore 8 /* e */
        start local 8 // org.hsqldb.Expression e
        13: .line 2334
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 7 /* i */
            aload 8 /* e */
            aload 1 /* session */
            aload 2 /* rangeVar */
        14: .line 2335
            aload 6 /* baseSelect */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
        15: .line 2334
            invokevirtual org.hsqldb.Expression.replaceColumnReferences:(Lorg/hsqldb/Session;Lorg/hsqldb/RangeVariable;[Lorg/hsqldb/Expression;)Lorg/hsqldb/Expression;
            aastore
        end local 8 // org.hsqldb.Expression e
        16: .line 2331
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        17: iload 7 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitExpressions:I
            if_icmplt 12
        end local 7 // int i
        18: .line 2338
            aload 4 /* localQueryCondition */
            ifnull 23
        19: .line 2340
            aload 4 /* localQueryCondition */
            aload 1 /* session */
        20: .line 2341
            aload 2 /* rangeVar */
            aload 6 /* baseSelect */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
        21: .line 2340
            invokevirtual org.hsqldb.Expression.replaceColumnReferences:(Lorg/hsqldb/Session;Lorg/hsqldb/RangeVariable;[Lorg/hsqldb/Expression;)Lorg/hsqldb/Expression;
        22: .line 2339
            astore 4 /* localQueryCondition */
        23: .line 2344
      StackMap locals:
      StackMap stack:
            aload 6 /* baseSelect */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            astore 7 /* baseQueryCondition */
        start local 7 // org.hsqldb.Expression baseQueryCondition
        24: .line 2346
            aload 0 /* this */
            aload 6 /* baseSelect */
            getfield org.hsqldb.QuerySpecification.checkQueryCondition:Lorg/hsqldb/Expression;
            putfield org.hsqldb.QuerySpecification.checkQueryCondition:Lorg/hsqldb/Expression;
        25: .line 2347
            aload 0 /* this */
        26: .line 2348
            aload 7 /* baseQueryCondition */
        27: .line 2349
            aload 4 /* localQueryCondition */
        28: .line 2348
            invokestatic org.hsqldb.ExpressionLogical.andExpressions:(Lorg/hsqldb/Expression;Lorg/hsqldb/Expression;)Lorg/hsqldb/Expression;
        29: .line 2347
            putfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
        end local 7 // org.hsqldb.Expression baseQueryCondition
        end local 6 // org.hsqldb.QuerySpecification baseSelect
        30: .line 2352
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.view:Lorg/hsqldb/View;
            ifnull 39
        31: .line 2353
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.view:Lorg/hsqldb/View;
            invokevirtual org.hsqldb.View.getCheckOption:()I
            tableswitch { // 1 - 2
                    1: 32
                    2: 36
              default: 39
          }
        32: .line 2356
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isUpdatable:Z
            ifne 34
        33: .line 2357
            sipush 5537
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        34: .line 2360
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* localQueryCondition */
            putfield org.hsqldb.QuerySpecification.checkQueryCondition:Lorg/hsqldb/Expression;
        35: .line 2361
            goto 39
        36: .line 2364
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.isUpdatable:Z
            ifne 38
        37: .line 2365
            sipush 5537
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
        38: .line 2368
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            putfield org.hsqldb.QuerySpecification.checkQueryCondition:Lorg/hsqldb/Expression;
        39: .line 2372
      StackMap locals:
      StackMap stack:
            return
        end local 5 // org.hsqldb.QueryExpression baseQueryExpression
        end local 4 // org.hsqldb.Expression localQueryCondition
        end local 3 // org.hsqldb.Table table
        end local 2 // org.hsqldb.RangeVariable rangeVar
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   40     0                 this  Lorg/hsqldb/QuerySpecification;
            0   40     1              session  Lorg/hsqldb/Session;
            1   40     2             rangeVar  Lorg/hsqldb/RangeVariable;
            2   40     3                table  Lorg/hsqldb/Table;
            3   40     4  localQueryCondition  Lorg/hsqldb/Expression;
            4   40     5  baseQueryExpression  Lorg/hsqldb/QueryExpression;
            8   30     6           baseSelect  Lorg/hsqldb/QuerySpecification;
           11   18     7                    i  I
           13   16     8                    e  Lorg/hsqldb/Expression;
           24   30     7   baseQueryCondition  Lorg/hsqldb/Expression;
    MethodParameters:
         Name  Flags
      session  

  static void collectSubQueriesAndReferences(org.hsqldb.lib.OrderedHashSet, org.hsqldb.Expression);
    descriptor: (Lorg/hsqldb/lib/OrderedHashSet;Lorg/hsqldb/Expression;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // org.hsqldb.lib.OrderedHashSet set
        start local 1 // org.hsqldb.Expression expression
         0: .line 2377
            aload 1 /* expression */
            aload 0 /* set */
            getstatic org.hsqldb.OpTypes.subqueryExpressionSet:Lorg/hsqldb/lib/OrderedIntHashSet;
         1: .line 2378
            getstatic org.hsqldb.OpTypes.emptyExpressionSet:Lorg/hsqldb/lib/OrderedIntHashSet;
         2: .line 2377
            invokevirtual org.hsqldb.Expression.collectAllExpressions:(Lorg/hsqldb/lib/OrderedHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            pop
         3: .line 2380
            aload 0 /* set */
            invokevirtual org.hsqldb.lib.OrderedHashSet.size:()I
            istore 2 /* size */
        start local 2 // int size
         4: .line 2382
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         5: goto 9
         6: .line 2383
      StackMap locals: int int
      StackMap stack:
            aload 0 /* set */
            iload 3 /* i */
            invokevirtual org.hsqldb.lib.OrderedHashSet.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.Expression
            astore 4 /* e */
        start local 4 // org.hsqldb.Expression e
         7: .line 2385
            aload 4 /* e */
            aload 0 /* set */
            invokevirtual org.hsqldb.Expression.collectObjectNames:(Lorg/hsqldb/lib/Set;)V
        end local 4 // org.hsqldb.Expression e
         8: .line 2382
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 3 /* i */
            iload 2 /* size */
            if_icmplt 6
        end local 3 // int i
        10: .line 2387
            return
        end local 2 // int size
        end local 1 // org.hsqldb.Expression expression
        end local 0 // org.hsqldb.lib.OrderedHashSet set
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0         set  Lorg/hsqldb/lib/OrderedHashSet;
            0   11     1  expression  Lorg/hsqldb/Expression;
            4   11     2        size  I
            5   10     3           i  I
            7    8     4           e  Lorg/hsqldb/Expression;
    MethodParameters:
            Name  Flags
      set         
      expression  

  public org.hsqldb.lib.OrderedHashSet getSubqueries();
    descriptor: ()Lorg/hsqldb/lib/OrderedHashSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // org.hsqldb.QuerySpecification this
         0: .line 2391
            aconst_null
            astore 1 /* set */
        start local 1 // org.hsqldb.lib.OrderedHashSet set
         1: .line 2393
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 5
         3: .line 2394
      StackMap locals: org.hsqldb.lib.OrderedHashSet int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[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 2393
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitExpressions:I
            if_icmplt 3
        end local 2 // int i
         6: .line 2397
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            ifnull 8
         7: .line 2398
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            aload 1 /* set */
            invokevirtual org.hsqldb.Expression.collectAllSubqueries:(Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 1 /* set */
         8: .line 2401
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
            ifnull 10
         9: .line 2402
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
            aload 1 /* set */
            invokevirtual org.hsqldb.Expression.collectAllSubqueries:(Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 1 /* set */
        10: .line 2405
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        11: goto 15
        12: .line 2406
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iload 2 /* i */
            aaload
            invokevirtual org.hsqldb.RangeVariable.getSubqueries:()Lorg/hsqldb/lib/OrderedHashSet;
            astore 3 /* temp */
        start local 3 // org.hsqldb.lib.OrderedHashSet temp
        13: .line 2408
            aload 1 /* set */
            aload 3 /* temp */
            invokestatic org.hsqldb.lib.OrderedHashSet.addAll:(Lorg/hsqldb/lib/OrderedHashSet;Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 1 /* set */
        end local 3 // org.hsqldb.lib.OrderedHashSet temp
        14: .line 2405
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            if_icmplt 12
        end local 2 // int i
        16: .line 2411
            aload 1 /* set */
            areturn
        end local 1 // org.hsqldb.lib.OrderedHashSet set
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   17     0  this  Lorg/hsqldb/QuerySpecification;
            1   17     1   set  Lorg/hsqldb/lib/OrderedHashSet;
            2    6     2     i  I
           11   16     2     i  I
           13   14     3  temp  Lorg/hsqldb/lib/OrderedHashSet;

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

  public org.hsqldb.lib.OrderedHashSet collectOuterColumnExpressions(org.hsqldb.lib.OrderedHashSet, org.hsqldb.lib.OrderedHashSet);
    descriptor: (Lorg/hsqldb/lib/OrderedHashSet;Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.lib.OrderedHashSet set
        start local 2 // org.hsqldb.lib.OrderedHashSet exclude
         0: .line 2421
            aload 0 /* this */
            aload 1 /* set */
            getstatic org.hsqldb.OpTypes.columnExpressionSet:Lorg/hsqldb/lib/OrderedIntHashSet;
         1: .line 2422
            getstatic org.hsqldb.OpTypes.subqueryAggregateExpressionSet:Lorg/hsqldb/lib/OrderedIntHashSet;
         2: .line 2421
            invokevirtual org.hsqldb.QuerySpecification.collectAllExpressions:(Lorg/hsqldb/lib/OrderedHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 1 /* set */
         3: .line 2424
            aload 1 /* set */
            ifnonnull 5
         4: .line 2425
            aconst_null
            areturn
         5: .line 2428
      StackMap locals:
      StackMap stack:
            aload 1 /* set */
            invokevirtual org.hsqldb.lib.OrderedHashSet.size:()I
            iconst_1
            isub
            istore 3 /* i */
        start local 3 // int i
         6: goto 13
         7: .line 2429
      StackMap locals: int
      StackMap stack:
            aload 1 /* set */
            iload 3 /* i */
            invokevirtual org.hsqldb.lib.OrderedHashSet.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.Expression
            astore 4 /* col */
        start local 4 // org.hsqldb.Expression col
         8: .line 2431
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            aload 4 /* col */
            invokevirtual org.hsqldb.Expression.getRangeVariable:()Lorg/hsqldb/RangeVariable;
            invokestatic org.hsqldb.lib.ArrayUtil.find:([Ljava/lang/Object;Ljava/lang/Object;)I
            iflt 10
         9: .line 2432
            aload 1 /* set */
            iload 3 /* i */
            invokevirtual org.hsqldb.lib.OrderedHashSet.remove:(I)Ljava/lang/Object;
            pop
        10: .line 2435
      StackMap locals: org.hsqldb.Expression
      StackMap stack:
            aload 2 /* exclude */
            aload 4 /* col */
            invokevirtual org.hsqldb.lib.OrderedHashSet.contains:(Ljava/lang/Object;)Z
            ifeq 12
        11: .line 2436
            aload 1 /* set */
            iload 3 /* i */
            invokevirtual org.hsqldb.lib.OrderedHashSet.remove:(I)Ljava/lang/Object;
            pop
        end local 4 // org.hsqldb.Expression col
        12: .line 2428
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ -1
      StackMap locals:
      StackMap stack:
        13: iload 3 /* i */
            ifge 7
        end local 3 // int i
        14: .line 2440
            aload 1 /* set */
            invokevirtual org.hsqldb.lib.OrderedHashSet.isEmpty:()Z
            ifeq 16
        15: .line 2441
            aconst_null
            astore 1 /* set */
        16: .line 2444
      StackMap locals:
      StackMap stack:
            aload 1 /* set */
            areturn
        end local 2 // org.hsqldb.lib.OrderedHashSet exclude
        end local 1 // org.hsqldb.lib.OrderedHashSet set
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   17     0     this  Lorg/hsqldb/QuerySpecification;
            0   17     1      set  Lorg/hsqldb/lib/OrderedHashSet;
            0   17     2  exclude  Lorg/hsqldb/lib/OrderedHashSet;
            6   14     3        i  I
            8   12     4      col  Lorg/hsqldb/Expression;
    MethodParameters:
         Name  Flags
      set      
      exclude  

  public 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: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.hsqldb.QuerySpecification 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 2450
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: goto 6
         2: .line 2451
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            aload 1 /* set */
            aload 2 /* typeSet */
         3: .line 2452
            aload 3 /* stopAtTypeSet */
         4: .line 2451
            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 2450
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartAggregates:I
            if_icmplt 2
        end local 4 // int i
         7: .line 2455
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            ifnull 11
         8: .line 2456
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            aload 1 /* set */
            aload 2 /* typeSet */
         9: .line 2457
            aload 3 /* stopAtTypeSet */
        10: .line 2456
            invokevirtual org.hsqldb.Expression.collectAllExpressions:(Lorg/hsqldb/lib/OrderedHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 1 /* set */
        11: .line 2460
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
            ifnull 15
        12: .line 2461
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
            aload 1 /* set */
            aload 2 /* typeSet */
        13: .line 2462
            aload 3 /* stopAtTypeSet */
        14: .line 2461
            invokevirtual org.hsqldb.Expression.collectAllExpressions:(Lorg/hsqldb/lib/OrderedHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            astore 1 /* set */
        15: .line 2465
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        16: goto 21
        17: .line 2466
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iload 4 /* i */
            aaload
            aload 1 /* set */
            aload 2 /* typeSet */
        18: .line 2467
            aload 3 /* stopAtTypeSet */
        19: .line 2466
            invokevirtual org.hsqldb.RangeVariable.collectAllExpressions:(Lorg/hsqldb/lib/OrderedHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;Lorg/hsqldb/lib/OrderedIntHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            pop
        20: .line 2465
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        21: iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            if_icmplt 17
        end local 4 // int i
        22: .line 2470
            aload 1 /* set */
            areturn
        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.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   23     0           this  Lorg/hsqldb/QuerySpecification;
            0   23     1            set  Lorg/hsqldb/lib/OrderedHashSet;
            0   23     2        typeSet  Lorg/hsqldb/lib/OrderedIntHashSet;
            0   23     3  stopAtTypeSet  Lorg/hsqldb/lib/OrderedIntHashSet;
            1    7     4              i  I
           16   22     4              i  I
    MethodParameters:
               Name  Flags
      set            
      typeSet        
      stopAtTypeSet  

  public void collectObjectNames(org.hsqldb.lib.Set);
    descriptor: (Lorg/hsqldb/lib/Set;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.lib.Set set
         0: .line 2475
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 4
         2: .line 2476
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            aload 1 /* set */
            invokevirtual org.hsqldb.Expression.collectObjectNames:(Lorg/hsqldb/lib/Set;)V
         3: .line 2475
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartAggregates:I
            if_icmplt 2
        end local 2 // int i
         5: .line 2479
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            ifnull 7
         6: .line 2480
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            aload 1 /* set */
            invokevirtual org.hsqldb.Expression.collectObjectNames:(Lorg/hsqldb/lib/Set;)V
         7: .line 2483
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
            ifnull 9
         8: .line 2484
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
            aload 1 /* set */
            invokevirtual org.hsqldb.Expression.collectObjectNames:(Lorg/hsqldb/lib/Set;)V
         9: .line 2487
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        10: aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            istore 3 /* len */
        start local 3 // int len
        11: goto 15
        12: .line 2488
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iload 2 /* i */
            aaload
            invokevirtual org.hsqldb.RangeVariable.getTable:()Lorg/hsqldb/Table;
            invokevirtual org.hsqldb.Table.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            astore 4 /* name */
        start local 4 // org.hsqldb.HsqlNameManager$HsqlName name
        13: .line 2490
            aload 1 /* set */
            aload 4 /* name */
            invokeinterface org.hsqldb.lib.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // org.hsqldb.HsqlNameManager$HsqlName name
        14: .line 2487
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 2 /* i */
            iload 3 /* len */
            if_icmplt 12
        end local 3 // int len
        end local 2 // int i
        16: .line 2492
            return
        end local 1 // org.hsqldb.lib.Set set
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   17     0  this  Lorg/hsqldb/QuerySpecification;
            0   17     1   set  Lorg/hsqldb/lib/Set;
            1    5     2     i  I
           10   16     2     i  I
           11   16     3   len  I
           13   14     4  name  Lorg/hsqldb/HsqlNameManager$HsqlName;
    MethodParameters:
      Name  Flags
      set   

  public void replaceColumnReferences(org.hsqldb.Session, org.hsqldb.RangeVariable, org.hsqldb.Expression[]);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/RangeVariable;[Lorg/hsqldb/Expression;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=4
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.RangeVariable range
        start local 3 // org.hsqldb.Expression[] list
         0: .line 2497
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: goto 6
         2: .line 2498
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 4 /* i */
            aaload
            aload 1 /* session */
         3: .line 2499
            aload 2 /* range */
            aload 3 /* list */
         4: .line 2498
            invokevirtual org.hsqldb.Expression.replaceColumnReferences:(Lorg/hsqldb/Session;Lorg/hsqldb/RangeVariable;[Lorg/hsqldb/Expression;)Lorg/hsqldb/Expression;
            aastore
         5: .line 2497
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartAggregates:I
            if_icmplt 2
        end local 4 // int i
         7: .line 2502
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            ifnull 11
         8: .line 2503
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            aload 1 /* session */
         9: .line 2504
            aload 2 /* range */
            aload 3 /* list */
        10: .line 2503
            invokevirtual org.hsqldb.Expression.replaceColumnReferences:(Lorg/hsqldb/Session;Lorg/hsqldb/RangeVariable;[Lorg/hsqldb/Expression;)Lorg/hsqldb/Expression;
            putfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
        11: .line 2507
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
            ifnull 15
        12: .line 2508
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
            aload 1 /* session */
        13: .line 2509
            aload 2 /* range */
            aload 3 /* list */
        14: .line 2508
            invokevirtual org.hsqldb.Expression.replaceColumnReferences:(Lorg/hsqldb/Session;Lorg/hsqldb/RangeVariable;[Lorg/hsqldb/Expression;)Lorg/hsqldb/Expression;
            putfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
        15: .line 2512
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        16: aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            istore 5 /* len */
        start local 5 // int len
        17: goto 20
        18: .line 2513
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iload 4 /* i */
            aaload
            aload 1 /* session */
            aload 2 /* range */
            aload 3 /* list */
            invokevirtual org.hsqldb.RangeVariable.replaceColumnReferences:(Lorg/hsqldb/Session;Lorg/hsqldb/RangeVariable;[Lorg/hsqldb/Expression;)V
        19: .line 2512
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        20: iload 4 /* i */
            iload 5 /* len */
            if_icmplt 18
        end local 5 // int len
        end local 4 // int i
        21: .line 2515
            return
        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.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   22     0     this  Lorg/hsqldb/QuerySpecification;
            0   22     1  session  Lorg/hsqldb/Session;
            0   22     2    range  Lorg/hsqldb/RangeVariable;
            0   22     3     list  [Lorg/hsqldb/Expression;
            1    7     4        i  I
           16   21     4        i  I
           17   21     5      len  I
    MethodParameters:
         Name  Flags
      session  
      range    
      list     

  public void replaceRangeVariables(org.hsqldb.RangeVariable[], org.hsqldb.RangeVariable[]);
    descriptor: ([Lorg/hsqldb/RangeVariable;[Lorg/hsqldb/RangeVariable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.RangeVariable[] ranges
        start local 2 // org.hsqldb.RangeVariable[] newRanges
         0: .line 2520
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         1: goto 4
         2: .line 2521
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[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
         3: .line 2520
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartAggregates:I
            if_icmplt 2
        end local 3 // int i
         5: .line 2524
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            ifnull 7
         6: .line 2525
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            aload 1 /* ranges */
            aload 2 /* newRanges */
            invokevirtual org.hsqldb.Expression.replaceRangeVariables:([Lorg/hsqldb/RangeVariable;[Lorg/hsqldb/RangeVariable;)V
         7: .line 2528
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
            ifnull 9
         8: .line 2529
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
            aload 1 /* ranges */
            aload 2 /* newRanges */
            invokevirtual org.hsqldb.Expression.replaceRangeVariables:([Lorg/hsqldb/RangeVariable;[Lorg/hsqldb/RangeVariable;)V
         9: .line 2532
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        10: aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            istore 4 /* len */
        start local 4 // int len
        11: goto 14
        12: .line 2533
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iload 3 /* i */
            aaload
            invokevirtual org.hsqldb.RangeVariable.getSubqueries:()Lorg/hsqldb/lib/OrderedHashSet;
            pop
        13: .line 2532
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 3 /* i */
            iload 4 /* len */
            if_icmplt 12
        end local 4 // int len
        end local 3 // int i
        15: .line 2535
            return
        end local 2 // org.hsqldb.RangeVariable[] newRanges
        end local 1 // org.hsqldb.RangeVariable[] ranges
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   16     0       this  Lorg/hsqldb/QuerySpecification;
            0   16     1     ranges  [Lorg/hsqldb/RangeVariable;
            0   16     2  newRanges  [Lorg/hsqldb/RangeVariable;
            1    5     3          i  I
           10   15     3          i  I
           11   15     4        len  I
    MethodParameters:
           Name  Flags
      ranges     
      newRanges  

  public void replaceExpressions(org.hsqldb.lib.OrderedHashSet, int);
    descriptor: (Lorg/hsqldb/lib/OrderedHashSet;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.lib.OrderedHashSet expressions
        start local 2 // int resultRangePosition
         0: .line 2540
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         1: goto 6
         2: .line 2541
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 3 /* i */
            aaload
            aload 1 /* expressions */
         3: .line 2542
            iload 2 /* resultRangePosition */
         4: .line 2541
            invokevirtual org.hsqldb.Expression.replaceExpressions:(Lorg/hsqldb/lib/OrderedHashSet;I)Lorg/hsqldb/Expression;
            aastore
         5: .line 2540
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexStartAggregates:I
            if_icmplt 2
        end local 3 // int i
         7: .line 2545
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            ifnull 11
         8: .line 2546
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            aload 1 /* expressions */
         9: .line 2547
            iload 2 /* resultRangePosition */
        10: .line 2546
            invokevirtual org.hsqldb.Expression.replaceExpressions:(Lorg/hsqldb/lib/OrderedHashSet;I)Lorg/hsqldb/Expression;
            putfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
        11: .line 2550
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
            ifnull 15
        12: .line 2551
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
            aload 1 /* expressions */
        13: .line 2552
            iload 2 /* resultRangePosition */
        14: .line 2551
            invokevirtual org.hsqldb.Expression.replaceExpressions:(Lorg/hsqldb/lib/OrderedHashSet;I)Lorg/hsqldb/Expression;
            putfield org.hsqldb.QuerySpecification.havingCondition:Lorg/hsqldb/Expression;
        15: .line 2555
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        16: aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            istore 4 /* len */
        start local 4 // int len
        17: goto 22
        18: .line 2556
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iload 3 /* i */
            aaload
            aload 1 /* expressions */
        19: .line 2557
            iload 2 /* resultRangePosition */
        20: .line 2556
            invokevirtual org.hsqldb.RangeVariable.replaceExpressions:(Lorg/hsqldb/lib/OrderedHashSet;I)V
        21: .line 2555
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        22: iload 3 /* i */
            iload 4 /* len */
            if_icmplt 18
        end local 4 // int len
        end local 3 // int i
        23: .line 2559
            return
        end local 2 // int resultRangePosition
        end local 1 // org.hsqldb.lib.OrderedHashSet expressions
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   24     0                 this  Lorg/hsqldb/QuerySpecification;
            0   24     1          expressions  Lorg/hsqldb/lib/OrderedHashSet;
            0   24     2  resultRangePosition  I
            1    7     3                    i  I
           16   23     3                    i  I
           17   23     4                  len  I
    MethodParameters:
                     Name  Flags
      expressions          
      resultRangePosition  

  public void setReturningResult();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.hsqldb.QuerySpecification this
         0: .line 2566
            aload 0 /* this */
            invokevirtual org.hsqldb.QuerySpecification.setReturningResultSet:()V
         1: .line 2568
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.QuerySpecification.acceptsSequences:Z
         2: .line 2569
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.QuerySpecification.isTopLevel:Z
         3: .line 2570
            return
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/hsqldb/QuerySpecification;

  void setReturningResultSet();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.hsqldb.QuerySpecification this
         0: .line 2573
            aload 0 /* this */
            bipush 23
            putfield org.hsqldb.QuerySpecification.persistenceScope:I
         1: .line 2574
            return
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/hsqldb/QuerySpecification;

  public boolean isSingleColumn();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.hsqldb.QuerySpecification this
         0: .line 2577
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            iconst_1
            if_icmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/hsqldb/QuerySpecification;

  public java.lang.String[] getColumnNames();
    descriptor: ()[Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // org.hsqldb.QuerySpecification this
         0: .line 2582
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            anewarray java.lang.String
            astore 1 /* names */
        start local 1 // java.lang.String[] names
         1: .line 2584
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 5
         3: .line 2585
      StackMap locals: java.lang.String[] int
      StackMap stack:
            aload 1 /* names */
            iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            iload 2 /* i */
            aaload
            invokevirtual org.hsqldb.Expression.getAlias:()Ljava/lang/String;
            aastore
         4: .line 2584
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            if_icmplt 3
        end local 2 // int i
         6: .line 2588
            aload 1 /* names */
            areturn
        end local 1 // java.lang.String[] names
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lorg/hsqldb/QuerySpecification;
            1    7     1  names  [Ljava/lang/String;
            2    6     2      i  I

  public org.hsqldb.types.Type[] getColumnTypes();
    descriptor: ()[Lorg/hsqldb/types/Type;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.hsqldb.QuerySpecification this
         0: .line 2593
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resultColumnTypes:[Lorg/hsqldb/types/Type;
            arraylength
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            if_icmpne 2
         1: .line 2594
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resultColumnTypes:[Lorg/hsqldb/types/Type;
            areturn
         2: .line 2597
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.indexLimitVisible:I
            anewarray org.hsqldb.types.Type
            astore 1 /* types */
        start local 1 // org.hsqldb.types.Type[] types
         3: .line 2599
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.resultColumnTypes:[Lorg/hsqldb/types/Type;
            aload 1 /* types */
            aload 1 /* types */
            arraylength
            invokestatic org.hsqldb.lib.ArrayUtil.copyArray:(Ljava/lang/Object;Ljava/lang/Object;I)V
         4: .line 2601
            aload 1 /* types */
            areturn
        end local 1 // org.hsqldb.types.Type[] types
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lorg/hsqldb/QuerySpecification;
            3    5     1  types  [Lorg/hsqldb/types/Type;

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

  public int[] getBaseTableColumnMap();
    descriptor: ()[I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.QuerySpecification this
         0: .line 2609
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.columnMap:[I
            areturn
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/QuerySpecification;

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

  void getBaseTableNames(org.hsqldb.lib.OrderedHashSet);
    descriptor: (Lorg/hsqldb/lib/OrderedHashSet;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.lib.OrderedHashSet set
         0: .line 2618
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 12
         2: .line 2619
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iload 2 /* i */
            aaload
            getfield org.hsqldb.RangeVariable.rangeTable:Lorg/hsqldb/Table;
            astore 3 /* rangeTable */
        start local 3 // org.hsqldb.Table rangeTable
         3: .line 2620
            aload 3 /* rangeTable */
            invokevirtual org.hsqldb.Table.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            astore 4 /* name */
        start local 4 // org.hsqldb.HsqlNameManager$HsqlName name
         4: .line 2622
            aload 3 /* rangeTable */
            invokevirtual org.hsqldb.Table.isView:()Z
            ifeq 6
         5: .line 2623
            goto 11
         6: .line 2626
      StackMap locals: org.hsqldb.Table org.hsqldb.HsqlNameManager$HsqlName
      StackMap stack:
            aload 3 /* rangeTable */
            invokevirtual org.hsqldb.Table.isDataReadOnly:()Z
            ifne 11
            aload 3 /* rangeTable */
            invokevirtual org.hsqldb.Table.isTemp:()Z
            ifeq 8
         7: .line 2627
            goto 11
         8: .line 2630
      StackMap locals:
      StackMap stack:
            aload 4 /* name */
            getfield org.hsqldb.HsqlNameManager$HsqlName.schema:Lorg/hsqldb/HsqlNameManager$HsqlName;
            getstatic org.hsqldb.SqlInvariants.SYSTEM_SCHEMA_HSQLNAME:Lorg/hsqldb/HsqlNameManager$HsqlName;
            if_acmpne 10
         9: .line 2631
            goto 11
        10: .line 2634
      StackMap locals:
      StackMap stack:
            aload 1 /* set */
            aload 4 /* name */
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // org.hsqldb.HsqlNameManager$HsqlName name
        end local 3 // org.hsqldb.Table rangeTable
        11: .line 2618
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            if_icmplt 2
        end local 2 // int i
        13: .line 2636
            return
        end local 1 // org.hsqldb.lib.OrderedHashSet set
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   14     0        this  Lorg/hsqldb/QuerySpecification;
            0   14     1         set  Lorg/hsqldb/lib/OrderedHashSet;
            1   13     2           i  I
            3   11     3  rangeTable  Lorg/hsqldb/Table;
            4   11     4        name  Lorg/hsqldb/HsqlNameManager$HsqlName;
    MethodParameters:
      Name  Flags
      set   

  boolean isEquivalent(org.hsqldb.QueryExpression);
    descriptor: (Lorg/hsqldb/QueryExpression;)Z
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.hsqldb.QuerySpecification this
        start local 1 // org.hsqldb.QueryExpression other
         0: .line 2643
            aload 1 /* other */
            instanceof org.hsqldb.QuerySpecification
            ifne 2
         1: .line 2644
            iconst_0
            ireturn
         2: .line 2647
      StackMap locals:
      StackMap stack:
            aload 1 /* other */
            checkcast org.hsqldb.QuerySpecification
            astore 2 /* otherSpec */
        start local 2 // org.hsqldb.QuerySpecification otherSpec
         3: .line 2649
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            aload 2 /* otherSpec */
            getfield org.hsqldb.QuerySpecification.exprColumns:[Lorg/hsqldb/Expression;
            invokestatic org.hsqldb.Expression.equals:([Lorg/hsqldb/Expression;[Lorg/hsqldb/Expression;)Z
            ifne 5
         4: .line 2650
            iconst_0
            ireturn
         5: .line 2653
      StackMap locals: org.hsqldb.QuerySpecification
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            aload 2 /* otherSpec */
            getfield org.hsqldb.QuerySpecification.queryCondition:Lorg/hsqldb/Expression;
            invokestatic org.hsqldb.Expression.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifne 7
         6: .line 2654
            iconst_0
            ireturn
         7: .line 2657
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            aload 2 /* otherSpec */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            if_icmpeq 9
         8: .line 2658
            iconst_0
            ireturn
         9: .line 2661
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        10: goto 16
        11: .line 2662
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iload 3 /* i */
            aaload
            invokevirtual org.hsqldb.RangeVariable.getTable:()Lorg/hsqldb/Table;
        12: .line 2663
            aload 2 /* otherSpec */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            iload 3 /* i */
            aaload
            invokevirtual org.hsqldb.RangeVariable.getTable:()Lorg/hsqldb/Table;
        13: .line 2662
            if_acmpeq 15
        14: .line 2664
            iconst_0
            ireturn
        15: .line 2661
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.QuerySpecification.rangeVariables:[Lorg/hsqldb/RangeVariable;
            arraylength
            if_icmplt 11
        end local 3 // int i
        17: .line 2668
            iconst_1
            ireturn
        end local 2 // org.hsqldb.QuerySpecification otherSpec
        end local 1 // org.hsqldb.QueryExpression other
        end local 0 // org.hsqldb.QuerySpecification this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   18     0       this  Lorg/hsqldb/QuerySpecification;
            0   18     1      other  Lorg/hsqldb/QueryExpression;
            3   18     2  otherSpec  Lorg/hsqldb/QuerySpecification;
           10   17     3          i  I
    MethodParameters:
       Name  Flags
      other  
}
SourceFile: "QuerySpecification.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
  public RangeIteratorMain = org.hsqldb.RangeVariable$RangeIteratorMain of org.hsqldb.RangeVariable
  public RangeIteratorRight = org.hsqldb.RangeVariable$RangeIteratorRight of org.hsqldb.RangeVariable