public class org.apache.cassandra.cql3.statements.SelectStatement implements org.apache.cassandra.cql3.CQLStatement
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.cassandra.cql3.statements.SelectStatement
  super_class: java.lang.Object
{
  private static final org.slf4j.Logger logger;
    descriptor: Lorg/slf4j/Logger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

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

  private final int boundTerms;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public final org.apache.cassandra.config.CFMetaData cfm;
    descriptor: Lorg/apache/cassandra/config/CFMetaData;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final org.apache.cassandra.cql3.statements.SelectStatement$Parameters parameters;
    descriptor: Lorg/apache/cassandra/cql3/statements/SelectStatement$Parameters;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  private final org.apache.cassandra.cql3.selection.Selection selection;
    descriptor: Lorg/apache/cassandra/cql3/selection/Selection;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.cassandra.cql3.Term limit;
    descriptor: Lorg/apache/cassandra/cql3/Term;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.cassandra.cql3.Term perPartitionLimit;
    descriptor: Lorg/apache/cassandra/cql3/Term;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.cassandra.cql3.restrictions.StatementRestrictions restrictions;
    descriptor: Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean isReversed;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.cassandra.db.aggregation.AggregationSpecification aggregationSpec;
    descriptor: Lorg/apache/cassandra/db/aggregation/AggregationSpecification;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.Comparator<java.util.List<java.nio.ByteBuffer>> orderingComparator;
    descriptor: Ljava/util/Comparator;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Comparator<Ljava/util/List<Ljava/nio/ByteBuffer;>;>;

  private final org.apache.cassandra.db.filter.ColumnFilter queriedColumns;
    descriptor: Lorg/apache/cassandra/db/filter/ColumnFilter;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static final org.apache.cassandra.cql3.statements.SelectStatement$Parameters defaultParameters;
    descriptor: Lorg/apache/cassandra/cql3/statements/SelectStatement$Parameters;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

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

  private static volatile int[] $SWITCH_TABLE$org$apache$cassandra$config$ColumnDefinition$Kind;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=0, args_size=0
         0: .line 117
            ldc Lorg/apache/cassandra/cql3/statements/SelectStatement;
            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.apache.cassandra.cql3.statements.SelectStatement.$assertionsDisabled:Z
         3: .line 119
            ldc Lorg/apache/cassandra/cql3/statements/SelectStatement;
            invokestatic org.slf4j.LoggerFactory.getLogger:(Ljava/lang/Class;)Lorg/slf4j/Logger;
            putstatic org.apache.cassandra.cql3.statements.SelectStatement.logger:Lorg/slf4j/Logger;
         4: .line 147
            new org.apache.cassandra.cql3.statements.SelectStatement$Parameters
            dup
            invokestatic java.util.Collections.emptyMap:()Ljava/util/Map;
         5: .line 148
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
         6: .line 149
            iconst_0
         7: .line 150
            iconst_0
         8: .line 151
            iconst_0
         9: .line 147
            invokespecial org.apache.cassandra.cql3.statements.SelectStatement$Parameters.<init>:(Ljava/util/Map;Ljava/util/List;ZZZ)V
            putstatic org.apache.cassandra.cql3.statements.SelectStatement.defaultParameters:Lorg/apache/cassandra/cql3/statements/SelectStatement$Parameters;
        10: .line 151
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(org.apache.cassandra.config.CFMetaData, int, org.apache.cassandra.cql3.statements.SelectStatement$Parameters, org.apache.cassandra.cql3.selection.Selection, org.apache.cassandra.cql3.restrictions.StatementRestrictions, boolean, org.apache.cassandra.db.aggregation.AggregationSpecification, java.util.Comparator<java.util.List<java.nio.ByteBuffer>>, org.apache.cassandra.cql3.Term, org.apache.cassandra.cql3.Term);
    descriptor: (Lorg/apache/cassandra/config/CFMetaData;ILorg/apache/cassandra/cql3/statements/SelectStatement$Parameters;Lorg/apache/cassandra/cql3/selection/Selection;Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;ZLorg/apache/cassandra/db/aggregation/AggregationSpecification;Ljava/util/Comparator;Lorg/apache/cassandra/cql3/Term;Lorg/apache/cassandra/cql3/Term;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=11, args_size=11
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.config.CFMetaData cfm
        start local 2 // int boundTerms
        start local 3 // org.apache.cassandra.cql3.statements.SelectStatement$Parameters parameters
        start local 4 // org.apache.cassandra.cql3.selection.Selection selection
        start local 5 // org.apache.cassandra.cql3.restrictions.StatementRestrictions restrictions
        start local 6 // boolean isReversed
        start local 7 // org.apache.cassandra.db.aggregation.AggregationSpecification aggregationSpec
        start local 8 // java.util.Comparator orderingComparator
        start local 9 // org.apache.cassandra.cql3.Term limit
        start local 10 // org.apache.cassandra.cql3.Term perPartitionLimit
         0: .line 153
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 164
            aload 0 /* this */
            aload 1 /* cfm */
            putfield org.apache.cassandra.cql3.statements.SelectStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
         2: .line 165
            aload 0 /* this */
            iload 2 /* boundTerms */
            putfield org.apache.cassandra.cql3.statements.SelectStatement.boundTerms:I
         3: .line 166
            aload 0 /* this */
            aload 4 /* selection */
            putfield org.apache.cassandra.cql3.statements.SelectStatement.selection:Lorg/apache/cassandra/cql3/selection/Selection;
         4: .line 167
            aload 0 /* this */
            aload 5 /* restrictions */
            putfield org.apache.cassandra.cql3.statements.SelectStatement.restrictions:Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
         5: .line 168
            aload 0 /* this */
            iload 6 /* isReversed */
            putfield org.apache.cassandra.cql3.statements.SelectStatement.isReversed:Z
         6: .line 169
            aload 0 /* this */
            aload 7 /* aggregationSpec */
            putfield org.apache.cassandra.cql3.statements.SelectStatement.aggregationSpec:Lorg/apache/cassandra/db/aggregation/AggregationSpecification;
         7: .line 170
            aload 0 /* this */
            aload 8 /* orderingComparator */
            putfield org.apache.cassandra.cql3.statements.SelectStatement.orderingComparator:Ljava/util/Comparator;
         8: .line 171
            aload 0 /* this */
            aload 3 /* parameters */
            putfield org.apache.cassandra.cql3.statements.SelectStatement.parameters:Lorg/apache/cassandra/cql3/statements/SelectStatement$Parameters;
         9: .line 172
            aload 0 /* this */
            aload 9 /* limit */
            putfield org.apache.cassandra.cql3.statements.SelectStatement.limit:Lorg/apache/cassandra/cql3/Term;
        10: .line 173
            aload 0 /* this */
            aload 10 /* perPartitionLimit */
            putfield org.apache.cassandra.cql3.statements.SelectStatement.perPartitionLimit:Lorg/apache/cassandra/cql3/Term;
        11: .line 174
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.gatherQueriedColumns:()Lorg/apache/cassandra/db/filter/ColumnFilter;
            putfield org.apache.cassandra.cql3.statements.SelectStatement.queriedColumns:Lorg/apache/cassandra/db/filter/ColumnFilter;
        12: .line 175
            return
        end local 10 // org.apache.cassandra.cql3.Term perPartitionLimit
        end local 9 // org.apache.cassandra.cql3.Term limit
        end local 8 // java.util.Comparator orderingComparator
        end local 7 // org.apache.cassandra.db.aggregation.AggregationSpecification aggregationSpec
        end local 6 // boolean isReversed
        end local 5 // org.apache.cassandra.cql3.restrictions.StatementRestrictions restrictions
        end local 4 // org.apache.cassandra.cql3.selection.Selection selection
        end local 3 // org.apache.cassandra.cql3.statements.SelectStatement$Parameters parameters
        end local 2 // int boundTerms
        end local 1 // org.apache.cassandra.config.CFMetaData cfm
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   13     0                this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0   13     1                 cfm  Lorg/apache/cassandra/config/CFMetaData;
            0   13     2          boundTerms  I
            0   13     3          parameters  Lorg/apache/cassandra/cql3/statements/SelectStatement$Parameters;
            0   13     4           selection  Lorg/apache/cassandra/cql3/selection/Selection;
            0   13     5        restrictions  Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
            0   13     6          isReversed  Z
            0   13     7     aggregationSpec  Lorg/apache/cassandra/db/aggregation/AggregationSpecification;
            0   13     8  orderingComparator  Ljava/util/Comparator<Ljava/util/List<Ljava/nio/ByteBuffer;>;>;
            0   13     9               limit  Lorg/apache/cassandra/cql3/Term;
            0   13    10   perPartitionLimit  Lorg/apache/cassandra/cql3/Term;
    Signature: (Lorg/apache/cassandra/config/CFMetaData;ILorg/apache/cassandra/cql3/statements/SelectStatement$Parameters;Lorg/apache/cassandra/cql3/selection/Selection;Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;ZLorg/apache/cassandra/db/aggregation/AggregationSpecification;Ljava/util/Comparator<Ljava/util/List<Ljava/nio/ByteBuffer;>;>;Lorg/apache/cassandra/cql3/Term;Lorg/apache/cassandra/cql3/Term;)V
    MethodParameters:
                    Name  Flags
      cfm                 
      boundTerms          
      parameters          
      selection           
      restrictions        
      isReversed          
      aggregationSpec     
      orderingComparator  
      limit               
      perPartitionLimit   

  public java.lang.Iterable<org.apache.cassandra.cql3.functions.Function> getFunctions();
    descriptor: ()Ljava/lang/Iterable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
         0: .line 179
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* functions */
        start local 1 // java.util.List functions
         1: .line 180
            aload 0 /* this */
            aload 1 /* functions */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.addFunctionsTo:(Ljava/util/List;)V
         2: .line 181
            aload 1 /* functions */
            areturn
        end local 1 // java.util.List functions
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            1    3     1  functions  Ljava/util/List<Lorg/apache/cassandra/cql3/functions/Function;>;
    Signature: ()Ljava/lang/Iterable<Lorg/apache/cassandra/cql3/functions/Function;>;

  private void addFunctionsTo(java.util.List<org.apache.cassandra.cql3.functions.Function>);
    descriptor: (Ljava/util/List;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // java.util.List functions
         0: .line 186
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.selection:Lorg/apache/cassandra/cql3/selection/Selection;
            aload 1 /* functions */
            invokevirtual org.apache.cassandra.cql3.selection.Selection.addFunctionsTo:(Ljava/util/List;)V
         1: .line 187
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.restrictions:Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
            aload 1 /* functions */
            invokevirtual org.apache.cassandra.cql3.restrictions.StatementRestrictions.addFunctionsTo:(Ljava/util/List;)V
         2: .line 189
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.limit:Lorg/apache/cassandra/cql3/Term;
            ifnull 4
         3: .line 190
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.limit:Lorg/apache/cassandra/cql3/Term;
            aload 1 /* functions */
            invokeinterface org.apache.cassandra.cql3.Term.addFunctionsTo:(Ljava/util/List;)V
         4: .line 192
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.perPartitionLimit:Lorg/apache/cassandra/cql3/Term;
            ifnull 6
         5: .line 193
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.perPartitionLimit:Lorg/apache/cassandra/cql3/Term;
            aload 1 /* functions */
            invokeinterface org.apache.cassandra.cql3.Term.addFunctionsTo:(Ljava/util/List;)V
         6: .line 194
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.List functions
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0    7     1  functions  Ljava/util/List<Lorg/apache/cassandra/cql3/functions/Function;>;
    Signature: (Ljava/util/List<Lorg/apache/cassandra/cql3/functions/Function;>;)V
    MethodParameters:
           Name  Flags
      functions  

  private org.apache.cassandra.db.filter.ColumnFilter gatherQueriedColumns();
    descriptor: ()Lorg/apache/cassandra/db/filter/ColumnFilter;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
         0: .line 200
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.selection:Lorg/apache/cassandra/cql3/selection/Selection;
            invokevirtual org.apache.cassandra.cql3.selection.Selection.isWildcard:()Z
            ifeq 2
         1: .line 201
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            invokestatic org.apache.cassandra.db.filter.ColumnFilter.all:(Lorg/apache/cassandra/config/CFMetaData;)Lorg/apache/cassandra/db/filter/ColumnFilter;
            areturn
         2: .line 203
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            invokestatic org.apache.cassandra.db.filter.ColumnFilter.allColumnsBuilder:(Lorg/apache/cassandra/config/CFMetaData;)Lorg/apache/cassandra/db/filter/ColumnFilter$Builder;
            astore 1 /* builder */
        start local 1 // org.apache.cassandra.db.filter.ColumnFilter$Builder builder
         3: .line 205
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.selection:Lorg/apache/cassandra/cql3/selection/Selection;
            invokevirtual org.apache.cassandra.cql3.selection.Selection.getColumns:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 7
      StackMap locals: org.apache.cassandra.cql3.statements.SelectStatement org.apache.cassandra.db.filter.ColumnFilter$Builder top java.util.Iterator
      StackMap stack:
         4: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.config.ColumnDefinition
            astore 2 /* def */
        start local 2 // org.apache.cassandra.config.ColumnDefinition def
         5: .line 206
            aload 2 /* def */
            invokevirtual org.apache.cassandra.config.ColumnDefinition.isPrimaryKeyColumn:()Z
            ifne 7
         6: .line 207
            aload 1 /* builder */
            aload 2 /* def */
            invokevirtual org.apache.cassandra.db.filter.ColumnFilter$Builder.add:(Lorg/apache/cassandra/config/ColumnDefinition;)Lorg/apache/cassandra/db/filter/ColumnFilter$Builder;
            pop
        end local 2 // org.apache.cassandra.config.ColumnDefinition def
         7: .line 205
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         8: .line 209
            aload 1 /* builder */
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.restrictions:Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
            iconst_1
            invokevirtual org.apache.cassandra.cql3.restrictions.StatementRestrictions.nonPKRestrictedColumns:(Z)Ljava/util/Set;
            invokevirtual org.apache.cassandra.db.filter.ColumnFilter$Builder.addAll:(Ljava/lang/Iterable;)Lorg/apache/cassandra/db/filter/ColumnFilter$Builder;
            pop
         9: .line 210
            aload 1 /* builder */
            invokevirtual org.apache.cassandra.db.filter.ColumnFilter$Builder.build:()Lorg/apache/cassandra/db/filter/ColumnFilter;
            areturn
        end local 1 // org.apache.cassandra.db.filter.ColumnFilter$Builder builder
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            3   10     1  builder  Lorg/apache/cassandra/db/filter/ColumnFilter$Builder;
            5    7     2      def  Lorg/apache/cassandra/config/ColumnDefinition;

  public org.apache.cassandra.db.filter.ColumnFilter queriedColumns();
    descriptor: ()Lorg/apache/cassandra/db/filter/ColumnFilter;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
         0: .line 219
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.queriedColumns:Lorg/apache/cassandra/db/filter/ColumnFilter;
            areturn
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/statements/SelectStatement;

  static org.apache.cassandra.cql3.statements.SelectStatement forSelection(org.apache.cassandra.config.CFMetaData, org.apache.cassandra.cql3.selection.Selection);
    descriptor: (Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/cql3/selection/Selection;)Lorg/apache/cassandra/cql3/statements/SelectStatement;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=12, locals=2, args_size=2
        start local 0 // org.apache.cassandra.config.CFMetaData cfm
        start local 1 // org.apache.cassandra.cql3.selection.Selection selection
         0: .line 227
            new org.apache.cassandra.cql3.statements.SelectStatement
            dup
            aload 0 /* cfm */
         1: .line 228
            iconst_0
         2: .line 229
            getstatic org.apache.cassandra.cql3.statements.SelectStatement.defaultParameters:Lorg/apache/cassandra/cql3/statements/SelectStatement$Parameters;
         3: .line 230
            aload 1 /* selection */
         4: .line 231
            getstatic org.apache.cassandra.cql3.statements.StatementType.SELECT:Lorg/apache/cassandra/cql3/statements/StatementType;
            aload 0 /* cfm */
            invokestatic org.apache.cassandra.cql3.restrictions.StatementRestrictions.empty:(Lorg/apache/cassandra/cql3/statements/StatementType;Lorg/apache/cassandra/config/CFMetaData;)Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
         5: .line 232
            iconst_0
         6: .line 233
            aconst_null
         7: .line 234
            aconst_null
         8: .line 235
            aconst_null
         9: .line 236
            aconst_null
        10: .line 227
            invokespecial org.apache.cassandra.cql3.statements.SelectStatement.<init>:(Lorg/apache/cassandra/config/CFMetaData;ILorg/apache/cassandra/cql3/statements/SelectStatement$Parameters;Lorg/apache/cassandra/cql3/selection/Selection;Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;ZLorg/apache/cassandra/db/aggregation/AggregationSpecification;Ljava/util/Comparator;Lorg/apache/cassandra/cql3/Term;Lorg/apache/cassandra/cql3/Term;)V
            areturn
        end local 1 // org.apache.cassandra.cql3.selection.Selection selection
        end local 0 // org.apache.cassandra.config.CFMetaData cfm
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0        cfm  Lorg/apache/cassandra/config/CFMetaData;
            0   11     1  selection  Lorg/apache/cassandra/cql3/selection/Selection;
    MethodParameters:
           Name  Flags
      cfm        
      selection  

  public org.apache.cassandra.cql3.ResultSet$ResultMetadata getResultMetadata();
    descriptor: ()Lorg/apache/cassandra/cql3/ResultSet$ResultMetadata;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
         0: .line 241
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.selection:Lorg/apache/cassandra/cql3/selection/Selection;
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.parameters:Lorg/apache/cassandra/cql3/statements/SelectStatement$Parameters;
            getfield org.apache.cassandra.cql3.statements.SelectStatement$Parameters.isJson:Z
            invokevirtual org.apache.cassandra.cql3.selection.Selection.getResultMetadata:(Z)Lorg/apache/cassandra/cql3/ResultSet$ResultMetadata;
            areturn
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/statements/SelectStatement;

  public int getBoundTerms();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
         0: .line 246
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.boundTerms:I
            ireturn
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/statements/SelectStatement;

  public void checkAccess(org.apache.cassandra.service.ClientState);
    descriptor: (Lorg/apache/cassandra/service/ClientState;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.service.ClientState state
         0: .line 251
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            invokevirtual org.apache.cassandra.config.CFMetaData.isView:()Z
            ifeq 5
         1: .line 253
            aload 0 /* this */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.keyspace:()Ljava/lang/String;
            aload 0 /* this */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.columnFamily:()Ljava/lang/String;
            invokestatic org.apache.cassandra.db.view.View.findBaseTable:(Ljava/lang/String;Ljava/lang/String;)Lorg/apache/cassandra/config/CFMetaData;
            astore 2 /* baseTable */
        start local 2 // org.apache.cassandra.config.CFMetaData baseTable
         2: .line 254
            aload 2 /* baseTable */
            ifnull 6
         3: .line 255
            aload 1 /* state */
            aload 2 /* baseTable */
            getstatic org.apache.cassandra.auth.Permission.SELECT:Lorg/apache/cassandra/auth/Permission;
            invokevirtual org.apache.cassandra.service.ClientState.hasColumnFamilyAccess:(Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/auth/Permission;)V
        end local 2 // org.apache.cassandra.config.CFMetaData baseTable
         4: .line 256
            goto 6
         5: .line 259
      StackMap locals:
      StackMap stack:
            aload 1 /* state */
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            getstatic org.apache.cassandra.auth.Permission.SELECT:Lorg/apache/cassandra/auth/Permission;
            invokevirtual org.apache.cassandra.service.ClientState.hasColumnFamilyAccess:(Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/auth/Permission;)V
         6: .line 262
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.getFunctions:()Ljava/lang/Iterable;
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 3
            goto 9
      StackMap locals: org.apache.cassandra.cql3.statements.SelectStatement org.apache.cassandra.service.ClientState top java.util.Iterator
      StackMap stack:
         7: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.cql3.functions.Function
            astore 2 /* function */
        start local 2 // org.apache.cassandra.cql3.functions.Function function
         8: .line 263
            aload 1 /* state */
            getstatic org.apache.cassandra.auth.Permission.EXECUTE:Lorg/apache/cassandra/auth/Permission;
            aload 2 /* function */
            invokevirtual org.apache.cassandra.service.ClientState.ensureHasPermission:(Lorg/apache/cassandra/auth/Permission;Lorg/apache/cassandra/cql3/functions/Function;)V
        end local 2 // org.apache.cassandra.cql3.functions.Function function
         9: .line 262
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        10: .line 264
            return
        end local 1 // org.apache.cassandra.service.ClientState state
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0       this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0   11     1      state  Lorg/apache/cassandra/service/ClientState;
            2    4     2  baseTable  Lorg/apache/cassandra/config/CFMetaData;
            8    9     2   function  Lorg/apache/cassandra/cql3/functions/Function;
    Exceptions:
      throws org.apache.cassandra.exceptions.InvalidRequestException, org.apache.cassandra.exceptions.UnauthorizedException
    MethodParameters:
       Name  Flags
      state  

  public void validate(org.apache.cassandra.service.ClientState);
    descriptor: (Lorg/apache/cassandra/service/ClientState;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.service.ClientState state
         0: .line 269
            return
        end local 1 // org.apache.cassandra.service.ClientState state
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0    1     1  state  Lorg/apache/cassandra/service/ClientState;
    Exceptions:
      throws org.apache.cassandra.exceptions.InvalidRequestException
    MethodParameters:
       Name  Flags
      state  

  public org.apache.cassandra.transport.messages.ResultMessage$Rows execute(org.apache.cassandra.service.QueryState, org.apache.cassandra.cql3.QueryOptions, long);
    descriptor: (Lorg/apache/cassandra/service/QueryState;Lorg/apache/cassandra/cql3/QueryOptions;J)Lorg/apache/cassandra/transport/messages/ResultMessage$Rows;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=12, args_size=4
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.service.QueryState state
        start local 2 // org.apache.cassandra.cql3.QueryOptions options
        start local 3 // long queryStartNanoTime
         0: .line 273
            aload 2 /* options */
            invokevirtual org.apache.cassandra.cql3.QueryOptions.getConsistency:()Lorg/apache/cassandra/db/ConsistencyLevel;
            astore 5 /* cl */
        start local 5 // org.apache.cassandra.db.ConsistencyLevel cl
         1: .line 274
            aload 5 /* cl */
            ldc "Invalid empty consistency level"
            iconst_0
            anewarray java.lang.Object
            invokestatic org.apache.cassandra.cql3.statements.RequestValidations.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 276
            aload 5 /* cl */
            aload 0 /* this */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.keyspace:()Ljava/lang/String;
            invokevirtual org.apache.cassandra.db.ConsistencyLevel.validateForRead:(Ljava/lang/String;)V
         3: .line 278
            invokestatic org.apache.cassandra.utils.FBUtilities.nowInSeconds:()I
            istore 6 /* nowInSec */
        start local 6 // int nowInSec
         4: .line 279
            aload 0 /* this */
            aload 2 /* options */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.getLimit:(Lorg/apache/cassandra/cql3/QueryOptions;)I
            istore 7 /* userLimit */
        start local 7 // int userLimit
         5: .line 280
            aload 0 /* this */
            aload 2 /* options */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.getPerPartitionLimit:(Lorg/apache/cassandra/cql3/QueryOptions;)I
            istore 8 /* userPerPartitionLimit */
        start local 8 // int userPerPartitionLimit
         6: .line 281
            aload 2 /* options */
            invokevirtual org.apache.cassandra.cql3.QueryOptions.getPageSize:()I
            istore 9 /* pageSize */
        start local 9 // int pageSize
         7: .line 282
            aload 0 /* this */
            aload 2 /* options */
            iload 6 /* nowInSec */
            iload 7 /* userLimit */
            iload 8 /* userPerPartitionLimit */
            iload 9 /* pageSize */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.getQuery:(Lorg/apache/cassandra/cql3/QueryOptions;IIII)Lorg/apache/cassandra/db/ReadQuery;
            astore 10 /* query */
        start local 10 // org.apache.cassandra.db.ReadQuery query
         8: .line 284
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.aggregationSpec:Lorg/apache/cassandra/db/aggregation/AggregationSpecification;
            ifnonnull 10
            iload 9 /* pageSize */
            ifle 9
            aload 10 /* query */
            invokeinterface org.apache.cassandra.db.ReadQuery.limits:()Lorg/apache/cassandra/db/filter/DataLimits;
            invokevirtual org.apache.cassandra.db.filter.DataLimits.count:()I
            iload 9 /* pageSize */
            if_icmpgt 10
         9: .line 285
      StackMap locals: org.apache.cassandra.cql3.statements.SelectStatement org.apache.cassandra.service.QueryState org.apache.cassandra.cql3.QueryOptions long org.apache.cassandra.db.ConsistencyLevel int int int int org.apache.cassandra.db.ReadQuery
      StackMap stack:
            aload 0 /* this */
            aload 10 /* query */
            aload 2 /* options */
            aload 1 /* state */
            iload 6 /* nowInSec */
            iload 7 /* userLimit */
            lload 3 /* queryStartNanoTime */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.execute:(Lorg/apache/cassandra/db/ReadQuery;Lorg/apache/cassandra/cql3/QueryOptions;Lorg/apache/cassandra/service/QueryState;IIJ)Lorg/apache/cassandra/transport/messages/ResultMessage$Rows;
            areturn
        10: .line 287
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 10 /* query */
            aload 2 /* options */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.getPager:(Lorg/apache/cassandra/db/ReadQuery;Lorg/apache/cassandra/cql3/QueryOptions;)Lorg/apache/cassandra/service/pager/QueryPager;
            astore 11 /* pager */
        start local 11 // org.apache.cassandra.service.pager.QueryPager pager
        11: .line 289
            aload 0 /* this */
            aload 11 /* pager */
            aload 5 /* cl */
            aload 1 /* state */
            invokevirtual org.apache.cassandra.service.QueryState.getClientState:()Lorg/apache/cassandra/service/ClientState;
            invokestatic org.apache.cassandra.cql3.statements.SelectStatement$Pager.forDistributedQuery:(Lorg/apache/cassandra/service/pager/QueryPager;Lorg/apache/cassandra/db/ConsistencyLevel;Lorg/apache/cassandra/service/ClientState;)Lorg/apache/cassandra/cql3/statements/SelectStatement$Pager;
            aload 2 /* options */
            iload 9 /* pageSize */
            iload 6 /* nowInSec */
            iload 7 /* userLimit */
            lload 3 /* queryStartNanoTime */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.execute:(Lorg/apache/cassandra/cql3/statements/SelectStatement$Pager;Lorg/apache/cassandra/cql3/QueryOptions;IIIJ)Lorg/apache/cassandra/transport/messages/ResultMessage$Rows;
            areturn
        end local 11 // org.apache.cassandra.service.pager.QueryPager pager
        end local 10 // org.apache.cassandra.db.ReadQuery query
        end local 9 // int pageSize
        end local 8 // int userPerPartitionLimit
        end local 7 // int userLimit
        end local 6 // int nowInSec
        end local 5 // org.apache.cassandra.db.ConsistencyLevel cl
        end local 3 // long queryStartNanoTime
        end local 2 // org.apache.cassandra.cql3.QueryOptions options
        end local 1 // org.apache.cassandra.service.QueryState state
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   12     0                   this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0   12     1                  state  Lorg/apache/cassandra/service/QueryState;
            0   12     2                options  Lorg/apache/cassandra/cql3/QueryOptions;
            0   12     3     queryStartNanoTime  J
            1   12     5                     cl  Lorg/apache/cassandra/db/ConsistencyLevel;
            4   12     6               nowInSec  I
            5   12     7              userLimit  I
            6   12     8  userPerPartitionLimit  I
            7   12     9               pageSize  I
            8   12    10                  query  Lorg/apache/cassandra/db/ReadQuery;
           11   12    11                  pager  Lorg/apache/cassandra/service/pager/QueryPager;
    Exceptions:
      throws org.apache.cassandra.exceptions.RequestExecutionException, org.apache.cassandra.exceptions.RequestValidationException
    MethodParameters:
                    Name  Flags
      state               
      options             
      queryStartNanoTime  

  public org.apache.cassandra.db.ReadQuery getQuery(org.apache.cassandra.cql3.QueryOptions, int);
    descriptor: (Lorg/apache/cassandra/cql3/QueryOptions;I)Lorg/apache/cassandra/db/ReadQuery;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.cql3.QueryOptions options
        start local 2 // int nowInSec
         0: .line 294
            aload 0 /* this */
            aload 1 /* options */
            iload 2 /* nowInSec */
            aload 0 /* this */
            aload 1 /* options */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.getLimit:(Lorg/apache/cassandra/cql3/QueryOptions;)I
            aload 0 /* this */
            aload 1 /* options */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.getPerPartitionLimit:(Lorg/apache/cassandra/cql3/QueryOptions;)I
            aload 1 /* options */
            invokevirtual org.apache.cassandra.cql3.QueryOptions.getPageSize:()I
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.getQuery:(Lorg/apache/cassandra/cql3/QueryOptions;IIII)Lorg/apache/cassandra/db/ReadQuery;
            areturn
        end local 2 // int nowInSec
        end local 1 // org.apache.cassandra.cql3.QueryOptions options
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0    1     1   options  Lorg/apache/cassandra/cql3/QueryOptions;
            0    1     2  nowInSec  I
    Exceptions:
      throws org.apache.cassandra.exceptions.RequestValidationException
    MethodParameters:
          Name  Flags
      options   
      nowInSec  

  public org.apache.cassandra.db.ReadQuery getQuery(org.apache.cassandra.cql3.QueryOptions, int, int, int, int);
    descriptor: (Lorg/apache/cassandra/cql3/QueryOptions;IIII)Lorg/apache/cassandra/db/ReadQuery;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=6
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.cql3.QueryOptions options
        start local 2 // int nowInSec
        start local 3 // int userLimit
        start local 4 // int perPartitionLimit
        start local 5 // int pageSize
         0: .line 299
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.restrictions:Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
            invokevirtual org.apache.cassandra.cql3.restrictions.StatementRestrictions.isKeyRange:()Z
            ifne 1
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.restrictions:Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
            invokevirtual org.apache.cassandra.cql3.restrictions.StatementRestrictions.usesSecondaryIndexing:()Z
            ifne 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: istore 6 /* isPartitionRangeQuery */
        start local 6 // boolean isPartitionRangeQuery
         3: .line 301
            aload 0 /* this */
            iload 3 /* userLimit */
            iload 4 /* perPartitionLimit */
            iload 5 /* pageSize */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.getDataLimits:(III)Lorg/apache/cassandra/db/filter/DataLimits;
            astore 7 /* limit */
        start local 7 // org.apache.cassandra.db.filter.DataLimits limit
         4: .line 303
            iload 6 /* isPartitionRangeQuery */
            ifeq 6
         5: .line 304
            aload 0 /* this */
            aload 1 /* options */
            aload 7 /* limit */
            iload 2 /* nowInSec */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.getRangeCommand:(Lorg/apache/cassandra/cql3/QueryOptions;Lorg/apache/cassandra/db/filter/DataLimits;I)Lorg/apache/cassandra/db/ReadQuery;
            areturn
         6: .line 306
      StackMap locals: int org.apache.cassandra.db.filter.DataLimits
      StackMap stack:
            aload 0 /* this */
            aload 1 /* options */
            aload 7 /* limit */
            iload 2 /* nowInSec */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.getSliceCommands:(Lorg/apache/cassandra/cql3/QueryOptions;Lorg/apache/cassandra/db/filter/DataLimits;I)Lorg/apache/cassandra/db/ReadQuery;
            areturn
        end local 7 // org.apache.cassandra.db.filter.DataLimits limit
        end local 6 // boolean isPartitionRangeQuery
        end local 5 // int pageSize
        end local 4 // int perPartitionLimit
        end local 3 // int userLimit
        end local 2 // int nowInSec
        end local 1 // org.apache.cassandra.cql3.QueryOptions options
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    7     0                   this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0    7     1                options  Lorg/apache/cassandra/cql3/QueryOptions;
            0    7     2               nowInSec  I
            0    7     3              userLimit  I
            0    7     4      perPartitionLimit  I
            0    7     5               pageSize  I
            3    7     6  isPartitionRangeQuery  Z
            4    7     7                  limit  Lorg/apache/cassandra/db/filter/DataLimits;
    MethodParameters:
                   Name  Flags
      options            
      nowInSec           
      userLimit          
      perPartitionLimit  
      pageSize           

  private org.apache.cassandra.transport.messages.ResultMessage$Rows execute(org.apache.cassandra.db.ReadQuery, org.apache.cassandra.cql3.QueryOptions, org.apache.cassandra.service.QueryState, int, int, long);
    descriptor: (Lorg/apache/cassandra/db/ReadQuery;Lorg/apache/cassandra/cql3/QueryOptions;Lorg/apache/cassandra/service/QueryState;IIJ)Lorg/apache/cassandra/transport/messages/ResultMessage$Rows;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=11, args_size=7
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.db.ReadQuery query
        start local 2 // org.apache.cassandra.cql3.QueryOptions options
        start local 3 // org.apache.cassandra.service.QueryState state
        start local 4 // int nowInSec
        start local 5 // int userLimit
        start local 6 // long queryStartNanoTime
         0: .line 315
            aconst_null
            astore 8
            aconst_null
            astore 9
         1: aload 1 /* query */
            aload 2 /* options */
            invokevirtual org.apache.cassandra.cql3.QueryOptions.getConsistency:()Lorg/apache/cassandra/db/ConsistencyLevel;
            aload 3 /* state */
            invokevirtual org.apache.cassandra.service.QueryState.getClientState:()Lorg/apache/cassandra/service/ClientState;
            lload 6 /* queryStartNanoTime */
            invokeinterface org.apache.cassandra.db.ReadQuery.execute:(Lorg/apache/cassandra/db/ConsistencyLevel;Lorg/apache/cassandra/service/ClientState;J)Lorg/apache/cassandra/db/partitions/PartitionIterator;
            astore 10 /* data */
        start local 10 // org.apache.cassandra.db.partitions.PartitionIterator data
         2: .line 317
            aload 0 /* this */
            aload 10 /* data */
            aload 2 /* options */
            iload 4 /* nowInSec */
            iload 5 /* userLimit */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.processResults:(Lorg/apache/cassandra/db/partitions/PartitionIterator;Lorg/apache/cassandra/cql3/QueryOptions;II)Lorg/apache/cassandra/transport/messages/ResultMessage$Rows;
         3: .line 318
            aload 10 /* data */
            ifnull 4
            aload 10 /* data */
            invokeinterface org.apache.cassandra.db.partitions.PartitionIterator.close:()V
         4: .line 317
      StackMap locals: org.apache.cassandra.cql3.statements.SelectStatement org.apache.cassandra.db.ReadQuery org.apache.cassandra.cql3.QueryOptions org.apache.cassandra.service.QueryState int int long java.lang.Throwable java.lang.Throwable org.apache.cassandra.db.partitions.PartitionIterator
      StackMap stack: org.apache.cassandra.transport.messages.ResultMessage$Rows
            areturn
      StackMap locals:
      StackMap stack: java.lang.Throwable
         5: astore 8
         6: .line 318
            aload 10 /* data */
            ifnull 7
            aload 10 /* data */
            invokeinterface org.apache.cassandra.db.partitions.PartitionIterator.close:()V
        end local 10 // org.apache.cassandra.db.partitions.PartitionIterator data
      StackMap locals:
      StackMap stack:
         7: aload 8
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
         8: astore 9
            aload 8
            ifnonnull 9
            aload 9
            astore 8
            goto 10
      StackMap locals:
      StackMap stack:
         9: aload 8
            aload 9
            if_acmpeq 10
            aload 8
            aload 9
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        10: aload 8
            athrow
        end local 6 // long queryStartNanoTime
        end local 5 // int userLimit
        end local 4 // int nowInSec
        end local 3 // org.apache.cassandra.service.QueryState state
        end local 2 // org.apache.cassandra.cql3.QueryOptions options
        end local 1 // org.apache.cassandra.db.ReadQuery query
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   11     0                this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0   11     1               query  Lorg/apache/cassandra/db/ReadQuery;
            0   11     2             options  Lorg/apache/cassandra/cql3/QueryOptions;
            0   11     3               state  Lorg/apache/cassandra/service/QueryState;
            0   11     4            nowInSec  I
            0   11     5           userLimit  I
            0   11     6  queryStartNanoTime  J
            2    7    10                data  Lorg/apache/cassandra/db/partitions/PartitionIterator;
      Exception table:
        from    to  target  type
           2     3       5  any
           1     4       8  any
           5     8       8  any
    Exceptions:
      throws org.apache.cassandra.exceptions.RequestValidationException, org.apache.cassandra.exceptions.RequestExecutionException
    MethodParameters:
                    Name  Flags
      query               
      options             
      state               
      nowInSec            
      userLimit           
      queryStartNanoTime  

  private org.apache.cassandra.transport.messages.ResultMessage$Rows execute(org.apache.cassandra.cql3.statements.SelectStatement$Pager, org.apache.cassandra.cql3.QueryOptions, int, int, int, long);
    descriptor: (Lorg/apache/cassandra/cql3/statements/SelectStatement$Pager;Lorg/apache/cassandra/cql3/QueryOptions;IIIJ)Lorg/apache/cassandra/transport/messages/ResultMessage$Rows;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=12, args_size=7
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.cql3.statements.SelectStatement$Pager pager
        start local 2 // org.apache.cassandra.cql3.QueryOptions options
        start local 3 // int pageSize
        start local 4 // int nowInSec
        start local 5 // int userLimit
        start local 6 // long queryStartNanoTime
         0: .line 395
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.aggregationSpec:Lorg/apache/cassandra/db/aggregation/AggregationSpecification;
            ifnull 6
         1: .line 397
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.restrictions:Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
            invokevirtual org.apache.cassandra.cql3.restrictions.StatementRestrictions.hasPartitionKeyRestrictions:()Z
            ifne 4
         2: .line 399
            aload 0 /* this */
            ldc "Aggregation query used without partition key"
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.warn:(Ljava/lang/String;)V
         3: .line 400
            goto 6
         4: .line 401
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.restrictions:Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
            invokevirtual org.apache.cassandra.cql3.restrictions.StatementRestrictions.keyIsInRelation:()Z
            ifeq 6
         5: .line 403
            aload 0 /* this */
            ldc "Aggregation query used on multiple partition keys (IN restriction)"
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.warn:(Ljava/lang/String;)V
         6: .line 409
      StackMap locals:
      StackMap stack:
            iload 3 /* pageSize */
            ifle 7
            aload 0 /* this */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.needsPostQueryOrdering:()Z
            ifeq 7
            iconst_1
            goto 8
      StackMap locals:
      StackMap stack:
         7: iconst_0
         8: .line 410
      StackMap locals:
      StackMap stack: int
            ldc "Cannot page queries with both ORDER BY and a IN restriction on the partition key; you must either remove the ORDER BY or the IN and sort client side, or disable paging for this query"
         9: .line 409
            invokestatic org.apache.cassandra.cql3.statements.RequestValidations.checkFalse:(ZLjava/lang/String;)V
        10: .line 414
            aconst_null
            astore 9
            aconst_null
            astore 10
        11: aload 1 /* pager */
            iload 3 /* pageSize */
            lload 6 /* queryStartNanoTime */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement$Pager.fetchPage:(IJ)Lorg/apache/cassandra/db/partitions/PartitionIterator;
            astore 11 /* page */
        start local 11 // org.apache.cassandra.db.partitions.PartitionIterator page
        12: .line 416
            aload 0 /* this */
            aload 11 /* page */
            aload 2 /* options */
            iload 4 /* nowInSec */
            iload 5 /* userLimit */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.processResults:(Lorg/apache/cassandra/db/partitions/PartitionIterator;Lorg/apache/cassandra/cql3/QueryOptions;II)Lorg/apache/cassandra/transport/messages/ResultMessage$Rows;
            astore 8 /* msg */
        start local 8 // org.apache.cassandra.transport.messages.ResultMessage$Rows msg
        13: .line 417
            aload 11 /* page */
            ifnull 19
            aload 11 /* page */
            invokeinterface org.apache.cassandra.db.partitions.PartitionIterator.close:()V
            goto 19
        end local 8 // org.apache.cassandra.transport.messages.ResultMessage$Rows msg
      StackMap locals: org.apache.cassandra.cql3.statements.SelectStatement org.apache.cassandra.cql3.statements.SelectStatement$Pager org.apache.cassandra.cql3.QueryOptions int int int long top java.lang.Throwable java.lang.Throwable org.apache.cassandra.db.partitions.PartitionIterator
      StackMap stack: java.lang.Throwable
        14: astore 9
            aload 11 /* page */
            ifnull 15
            aload 11 /* page */
            invokeinterface org.apache.cassandra.db.partitions.PartitionIterator.close:()V
        end local 11 // org.apache.cassandra.db.partitions.PartitionIterator page
      StackMap locals:
      StackMap stack:
        15: aload 9
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        16: astore 10
            aload 9
            ifnonnull 17
            aload 10
            astore 9
            goto 18
      StackMap locals:
      StackMap stack:
        17: aload 9
            aload 10
            if_acmpeq 18
            aload 9
            aload 10
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        18: aload 9
            athrow
        start local 8 // org.apache.cassandra.transport.messages.ResultMessage$Rows msg
        19: .line 421
      StackMap locals: org.apache.cassandra.cql3.statements.SelectStatement org.apache.cassandra.cql3.statements.SelectStatement$Pager org.apache.cassandra.cql3.QueryOptions int int int long org.apache.cassandra.transport.messages.ResultMessage$Rows
      StackMap stack:
            aload 1 /* pager */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement$Pager.isExhausted:()Z
            ifne 21
        20: .line 422
            aload 8 /* msg */
            getfield org.apache.cassandra.transport.messages.ResultMessage$Rows.result:Lorg/apache/cassandra/cql3/ResultSet;
            getfield org.apache.cassandra.cql3.ResultSet.metadata:Lorg/apache/cassandra/cql3/ResultSet$ResultMetadata;
            aload 1 /* pager */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement$Pager.state:()Lorg/apache/cassandra/service/pager/PagingState;
            invokevirtual org.apache.cassandra.cql3.ResultSet$ResultMetadata.setHasMorePages:(Lorg/apache/cassandra/service/pager/PagingState;)V
        21: .line 424
      StackMap locals:
      StackMap stack:
            aload 8 /* msg */
            areturn
        end local 8 // org.apache.cassandra.transport.messages.ResultMessage$Rows msg
        end local 6 // long queryStartNanoTime
        end local 5 // int userLimit
        end local 4 // int nowInSec
        end local 3 // int pageSize
        end local 2 // org.apache.cassandra.cql3.QueryOptions options
        end local 1 // org.apache.cassandra.cql3.statements.SelectStatement$Pager pager
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   22     0                this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0   22     1               pager  Lorg/apache/cassandra/cql3/statements/SelectStatement$Pager;
            0   22     2             options  Lorg/apache/cassandra/cql3/QueryOptions;
            0   22     3            pageSize  I
            0   22     4            nowInSec  I
            0   22     5           userLimit  I
            0   22     6  queryStartNanoTime  J
           13   14     8                 msg  Lorg/apache/cassandra/transport/messages/ResultMessage$Rows;
           19   22     8                 msg  Lorg/apache/cassandra/transport/messages/ResultMessage$Rows;
           12   15    11                page  Lorg/apache/cassandra/db/partitions/PartitionIterator;
      Exception table:
        from    to  target  type
          12    13      14  any
          11    16      16  any
    Exceptions:
      throws org.apache.cassandra.exceptions.RequestValidationException, org.apache.cassandra.exceptions.RequestExecutionException
    MethodParameters:
                    Name  Flags
      pager               
      options             
      pageSize            
      nowInSec            
      userLimit           
      queryStartNanoTime  

  private void warn(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // java.lang.String msg
         0: .line 429
            getstatic org.apache.cassandra.cql3.statements.SelectStatement.logger:Lorg/slf4j/Logger;
            aload 1 /* msg */
            invokeinterface org.slf4j.Logger.warn:(Ljava/lang/String;)V
         1: .line 430
            getstatic org.apache.cassandra.service.ClientWarn.instance:Lorg/apache/cassandra/service/ClientWarn;
            aload 1 /* msg */
            invokevirtual org.apache.cassandra.service.ClientWarn.warn:(Ljava/lang/String;)V
         2: .line 431
            return
        end local 1 // java.lang.String msg
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0    3     1   msg  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      msg   

  private org.apache.cassandra.transport.messages.ResultMessage$Rows processResults(org.apache.cassandra.db.partitions.PartitionIterator, org.apache.cassandra.cql3.QueryOptions, int, int);
    descriptor: (Lorg/apache/cassandra/db/partitions/PartitionIterator;Lorg/apache/cassandra/cql3/QueryOptions;II)Lorg/apache/cassandra/transport/messages/ResultMessage$Rows;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.db.partitions.PartitionIterator partitions
        start local 2 // org.apache.cassandra.cql3.QueryOptions options
        start local 3 // int nowInSec
        start local 4 // int userLimit
         0: .line 438
            aload 0 /* this */
            aload 1 /* partitions */
            aload 2 /* options */
            iload 3 /* nowInSec */
            iload 4 /* userLimit */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.process:(Lorg/apache/cassandra/db/partitions/PartitionIterator;Lorg/apache/cassandra/cql3/QueryOptions;II)Lorg/apache/cassandra/cql3/ResultSet;
            astore 5 /* rset */
        start local 5 // org.apache.cassandra.cql3.ResultSet rset
         1: .line 439
            new org.apache.cassandra.transport.messages.ResultMessage$Rows
            dup
            aload 5 /* rset */
            invokespecial org.apache.cassandra.transport.messages.ResultMessage$Rows.<init>:(Lorg/apache/cassandra/cql3/ResultSet;)V
            areturn
        end local 5 // org.apache.cassandra.cql3.ResultSet rset
        end local 4 // int userLimit
        end local 3 // int nowInSec
        end local 2 // org.apache.cassandra.cql3.QueryOptions options
        end local 1 // org.apache.cassandra.db.partitions.PartitionIterator partitions
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0    2     1  partitions  Lorg/apache/cassandra/db/partitions/PartitionIterator;
            0    2     2     options  Lorg/apache/cassandra/cql3/QueryOptions;
            0    2     3    nowInSec  I
            0    2     4   userLimit  I
            1    2     5        rset  Lorg/apache/cassandra/cql3/ResultSet;
    Exceptions:
      throws org.apache.cassandra.exceptions.RequestValidationException
    MethodParameters:
            Name  Flags
      partitions  
      options     
      nowInSec    
      userLimit   

  public org.apache.cassandra.transport.messages.ResultMessage$Rows executeInternal(org.apache.cassandra.service.QueryState, org.apache.cassandra.cql3.QueryOptions);
    descriptor: (Lorg/apache/cassandra/service/QueryState;Lorg/apache/cassandra/cql3/QueryOptions;)Lorg/apache/cassandra/transport/messages/ResultMessage$Rows;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.service.QueryState state
        start local 2 // org.apache.cassandra.cql3.QueryOptions options
         0: .line 444
            aload 0 /* this */
            aload 1 /* state */
            aload 2 /* options */
            invokestatic org.apache.cassandra.utils.FBUtilities.nowInSeconds:()I
            invokestatic java.lang.System.nanoTime:()J
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.executeInternal:(Lorg/apache/cassandra/service/QueryState;Lorg/apache/cassandra/cql3/QueryOptions;IJ)Lorg/apache/cassandra/transport/messages/ResultMessage$Rows;
            areturn
        end local 2 // org.apache.cassandra.cql3.QueryOptions options
        end local 1 // org.apache.cassandra.service.QueryState state
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0    1     1    state  Lorg/apache/cassandra/service/QueryState;
            0    1     2  options  Lorg/apache/cassandra/cql3/QueryOptions;
    Exceptions:
      throws org.apache.cassandra.exceptions.RequestExecutionException, org.apache.cassandra.exceptions.RequestValidationException
    MethodParameters:
         Name  Flags
      state    
      options  

  public org.apache.cassandra.transport.messages.ResultMessage$Rows executeInternal(org.apache.cassandra.service.QueryState, org.apache.cassandra.cql3.QueryOptions, int, long);
    descriptor: (Lorg/apache/cassandra/service/QueryState;Lorg/apache/cassandra/cql3/QueryOptions;IJ)Lorg/apache/cassandra/transport/messages/ResultMessage$Rows;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=16, args_size=5
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.service.QueryState state
        start local 2 // org.apache.cassandra.cql3.QueryOptions options
        start local 3 // int nowInSec
        start local 4 // long queryStartNanoTime
         0: .line 449
            aload 0 /* this */
            aload 2 /* options */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.getLimit:(Lorg/apache/cassandra/cql3/QueryOptions;)I
            istore 6 /* userLimit */
        start local 6 // int userLimit
         1: .line 450
            aload 0 /* this */
            aload 2 /* options */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.getPerPartitionLimit:(Lorg/apache/cassandra/cql3/QueryOptions;)I
            istore 7 /* userPerPartitionLimit */
        start local 7 // int userPerPartitionLimit
         2: .line 451
            aload 2 /* options */
            invokevirtual org.apache.cassandra.cql3.QueryOptions.getPageSize:()I
            istore 8 /* pageSize */
        start local 8 // int pageSize
         3: .line 452
            aload 0 /* this */
            aload 2 /* options */
            iload 3 /* nowInSec */
            iload 6 /* userLimit */
            iload 7 /* userPerPartitionLimit */
            iload 8 /* pageSize */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.getQuery:(Lorg/apache/cassandra/cql3/QueryOptions;IIII)Lorg/apache/cassandra/db/ReadQuery;
            astore 9 /* query */
        start local 9 // org.apache.cassandra.db.ReadQuery query
         4: .line 454
            aconst_null
            astore 10
            aconst_null
            astore 11
         5: aload 9 /* query */
            invokeinterface org.apache.cassandra.db.ReadQuery.executionController:()Lorg/apache/cassandra/db/ReadExecutionController;
            astore 12 /* executionController */
        start local 12 // org.apache.cassandra.db.ReadExecutionController executionController
         6: .line 456
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.aggregationSpec:Lorg/apache/cassandra/db/aggregation/AggregationSpecification;
            ifnonnull 19
            iload 8 /* pageSize */
            ifle 7
            aload 9 /* query */
            invokeinterface org.apache.cassandra.db.ReadQuery.limits:()Lorg/apache/cassandra/db/filter/DataLimits;
            invokevirtual org.apache.cassandra.db.filter.DataLimits.count:()I
            iload 8 /* pageSize */
            if_icmpgt 19
         7: .line 458
      StackMap locals: org.apache.cassandra.cql3.statements.SelectStatement org.apache.cassandra.service.QueryState org.apache.cassandra.cql3.QueryOptions int long int int int org.apache.cassandra.db.ReadQuery java.lang.Throwable java.lang.Throwable org.apache.cassandra.db.ReadExecutionController
      StackMap stack:
            aconst_null
            astore 13
            aconst_null
            astore 14
         8: aload 9 /* query */
            aload 12 /* executionController */
            invokeinterface org.apache.cassandra.db.ReadQuery.executeInternal:(Lorg/apache/cassandra/db/ReadExecutionController;)Lorg/apache/cassandra/db/partitions/PartitionIterator;
            astore 15 /* data */
        start local 15 // org.apache.cassandra.db.partitions.PartitionIterator data
         9: .line 460
            aload 0 /* this */
            aload 15 /* data */
            aload 2 /* options */
            iload 3 /* nowInSec */
            iload 6 /* userLimit */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.processResults:(Lorg/apache/cassandra/db/partitions/PartitionIterator;Lorg/apache/cassandra/cql3/QueryOptions;II)Lorg/apache/cassandra/transport/messages/ResultMessage$Rows;
        10: .line 461
            aload 15 /* data */
            ifnull 11
            aload 15 /* data */
            invokeinterface org.apache.cassandra.db.partitions.PartitionIterator.close:()V
        11: .line 469
      StackMap locals: org.apache.cassandra.cql3.statements.SelectStatement org.apache.cassandra.service.QueryState org.apache.cassandra.cql3.QueryOptions int long int int int org.apache.cassandra.db.ReadQuery java.lang.Throwable java.lang.Throwable org.apache.cassandra.db.ReadExecutionController java.lang.Throwable java.lang.Throwable org.apache.cassandra.db.partitions.PartitionIterator
      StackMap stack: org.apache.cassandra.transport.messages.ResultMessage$Rows
            aload 12 /* executionController */
            ifnull 12
            aload 12 /* executionController */
            invokevirtual org.apache.cassandra.db.ReadExecutionController.close:()V
        12: .line 460
      StackMap locals:
      StackMap stack: org.apache.cassandra.transport.messages.ResultMessage$Rows
            areturn
      StackMap locals:
      StackMap stack: java.lang.Throwable
        13: astore 13
        14: .line 461
            aload 15 /* data */
            ifnull 15
            aload 15 /* data */
            invokeinterface org.apache.cassandra.db.partitions.PartitionIterator.close:()V
        end local 15 // org.apache.cassandra.db.partitions.PartitionIterator data
      StackMap locals:
      StackMap stack:
        15: aload 13
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        16: astore 14
            aload 13
            ifnonnull 17
            aload 14
            astore 13
            goto 18
      StackMap locals:
      StackMap stack:
        17: aload 13
            aload 14
            if_acmpeq 18
            aload 13
            aload 14
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        18: aload 13
            athrow
        19: .line 465
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 9 /* query */
            aload 2 /* options */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.getPager:(Lorg/apache/cassandra/db/ReadQuery;Lorg/apache/cassandra/cql3/QueryOptions;)Lorg/apache/cassandra/service/pager/QueryPager;
            astore 13 /* pager */
        start local 13 // org.apache.cassandra.service.pager.QueryPager pager
        20: .line 467
            aload 0 /* this */
            aload 13 /* pager */
            aload 12 /* executionController */
            invokestatic org.apache.cassandra.cql3.statements.SelectStatement$Pager.forInternalQuery:(Lorg/apache/cassandra/service/pager/QueryPager;Lorg/apache/cassandra/db/ReadExecutionController;)Lorg/apache/cassandra/cql3/statements/SelectStatement$Pager;
            aload 2 /* options */
            iload 8 /* pageSize */
            iload 3 /* nowInSec */
            iload 6 /* userLimit */
            lload 4 /* queryStartNanoTime */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.execute:(Lorg/apache/cassandra/cql3/statements/SelectStatement$Pager;Lorg/apache/cassandra/cql3/QueryOptions;IIIJ)Lorg/apache/cassandra/transport/messages/ResultMessage$Rows;
        21: .line 469
            aload 12 /* executionController */
            ifnull 22
            aload 12 /* executionController */
            invokevirtual org.apache.cassandra.db.ReadExecutionController.close:()V
        22: .line 467
      StackMap locals: org.apache.cassandra.cql3.statements.SelectStatement org.apache.cassandra.service.QueryState org.apache.cassandra.cql3.QueryOptions int long int int int org.apache.cassandra.db.ReadQuery java.lang.Throwable java.lang.Throwable org.apache.cassandra.db.ReadExecutionController org.apache.cassandra.service.pager.QueryPager
      StackMap stack: org.apache.cassandra.transport.messages.ResultMessage$Rows
            areturn
        end local 13 // org.apache.cassandra.service.pager.QueryPager pager
      StackMap locals: org.apache.cassandra.cql3.statements.SelectStatement org.apache.cassandra.service.QueryState org.apache.cassandra.cql3.QueryOptions int long int int int org.apache.cassandra.db.ReadQuery java.lang.Throwable java.lang.Throwable org.apache.cassandra.db.ReadExecutionController
      StackMap stack: java.lang.Throwable
        23: astore 10
        24: .line 469
            aload 12 /* executionController */
            ifnull 25
            aload 12 /* executionController */
            invokevirtual org.apache.cassandra.db.ReadExecutionController.close:()V
        end local 12 // org.apache.cassandra.db.ReadExecutionController executionController
      StackMap locals:
      StackMap stack:
        25: aload 10
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        26: astore 11
            aload 10
            ifnonnull 27
            aload 11
            astore 10
            goto 28
      StackMap locals:
      StackMap stack:
        27: aload 10
            aload 11
            if_acmpeq 28
            aload 10
            aload 11
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        28: aload 10
            athrow
        end local 9 // org.apache.cassandra.db.ReadQuery query
        end local 8 // int pageSize
        end local 7 // int userPerPartitionLimit
        end local 6 // int userLimit
        end local 4 // long queryStartNanoTime
        end local 3 // int nowInSec
        end local 2 // org.apache.cassandra.cql3.QueryOptions options
        end local 1 // org.apache.cassandra.service.QueryState state
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   29     0                   this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0   29     1                  state  Lorg/apache/cassandra/service/QueryState;
            0   29     2                options  Lorg/apache/cassandra/cql3/QueryOptions;
            0   29     3               nowInSec  I
            0   29     4     queryStartNanoTime  J
            1   29     6              userLimit  I
            2   29     7  userPerPartitionLimit  I
            3   29     8               pageSize  I
            4   29     9                  query  Lorg/apache/cassandra/db/ReadQuery;
            6   25    12    executionController  Lorg/apache/cassandra/db/ReadExecutionController;
            9   15    15                   data  Lorg/apache/cassandra/db/partitions/PartitionIterator;
           20   23    13                  pager  Lorg/apache/cassandra/service/pager/QueryPager;
      Exception table:
        from    to  target  type
           9    10      13  any
           8    11      16  any
          13    16      16  any
           6    11      23  any
          13    21      23  any
           5    12      26  any
          13    22      26  any
          23    26      26  any
    Exceptions:
      throws org.apache.cassandra.exceptions.RequestExecutionException, org.apache.cassandra.exceptions.RequestValidationException
    MethodParameters:
                    Name  Flags
      state               
      options             
      nowInSec            
      queryStartNanoTime  

  private org.apache.cassandra.service.pager.QueryPager getPager(org.apache.cassandra.db.ReadQuery, org.apache.cassandra.cql3.QueryOptions);
    descriptor: (Lorg/apache/cassandra/db/ReadQuery;Lorg/apache/cassandra/cql3/QueryOptions;)Lorg/apache/cassandra/service/pager/QueryPager;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.db.ReadQuery query
        start local 2 // org.apache.cassandra.cql3.QueryOptions options
         0: .line 474
            aload 1 /* query */
            aload 2 /* options */
            invokevirtual org.apache.cassandra.cql3.QueryOptions.getPagingState:()Lorg/apache/cassandra/service/pager/PagingState;
            aload 2 /* options */
            invokevirtual org.apache.cassandra.cql3.QueryOptions.getProtocolVersion:()Lorg/apache/cassandra/transport/ProtocolVersion;
            invokeinterface org.apache.cassandra.db.ReadQuery.getPager:(Lorg/apache/cassandra/service/pager/PagingState;Lorg/apache/cassandra/transport/ProtocolVersion;)Lorg/apache/cassandra/service/pager/QueryPager;
            astore 3 /* pager */
        start local 3 // org.apache.cassandra.service.pager.QueryPager pager
         1: .line 476
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.aggregationSpec:Lorg/apache/cassandra/db/aggregation/AggregationSpecification;
            ifnull 2
            aload 1 /* query */
            getstatic org.apache.cassandra.db.ReadQuery.EMPTY:Lorg/apache/cassandra/db/ReadQuery;
            if_acmpne 3
         2: .line 477
      StackMap locals: org.apache.cassandra.service.pager.QueryPager
      StackMap stack:
            aload 3 /* pager */
            areturn
         3: .line 479
      StackMap locals:
      StackMap stack:
            new org.apache.cassandra.service.pager.AggregationQueryPager
            dup
            aload 3 /* pager */
            aload 1 /* query */
            invokeinterface org.apache.cassandra.db.ReadQuery.limits:()Lorg/apache/cassandra/db/filter/DataLimits;
            invokespecial org.apache.cassandra.service.pager.AggregationQueryPager.<init>:(Lorg/apache/cassandra/service/pager/QueryPager;Lorg/apache/cassandra/db/filter/DataLimits;)V
            areturn
        end local 3 // org.apache.cassandra.service.pager.QueryPager pager
        end local 2 // org.apache.cassandra.cql3.QueryOptions options
        end local 1 // org.apache.cassandra.db.ReadQuery query
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0    4     1    query  Lorg/apache/cassandra/db/ReadQuery;
            0    4     2  options  Lorg/apache/cassandra/cql3/QueryOptions;
            1    4     3    pager  Lorg/apache/cassandra/service/pager/QueryPager;
    MethodParameters:
         Name  Flags
      query    
      options  

  public org.apache.cassandra.cql3.ResultSet process(org.apache.cassandra.db.partitions.PartitionIterator, int);
    descriptor: (Lorg/apache/cassandra/db/partitions/PartitionIterator;I)Lorg/apache/cassandra/cql3/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.db.partitions.PartitionIterator partitions
        start local 2 // int nowInSec
         0: .line 484
            aload 0 /* this */
            aload 1 /* partitions */
            getstatic org.apache.cassandra.cql3.QueryOptions.DEFAULT:Lorg/apache/cassandra/cql3/QueryOptions;
            iload 2 /* nowInSec */
            aload 0 /* this */
            getstatic org.apache.cassandra.cql3.QueryOptions.DEFAULT:Lorg/apache/cassandra/cql3/QueryOptions;
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.getLimit:(Lorg/apache/cassandra/cql3/QueryOptions;)I
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.process:(Lorg/apache/cassandra/db/partitions/PartitionIterator;Lorg/apache/cassandra/cql3/QueryOptions;II)Lorg/apache/cassandra/cql3/ResultSet;
            areturn
        end local 2 // int nowInSec
        end local 1 // org.apache.cassandra.db.partitions.PartitionIterator partitions
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0    1     1  partitions  Lorg/apache/cassandra/db/partitions/PartitionIterator;
            0    1     2    nowInSec  I
    Exceptions:
      throws org.apache.cassandra.exceptions.InvalidRequestException
    MethodParameters:
            Name  Flags
      partitions  
      nowInSec    

  public java.lang.String keyspace();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
         0: .line 489
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            getfield org.apache.cassandra.config.CFMetaData.ksName:Ljava/lang/String;
            areturn
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/statements/SelectStatement;

  public java.lang.String columnFamily();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
         0: .line 494
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            getfield org.apache.cassandra.config.CFMetaData.cfName:Ljava/lang/String;
            areturn
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/statements/SelectStatement;

  public org.apache.cassandra.cql3.selection.Selection getSelection();
    descriptor: ()Lorg/apache/cassandra/cql3/selection/Selection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
         0: .line 502
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.selection:Lorg/apache/cassandra/cql3/selection/Selection;
            areturn
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/statements/SelectStatement;

  public org.apache.cassandra.cql3.restrictions.StatementRestrictions getRestrictions();
    descriptor: ()Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
         0: .line 510
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.restrictions:Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
            areturn
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/statements/SelectStatement;

  private org.apache.cassandra.db.ReadQuery getSliceCommands(org.apache.cassandra.cql3.QueryOptions, org.apache.cassandra.db.filter.DataLimits, int);
    descriptor: (Lorg/apache/cassandra/cql3/QueryOptions;Lorg/apache/cassandra/db/filter/DataLimits;I)Lorg/apache/cassandra/db/ReadQuery;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=12, args_size=4
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.cql3.QueryOptions options
        start local 2 // org.apache.cassandra.db.filter.DataLimits limit
        start local 3 // int nowInSec
         0: .line 515
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.restrictions:Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
            aload 1 /* options */
            invokevirtual org.apache.cassandra.cql3.restrictions.StatementRestrictions.getPartitionKeys:(Lorg/apache/cassandra/cql3/QueryOptions;)Ljava/util/List;
            astore 4 /* keys */
        start local 4 // java.util.Collection keys
         1: .line 516
            aload 4 /* keys */
            invokeinterface java.util.Collection.isEmpty:()Z
            ifeq 3
         2: .line 517
            getstatic org.apache.cassandra.db.ReadQuery.EMPTY:Lorg/apache/cassandra/db/ReadQuery;
            areturn
         3: .line 519
      StackMap locals: java.util.Collection
      StackMap stack:
            aload 0 /* this */
            aload 1 /* options */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.makeClusteringIndexFilter:(Lorg/apache/cassandra/cql3/QueryOptions;)Lorg/apache/cassandra/db/filter/ClusteringIndexFilter;
            astore 5 /* filter */
        start local 5 // org.apache.cassandra.db.filter.ClusteringIndexFilter filter
         4: .line 520
            aload 5 /* filter */
            ifnonnull 6
         5: .line 521
            getstatic org.apache.cassandra.db.ReadQuery.EMPTY:Lorg/apache/cassandra/db/ReadQuery;
            areturn
         6: .line 523
      StackMap locals: org.apache.cassandra.db.filter.ClusteringIndexFilter
      StackMap stack:
            aload 0 /* this */
            aload 1 /* options */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.getRowFilter:(Lorg/apache/cassandra/cql3/QueryOptions;)Lorg/apache/cassandra/db/filter/RowFilter;
            astore 6 /* rowFilter */
        start local 6 // org.apache.cassandra.db.filter.RowFilter rowFilter
         7: .line 527
            new java.util.ArrayList
            dup
            aload 4 /* keys */
            invokeinterface java.util.Collection.size:()I
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 7 /* commands */
        start local 7 // java.util.List commands
         8: .line 528
            aload 4 /* keys */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 9
            goto 16
      StackMap locals: org.apache.cassandra.cql3.statements.SelectStatement org.apache.cassandra.cql3.QueryOptions org.apache.cassandra.db.filter.DataLimits int java.util.Collection org.apache.cassandra.db.filter.ClusteringIndexFilter org.apache.cassandra.db.filter.RowFilter java.util.List top java.util.Iterator
      StackMap stack:
         9: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.nio.ByteBuffer
            astore 8 /* key */
        start local 8 // java.nio.ByteBuffer key
        10: .line 530
            aload 8 /* key */
            invokestatic org.apache.cassandra.cql3.QueryProcessor.validateKey:(Ljava/nio/ByteBuffer;)V
        11: .line 531
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            aload 8 /* key */
            invokestatic org.apache.cassandra.utils.ByteBufferUtil.clone:(Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;
            invokevirtual org.apache.cassandra.config.CFMetaData.decorateKey:(Ljava/nio/ByteBuffer;)Lorg/apache/cassandra/db/DecoratedKey;
            astore 10 /* dk */
        start local 10 // org.apache.cassandra.db.DecoratedKey dk
        12: .line 532
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            invokevirtual org.apache.cassandra.config.CFMetaData.isSuper:()Z
            ifeq 13
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            invokevirtual org.apache.cassandra.config.CFMetaData.isDense:()Z
            ifeq 13
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            aload 1 /* options */
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.restrictions:Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
            invokevirtual org.apache.cassandra.cql3.restrictions.StatementRestrictions.getSuperColumnRestrictions:()Lorg/apache/cassandra/cql3/SuperColumnCompatibility$SuperColumnRestrictions;
            invokestatic org.apache.cassandra.cql3.SuperColumnCompatibility.getColumnFilter:(Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/cql3/QueryOptions;Lorg/apache/cassandra/cql3/SuperColumnCompatibility$SuperColumnRestrictions;)Lorg/apache/cassandra/db/filter/ColumnFilter;
            goto 14
      StackMap locals: org.apache.cassandra.cql3.statements.SelectStatement org.apache.cassandra.cql3.QueryOptions org.apache.cassandra.db.filter.DataLimits int java.util.Collection org.apache.cassandra.db.filter.ClusteringIndexFilter org.apache.cassandra.db.filter.RowFilter java.util.List java.nio.ByteBuffer java.util.Iterator org.apache.cassandra.db.DecoratedKey
      StackMap stack:
        13: aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.queriedColumns:Lorg/apache/cassandra/db/filter/ColumnFilter;
      StackMap locals:
      StackMap stack: org.apache.cassandra.db.filter.ColumnFilter
        14: astore 11 /* cf */
        start local 11 // org.apache.cassandra.db.filter.ColumnFilter cf
        15: .line 533
            aload 7 /* commands */
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            iload 3 /* nowInSec */
            aload 11 /* cf */
            aload 6 /* rowFilter */
            aload 2 /* limit */
            aload 10 /* dk */
            aload 5 /* filter */
            invokestatic org.apache.cassandra.db.SinglePartitionReadCommand.create:(Lorg/apache/cassandra/config/CFMetaData;ILorg/apache/cassandra/db/filter/ColumnFilter;Lorg/apache/cassandra/db/filter/RowFilter;Lorg/apache/cassandra/db/filter/DataLimits;Lorg/apache/cassandra/db/DecoratedKey;Lorg/apache/cassandra/db/filter/ClusteringIndexFilter;)Lorg/apache/cassandra/db/SinglePartitionReadCommand;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 11 // org.apache.cassandra.db.filter.ColumnFilter cf
        end local 10 // org.apache.cassandra.db.DecoratedKey dk
        end local 8 // java.nio.ByteBuffer key
        16: .line 528
      StackMap locals: org.apache.cassandra.cql3.statements.SelectStatement org.apache.cassandra.cql3.QueryOptions org.apache.cassandra.db.filter.DataLimits int java.util.Collection org.apache.cassandra.db.filter.ClusteringIndexFilter org.apache.cassandra.db.filter.RowFilter java.util.List top java.util.Iterator
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        17: .line 536
            new org.apache.cassandra.db.SinglePartitionReadCommand$Group
            dup
            aload 7 /* commands */
            aload 2 /* limit */
            invokespecial org.apache.cassandra.db.SinglePartitionReadCommand$Group.<init>:(Ljava/util/List;Lorg/apache/cassandra/db/filter/DataLimits;)V
            areturn
        end local 7 // java.util.List commands
        end local 6 // org.apache.cassandra.db.filter.RowFilter rowFilter
        end local 5 // org.apache.cassandra.db.filter.ClusteringIndexFilter filter
        end local 4 // java.util.Collection keys
        end local 3 // int nowInSec
        end local 2 // org.apache.cassandra.db.filter.DataLimits limit
        end local 1 // org.apache.cassandra.cql3.QueryOptions options
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   18     0       this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0   18     1    options  Lorg/apache/cassandra/cql3/QueryOptions;
            0   18     2      limit  Lorg/apache/cassandra/db/filter/DataLimits;
            0   18     3   nowInSec  I
            1   18     4       keys  Ljava/util/Collection<Ljava/nio/ByteBuffer;>;
            4   18     5     filter  Lorg/apache/cassandra/db/filter/ClusteringIndexFilter;
            7   18     6  rowFilter  Lorg/apache/cassandra/db/filter/RowFilter;
            8   18     7   commands  Ljava/util/List<Lorg/apache/cassandra/db/SinglePartitionReadCommand;>;
           10   16     8        key  Ljava/nio/ByteBuffer;
           12   16    10         dk  Lorg/apache/cassandra/db/DecoratedKey;
           15   16    11         cf  Lorg/apache/cassandra/db/filter/ColumnFilter;
    Exceptions:
      throws org.apache.cassandra.exceptions.RequestValidationException
    MethodParameters:
          Name  Flags
      options   
      limit     
      nowInSec  

  public org.apache.cassandra.db.Slices clusteringIndexFilterAsSlices();
    descriptor: ()Lorg/apache/cassandra/db/Slices;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=1
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
         0: .line 549
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            invokestatic org.apache.cassandra.cql3.QueryOptions.forInternalCalls:(Ljava/util/List;)Lorg/apache/cassandra/cql3/QueryOptions;
            astore 1 /* options */
        start local 1 // org.apache.cassandra.cql3.QueryOptions options
         1: .line 550
            aload 0 /* this */
            aload 1 /* options */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.makeClusteringIndexFilter:(Lorg/apache/cassandra/cql3/QueryOptions;)Lorg/apache/cassandra/db/filter/ClusteringIndexFilter;
            astore 2 /* filter */
        start local 2 // org.apache.cassandra.db.filter.ClusteringIndexFilter filter
         2: .line 551
            aload 2 /* filter */
            instanceof org.apache.cassandra.db.filter.ClusteringIndexSliceFilter
            ifeq 4
         3: .line 552
            aload 2 /* filter */
            checkcast org.apache.cassandra.db.filter.ClusteringIndexSliceFilter
            invokevirtual org.apache.cassandra.db.filter.ClusteringIndexSliceFilter.requestedSlices:()Lorg/apache/cassandra/db/Slices;
            areturn
         4: .line 554
      StackMap locals: org.apache.cassandra.cql3.QueryOptions org.apache.cassandra.db.filter.ClusteringIndexFilter
      StackMap stack:
            new org.apache.cassandra.db.Slices$Builder
            dup
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            getfield org.apache.cassandra.config.CFMetaData.comparator:Lorg/apache/cassandra/db/ClusteringComparator;
            invokespecial org.apache.cassandra.db.Slices$Builder.<init>:(Lorg/apache/cassandra/db/ClusteringComparator;)V
            astore 3 /* builder */
        start local 3 // org.apache.cassandra.db.Slices$Builder builder
         5: .line 555
            aload 2 /* filter */
            checkcast org.apache.cassandra.db.filter.ClusteringIndexNamesFilter
            invokevirtual org.apache.cassandra.db.filter.ClusteringIndexNamesFilter.requestedRows:()Ljava/util/NavigableSet;
            invokeinterface java.util.NavigableSet.iterator:()Ljava/util/Iterator;
            astore 5
            goto 8
      StackMap locals: org.apache.cassandra.cql3.statements.SelectStatement org.apache.cassandra.cql3.QueryOptions org.apache.cassandra.db.filter.ClusteringIndexFilter org.apache.cassandra.db.Slices$Builder top java.util.Iterator
      StackMap stack:
         6: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.Clustering
            astore 4 /* clustering */
        start local 4 // org.apache.cassandra.db.Clustering clustering
         7: .line 556
            aload 3 /* builder */
            aload 4 /* clustering */
            invokestatic org.apache.cassandra.db.Slice.make:(Lorg/apache/cassandra/db/Clustering;)Lorg/apache/cassandra/db/Slice;
            invokevirtual org.apache.cassandra.db.Slices$Builder.add:(Lorg/apache/cassandra/db/Slice;)Lorg/apache/cassandra/db/Slices$Builder;
            pop
        end local 4 // org.apache.cassandra.db.Clustering clustering
         8: .line 555
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
         9: .line 557
            aload 3 /* builder */
            invokevirtual org.apache.cassandra.db.Slices$Builder.build:()Lorg/apache/cassandra/db/Slices;
            areturn
        end local 3 // org.apache.cassandra.db.Slices$Builder builder
        end local 2 // org.apache.cassandra.db.filter.ClusteringIndexFilter filter
        end local 1 // org.apache.cassandra.cql3.QueryOptions options
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            1   10     1     options  Lorg/apache/cassandra/cql3/QueryOptions;
            2   10     2      filter  Lorg/apache/cassandra/db/filter/ClusteringIndexFilter;
            5   10     3     builder  Lorg/apache/cassandra/db/Slices$Builder;
            7    8     4  clustering  Lorg/apache/cassandra/db/Clustering;

  public org.apache.cassandra.db.SinglePartitionReadCommand internalReadForView(org.apache.cassandra.db.DecoratedKey, int);
    descriptor: (Lorg/apache/cassandra/db/DecoratedKey;I)Lorg/apache/cassandra/db/SinglePartitionReadCommand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=3
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.db.DecoratedKey key
        start local 2 // int nowInSec
         0: .line 566
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            invokestatic org.apache.cassandra.cql3.QueryOptions.forInternalCalls:(Ljava/util/List;)Lorg/apache/cassandra/cql3/QueryOptions;
            astore 3 /* options */
        start local 3 // org.apache.cassandra.cql3.QueryOptions options
         1: .line 567
            aload 0 /* this */
            aload 3 /* options */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.makeClusteringIndexFilter:(Lorg/apache/cassandra/cql3/QueryOptions;)Lorg/apache/cassandra/db/filter/ClusteringIndexFilter;
            astore 4 /* filter */
        start local 4 // org.apache.cassandra.db.filter.ClusteringIndexFilter filter
         2: .line 568
            aload 0 /* this */
            aload 3 /* options */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.getRowFilter:(Lorg/apache/cassandra/cql3/QueryOptions;)Lorg/apache/cassandra/db/filter/RowFilter;
            astore 5 /* rowFilter */
        start local 5 // org.apache.cassandra.db.filter.RowFilter rowFilter
         3: .line 569
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            iload 2 /* nowInSec */
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.queriedColumns:Lorg/apache/cassandra/db/filter/ColumnFilter;
            aload 5 /* rowFilter */
            getstatic org.apache.cassandra.db.filter.DataLimits.NONE:Lorg/apache/cassandra/db/filter/DataLimits;
            aload 1 /* key */
            aload 4 /* filter */
            invokestatic org.apache.cassandra.db.SinglePartitionReadCommand.create:(Lorg/apache/cassandra/config/CFMetaData;ILorg/apache/cassandra/db/filter/ColumnFilter;Lorg/apache/cassandra/db/filter/RowFilter;Lorg/apache/cassandra/db/filter/DataLimits;Lorg/apache/cassandra/db/DecoratedKey;Lorg/apache/cassandra/db/filter/ClusteringIndexFilter;)Lorg/apache/cassandra/db/SinglePartitionReadCommand;
            areturn
        end local 5 // org.apache.cassandra.db.filter.RowFilter rowFilter
        end local 4 // org.apache.cassandra.db.filter.ClusteringIndexFilter filter
        end local 3 // org.apache.cassandra.cql3.QueryOptions options
        end local 2 // int nowInSec
        end local 1 // org.apache.cassandra.db.DecoratedKey key
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0    4     1        key  Lorg/apache/cassandra/db/DecoratedKey;
            0    4     2   nowInSec  I
            1    4     3    options  Lorg/apache/cassandra/cql3/QueryOptions;
            2    4     4     filter  Lorg/apache/cassandra/db/filter/ClusteringIndexFilter;
            3    4     5  rowFilter  Lorg/apache/cassandra/db/filter/RowFilter;
    MethodParameters:
          Name  Flags
      key       
      nowInSec  

  public org.apache.cassandra.db.filter.RowFilter rowFilterForInternalCalls();
    descriptor: ()Lorg/apache/cassandra/db/filter/RowFilter;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
         0: .line 577
            aload 0 /* this */
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            invokestatic org.apache.cassandra.cql3.QueryOptions.forInternalCalls:(Ljava/util/List;)Lorg/apache/cassandra/cql3/QueryOptions;
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.getRowFilter:(Lorg/apache/cassandra/cql3/QueryOptions;)Lorg/apache/cassandra/db/filter/RowFilter;
            areturn
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/statements/SelectStatement;

  private org.apache.cassandra.db.ReadQuery getRangeCommand(org.apache.cassandra.cql3.QueryOptions, org.apache.cassandra.db.filter.DataLimits, int);
    descriptor: (Lorg/apache/cassandra/cql3/QueryOptions;Lorg/apache/cassandra/db/filter/DataLimits;I)Lorg/apache/cassandra/db/ReadQuery;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=8, args_size=4
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.cql3.QueryOptions options
        start local 2 // org.apache.cassandra.db.filter.DataLimits limit
        start local 3 // int nowInSec
         0: .line 582
            aload 0 /* this */
            aload 1 /* options */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.makeClusteringIndexFilter:(Lorg/apache/cassandra/cql3/QueryOptions;)Lorg/apache/cassandra/db/filter/ClusteringIndexFilter;
            astore 4 /* clusteringIndexFilter */
        start local 4 // org.apache.cassandra.db.filter.ClusteringIndexFilter clusteringIndexFilter
         1: .line 583
            aload 4 /* clusteringIndexFilter */
            ifnonnull 3
         2: .line 584
            getstatic org.apache.cassandra.db.ReadQuery.EMPTY:Lorg/apache/cassandra/db/ReadQuery;
            areturn
         3: .line 586
      StackMap locals: org.apache.cassandra.db.filter.ClusteringIndexFilter
      StackMap stack:
            aload 0 /* this */
            aload 1 /* options */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.getRowFilter:(Lorg/apache/cassandra/cql3/QueryOptions;)Lorg/apache/cassandra/db/filter/RowFilter;
            astore 5 /* rowFilter */
        start local 5 // org.apache.cassandra.db.filter.RowFilter rowFilter
         4: .line 590
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.restrictions:Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
            aload 1 /* options */
            invokevirtual org.apache.cassandra.cql3.restrictions.StatementRestrictions.getPartitionKeyBounds:(Lorg/apache/cassandra/cql3/QueryOptions;)Lorg/apache/cassandra/dht/AbstractBounds;
            astore 6 /* keyBounds */
        start local 6 // org.apache.cassandra.dht.AbstractBounds keyBounds
         5: .line 591
            aload 6 /* keyBounds */
            ifnonnull 7
         6: .line 592
            getstatic org.apache.cassandra.db.ReadQuery.EMPTY:Lorg/apache/cassandra/db/ReadQuery;
            areturn
         7: .line 595
      StackMap locals: org.apache.cassandra.db.filter.RowFilter org.apache.cassandra.dht.AbstractBounds
      StackMap stack:
            iconst_0
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            iload 3 /* nowInSec */
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.queriedColumns:Lorg/apache/cassandra/db/filter/ColumnFilter;
            aload 5 /* rowFilter */
            aload 2 /* limit */
            new org.apache.cassandra.db.DataRange
            dup
            aload 6 /* keyBounds */
            aload 4 /* clusteringIndexFilter */
            invokespecial org.apache.cassandra.db.DataRange.<init>:(Lorg/apache/cassandra/dht/AbstractBounds;Lorg/apache/cassandra/db/filter/ClusteringIndexFilter;)V
            invokestatic org.apache.cassandra.db.PartitionRangeReadCommand.create:(ZLorg/apache/cassandra/config/CFMetaData;ILorg/apache/cassandra/db/filter/ColumnFilter;Lorg/apache/cassandra/db/filter/RowFilter;Lorg/apache/cassandra/db/filter/DataLimits;Lorg/apache/cassandra/db/DataRange;)Lorg/apache/cassandra/db/PartitionRangeReadCommand;
         8: .line 594
            astore 7 /* command */
        start local 7 // org.apache.cassandra.db.PartitionRangeReadCommand command
         9: .line 598
            aload 7 /* command */
            invokevirtual org.apache.cassandra.db.PartitionRangeReadCommand.maybeValidateIndex:()V
        10: .line 600
            aload 7 /* command */
            areturn
        end local 7 // org.apache.cassandra.db.PartitionRangeReadCommand command
        end local 6 // org.apache.cassandra.dht.AbstractBounds keyBounds
        end local 5 // org.apache.cassandra.db.filter.RowFilter rowFilter
        end local 4 // org.apache.cassandra.db.filter.ClusteringIndexFilter clusteringIndexFilter
        end local 3 // int nowInSec
        end local 2 // org.apache.cassandra.db.filter.DataLimits limit
        end local 1 // org.apache.cassandra.cql3.QueryOptions options
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   11     0                   this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0   11     1                options  Lorg/apache/cassandra/cql3/QueryOptions;
            0   11     2                  limit  Lorg/apache/cassandra/db/filter/DataLimits;
            0   11     3               nowInSec  I
            1   11     4  clusteringIndexFilter  Lorg/apache/cassandra/db/filter/ClusteringIndexFilter;
            4   11     5              rowFilter  Lorg/apache/cassandra/db/filter/RowFilter;
            5   11     6              keyBounds  Lorg/apache/cassandra/dht/AbstractBounds<Lorg/apache/cassandra/db/PartitionPosition;>;
            9   11     7                command  Lorg/apache/cassandra/db/PartitionRangeReadCommand;
    Exceptions:
      throws org.apache.cassandra.exceptions.RequestValidationException
    MethodParameters:
          Name  Flags
      options   
      limit     
      nowInSec  

  private org.apache.cassandra.db.filter.ClusteringIndexFilter makeClusteringIndexFilter(org.apache.cassandra.cql3.QueryOptions);
    descriptor: (Lorg/apache/cassandra/cql3/QueryOptions;)Lorg/apache/cassandra/db/filter/ClusteringIndexFilter;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.cql3.QueryOptions options
         0: .line 606
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.parameters:Lorg/apache/cassandra/cql3/statements/SelectStatement$Parameters;
            getfield org.apache.cassandra.cql3.statements.SelectStatement$Parameters.isDistinct:Z
            ifeq 2
         1: .line 615
            new org.apache.cassandra.db.filter.ClusteringIndexSliceFilter
            dup
            getstatic org.apache.cassandra.db.Slices.ALL:Lorg/apache/cassandra/db/Slices;
            iconst_0
            invokespecial org.apache.cassandra.db.filter.ClusteringIndexSliceFilter.<init>:(Lorg/apache/cassandra/db/Slices;Z)V
            areturn
         2: .line 618
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.restrictions:Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
            invokevirtual org.apache.cassandra.cql3.restrictions.StatementRestrictions.isColumnRange:()Z
            ifeq 7
         3: .line 620
            aload 0 /* this */
            aload 1 /* options */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.makeSlices:(Lorg/apache/cassandra/cql3/QueryOptions;)Lorg/apache/cassandra/db/Slices;
            astore 2 /* slices */
        start local 2 // org.apache.cassandra.db.Slices slices
         4: .line 621
            aload 2 /* slices */
            getstatic org.apache.cassandra.db.Slices.NONE:Lorg/apache/cassandra/db/Slices;
            if_acmpne 6
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.selection:Lorg/apache/cassandra/cql3/selection/Selection;
            invokevirtual org.apache.cassandra.cql3.selection.Selection.containsStaticColumns:()Z
            ifne 6
         5: .line 622
            aconst_null
            areturn
         6: .line 624
      StackMap locals: org.apache.cassandra.db.Slices
      StackMap stack:
            new org.apache.cassandra.db.filter.ClusteringIndexSliceFilter
            dup
            aload 2 /* slices */
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.isReversed:Z
            invokespecial org.apache.cassandra.db.filter.ClusteringIndexSliceFilter.<init>:(Lorg/apache/cassandra/db/Slices;Z)V
            areturn
        end local 2 // org.apache.cassandra.db.Slices slices
         7: .line 628
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* options */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.getRequestedRows:(Lorg/apache/cassandra/cql3/QueryOptions;)Ljava/util/NavigableSet;
            astore 2 /* clusterings */
        start local 2 // java.util.NavigableSet clusterings
         8: .line 632
            aload 2 /* clusterings */
            invokeinterface java.util.NavigableSet.isEmpty:()Z
            ifeq 10
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.queriedColumns:Lorg/apache/cassandra/db/filter/ColumnFilter;
            invokevirtual org.apache.cassandra.db.filter.ColumnFilter.fetchedColumns:()Lorg/apache/cassandra/db/PartitionColumns;
            getfield org.apache.cassandra.db.PartitionColumns.statics:Lorg/apache/cassandra/db/Columns;
            invokevirtual org.apache.cassandra.db.Columns.isEmpty:()Z
            ifeq 10
         9: .line 633
            aconst_null
            areturn
        10: .line 635
      StackMap locals: java.util.NavigableSet
      StackMap stack:
            new org.apache.cassandra.db.filter.ClusteringIndexNamesFilter
            dup
            aload 2 /* clusterings */
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.isReversed:Z
            invokespecial org.apache.cassandra.db.filter.ClusteringIndexNamesFilter.<init>:(Ljava/util/NavigableSet;Z)V
            areturn
        end local 2 // java.util.NavigableSet clusterings
        end local 1 // org.apache.cassandra.cql3.QueryOptions options
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0         this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0   11     1      options  Lorg/apache/cassandra/cql3/QueryOptions;
            4    7     2       slices  Lorg/apache/cassandra/db/Slices;
            8   11     2  clusterings  Ljava/util/NavigableSet<Lorg/apache/cassandra/db/Clustering;>;
    Exceptions:
      throws org.apache.cassandra.exceptions.InvalidRequestException
    MethodParameters:
         Name  Flags
      options  

  private org.apache.cassandra.db.Slices makeSlices(org.apache.cassandra.cql3.QueryOptions);
    descriptor: (Lorg/apache/cassandra/cql3/QueryOptions;)Lorg/apache/cassandra/db/Slices;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=9, args_size=2
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.cql3.QueryOptions options
         0: .line 642
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.restrictions:Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
            getstatic org.apache.cassandra.cql3.statements.Bound.START:Lorg/apache/cassandra/cql3/statements/Bound;
            aload 1 /* options */
            invokevirtual org.apache.cassandra.cql3.restrictions.StatementRestrictions.getClusteringColumnsBounds:(Lorg/apache/cassandra/cql3/statements/Bound;Lorg/apache/cassandra/cql3/QueryOptions;)Ljava/util/NavigableSet;
            astore 2 /* startBounds */
        start local 2 // java.util.SortedSet startBounds
         1: .line 643
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.restrictions:Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
            getstatic org.apache.cassandra.cql3.statements.Bound.END:Lorg/apache/cassandra/cql3/statements/Bound;
            aload 1 /* options */
            invokevirtual org.apache.cassandra.cql3.restrictions.StatementRestrictions.getClusteringColumnsBounds:(Lorg/apache/cassandra/cql3/statements/Bound;Lorg/apache/cassandra/cql3/QueryOptions;)Ljava/util/NavigableSet;
            astore 3 /* endBounds */
        start local 3 // java.util.SortedSet endBounds
         2: .line 644
            getstatic org.apache.cassandra.cql3.statements.SelectStatement.$assertionsDisabled:Z
            ifne 3
            aload 2 /* startBounds */
            invokeinterface java.util.SortedSet.size:()I
            aload 3 /* endBounds */
            invokeinterface java.util.SortedSet.size:()I
            if_icmpeq 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 647
      StackMap locals: java.util.SortedSet java.util.SortedSet
      StackMap stack:
            aload 2 /* startBounds */
            invokeinterface java.util.SortedSet.size:()I
            iconst_1
            if_icmpne 10
         4: .line 649
            aload 2 /* startBounds */
            invokeinterface java.util.SortedSet.first:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.ClusteringBound
            astore 4 /* start */
        start local 4 // org.apache.cassandra.db.ClusteringBound start
         5: .line 650
            aload 3 /* endBounds */
            invokeinterface java.util.SortedSet.first:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.ClusteringBound
            astore 5 /* end */
        start local 5 // org.apache.cassandra.db.ClusteringBound end
         6: .line 651
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            getfield org.apache.cassandra.config.CFMetaData.comparator:Lorg/apache/cassandra/db/ClusteringComparator;
            aload 4 /* start */
            aload 5 /* end */
            invokevirtual org.apache.cassandra.db.ClusteringComparator.compare:(Lorg/apache/cassandra/db/ClusteringPrefix;Lorg/apache/cassandra/db/ClusteringPrefix;)I
            ifle 8
         7: .line 652
            getstatic org.apache.cassandra.db.Slices.NONE:Lorg/apache/cassandra/db/Slices;
            goto 9
         8: .line 653
      StackMap locals: org.apache.cassandra.db.ClusteringBound org.apache.cassandra.db.ClusteringBound
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            getfield org.apache.cassandra.config.CFMetaData.comparator:Lorg/apache/cassandra/db/ClusteringComparator;
            aload 4 /* start */
            aload 5 /* end */
            invokestatic org.apache.cassandra.db.Slice.make:(Lorg/apache/cassandra/db/ClusteringBound;Lorg/apache/cassandra/db/ClusteringBound;)Lorg/apache/cassandra/db/Slice;
            invokestatic org.apache.cassandra.db.Slices.with:(Lorg/apache/cassandra/db/ClusteringComparator;Lorg/apache/cassandra/db/Slice;)Lorg/apache/cassandra/db/Slices;
         9: .line 651
      StackMap locals:
      StackMap stack: org.apache.cassandra.db.Slices
            areturn
        end local 5 // org.apache.cassandra.db.ClusteringBound end
        end local 4 // org.apache.cassandra.db.ClusteringBound start
        10: .line 656
      StackMap locals:
      StackMap stack:
            new org.apache.cassandra.db.Slices$Builder
            dup
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            getfield org.apache.cassandra.config.CFMetaData.comparator:Lorg/apache/cassandra/db/ClusteringComparator;
            aload 2 /* startBounds */
            invokeinterface java.util.SortedSet.size:()I
            invokespecial org.apache.cassandra.db.Slices$Builder.<init>:(Lorg/apache/cassandra/db/ClusteringComparator;I)V
            astore 4 /* builder */
        start local 4 // org.apache.cassandra.db.Slices$Builder builder
        11: .line 657
            aload 2 /* startBounds */
            invokeinterface java.util.SortedSet.iterator:()Ljava/util/Iterator;
            astore 5 /* startIter */
        start local 5 // java.util.Iterator startIter
        12: .line 658
            aload 3 /* endBounds */
            invokeinterface java.util.SortedSet.iterator:()Ljava/util/Iterator;
            astore 6 /* endIter */
        start local 6 // java.util.Iterator endIter
        13: .line 659
            goto 19
        14: .line 661
      StackMap locals: org.apache.cassandra.db.Slices$Builder java.util.Iterator java.util.Iterator
      StackMap stack:
            aload 5 /* startIter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.ClusteringBound
            astore 7 /* start */
        start local 7 // org.apache.cassandra.db.ClusteringBound start
        15: .line 662
            aload 6 /* endIter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.ClusteringBound
            astore 8 /* end */
        start local 8 // org.apache.cassandra.db.ClusteringBound end
        16: .line 665
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            getfield org.apache.cassandra.config.CFMetaData.comparator:Lorg/apache/cassandra/db/ClusteringComparator;
            aload 7 /* start */
            aload 8 /* end */
            invokevirtual org.apache.cassandra.db.ClusteringComparator.compare:(Lorg/apache/cassandra/db/ClusteringPrefix;Lorg/apache/cassandra/db/ClusteringPrefix;)I
            ifle 18
        17: .line 666
            goto 19
        18: .line 668
      StackMap locals: org.apache.cassandra.db.ClusteringBound org.apache.cassandra.db.ClusteringBound
      StackMap stack:
            aload 4 /* builder */
            aload 7 /* start */
            aload 8 /* end */
            invokevirtual org.apache.cassandra.db.Slices$Builder.add:(Lorg/apache/cassandra/db/ClusteringBound;Lorg/apache/cassandra/db/ClusteringBound;)Lorg/apache/cassandra/db/Slices$Builder;
            pop
        end local 8 // org.apache.cassandra.db.ClusteringBound end
        end local 7 // org.apache.cassandra.db.ClusteringBound start
        19: .line 659
      StackMap locals:
      StackMap stack:
            aload 5 /* startIter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 20
            aload 6 /* endIter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 14
        20: .line 671
      StackMap locals:
      StackMap stack:
            aload 4 /* builder */
            invokevirtual org.apache.cassandra.db.Slices$Builder.build:()Lorg/apache/cassandra/db/Slices;
            areturn
        end local 6 // java.util.Iterator endIter
        end local 5 // java.util.Iterator startIter
        end local 4 // org.apache.cassandra.db.Slices$Builder builder
        end local 3 // java.util.SortedSet endBounds
        end local 2 // java.util.SortedSet startBounds
        end local 1 // org.apache.cassandra.cql3.QueryOptions options
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   21     0         this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0   21     1      options  Lorg/apache/cassandra/cql3/QueryOptions;
            1   21     2  startBounds  Ljava/util/SortedSet<Lorg/apache/cassandra/db/ClusteringBound;>;
            2   21     3    endBounds  Ljava/util/SortedSet<Lorg/apache/cassandra/db/ClusteringBound;>;
            5   10     4        start  Lorg/apache/cassandra/db/ClusteringBound;
            6   10     5          end  Lorg/apache/cassandra/db/ClusteringBound;
           11   21     4      builder  Lorg/apache/cassandra/db/Slices$Builder;
           12   21     5    startIter  Ljava/util/Iterator<Lorg/apache/cassandra/db/ClusteringBound;>;
           13   21     6      endIter  Ljava/util/Iterator<Lorg/apache/cassandra/db/ClusteringBound;>;
           15   19     7        start  Lorg/apache/cassandra/db/ClusteringBound;
           16   19     8          end  Lorg/apache/cassandra/db/ClusteringBound;
    Exceptions:
      throws org.apache.cassandra.exceptions.InvalidRequestException
    MethodParameters:
         Name  Flags
      options  

  private org.apache.cassandra.db.filter.DataLimits getDataLimits(int, int, int);
    descriptor: (III)Lorg/apache/cassandra/db/filter/DataLimits;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // int userLimit
        start local 2 // int perPartitionLimit
        start local 3 // int pageSize
         0: .line 676
            ldc 2147483647
            istore 4 /* cqlRowLimit */
        start local 4 // int cqlRowLimit
         1: .line 677
            ldc 2147483647
            istore 5 /* cqlPerPartitionLimit */
        start local 5 // int cqlPerPartitionLimit
         2: .line 680
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.aggregationSpec:Lorg/apache/cassandra/db/aggregation/AggregationSpecification;
            getstatic org.apache.cassandra.db.aggregation.AggregationSpecification.AGGREGATE_EVERYTHING:Lorg/apache/cassandra/db/aggregation/AggregationSpecification;
            if_acmpeq 6
         3: .line 682
            aload 0 /* this */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.needsPostQueryOrdering:()Z
            ifne 5
         4: .line 683
            iload 1 /* userLimit */
            istore 4 /* cqlRowLimit */
         5: .line 684
      StackMap locals: int int
      StackMap stack:
            iload 2 /* perPartitionLimit */
            istore 5 /* cqlPerPartitionLimit */
         6: .line 689
      StackMap locals:
      StackMap stack:
            iload 3 /* pageSize */
            ifgt 8
         7: .line 690
            sipush 10000
            istore 3 /* pageSize */
         8: .line 694
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.aggregationSpec:Lorg/apache/cassandra/db/aggregation/AggregationSpecification;
            ifnull 16
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.aggregationSpec:Lorg/apache/cassandra/db/aggregation/AggregationSpecification;
            getstatic org.apache.cassandra.db.aggregation.AggregationSpecification.AGGREGATE_EVERYTHING:Lorg/apache/cassandra/db/aggregation/AggregationSpecification;
            if_acmpeq 16
         9: .line 696
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.parameters:Lorg/apache/cassandra/cql3/statements/SelectStatement$Parameters;
            getfield org.apache.cassandra.cql3.statements.SelectStatement$Parameters.isDistinct:Z
            ifeq 11
        10: .line 697
            iload 4 /* cqlRowLimit */
            invokestatic org.apache.cassandra.db.filter.DataLimits.distinctLimits:(I)Lorg/apache/cassandra/db/filter/DataLimits;
            areturn
        11: .line 699
      StackMap locals:
      StackMap stack:
            iload 4 /* cqlRowLimit */
        12: .line 700
            iload 5 /* cqlPerPartitionLimit */
        13: .line 701
            iload 3 /* pageSize */
        14: .line 702
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.aggregationSpec:Lorg/apache/cassandra/db/aggregation/AggregationSpecification;
        15: .line 699
            invokestatic org.apache.cassandra.db.filter.DataLimits.groupByLimits:(IIILorg/apache/cassandra/db/aggregation/AggregationSpecification;)Lorg/apache/cassandra/db/filter/DataLimits;
            areturn
        16: .line 705
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.parameters:Lorg/apache/cassandra/cql3/statements/SelectStatement$Parameters;
            getfield org.apache.cassandra.cql3.statements.SelectStatement$Parameters.isDistinct:Z
            ifeq 20
        17: .line 706
            iload 4 /* cqlRowLimit */
            ldc 2147483647
            if_icmpne 18
            getstatic org.apache.cassandra.db.filter.DataLimits.DISTINCT_NONE:Lorg/apache/cassandra/db/filter/DataLimits;
            goto 19
      StackMap locals:
      StackMap stack:
        18: iload 4 /* cqlRowLimit */
            invokestatic org.apache.cassandra.db.filter.DataLimits.distinctLimits:(I)Lorg/apache/cassandra/db/filter/DataLimits;
      StackMap locals:
      StackMap stack: org.apache.cassandra.db.filter.DataLimits
        19: areturn
        20: .line 708
      StackMap locals:
      StackMap stack:
            iload 4 /* cqlRowLimit */
            iload 5 /* cqlPerPartitionLimit */
            invokestatic org.apache.cassandra.db.filter.DataLimits.cqlLimits:(II)Lorg/apache/cassandra/db/filter/DataLimits;
            areturn
        end local 5 // int cqlPerPartitionLimit
        end local 4 // int cqlRowLimit
        end local 3 // int pageSize
        end local 2 // int perPartitionLimit
        end local 1 // int userLimit
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   21     0                  this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0   21     1             userLimit  I
            0   21     2     perPartitionLimit  I
            0   21     3              pageSize  I
            1   21     4           cqlRowLimit  I
            2   21     5  cqlPerPartitionLimit  I
    MethodParameters:
                   Name  Flags
      userLimit          
      perPartitionLimit  
      pageSize           

  public int getLimit(org.apache.cassandra.cql3.QueryOptions);
    descriptor: (Lorg/apache/cassandra/cql3/QueryOptions;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.cql3.QueryOptions options
         0: .line 720
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.limit:Lorg/apache/cassandra/cql3/Term;
            aload 1 /* options */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.getLimit:(Lorg/apache/cassandra/cql3/Term;Lorg/apache/cassandra/cql3/QueryOptions;)I
            ireturn
        end local 1 // org.apache.cassandra.cql3.QueryOptions options
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0    1     1  options  Lorg/apache/cassandra/cql3/QueryOptions;
    MethodParameters:
         Name  Flags
      options  

  public int getPerPartitionLimit(org.apache.cassandra.cql3.QueryOptions);
    descriptor: (Lorg/apache/cassandra/cql3/QueryOptions;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.cql3.QueryOptions options
         0: .line 732
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.perPartitionLimit:Lorg/apache/cassandra/cql3/Term;
            aload 1 /* options */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.getLimit:(Lorg/apache/cassandra/cql3/Term;Lorg/apache/cassandra/cql3/QueryOptions;)I
            ireturn
        end local 1 // org.apache.cassandra.cql3.QueryOptions options
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0    1     1  options  Lorg/apache/cassandra/cql3/QueryOptions;
    MethodParameters:
         Name  Flags
      options  

  private int getLimit(org.apache.cassandra.cql3.Term, org.apache.cassandra.cql3.QueryOptions);
    descriptor: (Lorg/apache/cassandra/cql3/Term;Lorg/apache/cassandra/cql3/QueryOptions;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.cql3.Term limit
        start local 2 // org.apache.cassandra.cql3.QueryOptions options
         0: .line 737
            ldc 2147483647
            istore 3 /* userLimit */
        start local 3 // int userLimit
         1: .line 739
            aload 1 /* limit */
            ifnull 12
         2: .line 741
            aload 1 /* limit */
            aload 2 /* options */
            invokeinterface org.apache.cassandra.cql3.Term.bindAndGet:(Lorg/apache/cassandra/cql3/QueryOptions;)Ljava/nio/ByteBuffer;
            ldc "Invalid null value of limit"
            iconst_0
            anewarray java.lang.Object
            invokestatic org.apache.cassandra.cql3.statements.RequestValidations.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.nio.ByteBuffer
            astore 4 /* b */
        start local 4 // java.nio.ByteBuffer b
         3: .line 743
            aload 4 /* b */
            getstatic org.apache.cassandra.utils.ByteBufferUtil.UNSET_BYTE_BUFFER:Ljava/nio/ByteBuffer;
            if_acmpeq 12
         4: .line 747
            getstatic org.apache.cassandra.db.marshal.Int32Type.instance:Lorg/apache/cassandra/db/marshal/Int32Type;
            aload 4 /* b */
            invokevirtual org.apache.cassandra.db.marshal.Int32Type.validate:(Ljava/nio/ByteBuffer;)V
         5: .line 748
            getstatic org.apache.cassandra.db.marshal.Int32Type.instance:Lorg/apache/cassandra/db/marshal/Int32Type;
            aload 4 /* b */
            invokevirtual org.apache.cassandra.db.marshal.Int32Type.compose:(Ljava/nio/ByteBuffer;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            istore 3 /* userLimit */
         6: .line 749
            iload 3 /* userLimit */
            ifle 7
            iconst_1
            goto 8
      StackMap locals: int java.nio.ByteBuffer
      StackMap stack:
         7: iconst_0
      StackMap locals:
      StackMap stack: int
         8: ldc "LIMIT must be strictly positive"
            invokestatic org.apache.cassandra.cql3.statements.RequestValidations.checkTrue:(ZLjava/lang/String;)V
         9: .line 750
            goto 12
        10: .line 751
      StackMap locals:
      StackMap stack: org.apache.cassandra.serializers.MarshalException
            pop
        11: .line 753
            new org.apache.cassandra.exceptions.InvalidRequestException
            dup
            ldc "Invalid limit value"
            invokespecial org.apache.cassandra.exceptions.InvalidRequestException.<init>:(Ljava/lang/String;)V
            athrow
        end local 4 // java.nio.ByteBuffer b
        12: .line 757
      StackMap locals:
      StackMap stack:
            iload 3 /* userLimit */
            ireturn
        end local 3 // int userLimit
        end local 2 // org.apache.cassandra.cql3.QueryOptions options
        end local 1 // org.apache.cassandra.cql3.Term limit
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   13     0       this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0   13     1      limit  Lorg/apache/cassandra/cql3/Term;
            0   13     2    options  Lorg/apache/cassandra/cql3/QueryOptions;
            1   13     3  userLimit  I
            3   12     4          b  Ljava/nio/ByteBuffer;
      Exception table:
        from    to  target  type
           4     9      10  Class org.apache.cassandra.serializers.MarshalException
    MethodParameters:
         Name  Flags
      limit    
      options  

  private java.util.NavigableSet<org.apache.cassandra.db.Clustering> getRequestedRows(org.apache.cassandra.cql3.QueryOptions);
    descriptor: (Lorg/apache/cassandra/cql3/QueryOptions;)Ljava/util/NavigableSet;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.cql3.QueryOptions options
         0: .line 764
            getstatic org.apache.cassandra.cql3.statements.SelectStatement.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.restrictions:Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
            invokevirtual org.apache.cassandra.cql3.restrictions.StatementRestrictions.isColumnRange:()Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 765
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.restrictions:Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
            aload 1 /* options */
            invokevirtual org.apache.cassandra.cql3.restrictions.StatementRestrictions.getClusteringColumns:(Lorg/apache/cassandra/cql3/QueryOptions;)Ljava/util/NavigableSet;
            areturn
        end local 1 // org.apache.cassandra.cql3.QueryOptions options
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0    2     1  options  Lorg/apache/cassandra/cql3/QueryOptions;
    Exceptions:
      throws org.apache.cassandra.exceptions.InvalidRequestException
    Signature: (Lorg/apache/cassandra/cql3/QueryOptions;)Ljava/util/NavigableSet<Lorg/apache/cassandra/db/Clustering;>;
    MethodParameters:
         Name  Flags
      options  

  public org.apache.cassandra.db.filter.RowFilter getRowFilter(org.apache.cassandra.cql3.QueryOptions);
    descriptor: (Lorg/apache/cassandra/cql3/QueryOptions;)Lorg/apache/cassandra/db/filter/RowFilter;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.cql3.QueryOptions options
         0: .line 773
            aload 0 /* this */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.keyspace:()Ljava/lang/String;
            invokestatic org.apache.cassandra.db.Keyspace.open:(Ljava/lang/String;)Lorg/apache/cassandra/db/Keyspace;
            aload 0 /* this */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.columnFamily:()Ljava/lang/String;
            invokevirtual org.apache.cassandra.db.Keyspace.getColumnFamilyStore:(Ljava/lang/String;)Lorg/apache/cassandra/db/ColumnFamilyStore;
            astore 2 /* cfs */
        start local 2 // org.apache.cassandra.db.ColumnFamilyStore cfs
         1: .line 774
            aload 2 /* cfs */
            getfield org.apache.cassandra.db.ColumnFamilyStore.indexManager:Lorg/apache/cassandra/index/SecondaryIndexManager;
            astore 3 /* secondaryIndexManager */
        start local 3 // org.apache.cassandra.index.SecondaryIndexManager secondaryIndexManager
         2: .line 775
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.restrictions:Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
            aload 3 /* secondaryIndexManager */
            aload 1 /* options */
            invokevirtual org.apache.cassandra.cql3.restrictions.StatementRestrictions.getRowFilter:(Lorg/apache/cassandra/index/SecondaryIndexManager;Lorg/apache/cassandra/cql3/QueryOptions;)Lorg/apache/cassandra/db/filter/RowFilter;
            astore 4 /* filter */
        start local 4 // org.apache.cassandra.db.filter.RowFilter filter
         3: .line 776
            aload 4 /* filter */
            areturn
        end local 4 // org.apache.cassandra.db.filter.RowFilter filter
        end local 3 // org.apache.cassandra.index.SecondaryIndexManager secondaryIndexManager
        end local 2 // org.apache.cassandra.db.ColumnFamilyStore cfs
        end local 1 // org.apache.cassandra.cql3.QueryOptions options
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    4     0                   this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0    4     1                options  Lorg/apache/cassandra/cql3/QueryOptions;
            1    4     2                    cfs  Lorg/apache/cassandra/db/ColumnFamilyStore;
            2    4     3  secondaryIndexManager  Lorg/apache/cassandra/index/SecondaryIndexManager;
            3    4     4                 filter  Lorg/apache/cassandra/db/filter/RowFilter;
    Exceptions:
      throws org.apache.cassandra.exceptions.InvalidRequestException
    MethodParameters:
         Name  Flags
      options  

  private org.apache.cassandra.cql3.ResultSet process(org.apache.cassandra.db.partitions.PartitionIterator, org.apache.cassandra.cql3.QueryOptions, int, int);
    descriptor: (Lorg/apache/cassandra/db/partitions/PartitionIterator;Lorg/apache/cassandra/cql3/QueryOptions;II)Lorg/apache/cassandra/cql3/ResultSet;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=9, args_size=5
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.db.partitions.PartitionIterator partitions
        start local 2 // org.apache.cassandra.cql3.QueryOptions options
        start local 3 // int nowInSec
        start local 4 // int userLimit
         0: .line 784
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.selection:Lorg/apache/cassandra/cql3/selection/Selection;
            aload 2 /* options */
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.parameters:Lorg/apache/cassandra/cql3/statements/SelectStatement$Parameters;
            getfield org.apache.cassandra.cql3.statements.SelectStatement$Parameters.isJson:Z
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.aggregationSpec:Lorg/apache/cassandra/db/aggregation/AggregationSpecification;
            invokevirtual org.apache.cassandra.cql3.selection.Selection.resultSetBuilder:(Lorg/apache/cassandra/cql3/QueryOptions;ZLorg/apache/cassandra/db/aggregation/AggregationSpecification;)Lorg/apache/cassandra/cql3/selection/Selection$ResultSetBuilder;
            astore 5 /* result */
        start local 5 // org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder result
         1: .line 786
            goto 11
         2: .line 788
      StackMap locals: org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder
      StackMap stack:
            aconst_null
            astore 6
            aconst_null
            astore 7
         3: aload 1 /* partitions */
            invokeinterface org.apache.cassandra.db.partitions.PartitionIterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.rows.RowIterator
            astore 8 /* partition */
        start local 8 // org.apache.cassandra.db.rows.RowIterator partition
         4: .line 790
            aload 0 /* this */
            aload 8 /* partition */
            aload 2 /* options */
            aload 5 /* result */
            iload 3 /* nowInSec */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.processPartition:(Lorg/apache/cassandra/db/rows/RowIterator;Lorg/apache/cassandra/cql3/QueryOptions;Lorg/apache/cassandra/cql3/selection/Selection$ResultSetBuilder;I)V
         5: .line 791
            aload 8 /* partition */
            ifnull 11
            aload 8 /* partition */
            invokeinterface org.apache.cassandra.db.rows.RowIterator.close:()V
            goto 11
      StackMap locals: org.apache.cassandra.cql3.statements.SelectStatement org.apache.cassandra.db.partitions.PartitionIterator org.apache.cassandra.cql3.QueryOptions int int org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder java.lang.Throwable java.lang.Throwable org.apache.cassandra.db.rows.RowIterator
      StackMap stack: java.lang.Throwable
         6: astore 6
            aload 8 /* partition */
            ifnull 7
            aload 8 /* partition */
            invokeinterface org.apache.cassandra.db.rows.RowIterator.close:()V
        end local 8 // org.apache.cassandra.db.rows.RowIterator partition
      StackMap locals:
      StackMap stack:
         7: aload 6
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
         8: astore 7
            aload 6
            ifnonnull 9
            aload 7
            astore 6
            goto 10
      StackMap locals:
      StackMap stack:
         9: aload 6
            aload 7
            if_acmpeq 10
            aload 6
            aload 7
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        10: aload 6
            athrow
        11: .line 786
      StackMap locals:
      StackMap stack:
            aload 1 /* partitions */
            invokeinterface org.apache.cassandra.db.partitions.PartitionIterator.hasNext:()Z
            ifne 2
        12: .line 794
            aload 5 /* result */
            invokevirtual org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder.build:()Lorg/apache/cassandra/cql3/ResultSet;
            astore 6 /* cqlRows */
        start local 6 // org.apache.cassandra.cql3.ResultSet cqlRows
        13: .line 796
            aload 0 /* this */
            aload 6 /* cqlRows */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.orderResults:(Lorg/apache/cassandra/cql3/ResultSet;)V
        14: .line 798
            aload 6 /* cqlRows */
            iload 4 /* userLimit */
            invokevirtual org.apache.cassandra.cql3.ResultSet.trim:(I)V
        15: .line 800
            aload 6 /* cqlRows */
            areturn
        end local 6 // org.apache.cassandra.cql3.ResultSet cqlRows
        end local 5 // org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder result
        end local 4 // int userLimit
        end local 3 // int nowInSec
        end local 2 // org.apache.cassandra.cql3.QueryOptions options
        end local 1 // org.apache.cassandra.db.partitions.PartitionIterator partitions
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   16     0        this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0   16     1  partitions  Lorg/apache/cassandra/db/partitions/PartitionIterator;
            0   16     2     options  Lorg/apache/cassandra/cql3/QueryOptions;
            0   16     3    nowInSec  I
            0   16     4   userLimit  I
            1   16     5      result  Lorg/apache/cassandra/cql3/selection/Selection$ResultSetBuilder;
            4    7     8   partition  Lorg/apache/cassandra/db/rows/RowIterator;
           13   16     6     cqlRows  Lorg/apache/cassandra/cql3/ResultSet;
      Exception table:
        from    to  target  type
           4     5       6  any
           3     8       8  any
    Exceptions:
      throws org.apache.cassandra.exceptions.InvalidRequestException
    MethodParameters:
            Name  Flags
      partitions  
      options     
      nowInSec    
      userLimit   

  public static java.nio.ByteBuffer[] getComponents(org.apache.cassandra.config.CFMetaData, org.apache.cassandra.db.DecoratedKey);
    descriptor: (Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/db/DecoratedKey;)[Ljava/nio/ByteBuffer;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.apache.cassandra.config.CFMetaData cfm
        start local 1 // org.apache.cassandra.db.DecoratedKey dk
         0: .line 805
            aload 1 /* dk */
            invokevirtual org.apache.cassandra.db.DecoratedKey.getKey:()Ljava/nio/ByteBuffer;
            astore 2 /* key */
        start local 2 // java.nio.ByteBuffer key
         1: .line 806
            aload 0 /* cfm */
            invokevirtual org.apache.cassandra.config.CFMetaData.getKeyValidator:()Lorg/apache/cassandra/db/marshal/AbstractType;
            instanceof org.apache.cassandra.db.marshal.CompositeType
            ifeq 3
         2: .line 808
            aload 0 /* cfm */
            invokevirtual org.apache.cassandra.config.CFMetaData.getKeyValidator:()Lorg/apache/cassandra/db/marshal/AbstractType;
            checkcast org.apache.cassandra.db.marshal.CompositeType
            aload 2 /* key */
            invokevirtual org.apache.cassandra.db.marshal.CompositeType.split:(Ljava/nio/ByteBuffer;)[Ljava/nio/ByteBuffer;
            areturn
         3: .line 812
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            iconst_1
            anewarray java.nio.ByteBuffer
            dup
            iconst_0
            aload 2 /* key */
            aastore
            areturn
        end local 2 // java.nio.ByteBuffer key
        end local 1 // org.apache.cassandra.db.DecoratedKey dk
        end local 0 // org.apache.cassandra.config.CFMetaData cfm
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0   cfm  Lorg/apache/cassandra/config/CFMetaData;
            0    4     1    dk  Lorg/apache/cassandra/db/DecoratedKey;
            1    4     2   key  Ljava/nio/ByteBuffer;
    MethodParameters:
      Name  Flags
      cfm   
      dk    

  void processPartition(org.apache.cassandra.db.rows.RowIterator, org.apache.cassandra.cql3.QueryOptions, org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder, int);
    descriptor: (Lorg/apache/cassandra/db/rows/RowIterator;Lorg/apache/cassandra/cql3/QueryOptions;Lorg/apache/cassandra/cql3/selection/Selection$ResultSetBuilder;I)V
    flags: (0x0000) 
    Code:
      stack=7, locals=11, args_size=5
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.db.rows.RowIterator partition
        start local 2 // org.apache.cassandra.cql3.QueryOptions options
        start local 3 // org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder result
        start local 4 // int nowInSec
         0: .line 820
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            invokevirtual org.apache.cassandra.config.CFMetaData.isSuper:()Z
            ifeq 3
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            invokevirtual org.apache.cassandra.config.CFMetaData.isDense:()Z
            ifeq 3
         1: .line 822
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.selection:Lorg/apache/cassandra/cql3/selection/Selection;
            aload 1 /* partition */
            aload 3 /* result */
            aload 2 /* options */
            invokevirtual org.apache.cassandra.cql3.QueryOptions.getProtocolVersion:()Lorg/apache/cassandra/transport/ProtocolVersion;
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.restrictions:Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
            invokevirtual org.apache.cassandra.cql3.restrictions.StatementRestrictions.getSuperColumnRestrictions:()Lorg/apache/cassandra/cql3/SuperColumnCompatibility$SuperColumnRestrictions;
            aload 2 /* options */
            invokestatic org.apache.cassandra.cql3.SuperColumnCompatibility.processPartition:(Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/cql3/selection/Selection;Lorg/apache/cassandra/db/rows/RowIterator;Lorg/apache/cassandra/cql3/selection/Selection$ResultSetBuilder;Lorg/apache/cassandra/transport/ProtocolVersion;Lorg/apache/cassandra/cql3/SuperColumnCompatibility$SuperColumnRestrictions;Lorg/apache/cassandra/cql3/QueryOptions;)V
         2: .line 823
            return
         3: .line 826
      StackMap locals:
      StackMap stack:
            aload 2 /* options */
            invokevirtual org.apache.cassandra.cql3.QueryOptions.getProtocolVersion:()Lorg/apache/cassandra/transport/ProtocolVersion;
            astore 5 /* protocolVersion */
        start local 5 // org.apache.cassandra.transport.ProtocolVersion protocolVersion
         4: .line 828
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            aload 1 /* partition */
            invokeinterface org.apache.cassandra.db.rows.RowIterator.partitionKey:()Lorg/apache/cassandra/db/DecoratedKey;
            invokestatic org.apache.cassandra.cql3.statements.SelectStatement.getComponents:(Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/db/DecoratedKey;)[Ljava/nio/ByteBuffer;
            astore 6 /* keyComponents */
        start local 6 // java.nio.ByteBuffer[] keyComponents
         5: .line 830
            aload 1 /* partition */
            invokeinterface org.apache.cassandra.db.rows.RowIterator.staticRow:()Lorg/apache/cassandra/db/rows/Row;
            astore 7 /* staticRow */
        start local 7 // org.apache.cassandra.db.rows.Row staticRow
         6: .line 834
            aload 1 /* partition */
            invokeinterface org.apache.cassandra.db.rows.RowIterator.hasNext:()Z
            ifne 32
         7: .line 836
            aload 7 /* staticRow */
            invokeinterface org.apache.cassandra.db.rows.Row.isEmpty:()Z
            ifne 18
            aload 0 /* this */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.queriesFullPartitions:()Z
            ifne 8
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            invokevirtual org.apache.cassandra.config.CFMetaData.isStaticCompactTable:()Z
            ifeq 18
         8: .line 838
      StackMap locals: org.apache.cassandra.transport.ProtocolVersion java.nio.ByteBuffer[] org.apache.cassandra.db.rows.Row
      StackMap stack:
            aload 3 /* result */
            aload 1 /* partition */
            invokeinterface org.apache.cassandra.db.rows.RowIterator.partitionKey:()Lorg/apache/cassandra/db/DecoratedKey;
            aload 7 /* staticRow */
            invokeinterface org.apache.cassandra.db.rows.Row.clustering:()Lorg/apache/cassandra/db/Clustering;
            invokevirtual org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder.newRow:(Lorg/apache/cassandra/db/DecoratedKey;Lorg/apache/cassandra/db/Clustering;)V
         9: .line 839
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.selection:Lorg/apache/cassandra/cql3/selection/Selection;
            invokevirtual org.apache.cassandra.cql3.selection.Selection.getColumns:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9
            goto 17
      StackMap locals: org.apache.cassandra.cql3.statements.SelectStatement org.apache.cassandra.db.rows.RowIterator org.apache.cassandra.cql3.QueryOptions org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder int org.apache.cassandra.transport.ProtocolVersion java.nio.ByteBuffer[] org.apache.cassandra.db.rows.Row top java.util.Iterator
      StackMap stack:
        10: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.config.ColumnDefinition
            astore 8 /* def */
        start local 8 // org.apache.cassandra.config.ColumnDefinition def
        11: .line 841
            invokestatic org.apache.cassandra.cql3.statements.SelectStatement.$SWITCH_TABLE$org$apache$cassandra$config$ColumnDefinition$Kind:()[I
            aload 8 /* def */
            getfield org.apache.cassandra.config.ColumnDefinition.kind:Lorg/apache/cassandra/config/ColumnDefinition$Kind;
            invokevirtual org.apache.cassandra.config.ColumnDefinition$Kind.ordinal:()I
            iaload
            tableswitch { // 1 - 4
                    1: 12
                    2: 16
                    3: 16
                    4: 14
              default: 16
          }
        12: .line 844
      StackMap locals: org.apache.cassandra.cql3.statements.SelectStatement org.apache.cassandra.db.rows.RowIterator org.apache.cassandra.cql3.QueryOptions org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder int org.apache.cassandra.transport.ProtocolVersion java.nio.ByteBuffer[] org.apache.cassandra.db.rows.Row org.apache.cassandra.config.ColumnDefinition java.util.Iterator
      StackMap stack:
            aload 3 /* result */
            aload 6 /* keyComponents */
            aload 8 /* def */
            invokevirtual org.apache.cassandra.config.ColumnDefinition.position:()I
            aaload
            invokevirtual org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder.add:(Ljava/nio/ByteBuffer;)V
        13: .line 845
            goto 17
        14: .line 847
      StackMap locals:
      StackMap stack:
            aload 3 /* result */
            aload 8 /* def */
            aload 7 /* staticRow */
            iload 4 /* nowInSec */
            aload 5 /* protocolVersion */
            invokestatic org.apache.cassandra.cql3.statements.SelectStatement.addValue:(Lorg/apache/cassandra/cql3/selection/Selection$ResultSetBuilder;Lorg/apache/cassandra/config/ColumnDefinition;Lorg/apache/cassandra/db/rows/Row;ILorg/apache/cassandra/transport/ProtocolVersion;)V
        15: .line 848
            goto 17
        16: .line 850
      StackMap locals:
      StackMap stack:
            aload 3 /* result */
            aconst_null
            invokevirtual org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder.add:(Ljava/nio/ByteBuffer;)V
        end local 8 // org.apache.cassandra.config.ColumnDefinition def
        17: .line 839
      StackMap locals: org.apache.cassandra.cql3.statements.SelectStatement org.apache.cassandra.db.rows.RowIterator org.apache.cassandra.cql3.QueryOptions org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder int org.apache.cassandra.transport.ProtocolVersion java.nio.ByteBuffer[] org.apache.cassandra.db.rows.Row top java.util.Iterator
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 10
        18: .line 854
      StackMap locals: org.apache.cassandra.cql3.statements.SelectStatement org.apache.cassandra.db.rows.RowIterator org.apache.cassandra.cql3.QueryOptions org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder int org.apache.cassandra.transport.ProtocolVersion java.nio.ByteBuffer[] org.apache.cassandra.db.rows.Row
      StackMap stack:
            return
        19: .line 859
      StackMap locals:
      StackMap stack:
            aload 1 /* partition */
            invokeinterface org.apache.cassandra.db.rows.RowIterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.rows.Row
            astore 8 /* row */
        start local 8 // org.apache.cassandra.db.rows.Row row
        20: .line 860
            aload 3 /* result */
            aload 1 /* partition */
            invokeinterface org.apache.cassandra.db.rows.RowIterator.partitionKey:()Lorg/apache/cassandra/db/DecoratedKey;
            aload 8 /* row */
            invokeinterface org.apache.cassandra.db.rows.Row.clustering:()Lorg/apache/cassandra/db/Clustering;
            invokevirtual org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder.newRow:(Lorg/apache/cassandra/db/DecoratedKey;Lorg/apache/cassandra/db/Clustering;)V
        21: .line 862
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.selection:Lorg/apache/cassandra/cql3/selection/Selection;
            invokevirtual org.apache.cassandra.cql3.selection.Selection.getColumns:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 10
            goto 31
      StackMap locals: org.apache.cassandra.cql3.statements.SelectStatement org.apache.cassandra.db.rows.RowIterator org.apache.cassandra.cql3.QueryOptions org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder int org.apache.cassandra.transport.ProtocolVersion java.nio.ByteBuffer[] org.apache.cassandra.db.rows.Row org.apache.cassandra.db.rows.Row top java.util.Iterator
      StackMap stack:
        22: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.config.ColumnDefinition
            astore 9 /* def */
        start local 9 // org.apache.cassandra.config.ColumnDefinition def
        23: .line 864
            invokestatic org.apache.cassandra.cql3.statements.SelectStatement.$SWITCH_TABLE$org$apache$cassandra$config$ColumnDefinition$Kind:()[I
            aload 9 /* def */
            getfield org.apache.cassandra.config.ColumnDefinition.kind:Lorg/apache/cassandra/config/ColumnDefinition$Kind;
            invokevirtual org.apache.cassandra.config.ColumnDefinition$Kind.ordinal:()I
            iaload
            tableswitch { // 1 - 4
                    1: 24
                    2: 26
                    3: 28
                    4: 30
              default: 31
          }
        24: .line 867
      StackMap locals: org.apache.cassandra.cql3.statements.SelectStatement org.apache.cassandra.db.rows.RowIterator org.apache.cassandra.cql3.QueryOptions org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder int org.apache.cassandra.transport.ProtocolVersion java.nio.ByteBuffer[] org.apache.cassandra.db.rows.Row org.apache.cassandra.db.rows.Row org.apache.cassandra.config.ColumnDefinition java.util.Iterator
      StackMap stack:
            aload 3 /* result */
            aload 6 /* keyComponents */
            aload 9 /* def */
            invokevirtual org.apache.cassandra.config.ColumnDefinition.position:()I
            aaload
            invokevirtual org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder.add:(Ljava/nio/ByteBuffer;)V
        25: .line 868
            goto 31
        26: .line 870
      StackMap locals:
      StackMap stack:
            aload 3 /* result */
            aload 8 /* row */
            invokeinterface org.apache.cassandra.db.rows.Row.clustering:()Lorg/apache/cassandra/db/Clustering;
            aload 9 /* def */
            invokevirtual org.apache.cassandra.config.ColumnDefinition.position:()I
            invokeinterface org.apache.cassandra.db.Clustering.get:(I)Ljava/nio/ByteBuffer;
            invokevirtual org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder.add:(Ljava/nio/ByteBuffer;)V
        27: .line 871
            goto 31
        28: .line 873
      StackMap locals:
      StackMap stack:
            aload 3 /* result */
            aload 9 /* def */
            aload 8 /* row */
            iload 4 /* nowInSec */
            aload 5 /* protocolVersion */
            invokestatic org.apache.cassandra.cql3.statements.SelectStatement.addValue:(Lorg/apache/cassandra/cql3/selection/Selection$ResultSetBuilder;Lorg/apache/cassandra/config/ColumnDefinition;Lorg/apache/cassandra/db/rows/Row;ILorg/apache/cassandra/transport/ProtocolVersion;)V
        29: .line 874
            goto 31
        30: .line 876
      StackMap locals:
      StackMap stack:
            aload 3 /* result */
            aload 9 /* def */
            aload 7 /* staticRow */
            iload 4 /* nowInSec */
            aload 5 /* protocolVersion */
            invokestatic org.apache.cassandra.cql3.statements.SelectStatement.addValue:(Lorg/apache/cassandra/cql3/selection/Selection$ResultSetBuilder;Lorg/apache/cassandra/config/ColumnDefinition;Lorg/apache/cassandra/db/rows/Row;ILorg/apache/cassandra/transport/ProtocolVersion;)V
        end local 9 // org.apache.cassandra.config.ColumnDefinition def
        31: .line 862
      StackMap locals: org.apache.cassandra.cql3.statements.SelectStatement org.apache.cassandra.db.rows.RowIterator org.apache.cassandra.cql3.QueryOptions org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder int org.apache.cassandra.transport.ProtocolVersion java.nio.ByteBuffer[] org.apache.cassandra.db.rows.Row org.apache.cassandra.db.rows.Row top java.util.Iterator
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 22
        end local 8 // org.apache.cassandra.db.rows.Row row
        32: .line 857
      StackMap locals: org.apache.cassandra.cql3.statements.SelectStatement org.apache.cassandra.db.rows.RowIterator org.apache.cassandra.cql3.QueryOptions org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder int org.apache.cassandra.transport.ProtocolVersion java.nio.ByteBuffer[] org.apache.cassandra.db.rows.Row
      StackMap stack:
            aload 1 /* partition */
            invokeinterface org.apache.cassandra.db.rows.RowIterator.hasNext:()Z
            ifne 19
        33: .line 881
            return
        end local 7 // org.apache.cassandra.db.rows.Row staticRow
        end local 6 // java.nio.ByteBuffer[] keyComponents
        end local 5 // org.apache.cassandra.transport.ProtocolVersion protocolVersion
        end local 4 // int nowInSec
        end local 3 // org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder result
        end local 2 // org.apache.cassandra.cql3.QueryOptions options
        end local 1 // org.apache.cassandra.db.rows.RowIterator partition
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   34     0             this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0   34     1        partition  Lorg/apache/cassandra/db/rows/RowIterator;
            0   34     2          options  Lorg/apache/cassandra/cql3/QueryOptions;
            0   34     3           result  Lorg/apache/cassandra/cql3/selection/Selection$ResultSetBuilder;
            0   34     4         nowInSec  I
            4   34     5  protocolVersion  Lorg/apache/cassandra/transport/ProtocolVersion;
            5   34     6    keyComponents  [Ljava/nio/ByteBuffer;
            6   34     7        staticRow  Lorg/apache/cassandra/db/rows/Row;
           11   17     8              def  Lorg/apache/cassandra/config/ColumnDefinition;
           20   32     8              row  Lorg/apache/cassandra/db/rows/Row;
           23   31     9              def  Lorg/apache/cassandra/config/ColumnDefinition;
    Exceptions:
      throws org.apache.cassandra.exceptions.InvalidRequestException
    MethodParameters:
           Name  Flags
      partition  
      options    
      result     
      nowInSec   

  private boolean queriesFullPartitions();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
         0: .line 889
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.restrictions:Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
            invokevirtual org.apache.cassandra.cql3.restrictions.StatementRestrictions.hasClusteringColumnsRestrictions:()Z
            ifne 1
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.restrictions:Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
            invokevirtual org.apache.cassandra.cql3.restrictions.StatementRestrictions.hasRegularColumnsRestrictions:()Z
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/cassandra/cql3/statements/SelectStatement;

  private static void addValue(org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder, org.apache.cassandra.config.ColumnDefinition, org.apache.cassandra.db.rows.Row, int, org.apache.cassandra.transport.ProtocolVersion);
    descriptor: (Lorg/apache/cassandra/cql3/selection/Selection$ResultSetBuilder;Lorg/apache/cassandra/config/ColumnDefinition;Lorg/apache/cassandra/db/rows/Row;ILorg/apache/cassandra/transport/ProtocolVersion;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=5
        start local 0 // org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder result
        start local 1 // org.apache.cassandra.config.ColumnDefinition def
        start local 2 // org.apache.cassandra.db.rows.Row row
        start local 3 // int nowInSec
        start local 4 // org.apache.cassandra.transport.ProtocolVersion protocolVersion
         0: .line 894
            aload 1 /* def */
            invokevirtual org.apache.cassandra.config.ColumnDefinition.isComplex:()Z
            ifeq 9
         1: .line 896
            getstatic org.apache.cassandra.cql3.statements.SelectStatement.$assertionsDisabled:Z
            ifne 2
            aload 1 /* def */
            getfield org.apache.cassandra.config.ColumnDefinition.type:Lorg/apache/cassandra/db/marshal/AbstractType;
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.isMultiCell:()Z
            ifne 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 897
      StackMap locals:
      StackMap stack:
            aload 2 /* row */
            aload 1 /* def */
            invokeinterface org.apache.cassandra.db.rows.Row.getComplexColumnData:(Lorg/apache/cassandra/config/ColumnDefinition;)Lorg/apache/cassandra/db/rows/ComplexColumnData;
            astore 5 /* complexData */
        start local 5 // org.apache.cassandra.db.rows.ComplexColumnData complexData
         3: .line 898
            aload 5 /* complexData */
            ifnonnull 5
         4: .line 899
            aload 0 /* result */
            aconst_null
            invokevirtual org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder.add:(Ljava/nio/ByteBuffer;)V
            goto 10
         5: .line 900
      StackMap locals: org.apache.cassandra.db.rows.ComplexColumnData
      StackMap stack:
            aload 1 /* def */
            getfield org.apache.cassandra.config.ColumnDefinition.type:Lorg/apache/cassandra/db/marshal/AbstractType;
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.isCollection:()Z
            ifeq 7
         6: .line 901
            aload 0 /* result */
            aload 1 /* def */
            getfield org.apache.cassandra.config.ColumnDefinition.type:Lorg/apache/cassandra/db/marshal/AbstractType;
            checkcast org.apache.cassandra.db.marshal.CollectionType
            aload 5 /* complexData */
            invokevirtual org.apache.cassandra.db.rows.ComplexColumnData.iterator:()Ljava/util/Iterator;
            aload 4 /* protocolVersion */
            invokevirtual org.apache.cassandra.db.marshal.CollectionType.serializeForNativeProtocol:(Ljava/util/Iterator;Lorg/apache/cassandra/transport/ProtocolVersion;)Ljava/nio/ByteBuffer;
            invokevirtual org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder.add:(Ljava/nio/ByteBuffer;)V
            goto 10
         7: .line 903
      StackMap locals:
      StackMap stack:
            aload 0 /* result */
            aload 1 /* def */
            getfield org.apache.cassandra.config.ColumnDefinition.type:Lorg/apache/cassandra/db/marshal/AbstractType;
            checkcast org.apache.cassandra.db.marshal.UserType
            aload 5 /* complexData */
            invokevirtual org.apache.cassandra.db.rows.ComplexColumnData.iterator:()Ljava/util/Iterator;
            aload 4 /* protocolVersion */
            invokevirtual org.apache.cassandra.db.marshal.UserType.serializeForNativeProtocol:(Ljava/util/Iterator;Lorg/apache/cassandra/transport/ProtocolVersion;)Ljava/nio/ByteBuffer;
            invokevirtual org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder.add:(Ljava/nio/ByteBuffer;)V
        end local 5 // org.apache.cassandra.db.rows.ComplexColumnData complexData
         8: .line 904
            goto 10
         9: .line 907
      StackMap locals:
      StackMap stack:
            aload 0 /* result */
            aload 2 /* row */
            aload 1 /* def */
            invokeinterface org.apache.cassandra.db.rows.Row.getCell:(Lorg/apache/cassandra/config/ColumnDefinition;)Lorg/apache/cassandra/db/rows/Cell;
            iload 3 /* nowInSec */
            invokevirtual org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder.add:(Lorg/apache/cassandra/db/rows/Cell;I)V
        10: .line 909
      StackMap locals:
      StackMap stack:
            return
        end local 4 // org.apache.cassandra.transport.ProtocolVersion protocolVersion
        end local 3 // int nowInSec
        end local 2 // org.apache.cassandra.db.rows.Row row
        end local 1 // org.apache.cassandra.config.ColumnDefinition def
        end local 0 // org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder result
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   11     0           result  Lorg/apache/cassandra/cql3/selection/Selection$ResultSetBuilder;
            0   11     1              def  Lorg/apache/cassandra/config/ColumnDefinition;
            0   11     2              row  Lorg/apache/cassandra/db/rows/Row;
            0   11     3         nowInSec  I
            0   11     4  protocolVersion  Lorg/apache/cassandra/transport/ProtocolVersion;
            3    8     5      complexData  Lorg/apache/cassandra/db/rows/ComplexColumnData;
    MethodParameters:
                 Name  Flags
      result           
      def              
      row              
      nowInSec         
      protocolVersion  

  private boolean needsPostQueryOrdering();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
         0: .line 914
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.restrictions:Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
            invokevirtual org.apache.cassandra.cql3.restrictions.StatementRestrictions.keyIsInRelation:()Z
            ifeq 1
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.parameters:Lorg/apache/cassandra/cql3/statements/SelectStatement$Parameters;
            getfield org.apache.cassandra.cql3.statements.SelectStatement$Parameters.orderings:Ljava/util/Map;
            invokeinterface java.util.Map.isEmpty:()Z
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/cassandra/cql3/statements/SelectStatement;

  private void orderResults(org.apache.cassandra.cql3.ResultSet);
    descriptor: (Lorg/apache/cassandra/cql3/ResultSet;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
        start local 1 // org.apache.cassandra.cql3.ResultSet cqlRows
         0: .line 922
            aload 1 /* cqlRows */
            invokevirtual org.apache.cassandra.cql3.ResultSet.size:()I
            ifeq 1
            aload 0 /* this */
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.needsPostQueryOrdering:()Z
            ifne 2
         1: .line 923
      StackMap locals:
      StackMap stack:
            return
         2: .line 925
      StackMap locals:
      StackMap stack:
            aload 1 /* cqlRows */
            getfield org.apache.cassandra.cql3.ResultSet.rows:Ljava/util/List;
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SelectStatement.orderingComparator:Ljava/util/Comparator;
            invokestatic java.util.Collections.sort:(Ljava/util/List;Ljava/util/Comparator;)V
         3: .line 926
            return
        end local 1 // org.apache.cassandra.cql3.ResultSet cqlRows
        end local 0 // org.apache.cassandra.cql3.statements.SelectStatement this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/apache/cassandra/cql3/statements/SelectStatement;
            0    4     1  cqlRows  Lorg/apache/cassandra/cql3/ResultSet;
    MethodParameters:
         Name  Flags
      cqlRows  

  public org.apache.cassandra.transport.messages.ResultMessage execute(org.apache.cassandra.service.QueryState, org.apache.cassandra.cql3.QueryOptions, long);
    descriptor: (Lorg/apache/cassandra/service/QueryState;Lorg/apache/cassandra/cql3/QueryOptions;J)Lorg/apache/cassandra/transport/messages/ResultMessage;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=5, locals=5, args_size=4
         0: .line 1
            aload 0
            aload 1
            aload 2
            lload 3
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.execute:(Lorg/apache/cassandra/service/QueryState;Lorg/apache/cassandra/cql3/QueryOptions;J)Lorg/apache/cassandra/transport/messages/ResultMessage$Rows;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws org.apache.cassandra.exceptions.RequestValidationException, org.apache.cassandra.exceptions.RequestExecutionException

  public org.apache.cassandra.transport.messages.ResultMessage executeInternal(org.apache.cassandra.service.QueryState, org.apache.cassandra.cql3.QueryOptions);
    descriptor: (Lorg/apache/cassandra/service/QueryState;Lorg/apache/cassandra/cql3/QueryOptions;)Lorg/apache/cassandra/transport/messages/ResultMessage;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            aload 1
            aload 2
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.executeInternal:(Lorg/apache/cassandra/service/QueryState;Lorg/apache/cassandra/cql3/QueryOptions;)Lorg/apache/cassandra/transport/messages/ResultMessage$Rows;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws org.apache.cassandra.exceptions.RequestValidationException, org.apache.cassandra.exceptions.RequestExecutionException

  static int[] $SWITCH_TABLE$org$apache$cassandra$config$ColumnDefinition$Kind();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 117
            getstatic org.apache.cassandra.cql3.statements.SelectStatement.$SWITCH_TABLE$org$apache$cassandra$config$ColumnDefinition$Kind:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.apache.cassandra.config.ColumnDefinition$Kind.values:()[Lorg/apache/cassandra/config/ColumnDefinition$Kind;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.apache.cassandra.config.ColumnDefinition$Kind.CLUSTERING:Lorg/apache/cassandra/config/ColumnDefinition$Kind;
            invokevirtual org.apache.cassandra.config.ColumnDefinition$Kind.ordinal:()I
            iconst_2
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic org.apache.cassandra.config.ColumnDefinition$Kind.PARTITION_KEY:Lorg/apache/cassandra/config/ColumnDefinition$Kind;
            invokevirtual org.apache.cassandra.config.ColumnDefinition$Kind.ordinal:()I
            iconst_1
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.apache.cassandra.config.ColumnDefinition$Kind.REGULAR:Lorg/apache/cassandra/config/ColumnDefinition$Kind;
            invokevirtual org.apache.cassandra.config.ColumnDefinition$Kind.ordinal:()I
            iconst_3
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic org.apache.cassandra.config.ColumnDefinition$Kind.STATIC:Lorg/apache/cassandra/config/ColumnDefinition$Kind;
            invokevirtual org.apache.cassandra.config.ColumnDefinition$Kind.ordinal:()I
            iconst_4
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            dup
            putstatic org.apache.cassandra.cql3.statements.SelectStatement.$SWITCH_TABLE$org$apache$cassandra$config$ColumnDefinition$Kind:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
}
SourceFile: "SelectStatement.java"
NestMembers:
  org.apache.cassandra.cql3.statements.SelectStatement$ColumnComparator  org.apache.cassandra.cql3.statements.SelectStatement$CompositeComparator  org.apache.cassandra.cql3.statements.SelectStatement$Pager  org.apache.cassandra.cql3.statements.SelectStatement$Pager$InternalPager  org.apache.cassandra.cql3.statements.SelectStatement$Pager$NormalPager  org.apache.cassandra.cql3.statements.SelectStatement$Parameters  org.apache.cassandra.cql3.statements.SelectStatement$RawStatement  org.apache.cassandra.cql3.statements.SelectStatement$SingleColumnComparator
InnerClasses:
  public final Kind = org.apache.cassandra.config.ColumnDefinition$Kind of org.apache.cassandra.config.ColumnDefinition
  public abstract Raw = org.apache.cassandra.config.ColumnDefinition$Raw of org.apache.cassandra.config.ColumnDefinition
  public ResultMetadata = org.apache.cassandra.cql3.ResultSet$ResultMetadata of org.apache.cassandra.cql3.ResultSet
  public SuperColumnRestrictions = org.apache.cassandra.cql3.SuperColumnCompatibility$SuperColumnRestrictions of org.apache.cassandra.cql3.SuperColumnCompatibility
  public ResultSetBuilder = org.apache.cassandra.cql3.selection.Selection$ResultSetBuilder of org.apache.cassandra.cql3.selection.Selection
  private abstract ColumnComparator = org.apache.cassandra.cql3.statements.SelectStatement$ColumnComparator of org.apache.cassandra.cql3.statements.SelectStatement
  private CompositeComparator = org.apache.cassandra.cql3.statements.SelectStatement$CompositeComparator of org.apache.cassandra.cql3.statements.SelectStatement
  private abstract Pager = org.apache.cassandra.cql3.statements.SelectStatement$Pager of org.apache.cassandra.cql3.statements.SelectStatement
  public Parameters = org.apache.cassandra.cql3.statements.SelectStatement$Parameters of org.apache.cassandra.cql3.statements.SelectStatement
  public RawStatement = org.apache.cassandra.cql3.statements.SelectStatement$RawStatement of org.apache.cassandra.cql3.statements.SelectStatement
  private SingleColumnComparator = org.apache.cassandra.cql3.statements.SelectStatement$SingleColumnComparator of org.apache.cassandra.cql3.statements.SelectStatement
  public Group = org.apache.cassandra.db.SinglePartitionReadCommand$Group of org.apache.cassandra.db.SinglePartitionReadCommand
  public Builder = org.apache.cassandra.db.Slices$Builder of org.apache.cassandra.db.Slices
  public Builder = org.apache.cassandra.db.filter.ColumnFilter$Builder of org.apache.cassandra.db.filter.ColumnFilter
  public Rows = org.apache.cassandra.transport.messages.ResultMessage$Rows of org.apache.cassandra.transport.messages.ResultMessage