public class org.h2.result.LocalResultImpl implements org.h2.result.LocalResult
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.h2.result.LocalResultImpl
  super_class: java.lang.Object
{
  private int maxMemoryRows;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private org.h2.engine.Session session;
    descriptor: Lorg/h2/engine/Session;
    flags: (0x0002) ACC_PRIVATE

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

  private org.h2.expression.Expression[] expressions;
    descriptor: [Lorg/h2/expression/Expression;
    flags: (0x0002) ACC_PRIVATE

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

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

  private java.util.ArrayList<org.h2.value.Value[]> rows;
    descriptor: Ljava/util/ArrayList;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/ArrayList<[Lorg/h2/value/Value;>;

  private org.h2.result.SortOrder sort;
    descriptor: Lorg/h2/result/SortOrder;
    flags: (0x0002) ACC_PRIVATE

  private java.util.TreeMap<org.h2.value.Value, org.h2.value.Value[]> distinctRows;
    descriptor: Ljava/util/TreeMap;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/TreeMap<Lorg/h2/value/Value;[Lorg/h2/value/Value;>;

  private org.h2.value.Value[] currentRow;
    descriptor: [Lorg/h2/value/Value;
    flags: (0x0002) ACC_PRIVATE

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

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

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

  private org.h2.result.SortOrder withTiesSortOrder;
    descriptor: Lorg/h2/result/SortOrder;
    flags: (0x0002) ACC_PRIVATE

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

  private org.h2.result.ResultExternal external;
    descriptor: Lorg/h2/result/ResultExternal;
    flags: (0x0002) ACC_PRIVATE

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

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

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

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

  private java.lang.Boolean containsNull;
    descriptor: Ljava/lang/Boolean;
    flags: (0x0002) ACC_PRIVATE

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

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

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.h2.result.LocalResultImpl this
         0: .line 56
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 42
            aload 0 /* this */
            iconst_m1
            putfield org.h2.result.LocalResultImpl.limit:I
         2: .line 58
            return
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/h2/result/LocalResultImpl;

  public void <init>(org.h2.engine.Session, org.h2.expression.Expression[], int);
    descriptor: (Lorg/h2/engine/Session;[Lorg/h2/expression/Expression;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=4
        start local 0 // org.h2.result.LocalResultImpl this
        start local 1 // org.h2.engine.Session session
        start local 2 // org.h2.expression.Expression[] expressions
        start local 3 // int visibleColumnCount
         0: .line 67
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 42
            aload 0 /* this */
            iconst_m1
            putfield org.h2.result.LocalResultImpl.limit:I
         2: .line 69
            aload 0 /* this */
            aload 1 /* session */
            putfield org.h2.result.LocalResultImpl.session:Lorg/h2/engine/Session;
         3: .line 70
            aload 1 /* session */
            ifnonnull 6
         4: .line 71
            aload 0 /* this */
            ldc 2147483647
            putfield org.h2.result.LocalResultImpl.maxMemoryRows:I
         5: .line 72
            goto 11
         6: .line 73
      StackMap locals: org.h2.result.LocalResultImpl org.h2.engine.Session org.h2.expression.Expression[] int
      StackMap stack:
            aload 1 /* session */
            invokevirtual org.h2.engine.Session.getDatabase:()Lorg/h2/engine/Database;
            astore 4 /* db */
        start local 4 // org.h2.engine.Database db
         7: .line 74
            aload 4 /* db */
            invokevirtual org.h2.engine.Database.isPersistent:()Z
            ifeq 10
            aload 4 /* db */
            invokevirtual org.h2.engine.Database.isReadOnly:()Z
            ifne 10
         8: .line 75
            aload 0 /* this */
            aload 1 /* session */
            invokevirtual org.h2.engine.Session.getDatabase:()Lorg/h2/engine/Database;
            invokevirtual org.h2.engine.Database.getMaxMemoryRows:()I
            putfield org.h2.result.LocalResultImpl.maxMemoryRows:I
         9: .line 76
            goto 11
        10: .line 77
      StackMap locals: org.h2.engine.Database
      StackMap stack:
            aload 0 /* this */
            ldc 2147483647
            putfield org.h2.result.LocalResultImpl.maxMemoryRows:I
        end local 4 // org.h2.engine.Database db
        11: .line 80
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokestatic org.h2.util.Utils.newSmallArrayList:()Ljava/util/ArrayList;
            putfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
        12: .line 81
            aload 0 /* this */
            iload 3 /* visibleColumnCount */
            putfield org.h2.result.LocalResultImpl.visibleColumnCount:I
        13: .line 82
            aload 0 /* this */
            iconst_m1
            putfield org.h2.result.LocalResultImpl.rowId:I
        14: .line 83
            aload 0 /* this */
            aload 2 /* expressions */
            putfield org.h2.result.LocalResultImpl.expressions:[Lorg/h2/expression/Expression;
        15: .line 84
            return
        end local 3 // int visibleColumnCount
        end local 2 // org.h2.expression.Expression[] expressions
        end local 1 // org.h2.engine.Session session
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   16     0                this  Lorg/h2/result/LocalResultImpl;
            0   16     1             session  Lorg/h2/engine/Session;
            0   16     2         expressions  [Lorg/h2/expression/Expression;
            0   16     3  visibleColumnCount  I
            7   11     4                  db  Lorg/h2/engine/Database;
    MethodParameters:
                    Name  Flags
      session             
      expressions         
      visibleColumnCount  

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

  public void setMaxMemoryRows(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.result.LocalResultImpl this
        start local 1 // int maxValue
         0: .line 93
            aload 0 /* this */
            iload 1 /* maxValue */
            putfield org.h2.result.LocalResultImpl.maxMemoryRows:I
         1: .line 94
            return
        end local 1 // int maxValue
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/h2/result/LocalResultImpl;
            0    2     1  maxValue  I
    MethodParameters:
          Name  Flags
      maxValue  

  public org.h2.result.LocalResultImpl createShallowCopy(org.h2.engine.SessionInterface);
    descriptor: (Lorg/h2/engine/SessionInterface;)Lorg/h2/result/LocalResultImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.h2.result.LocalResultImpl this
        start local 1 // org.h2.engine.SessionInterface targetSession
         0: .line 105
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
            ifnonnull 2
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
            ifnull 1
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rowCount:I
            if_icmpge 2
         1: .line 106
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
         2: .line 108
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.containsLobs:Z
            ifeq 4
         3: .line 109
            aconst_null
            areturn
         4: .line 111
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 2 /* e2 */
        start local 2 // org.h2.result.ResultExternal e2
         5: .line 112
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
            ifnull 9
         6: .line 113
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
            invokeinterface org.h2.result.ResultExternal.createShallowCopy:()Lorg/h2/result/ResultExternal;
            astore 2 /* e2 */
         7: .line 114
            aload 2 /* e2 */
            ifnonnull 9
         8: .line 115
            aconst_null
            areturn
         9: .line 118
      StackMap locals: org.h2.result.ResultExternal
      StackMap stack:
            new org.h2.result.LocalResultImpl
            dup
            invokespecial org.h2.result.LocalResultImpl.<init>:()V
            astore 3 /* copy */
        start local 3 // org.h2.result.LocalResultImpl copy
        10: .line 119
            aload 3 /* copy */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.maxMemoryRows:I
            putfield org.h2.result.LocalResultImpl.maxMemoryRows:I
        11: .line 120
            aload 3 /* copy */
            aload 1 /* targetSession */
            checkcast org.h2.engine.Session
            putfield org.h2.result.LocalResultImpl.session:Lorg/h2/engine/Session;
        12: .line 121
            aload 3 /* copy */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.visibleColumnCount:I
            putfield org.h2.result.LocalResultImpl.visibleColumnCount:I
        13: .line 122
            aload 3 /* copy */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.expressions:[Lorg/h2/expression/Expression;
            putfield org.h2.result.LocalResultImpl.expressions:[Lorg/h2/expression/Expression;
        14: .line 123
            aload 3 /* copy */
            iconst_m1
            putfield org.h2.result.LocalResultImpl.rowId:I
        15: .line 124
            aload 3 /* copy */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rowCount:I
            putfield org.h2.result.LocalResultImpl.rowCount:I
        16: .line 125
            aload 3 /* copy */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
            putfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
        17: .line 126
            aload 3 /* copy */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.sort:Lorg/h2/result/SortOrder;
            putfield org.h2.result.LocalResultImpl.sort:Lorg/h2/result/SortOrder;
        18: .line 127
            aload 3 /* copy */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
            putfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
        19: .line 128
            aload 3 /* copy */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.distinct:Z
            putfield org.h2.result.LocalResultImpl.distinct:Z
        20: .line 129
            aload 3 /* copy */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.distinctIndexes:[I
            putfield org.h2.result.LocalResultImpl.distinctIndexes:[I
        21: .line 130
            aload 3 /* copy */
            aconst_null
            putfield org.h2.result.LocalResultImpl.currentRow:[Lorg/h2/value/Value;
        22: .line 131
            aload 3 /* copy */
            iconst_0
            putfield org.h2.result.LocalResultImpl.offset:I
        23: .line 132
            aload 3 /* copy */
            iconst_m1
            putfield org.h2.result.LocalResultImpl.limit:I
        24: .line 133
            aload 3 /* copy */
            aload 2 /* e2 */
            putfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
        25: .line 134
            aload 3 /* copy */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.containsNull:Ljava/lang/Boolean;
            putfield org.h2.result.LocalResultImpl.containsNull:Ljava/lang/Boolean;
        26: .line 135
            aload 3 /* copy */
            areturn
        end local 3 // org.h2.result.LocalResultImpl copy
        end local 2 // org.h2.result.ResultExternal e2
        end local 1 // org.h2.engine.SessionInterface targetSession
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   27     0           this  Lorg/h2/result/LocalResultImpl;
            0   27     1  targetSession  Lorg/h2/engine/SessionInterface;
            5   27     2             e2  Lorg/h2/result/ResultExternal;
           10   27     3           copy  Lorg/h2/result/LocalResultImpl;
    MethodParameters:
               Name  Flags
      targetSession  

  public void setSortOrder(org.h2.result.SortOrder);
    descriptor: (Lorg/h2/result/SortOrder;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.result.LocalResultImpl this
        start local 1 // org.h2.result.SortOrder sort
         0: .line 140
            aload 0 /* this */
            aload 1 /* sort */
            putfield org.h2.result.LocalResultImpl.sort:Lorg/h2/result/SortOrder;
         1: .line 141
            return
        end local 1 // org.h2.result.SortOrder sort
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/h2/result/LocalResultImpl;
            0    2     1  sort  Lorg/h2/result/SortOrder;
    MethodParameters:
      Name  Flags
      sort  

  public void setDistinct();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.h2.result.LocalResultImpl this
         0: .line 148
            getstatic org.h2.result.LocalResultImpl.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.distinctIndexes:[I
            ifnull 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 149
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield org.h2.result.LocalResultImpl.distinct:Z
         2: .line 150
            aload 0 /* this */
            new java.util.TreeMap
            dup
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.session:Lorg/h2/engine/Session;
            invokevirtual org.h2.engine.Session.getDatabase:()Lorg/h2/engine/Database;
            invokevirtual org.h2.engine.Database.getCompareMode:()Lorg/h2/value/CompareMode;
            invokespecial java.util.TreeMap.<init>:(Ljava/util/Comparator;)V
            putfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
         3: .line 151
            return
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/h2/result/LocalResultImpl;

  public void setDistinct(int[]);
    descriptor: ([I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.h2.result.LocalResultImpl this
        start local 1 // int[] distinctIndexes
         0: .line 160
            getstatic org.h2.result.LocalResultImpl.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.distinct:Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 161
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* distinctIndexes */
            putfield org.h2.result.LocalResultImpl.distinctIndexes:[I
         2: .line 162
            aload 0 /* this */
            new java.util.TreeMap
            dup
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.session:Lorg/h2/engine/Session;
            invokevirtual org.h2.engine.Session.getDatabase:()Lorg/h2/engine/Database;
            invokevirtual org.h2.engine.Database.getCompareMode:()Lorg/h2/value/CompareMode;
            invokespecial java.util.TreeMap.<init>:(Ljava/util/Comparator;)V
            putfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
         3: .line 163
            return
        end local 1 // int[] distinctIndexes
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    4     0             this  Lorg/h2/result/LocalResultImpl;
            0    4     1  distinctIndexes  [I
    MethodParameters:
                 Name  Flags
      distinctIndexes  

  private boolean isAnyDistinct();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.result.LocalResultImpl this
         0: .line 169
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.distinct:Z
            ifne 1
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.distinctIndexes:[I
            ifnonnull 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/h2/result/LocalResultImpl;

  public void removeDistinct(org.h2.value.Value[]);
    descriptor: ([Lorg/h2/value/Value;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.h2.result.LocalResultImpl this
        start local 1 // org.h2.value.Value[] values
         0: .line 179
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.distinct:Z
            ifne 2
         1: .line 180
            invokestatic org.h2.message.DbException.throwInternalError:()Ljava/lang/RuntimeException;
            pop
         2: .line 182
      StackMap locals:
      StackMap stack:
            getstatic org.h2.result.LocalResultImpl.$assertionsDisabled:Z
            ifne 3
            aload 1 /* values */
            arraylength
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.visibleColumnCount:I
            if_icmpeq 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 183
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
            ifnull 8
         4: .line 184
            aload 1 /* values */
            invokestatic org.h2.value.ValueRow.get:([Lorg/h2/value/Value;)Lorg/h2/value/ValueRow;
            astore 2 /* array */
        start local 2 // org.h2.value.ValueRow array
         5: .line 185
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
            aload 2 /* array */
            invokevirtual java.util.TreeMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         6: .line 186
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
            invokevirtual java.util.TreeMap.size:()I
            putfield org.h2.result.LocalResultImpl.rowCount:I
        end local 2 // org.h2.value.ValueRow array
         7: .line 187
            goto 9
         8: .line 188
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
            aload 1 /* values */
            invokeinterface org.h2.result.ResultExternal.removeRow:([Lorg/h2/value/Value;)I
            putfield org.h2.result.LocalResultImpl.rowCount:I
         9: .line 190
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.h2.value.Value[] values
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Lorg/h2/result/LocalResultImpl;
            0   10     1  values  [Lorg/h2/value/Value;
            5    7     2   array  Lorg/h2/value/ValueRow;
    MethodParameters:
        Name  Flags
      values  

  public boolean containsDistinct(org.h2.value.Value[]);
    descriptor: ([Lorg/h2/value/Value;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // org.h2.result.LocalResultImpl this
        start local 1 // org.h2.value.Value[] values
         0: .line 200
            getstatic org.h2.result.LocalResultImpl.$assertionsDisabled:Z
            ifne 1
            aload 1 /* values */
            arraylength
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.visibleColumnCount:I
            if_icmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 201
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
            ifnull 3
         2: .line 202
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
            aload 1 /* values */
            invokeinterface org.h2.result.ResultExternal.contains:([Lorg/h2/value/Value;)Z
            ireturn
         3: .line 204
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
            ifnonnull 10
         4: .line 205
            aload 0 /* this */
            new java.util.TreeMap
            dup
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.session:Lorg/h2/engine/Session;
            invokevirtual org.h2.engine.Session.getDatabase:()Lorg/h2/engine/Database;
            invokevirtual org.h2.engine.Database.getCompareMode:()Lorg/h2/value/CompareMode;
            invokespecial java.util.TreeMap.<init>:(Ljava/util/Comparator;)V
            putfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
         5: .line 206
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 3
            goto 9
      StackMap locals: org.h2.result.LocalResultImpl org.h2.value.Value[] top java.util.Iterator
      StackMap stack:
         6: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.h2.value.Value[]
            astore 2 /* row */
        start local 2 // org.h2.value.Value[] row
         7: .line 207
            aload 0 /* this */
            aload 2 /* row */
            invokevirtual org.h2.result.LocalResultImpl.getDistinctRow:([Lorg/h2/value/Value;)Lorg/h2/value/ValueRow;
            astore 4 /* array */
        start local 4 // org.h2.value.ValueRow array
         8: .line 208
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
            aload 4 /* array */
            aload 4 /* array */
            invokevirtual org.h2.value.ValueRow.getList:()[Lorg/h2/value/Value;
            invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 4 // org.h2.value.ValueRow array
        end local 2 // org.h2.value.Value[] row
         9: .line 206
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        10: .line 211
      StackMap locals: org.h2.result.LocalResultImpl org.h2.value.Value[]
      StackMap stack:
            aload 1 /* values */
            invokestatic org.h2.value.ValueRow.get:([Lorg/h2/value/Value;)Lorg/h2/value/ValueRow;
            astore 2 /* array */
        start local 2 // org.h2.value.ValueRow array
        11: .line 212
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
            aload 2 /* array */
            invokevirtual java.util.TreeMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            ifnull 12
            iconst_1
            ireturn
      StackMap locals: org.h2.value.ValueRow
      StackMap stack:
        12: iconst_0
            ireturn
        end local 2 // org.h2.value.ValueRow array
        end local 1 // org.h2.value.Value[] values
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   13     0    this  Lorg/h2/result/LocalResultImpl;
            0   13     1  values  [Lorg/h2/value/Value;
            7    9     2     row  [Lorg/h2/value/Value;
            8    9     4   array  Lorg/h2/value/ValueRow;
           11   13     2   array  Lorg/h2/value/ValueRow;
    MethodParameters:
        Name  Flags
      values  

  public boolean containsNull();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // org.h2.result.LocalResultImpl this
         0: .line 217
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.containsNull:Ljava/lang/Boolean;
            astore 1 /* r */
        start local 1 // java.lang.Boolean r
         1: .line 218
            aload 1 /* r */
            ifnonnull 16
         2: .line 219
            iconst_0
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            astore 1 /* r */
         3: .line 220
            aload 0 /* this */
            invokevirtual org.h2.result.LocalResultImpl.reset:()V
         4: .line 221
            goto 13
         5: .line 222
      StackMap locals: java.lang.Boolean
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.currentRow:[Lorg/h2/value/Value;
            astore 2 /* row */
        start local 2 // org.h2.value.Value[] row
         6: .line 223
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         7: goto 12
         8: .line 224
      StackMap locals: org.h2.value.Value[] int
      StackMap stack:
            aload 2 /* row */
            iload 3 /* i */
            aaload
            invokevirtual org.h2.value.Value.containsNull:()Z
            ifeq 11
         9: .line 225
            iconst_1
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            astore 1 /* r */
        10: .line 226
            goto 14
        11: .line 223
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 3 /* i */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.visibleColumnCount:I
            if_icmplt 8
        end local 3 // int i
        end local 2 // org.h2.value.Value[] row
        13: .line 221
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.h2.result.LocalResultImpl.next:()Z
            ifne 5
        14: .line 230
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.h2.result.LocalResultImpl.reset:()V
        15: .line 231
            aload 0 /* this */
            aload 1 /* r */
            putfield org.h2.result.LocalResultImpl.containsNull:Ljava/lang/Boolean;
        16: .line 233
      StackMap locals:
      StackMap stack:
            aload 1 /* r */
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
        end local 1 // java.lang.Boolean r
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   17     0  this  Lorg/h2/result/LocalResultImpl;
            1   17     1     r  Ljava/lang/Boolean;
            6   13     2   row  [Lorg/h2/value/Value;
            7   13     3     i  I

  public void reset();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.h2.result.LocalResultImpl this
         0: .line 238
            aload 0 /* this */
            iconst_m1
            putfield org.h2.result.LocalResultImpl.rowId:I
         1: .line 239
            aload 0 /* this */
            aconst_null
            putfield org.h2.result.LocalResultImpl.currentRow:[Lorg/h2/value/Value;
         2: .line 240
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
            ifnull 4
         3: .line 241
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
            invokeinterface org.h2.result.ResultExternal.reset:()V
         4: .line 243
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/h2/result/LocalResultImpl;

  public org.h2.value.Value[] currentRow();
    descriptor: ()[Lorg/h2/value/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.result.LocalResultImpl this
         0: .line 247
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.currentRow:[Lorg/h2/value/Value;
            areturn
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/result/LocalResultImpl;

  public boolean next();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.h2.result.LocalResultImpl this
         0: .line 252
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.closed:Z
            ifne 9
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rowId:I
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rowCount:I
            if_icmpge 9
         1: .line 253
            aload 0 /* this */
            dup
            getfield org.h2.result.LocalResultImpl.rowId:I
            iconst_1
            iadd
            putfield org.h2.result.LocalResultImpl.rowId:I
         2: .line 254
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rowId:I
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rowCount:I
            if_icmpge 8
         3: .line 255
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
            ifnull 6
         4: .line 256
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
            invokeinterface org.h2.result.ResultExternal.next:()[Lorg/h2/value/Value;
            putfield org.h2.result.LocalResultImpl.currentRow:[Lorg/h2/value/Value;
         5: .line 257
            goto 7
         6: .line 258
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rowId:I
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast org.h2.value.Value[]
            putfield org.h2.result.LocalResultImpl.currentRow:[Lorg/h2/value/Value;
         7: .line 260
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         8: .line 262
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield org.h2.result.LocalResultImpl.currentRow:[Lorg/h2/value/Value;
         9: .line 264
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/h2/result/LocalResultImpl;

  public int getRowId();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.result.LocalResultImpl this
         0: .line 269
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rowId:I
            ireturn
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/result/LocalResultImpl;

  public boolean isAfterLast();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.h2.result.LocalResultImpl this
         0: .line 274
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rowId:I
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rowCount:I
            if_icmplt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/h2/result/LocalResultImpl;

  private void cloneLobs(org.h2.value.Value[]);
    descriptor: ([Lorg/h2/value/Value;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // org.h2.result.LocalResultImpl this
        start local 1 // org.h2.value.Value[] values
         0: .line 278
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 9
         2: .line 279
      StackMap locals: int
      StackMap stack:
            aload 1 /* values */
            iload 2 /* i */
            aaload
            astore 3 /* v */
        start local 3 // org.h2.value.Value v
         3: .line 280
            aload 3 /* v */
            invokevirtual org.h2.value.Value.copyToResult:()Lorg/h2/value/Value;
            astore 4 /* v2 */
        start local 4 // org.h2.value.Value v2
         4: .line 281
            aload 4 /* v2 */
            aload 3 /* v */
            if_acmpeq 8
         5: .line 282
            aload 0 /* this */
            iconst_1
            putfield org.h2.result.LocalResultImpl.containsLobs:Z
         6: .line 283
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.session:Lorg/h2/engine/Session;
            aload 4 /* v2 */
            invokevirtual org.h2.engine.Session.addTemporaryLob:(Lorg/h2/value/Value;)V
         7: .line 284
            aload 1 /* values */
            iload 2 /* i */
            aload 4 /* v2 */
            aastore
        end local 4 // org.h2.value.Value v2
        end local 3 // org.h2.value.Value v
         8: .line 278
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 2 /* i */
            aload 1 /* values */
            arraylength
            if_icmplt 2
        end local 2 // int i
        10: .line 287
            return
        end local 1 // org.h2.value.Value[] values
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Lorg/h2/result/LocalResultImpl;
            0   11     1  values  [Lorg/h2/value/Value;
            1   10     2       i  I
            3    8     3       v  Lorg/h2/value/Value;
            4    8     4      v2  Lorg/h2/value/Value;
    MethodParameters:
        Name  Flags
      values  

  private org.h2.value.ValueRow getDistinctRow(org.h2.value.Value[]);
    descriptor: ([Lorg/h2/value/Value;)Lorg/h2/value/ValueRow;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // org.h2.result.LocalResultImpl this
        start local 1 // org.h2.value.Value[] values
         0: .line 290
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.distinctIndexes:[I
            ifnull 10
         1: .line 291
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.distinctIndexes:[I
            arraylength
            istore 2 /* cnt */
        start local 2 // int cnt
         2: .line 292
            iload 2 /* cnt */
            anewarray org.h2.value.Value
            astore 3 /* newValues */
        start local 3 // org.h2.value.Value[] newValues
         3: .line 293
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         4: goto 7
         5: .line 294
      StackMap locals: int org.h2.value.Value[] int
      StackMap stack:
            aload 3 /* newValues */
            iload 4 /* i */
            aload 1 /* values */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.distinctIndexes:[I
            iload 4 /* i */
            iaload
            aaload
            aastore
         6: .line 293
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 4 /* i */
            iload 2 /* cnt */
            if_icmplt 5
        end local 4 // int i
         8: .line 296
            aload 3 /* newValues */
            astore 1 /* values */
        end local 3 // org.h2.value.Value[] newValues
        end local 2 // int cnt
         9: .line 297
            goto 12
      StackMap locals:
      StackMap stack:
        10: aload 1 /* values */
            arraylength
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.visibleColumnCount:I
            if_icmple 12
        11: .line 298
            aload 1 /* values */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.visibleColumnCount:I
            invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
            checkcast org.h2.value.Value[]
            astore 1 /* values */
        12: .line 300
      StackMap locals:
      StackMap stack:
            aload 1 /* values */
            invokestatic org.h2.value.ValueRow.get:([Lorg/h2/value/Value;)Lorg/h2/value/ValueRow;
            areturn
        end local 1 // org.h2.value.Value[] values
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   13     0       this  Lorg/h2/result/LocalResultImpl;
            0   13     1     values  [Lorg/h2/value/Value;
            2    9     2        cnt  I
            3    9     3  newValues  [Lorg/h2/value/Value;
            4    8     4          i  I
    MethodParameters:
        Name  Flags
      values  

  private void createExternalResult();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=1, args_size=1
        start local 0 // org.h2.result.LocalResultImpl this
         0: .line 304
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.session:Lorg/h2/engine/Session;
            invokevirtual org.h2.engine.Session.getDatabase:()Lorg/h2/engine/Database;
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.expressions:[Lorg/h2/expression/Expression;
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.distinct:Z
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.distinctIndexes:[I
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.visibleColumnCount:I
         1: .line 305
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.sort:Lorg/h2/result/SortOrder;
         2: .line 304
            invokestatic org.h2.mvstore.db.MVTempResult.of:(Lorg/h2/engine/Database;[Lorg/h2/expression/Expression;Z[IILorg/h2/result/SortOrder;)Lorg/h2/result/ResultExternal;
            putfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
         3: .line 306
            return
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/h2/result/LocalResultImpl;

  public void addRow(org.h2.value.Value[]);
    descriptor: ([Lorg/h2/value/Value;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.h2.result.LocalResultImpl this
        start local 1 // org.h2.value.Value[] values
         0: .line 315
            aload 0 /* this */
            aload 1 /* values */
            invokevirtual org.h2.result.LocalResultImpl.cloneLobs:([Lorg/h2/value/Value;)V
         1: .line 316
            aload 0 /* this */
            invokevirtual org.h2.result.LocalResultImpl.isAnyDistinct:()Z
            ifeq 15
         2: .line 317
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
            ifnull 13
         3: .line 318
            aload 0 /* this */
            aload 1 /* values */
            invokevirtual org.h2.result.LocalResultImpl.getDistinctRow:([Lorg/h2/value/Value;)Lorg/h2/value/ValueRow;
            astore 2 /* array */
        start local 2 // org.h2.value.ValueRow array
         4: .line 319
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
            aload 2 /* array */
            invokevirtual java.util.TreeMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.h2.value.Value[]
            astore 3 /* previous */
        start local 3 // org.h2.value.Value[] previous
         5: .line 320
            aload 3 /* previous */
            ifnull 6
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.sort:Lorg/h2/result/SortOrder;
            ifnull 7
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.sort:Lorg/h2/result/SortOrder;
            aload 3 /* previous */
            aload 1 /* values */
            invokevirtual org.h2.result.SortOrder.compare:([Lorg/h2/value/Value;[Lorg/h2/value/Value;)I
            ifle 7
         6: .line 321
      StackMap locals: org.h2.value.ValueRow org.h2.value.Value[]
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
            aload 2 /* array */
            aload 1 /* values */
            invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         7: .line 323
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
            invokevirtual java.util.TreeMap.size:()I
            putfield org.h2.result.LocalResultImpl.rowCount:I
         8: .line 324
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rowCount:I
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.maxMemoryRows:I
            if_icmple 19
         9: .line 325
            aload 0 /* this */
            invokevirtual org.h2.result.LocalResultImpl.createExternalResult:()V
        10: .line 326
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
            invokevirtual java.util.TreeMap.values:()Ljava/util/Collection;
            invokeinterface org.h2.result.ResultExternal.addRows:(Ljava/util/Collection;)I
            putfield org.h2.result.LocalResultImpl.rowCount:I
        11: .line 327
            aload 0 /* this */
            aconst_null
            putfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
        end local 3 // org.h2.value.Value[] previous
        end local 2 // org.h2.value.ValueRow array
        12: .line 329
            goto 19
        13: .line 330
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
            aload 1 /* values */
            invokeinterface org.h2.result.ResultExternal.addRow:([Lorg/h2/value/Value;)I
            putfield org.h2.result.LocalResultImpl.rowCount:I
        14: .line 332
            goto 19
        15: .line 333
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
            aload 1 /* values */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        16: .line 334
            aload 0 /* this */
            dup
            getfield org.h2.result.LocalResultImpl.rowCount:I
            iconst_1
            iadd
            putfield org.h2.result.LocalResultImpl.rowCount:I
        17: .line 335
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.maxMemoryRows:I
            if_icmple 19
        18: .line 336
            aload 0 /* this */
            invokevirtual org.h2.result.LocalResultImpl.addRowsToDisk:()V
        19: .line 339
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.h2.value.Value[] values
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   20     0      this  Lorg/h2/result/LocalResultImpl;
            0   20     1    values  [Lorg/h2/value/Value;
            4   12     2     array  Lorg/h2/value/ValueRow;
            5   12     3  previous  [Lorg/h2/value/Value;
    MethodParameters:
        Name  Flags
      values  

  private void addRowsToDisk();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.h2.result.LocalResultImpl this
         0: .line 342
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
            ifnonnull 2
         1: .line 343
            aload 0 /* this */
            invokevirtual org.h2.result.LocalResultImpl.createExternalResult:()V
         2: .line 345
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
            invokeinterface org.h2.result.ResultExternal.addRows:(Ljava/util/Collection;)I
            putfield org.h2.result.LocalResultImpl.rowCount:I
         3: .line 346
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.clear:()V
         4: .line 347
            return
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/h2/result/LocalResultImpl;

  public int getVisibleColumnCount();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.result.LocalResultImpl this
         0: .line 351
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.visibleColumnCount:I
            ireturn
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/result/LocalResultImpl;

  public void done();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.h2.result.LocalResultImpl this
         0: .line 359
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
            ifnull 3
         1: .line 360
            aload 0 /* this */
            invokevirtual org.h2.result.LocalResultImpl.addRowsToDisk:()V
         2: .line 361
            goto 15
         3: .line 362
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.h2.result.LocalResultImpl.isAnyDistinct:()Z
            ifeq 5
         4: .line 363
            aload 0 /* this */
            new java.util.ArrayList
            dup
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
            invokevirtual java.util.TreeMap.values:()Ljava/util/Collection;
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            putfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
         5: .line 365
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.sort:Lorg/h2/result/SortOrder;
            ifnull 15
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.limit:I
            ifeq 15
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.limitsWereApplied:Z
            ifne 15
         6: .line 366
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.limit:I
            ifle 7
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.withTiesSortOrder:Lorg/h2/result/SortOrder;
            ifnonnull 7
            iconst_1
            goto 8
      StackMap locals:
      StackMap stack:
         7: iconst_0
      StackMap locals:
      StackMap stack: int
         8: istore 1 /* withLimit */
        start local 1 // boolean withLimit
         9: .line 367
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.offset:I
            ifgt 10
            iload 1 /* withLimit */
            ifeq 14
        10: .line 368
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.sort:Lorg/h2/result/SortOrder;
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.offset:I
            iload 1 /* withLimit */
            ifeq 11
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.limit:I
            goto 12
      StackMap locals: org.h2.result.LocalResultImpl int
      StackMap stack: org.h2.result.SortOrder java.util.ArrayList int
        11: aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
      StackMap locals: org.h2.result.LocalResultImpl int
      StackMap stack: org.h2.result.SortOrder java.util.ArrayList int int
        12: invokevirtual org.h2.result.SortOrder.sort:(Ljava/util/ArrayList;II)V
        13: .line 369
            goto 15
        14: .line 370
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.sort:Lorg/h2/result/SortOrder;
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
            invokevirtual org.h2.result.SortOrder.sort:(Ljava/util/ArrayList;)V
        end local 1 // boolean withLimit
        15: .line 374
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.h2.result.LocalResultImpl.applyOffsetAndLimit:()V
        16: .line 375
            aload 0 /* this */
            invokevirtual org.h2.result.LocalResultImpl.reset:()V
        17: .line 376
            return
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   18     0       this  Lorg/h2/result/LocalResultImpl;
            9   15     1  withLimit  Z

  private void applyOffsetAndLimit();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=6, args_size=1
        start local 0 // org.h2.result.LocalResultImpl this
         0: .line 379
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.limitsWereApplied:Z
            ifeq 2
         1: .line 380
            return
         2: .line 382
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.offset:I
            iconst_0
            invokestatic java.lang.Math.max:(II)I
            istore 1 /* offset */
        start local 1 // int offset
         3: .line 383
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.limit:I
            istore 2 /* limit */
        start local 2 // int limit
         4: .line 384
            iload 1 /* offset */
            ifne 5
            iload 2 /* limit */
            ifge 5
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.fetchPercent:Z
            ifeq 6
      StackMap locals: int int
      StackMap stack:
         5: aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rowCount:I
            ifne 7
         6: .line 385
      StackMap locals:
      StackMap stack:
            return
         7: .line 387
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.fetchPercent:Z
            ifeq 11
         8: .line 388
            iload 2 /* limit */
            iflt 9
            iload 2 /* limit */
            bipush 100
            if_icmple 10
         9: .line 389
      StackMap locals:
      StackMap stack:
            ldc "FETCH PERCENT"
            iload 2 /* limit */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokestatic org.h2.message.DbException.getInvalidValueException:(Ljava/lang/String;Ljava/lang/Object;)Lorg/h2/message/DbException;
            athrow
        10: .line 392
      StackMap locals:
      StackMap stack:
            iload 2 /* limit */
            i2l
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rowCount:I
            i2l
            lmul
            ldc 99
            ladd
            ldc 100
            ldiv
            l2i
            istore 2 /* limit */
        11: .line 394
      StackMap locals:
      StackMap stack:
            iload 1 /* offset */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rowCount:I
            if_icmpge 12
            iload 2 /* limit */
            ifeq 12
            iconst_0
            goto 13
      StackMap locals:
      StackMap stack:
        12: iconst_1
      StackMap locals:
      StackMap stack: int
        13: istore 3 /* clearAll */
        start local 3 // boolean clearAll
        14: .line 395
            iload 3 /* clearAll */
            ifne 21
        15: .line 396
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rowCount:I
            iload 1 /* offset */
            isub
            istore 4 /* remaining */
        start local 4 // int remaining
        16: .line 397
            iload 2 /* limit */
            ifge 17
            iload 4 /* remaining */
            goto 18
      StackMap locals: int int
      StackMap stack:
        17: iload 4 /* remaining */
            iload 2 /* limit */
            invokestatic java.lang.Math.min:(II)I
      StackMap locals:
      StackMap stack: int
        18: istore 2 /* limit */
        19: .line 398
            iload 1 /* offset */
            ifne 22
            iload 4 /* remaining */
            iload 2 /* limit */
            if_icmpgt 22
        20: .line 399
            return
        end local 4 // int remaining
        21: .line 402
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* limit */
        22: .line 404
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
        23: .line 405
            aload 0 /* this */
            iload 2 /* limit */
            putfield org.h2.result.LocalResultImpl.rowCount:I
        24: .line 406
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
            ifnonnull 38
        25: .line 407
            iload 3 /* clearAll */
            ifeq 28
        26: .line 408
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.clear:()V
        27: .line 409
            return
        28: .line 411
      StackMap locals:
      StackMap stack:
            iload 1 /* offset */
            iload 2 /* limit */
            iadd
            istore 4 /* to */
        start local 4 // int to
        29: .line 412
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.withTiesSortOrder:Lorg/h2/result/SortOrder;
            ifnull 35
        30: .line 413
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
            iload 4 /* to */
            iconst_1
            isub
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast org.h2.value.Value[]
            astore 5 /* expected */
        start local 5 // org.h2.value.Value[] expected
        31: .line 414
            goto 34
        32: .line 415
      StackMap locals: int org.h2.value.Value[]
      StackMap stack:
            iinc 4 /* to */ 1
        33: .line 416
            aload 0 /* this */
            dup
            getfield org.h2.result.LocalResultImpl.rowCount:I
            iconst_1
            iadd
            putfield org.h2.result.LocalResultImpl.rowCount:I
        34: .line 414
      StackMap locals:
      StackMap stack:
            iload 4 /* to */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            if_icmpge 35
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.withTiesSortOrder:Lorg/h2/result/SortOrder;
            aload 5 /* expected */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
            iload 4 /* to */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast org.h2.value.Value[]
            invokevirtual org.h2.result.SortOrder.compare:([Lorg/h2/value/Value;[Lorg/h2/value/Value;)I
            ifeq 32
        end local 5 // org.h2.value.Value[] expected
        35: .line 419
      StackMap locals:
      StackMap stack:
            iload 1 /* offset */
            ifne 36
            iload 4 /* to */
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            if_icmpeq 43
        36: .line 421
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.util.ArrayList
            dup
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
            iload 1 /* offset */
            iload 4 /* to */
            invokevirtual java.util.ArrayList.subList:(II)Ljava/util/List;
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            putfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
        end local 4 // int to
        37: .line 423
            goto 43
        38: .line 424
      StackMap locals:
      StackMap stack:
            iload 3 /* clearAll */
            ifeq 42
        39: .line 425
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
            invokeinterface org.h2.result.ResultExternal.close:()V
        40: .line 426
            aload 0 /* this */
            aconst_null
            putfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
        41: .line 427
            return
        42: .line 429
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* offset */
            iload 2 /* limit */
            invokevirtual org.h2.result.LocalResultImpl.trimExternal:(II)V
        43: .line 431
      StackMap locals:
      StackMap stack:
            return
        end local 3 // boolean clearAll
        end local 2 // int limit
        end local 1 // int offset
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   44     0       this  Lorg/h2/result/LocalResultImpl;
            3   44     1     offset  I
            4   44     2      limit  I
           14   44     3   clearAll  Z
           16   21     4  remaining  I
           29   37     4         to  I
           31   35     5   expected  [Lorg/h2/value/Value;

  private void trimExternal(int, int);
    descriptor: (II)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // org.h2.result.LocalResultImpl this
        start local 1 // int offset
        start local 2 // int limit
         0: .line 434
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
            astore 3 /* temp */
        start local 3 // org.h2.result.ResultExternal temp
         1: .line 435
            aload 0 /* this */
            aconst_null
            putfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
         2: .line 436
            aload 3 /* temp */
            invokeinterface org.h2.result.ResultExternal.reset:()V
         3: .line 437
            goto 5
         4: .line 438
      StackMap locals: org.h2.result.ResultExternal
      StackMap stack:
            aload 3 /* temp */
            invokeinterface org.h2.result.ResultExternal.next:()[Lorg/h2/value/Value;
            pop
         5: .line 437
      StackMap locals:
      StackMap stack:
            iinc 1 /* offset */ -1
            iload 1 /* offset */
            ifge 4
         6: .line 440
            aconst_null
            astore 4 /* row */
        start local 4 // org.h2.value.Value[] row
         7: .line 441
            goto 12
         8: .line 442
      StackMap locals: org.h2.value.Value[]
      StackMap stack:
            aload 3 /* temp */
            invokeinterface org.h2.result.ResultExternal.next:()[Lorg/h2/value/Value;
            astore 4 /* row */
         9: .line 443
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
            aload 4 /* row */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        10: .line 444
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.maxMemoryRows:I
            if_icmple 12
        11: .line 445
            aload 0 /* this */
            invokevirtual org.h2.result.LocalResultImpl.addRowsToDisk:()V
        12: .line 441
      StackMap locals:
      StackMap stack:
            iinc 2 /* limit */ -1
            iload 2 /* limit */
            ifge 8
        13: .line 448
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.withTiesSortOrder:Lorg/h2/result/SortOrder;
            ifnull 21
            aload 4 /* row */
            ifnull 21
        14: .line 449
            aload 4 /* row */
            astore 5 /* expected */
        start local 5 // org.h2.value.Value[] expected
        15: .line 450
            goto 20
        16: .line 451
      StackMap locals: org.h2.value.Value[]
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
            aload 4 /* row */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        17: .line 452
            aload 0 /* this */
            dup
            getfield org.h2.result.LocalResultImpl.rowCount:I
            iconst_1
            iadd
            putfield org.h2.result.LocalResultImpl.rowCount:I
        18: .line 453
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.maxMemoryRows:I
            if_icmple 20
        19: .line 454
            aload 0 /* this */
            invokevirtual org.h2.result.LocalResultImpl.addRowsToDisk:()V
        20: .line 450
      StackMap locals:
      StackMap stack:
            aload 3 /* temp */
            invokeinterface org.h2.result.ResultExternal.next:()[Lorg/h2/value/Value;
            dup
            astore 4 /* row */
            ifnull 21
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.withTiesSortOrder:Lorg/h2/result/SortOrder;
            aload 5 /* expected */
            aload 4 /* row */
            invokevirtual org.h2.result.SortOrder.compare:([Lorg/h2/value/Value;[Lorg/h2/value/Value;)I
            ifeq 16
        end local 5 // org.h2.value.Value[] expected
        21: .line 458
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
            ifnull 23
        22: .line 459
            aload 0 /* this */
            invokevirtual org.h2.result.LocalResultImpl.addRowsToDisk:()V
        23: .line 461
      StackMap locals:
      StackMap stack:
            aload 3 /* temp */
            invokeinterface org.h2.result.ResultExternal.close:()V
        24: .line 462
            return
        end local 4 // org.h2.value.Value[] row
        end local 3 // org.h2.result.ResultExternal temp
        end local 2 // int limit
        end local 1 // int offset
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   25     0      this  Lorg/h2/result/LocalResultImpl;
            0   25     1    offset  I
            0   25     2     limit  I
            1   25     3      temp  Lorg/h2/result/ResultExternal;
            7   25     4       row  [Lorg/h2/value/Value;
           15   21     5  expected  [Lorg/h2/value/Value;
    MethodParameters:
        Name  Flags
      offset  
      limit   

  public int getRowCount();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.result.LocalResultImpl this
         0: .line 466
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rowCount:I
            ireturn
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/result/LocalResultImpl;

  public void limitsWereApplied();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.h2.result.LocalResultImpl this
         0: .line 471
            aload 0 /* this */
            iconst_1
            putfield org.h2.result.LocalResultImpl.limitsWereApplied:Z
         1: .line 472
            return
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/h2/result/LocalResultImpl;

  public boolean hasNext();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.h2.result.LocalResultImpl this
         0: .line 476
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.closed:Z
            ifne 1
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rowId:I
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rowCount:I
            iconst_1
            isub
            if_icmpge 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/h2/result/LocalResultImpl;

  public void setLimit(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.result.LocalResultImpl this
        start local 1 // int limit
         0: .line 486
            aload 0 /* this */
            iload 1 /* limit */
            putfield org.h2.result.LocalResultImpl.limit:I
         1: .line 487
            return
        end local 1 // int limit
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/h2/result/LocalResultImpl;
            0    2     1  limit  I
    MethodParameters:
       Name  Flags
      limit  

  public void setFetchPercent(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.result.LocalResultImpl this
        start local 1 // boolean fetchPercent
         0: .line 494
            aload 0 /* this */
            iload 1 /* fetchPercent */
            putfield org.h2.result.LocalResultImpl.fetchPercent:Z
         1: .line 495
            return
        end local 1 // boolean fetchPercent
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lorg/h2/result/LocalResultImpl;
            0    2     1  fetchPercent  Z
    MethodParameters:
              Name  Flags
      fetchPercent  

  public void setWithTies(org.h2.result.SortOrder);
    descriptor: (Lorg/h2/result/SortOrder;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.result.LocalResultImpl this
        start local 1 // org.h2.result.SortOrder withTiesSortOrder
         0: .line 499
            getstatic org.h2.result.LocalResultImpl.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.sort:Lorg/h2/result/SortOrder;
            ifnull 1
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.sort:Lorg/h2/result/SortOrder;
            aload 1 /* withTiesSortOrder */
            if_acmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 500
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* withTiesSortOrder */
            putfield org.h2.result.LocalResultImpl.withTiesSortOrder:Lorg/h2/result/SortOrder;
         2: .line 501
            return
        end local 1 // org.h2.result.SortOrder withTiesSortOrder
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    3     0               this  Lorg/h2/result/LocalResultImpl;
            0    3     1  withTiesSortOrder  Lorg/h2/result/SortOrder;
    MethodParameters:
                   Name  Flags
      withTiesSortOrder  

  public boolean needToClose();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.result.LocalResultImpl this
         0: .line 505
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/h2/result/LocalResultImpl;

  public void close();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.h2.result.LocalResultImpl this
         0: .line 510
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
            ifnull 4
         1: .line 511
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
            invokeinterface org.h2.result.ResultExternal.close:()V
         2: .line 512
            aload 0 /* this */
            aconst_null
            putfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
         3: .line 513
            aload 0 /* this */
            iconst_1
            putfield org.h2.result.LocalResultImpl.closed:Z
         4: .line 515
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/h2/result/LocalResultImpl;

  public java.lang.String getAlias(int);
    descriptor: (I)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.result.LocalResultImpl this
        start local 1 // int i
         0: .line 519
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.expressions:[Lorg/h2/expression/Expression;
            iload 1 /* i */
            aaload
            invokevirtual org.h2.expression.Expression.getAlias:()Ljava/lang/String;
            areturn
        end local 1 // int i
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/result/LocalResultImpl;
            0    1     1     i  I
    MethodParameters:
      Name  Flags
      i     

  public java.lang.String getTableName(int);
    descriptor: (I)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.result.LocalResultImpl this
        start local 1 // int i
         0: .line 524
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.expressions:[Lorg/h2/expression/Expression;
            iload 1 /* i */
            aaload
            invokevirtual org.h2.expression.Expression.getTableName:()Ljava/lang/String;
            areturn
        end local 1 // int i
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/result/LocalResultImpl;
            0    1     1     i  I
    MethodParameters:
      Name  Flags
      i     

  public java.lang.String getSchemaName(int);
    descriptor: (I)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.result.LocalResultImpl this
        start local 1 // int i
         0: .line 529
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.expressions:[Lorg/h2/expression/Expression;
            iload 1 /* i */
            aaload
            invokevirtual org.h2.expression.Expression.getSchemaName:()Ljava/lang/String;
            areturn
        end local 1 // int i
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/result/LocalResultImpl;
            0    1     1     i  I
    MethodParameters:
      Name  Flags
      i     

  public java.lang.String getColumnName(int);
    descriptor: (I)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.result.LocalResultImpl this
        start local 1 // int i
         0: .line 534
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.expressions:[Lorg/h2/expression/Expression;
            iload 1 /* i */
            aaload
            invokevirtual org.h2.expression.Expression.getColumnName:()Ljava/lang/String;
            areturn
        end local 1 // int i
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/result/LocalResultImpl;
            0    1     1     i  I
    MethodParameters:
      Name  Flags
      i     

  public org.h2.value.TypeInfo getColumnType(int);
    descriptor: (I)Lorg/h2/value/TypeInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.result.LocalResultImpl this
        start local 1 // int i
         0: .line 539
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.expressions:[Lorg/h2/expression/Expression;
            iload 1 /* i */
            aaload
            invokevirtual org.h2.expression.Expression.getType:()Lorg/h2/value/TypeInfo;
            areturn
        end local 1 // int i
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/result/LocalResultImpl;
            0    1     1     i  I
    MethodParameters:
      Name  Flags
      i     

  public int getNullable(int);
    descriptor: (I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.result.LocalResultImpl this
        start local 1 // int i
         0: .line 544
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.expressions:[Lorg/h2/expression/Expression;
            iload 1 /* i */
            aaload
            invokevirtual org.h2.expression.Expression.getNullable:()I
            ireturn
        end local 1 // int i
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/result/LocalResultImpl;
            0    1     1     i  I
    MethodParameters:
      Name  Flags
      i     

  public boolean isAutoIncrement(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.result.LocalResultImpl this
        start local 1 // int i
         0: .line 549
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.expressions:[Lorg/h2/expression/Expression;
            iload 1 /* i */
            aaload
            invokevirtual org.h2.expression.Expression.isAutoIncrement:()Z
            ireturn
        end local 1 // int i
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/result/LocalResultImpl;
            0    1     1     i  I
    MethodParameters:
      Name  Flags
      i     

  public void setOffset(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.result.LocalResultImpl this
        start local 1 // int offset
         0: .line 559
            aload 0 /* this */
            iload 1 /* offset */
            putfield org.h2.result.LocalResultImpl.offset:I
         1: .line 560
            return
        end local 1 // int offset
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/h2/result/LocalResultImpl;
            0    2     1  offset  I
    MethodParameters:
        Name  Flags
      offset  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.h2.result.LocalResultImpl this
         0: .line 564
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokespecial java.lang.Object.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " columns: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.visibleColumnCount:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         1: .line 565
            ldc " rows: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rowCount:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " pos: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.rowId:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         2: .line 564
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/h2/result/LocalResultImpl;

  public boolean isClosed();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.result.LocalResultImpl this
         0: .line 575
            aload 0 /* this */
            getfield org.h2.result.LocalResultImpl.closed:Z
            ireturn
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/result/LocalResultImpl;

  public int getFetchSize();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.result.LocalResultImpl this
         0: .line 580
            iconst_0
            ireturn
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/result/LocalResultImpl;

  public void setFetchSize(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.h2.result.LocalResultImpl this
        start local 1 // int fetchSize
         0: .line 586
            return
        end local 1 // int fetchSize
        end local 0 // org.h2.result.LocalResultImpl this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/h2/result/LocalResultImpl;
            0    1     1  fetchSize  I
    MethodParameters:
           Name  Flags
      fetchSize  

  public org.h2.result.ResultInterface createShallowCopy(org.h2.engine.SessionInterface);
    descriptor: (Lorg/h2/engine/SessionInterface;)Lorg/h2/result/ResultInterface;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual org.h2.result.LocalResultImpl.createShallowCopy:(Lorg/h2/engine/SessionInterface;)Lorg/h2/result/LocalResultImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "LocalResultImpl.java"