public final class org.apache.cassandra.cql3.TokenRelation extends org.apache.cassandra.cql3.Relation
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.apache.cassandra.cql3.TokenRelation
  super_class: org.apache.cassandra.cql3.Relation
{
  private final java.util.List<org.apache.cassandra.config.ColumnDefinition$Raw> entities;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Lorg/apache/cassandra/config/ColumnDefinition$Raw;>;

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

  public void <init>(java.util.List<org.apache.cassandra.config.ColumnDefinition$Raw>, org.apache.cassandra.cql3.Operator, org.apache.cassandra.cql3.Term$Raw);
    descriptor: (Ljava/util/List;Lorg/apache/cassandra/cql3/Operator;Lorg/apache/cassandra/cql3/Term$Raw;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.apache.cassandra.cql3.TokenRelation this
        start local 1 // java.util.List entities
        start local 2 // org.apache.cassandra.cql3.Operator type
        start local 3 // org.apache.cassandra.cql3.Term$Raw value
         0: .line 54
            aload 0 /* this */
            invokespecial org.apache.cassandra.cql3.Relation.<init>:()V
         1: .line 56
            aload 0 /* this */
            aload 1 /* entities */
            putfield org.apache.cassandra.cql3.TokenRelation.entities:Ljava/util/List;
         2: .line 57
            aload 0 /* this */
            aload 2 /* type */
            putfield org.apache.cassandra.cql3.TokenRelation.relationType:Lorg/apache/cassandra/cql3/Operator;
         3: .line 58
            aload 0 /* this */
            aload 3 /* value */
            putfield org.apache.cassandra.cql3.TokenRelation.value:Lorg/apache/cassandra/cql3/Term$Raw;
         4: .line 59
            return
        end local 3 // org.apache.cassandra.cql3.Term$Raw value
        end local 2 // org.apache.cassandra.cql3.Operator type
        end local 1 // java.util.List entities
        end local 0 // org.apache.cassandra.cql3.TokenRelation this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lorg/apache/cassandra/cql3/TokenRelation;
            0    5     1  entities  Ljava/util/List<Lorg/apache/cassandra/config/ColumnDefinition$Raw;>;
            0    5     2      type  Lorg/apache/cassandra/cql3/Operator;
            0    5     3     value  Lorg/apache/cassandra/cql3/Term$Raw;
    Signature: (Ljava/util/List<Lorg/apache/cassandra/config/ColumnDefinition$Raw;>;Lorg/apache/cassandra/cql3/Operator;Lorg/apache/cassandra/cql3/Term$Raw;)V
    MethodParameters:
          Name  Flags
      entities  
      type      
      value     

  public boolean onToken();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.TokenRelation this
         0: .line 64
            iconst_1
            ireturn
        end local 0 // org.apache.cassandra.cql3.TokenRelation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/TokenRelation;

  public org.apache.cassandra.cql3.Term$Raw getValue();
    descriptor: ()Lorg/apache/cassandra/cql3/Term$Raw;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.TokenRelation this
         0: .line 69
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.TokenRelation.value:Lorg/apache/cassandra/cql3/Term$Raw;
            areturn
        end local 0 // org.apache.cassandra.cql3.TokenRelation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/TokenRelation;

  public java.util.List<? extends org.apache.cassandra.cql3.Term$Raw> getInValues();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.TokenRelation this
         0: .line 74
            aconst_null
            areturn
        end local 0 // org.apache.cassandra.cql3.TokenRelation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/TokenRelation;
    Signature: ()Ljava/util/List<+Lorg/apache/cassandra/cql3/Term$Raw;>;

  protected org.apache.cassandra.cql3.restrictions.Restriction newEQRestriction(org.apache.cassandra.config.CFMetaData, org.apache.cassandra.cql3.VariableSpecifications);
    descriptor: (Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/cql3/VariableSpecifications;)Lorg/apache/cassandra/cql3/restrictions/Restriction;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // org.apache.cassandra.cql3.TokenRelation this
        start local 1 // org.apache.cassandra.config.CFMetaData cfm
        start local 2 // org.apache.cassandra.cql3.VariableSpecifications boundNames
         0: .line 80
            aload 0 /* this */
            aload 1 /* cfm */
            invokevirtual org.apache.cassandra.cql3.TokenRelation.getColumnDefinitions:(Lorg/apache/cassandra/config/CFMetaData;)Ljava/util/List;
            astore 3 /* columnDefs */
        start local 3 // java.util.List columnDefs
         1: .line 81
            aload 0 /* this */
            aload 1 /* cfm */
            aload 3 /* columnDefs */
            invokestatic org.apache.cassandra.cql3.TokenRelation.toReceivers:(Lorg/apache/cassandra/config/CFMetaData;Ljava/util/List;)Ljava/util/List;
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.TokenRelation.value:Lorg/apache/cassandra/cql3/Term$Raw;
            aload 1 /* cfm */
            getfield org.apache.cassandra.config.CFMetaData.ksName:Ljava/lang/String;
            aload 2 /* boundNames */
            invokevirtual org.apache.cassandra.cql3.TokenRelation.toTerm:(Ljava/util/List;Lorg/apache/cassandra/cql3/Term$Raw;Ljava/lang/String;Lorg/apache/cassandra/cql3/VariableSpecifications;)Lorg/apache/cassandra/cql3/Term;
            astore 4 /* term */
        start local 4 // org.apache.cassandra.cql3.Term term
         2: .line 82
            new org.apache.cassandra.cql3.restrictions.TokenRestriction$EQRestriction
            dup
            aload 1 /* cfm */
            aload 3 /* columnDefs */
            aload 4 /* term */
            invokespecial org.apache.cassandra.cql3.restrictions.TokenRestriction$EQRestriction.<init>:(Lorg/apache/cassandra/config/CFMetaData;Ljava/util/List;Lorg/apache/cassandra/cql3/Term;)V
            areturn
        end local 4 // org.apache.cassandra.cql3.Term term
        end local 3 // java.util.List columnDefs
        end local 2 // org.apache.cassandra.cql3.VariableSpecifications boundNames
        end local 1 // org.apache.cassandra.config.CFMetaData cfm
        end local 0 // org.apache.cassandra.cql3.TokenRelation this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/apache/cassandra/cql3/TokenRelation;
            0    3     1         cfm  Lorg/apache/cassandra/config/CFMetaData;
            0    3     2  boundNames  Lorg/apache/cassandra/cql3/VariableSpecifications;
            1    3     3  columnDefs  Ljava/util/List<Lorg/apache/cassandra/config/ColumnDefinition;>;
            2    3     4        term  Lorg/apache/cassandra/cql3/Term;
    Exceptions:
      throws org.apache.cassandra.exceptions.InvalidRequestException
    MethodParameters:
            Name  Flags
      cfm         
      boundNames  

  protected org.apache.cassandra.cql3.restrictions.Restriction newINRestriction(org.apache.cassandra.config.CFMetaData, org.apache.cassandra.cql3.VariableSpecifications);
    descriptor: (Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/cql3/VariableSpecifications;)Lorg/apache/cassandra/cql3/restrictions/Restriction;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.apache.cassandra.cql3.TokenRelation this
        start local 1 // org.apache.cassandra.config.CFMetaData cfm
        start local 2 // org.apache.cassandra.cql3.VariableSpecifications boundNames
         0: .line 88
            ldc "%s cannot be used with the token function"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            invokevirtual org.apache.cassandra.cql3.TokenRelation.operator:()Lorg/apache/cassandra/cql3/Operator;
            aastore
            invokestatic org.apache.cassandra.cql3.statements.RequestValidations.invalidRequest:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/apache/cassandra/exceptions/InvalidRequestException;
            athrow
        end local 2 // org.apache.cassandra.cql3.VariableSpecifications boundNames
        end local 1 // org.apache.cassandra.config.CFMetaData cfm
        end local 0 // org.apache.cassandra.cql3.TokenRelation this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/apache/cassandra/cql3/TokenRelation;
            0    1     1         cfm  Lorg/apache/cassandra/config/CFMetaData;
            0    1     2  boundNames  Lorg/apache/cassandra/cql3/VariableSpecifications;
    Exceptions:
      throws org.apache.cassandra.exceptions.InvalidRequestException
    MethodParameters:
            Name  Flags
      cfm         
      boundNames  

  protected org.apache.cassandra.cql3.restrictions.Restriction newSliceRestriction(org.apache.cassandra.config.CFMetaData, org.apache.cassandra.cql3.VariableSpecifications, org.apache.cassandra.cql3.statements.Bound, boolean);
    descriptor: (Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/cql3/VariableSpecifications;Lorg/apache/cassandra/cql3/statements/Bound;Z)Lorg/apache/cassandra/cql3/restrictions/Restriction;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=7, args_size=5
        start local 0 // org.apache.cassandra.cql3.TokenRelation this
        start local 1 // org.apache.cassandra.config.CFMetaData cfm
        start local 2 // org.apache.cassandra.cql3.VariableSpecifications boundNames
        start local 3 // org.apache.cassandra.cql3.statements.Bound bound
        start local 4 // boolean inclusive
         0: .line 97
            aload 0 /* this */
            aload 1 /* cfm */
            invokevirtual org.apache.cassandra.cql3.TokenRelation.getColumnDefinitions:(Lorg/apache/cassandra/config/CFMetaData;)Ljava/util/List;
            astore 5 /* columnDefs */
        start local 5 // java.util.List columnDefs
         1: .line 98
            aload 0 /* this */
            aload 1 /* cfm */
            aload 5 /* columnDefs */
            invokestatic org.apache.cassandra.cql3.TokenRelation.toReceivers:(Lorg/apache/cassandra/config/CFMetaData;Ljava/util/List;)Ljava/util/List;
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.TokenRelation.value:Lorg/apache/cassandra/cql3/Term$Raw;
            aload 1 /* cfm */
            getfield org.apache.cassandra.config.CFMetaData.ksName:Ljava/lang/String;
            aload 2 /* boundNames */
            invokevirtual org.apache.cassandra.cql3.TokenRelation.toTerm:(Ljava/util/List;Lorg/apache/cassandra/cql3/Term$Raw;Ljava/lang/String;Lorg/apache/cassandra/cql3/VariableSpecifications;)Lorg/apache/cassandra/cql3/Term;
            astore 6 /* term */
        start local 6 // org.apache.cassandra.cql3.Term term
         2: .line 99
            new org.apache.cassandra.cql3.restrictions.TokenRestriction$SliceRestriction
            dup
            aload 1 /* cfm */
            aload 5 /* columnDefs */
            aload 3 /* bound */
            iload 4 /* inclusive */
            aload 6 /* term */
            invokespecial org.apache.cassandra.cql3.restrictions.TokenRestriction$SliceRestriction.<init>:(Lorg/apache/cassandra/config/CFMetaData;Ljava/util/List;Lorg/apache/cassandra/cql3/statements/Bound;ZLorg/apache/cassandra/cql3/Term;)V
            areturn
        end local 6 // org.apache.cassandra.cql3.Term term
        end local 5 // java.util.List columnDefs
        end local 4 // boolean inclusive
        end local 3 // org.apache.cassandra.cql3.statements.Bound bound
        end local 2 // org.apache.cassandra.cql3.VariableSpecifications boundNames
        end local 1 // org.apache.cassandra.config.CFMetaData cfm
        end local 0 // org.apache.cassandra.cql3.TokenRelation this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/apache/cassandra/cql3/TokenRelation;
            0    3     1         cfm  Lorg/apache/cassandra/config/CFMetaData;
            0    3     2  boundNames  Lorg/apache/cassandra/cql3/VariableSpecifications;
            0    3     3       bound  Lorg/apache/cassandra/cql3/statements/Bound;
            0    3     4   inclusive  Z
            1    3     5  columnDefs  Ljava/util/List<Lorg/apache/cassandra/config/ColumnDefinition;>;
            2    3     6        term  Lorg/apache/cassandra/cql3/Term;
    Exceptions:
      throws org.apache.cassandra.exceptions.InvalidRequestException
    MethodParameters:
            Name  Flags
      cfm         
      boundNames  
      bound       
      inclusive   

  protected org.apache.cassandra.cql3.restrictions.Restriction newContainsRestriction(org.apache.cassandra.config.CFMetaData, org.apache.cassandra.cql3.VariableSpecifications, boolean);
    descriptor: (Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/cql3/VariableSpecifications;Z)Lorg/apache/cassandra/cql3/restrictions/Restriction;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.apache.cassandra.cql3.TokenRelation this
        start local 1 // org.apache.cassandra.config.CFMetaData cfm
        start local 2 // org.apache.cassandra.cql3.VariableSpecifications boundNames
        start local 3 // boolean isKey
         0: .line 105
            ldc "%s cannot be used with the token function"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            invokevirtual org.apache.cassandra.cql3.TokenRelation.operator:()Lorg/apache/cassandra/cql3/Operator;
            aastore
            invokestatic org.apache.cassandra.cql3.statements.RequestValidations.invalidRequest:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/apache/cassandra/exceptions/InvalidRequestException;
            athrow
        end local 3 // boolean isKey
        end local 2 // org.apache.cassandra.cql3.VariableSpecifications boundNames
        end local 1 // org.apache.cassandra.config.CFMetaData cfm
        end local 0 // org.apache.cassandra.cql3.TokenRelation this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/apache/cassandra/cql3/TokenRelation;
            0    1     1         cfm  Lorg/apache/cassandra/config/CFMetaData;
            0    1     2  boundNames  Lorg/apache/cassandra/cql3/VariableSpecifications;
            0    1     3       isKey  Z
    Exceptions:
      throws org.apache.cassandra.exceptions.InvalidRequestException
    MethodParameters:
            Name  Flags
      cfm         
      boundNames  
      isKey       

  protected org.apache.cassandra.cql3.restrictions.Restriction newIsNotRestriction(org.apache.cassandra.config.CFMetaData, org.apache.cassandra.cql3.VariableSpecifications);
    descriptor: (Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/cql3/VariableSpecifications;)Lorg/apache/cassandra/cql3/restrictions/Restriction;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.apache.cassandra.cql3.TokenRelation this
        start local 1 // org.apache.cassandra.config.CFMetaData cfm
        start local 2 // org.apache.cassandra.cql3.VariableSpecifications boundNames
         0: .line 111
            ldc "%s cannot be used with the token function"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            invokevirtual org.apache.cassandra.cql3.TokenRelation.operator:()Lorg/apache/cassandra/cql3/Operator;
            aastore
            invokestatic org.apache.cassandra.cql3.statements.RequestValidations.invalidRequest:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/apache/cassandra/exceptions/InvalidRequestException;
            athrow
        end local 2 // org.apache.cassandra.cql3.VariableSpecifications boundNames
        end local 1 // org.apache.cassandra.config.CFMetaData cfm
        end local 0 // org.apache.cassandra.cql3.TokenRelation this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/apache/cassandra/cql3/TokenRelation;
            0    1     1         cfm  Lorg/apache/cassandra/config/CFMetaData;
            0    1     2  boundNames  Lorg/apache/cassandra/cql3/VariableSpecifications;
    Exceptions:
      throws org.apache.cassandra.exceptions.InvalidRequestException
    MethodParameters:
            Name  Flags
      cfm         
      boundNames  

  protected org.apache.cassandra.cql3.restrictions.Restriction newLikeRestriction(org.apache.cassandra.config.CFMetaData, org.apache.cassandra.cql3.VariableSpecifications, org.apache.cassandra.cql3.Operator);
    descriptor: (Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/cql3/VariableSpecifications;Lorg/apache/cassandra/cql3/Operator;)Lorg/apache/cassandra/cql3/restrictions/Restriction;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.apache.cassandra.cql3.TokenRelation this
        start local 1 // org.apache.cassandra.config.CFMetaData cfm
        start local 2 // org.apache.cassandra.cql3.VariableSpecifications boundNames
        start local 3 // org.apache.cassandra.cql3.Operator operator
         0: .line 117
            ldc "%s cannot be used with the token function"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 3 /* operator */
            aastore
            invokestatic org.apache.cassandra.cql3.statements.RequestValidations.invalidRequest:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/apache/cassandra/exceptions/InvalidRequestException;
            athrow
        end local 3 // org.apache.cassandra.cql3.Operator operator
        end local 2 // org.apache.cassandra.cql3.VariableSpecifications boundNames
        end local 1 // org.apache.cassandra.config.CFMetaData cfm
        end local 0 // org.apache.cassandra.cql3.TokenRelation this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/apache/cassandra/cql3/TokenRelation;
            0    1     1         cfm  Lorg/apache/cassandra/config/CFMetaData;
            0    1     2  boundNames  Lorg/apache/cassandra/cql3/VariableSpecifications;
            0    1     3    operator  Lorg/apache/cassandra/cql3/Operator;
    Exceptions:
      throws org.apache.cassandra.exceptions.InvalidRequestException
    MethodParameters:
            Name  Flags
      cfm         
      boundNames  
      operator    

  protected org.apache.cassandra.cql3.Term toTerm(java.util.List<? extends org.apache.cassandra.cql3.ColumnSpecification>, org.apache.cassandra.cql3.Term$Raw, java.lang.String, org.apache.cassandra.cql3.VariableSpecifications);
    descriptor: (Ljava/util/List;Lorg/apache/cassandra/cql3/Term$Raw;Ljava/lang/String;Lorg/apache/cassandra/cql3/VariableSpecifications;)Lorg/apache/cassandra/cql3/Term;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=6, args_size=5
        start local 0 // org.apache.cassandra.cql3.TokenRelation this
        start local 1 // java.util.List receivers
        start local 2 // org.apache.cassandra.cql3.Term$Raw raw
        start local 3 // java.lang.String keyspace
        start local 4 // org.apache.cassandra.cql3.VariableSpecifications boundNames
         0: .line 126
            aload 2 /* raw */
            aload 3 /* keyspace */
            aload 1 /* receivers */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.apache.cassandra.cql3.ColumnSpecification
            invokevirtual org.apache.cassandra.cql3.Term$Raw.prepare:(Ljava/lang/String;Lorg/apache/cassandra/cql3/ColumnSpecification;)Lorg/apache/cassandra/cql3/Term;
            astore 5 /* term */
        start local 5 // org.apache.cassandra.cql3.Term term
         1: .line 127
            aload 5 /* term */
            aload 4 /* boundNames */
            invokeinterface org.apache.cassandra.cql3.Term.collectMarkerSpecification:(Lorg/apache/cassandra/cql3/VariableSpecifications;)V
         2: .line 128
            aload 5 /* term */
            areturn
        end local 5 // org.apache.cassandra.cql3.Term term
        end local 4 // org.apache.cassandra.cql3.VariableSpecifications boundNames
        end local 3 // java.lang.String keyspace
        end local 2 // org.apache.cassandra.cql3.Term$Raw raw
        end local 1 // java.util.List receivers
        end local 0 // org.apache.cassandra.cql3.TokenRelation this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/apache/cassandra/cql3/TokenRelation;
            0    3     1   receivers  Ljava/util/List<+Lorg/apache/cassandra/cql3/ColumnSpecification;>;
            0    3     2         raw  Lorg/apache/cassandra/cql3/Term$Raw;
            0    3     3    keyspace  Ljava/lang/String;
            0    3     4  boundNames  Lorg/apache/cassandra/cql3/VariableSpecifications;
            1    3     5        term  Lorg/apache/cassandra/cql3/Term;
    Exceptions:
      throws org.apache.cassandra.exceptions.InvalidRequestException
    Signature: (Ljava/util/List<+Lorg/apache/cassandra/cql3/ColumnSpecification;>;Lorg/apache/cassandra/cql3/Term$Raw;Ljava/lang/String;Lorg/apache/cassandra/cql3/VariableSpecifications;)Lorg/apache/cassandra/cql3/Term;
    MethodParameters:
            Name  Flags
      receivers   
      raw         
      keyspace    
      boundNames  

  public org.apache.cassandra.cql3.Relation renameIdentifier(org.apache.cassandra.config.ColumnDefinition$Raw, org.apache.cassandra.config.ColumnDefinition$Raw);
    descriptor: (Lorg/apache/cassandra/config/ColumnDefinition$Raw;Lorg/apache/cassandra/config/ColumnDefinition$Raw;)Lorg/apache/cassandra/cql3/Relation;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.apache.cassandra.cql3.TokenRelation this
        start local 1 // org.apache.cassandra.config.ColumnDefinition$Raw from
        start local 2 // org.apache.cassandra.config.ColumnDefinition$Raw to
         0: .line 133
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.TokenRelation.entities:Ljava/util/List;
            aload 1 /* from */
            invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
            ifne 2
         1: .line 134
            aload 0 /* this */
            areturn
         2: .line 136
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.TokenRelation.entities:Ljava/util/List;
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
            aload 1 /* from */
            aload 2 /* to */
            invokedynamic apply(Lorg/apache/cassandra/config/ColumnDefinition$Raw;Lorg/apache/cassandra/config/ColumnDefinition$Raw;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/apache/cassandra/cql3/TokenRelation.lambda$0(Lorg/apache/cassandra/config/ColumnDefinition$Raw;Lorg/apache/cassandra/config/ColumnDefinition$Raw;Lorg/apache/cassandra/config/ColumnDefinition$Raw;)Lorg/apache/cassandra/config/ColumnDefinition$Raw; (6)
                  (Lorg/apache/cassandra/config/ColumnDefinition$Raw;)Lorg/apache/cassandra/config/ColumnDefinition$Raw;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
            astore 3 /* newEntities */
        start local 3 // java.util.List newEntities
         3: .line 137
            new org.apache.cassandra.cql3.TokenRelation
            dup
            aload 3 /* newEntities */
            aload 0 /* this */
            invokevirtual org.apache.cassandra.cql3.TokenRelation.operator:()Lorg/apache/cassandra/cql3/Operator;
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.TokenRelation.value:Lorg/apache/cassandra/cql3/Term$Raw;
            invokespecial org.apache.cassandra.cql3.TokenRelation.<init>:(Ljava/util/List;Lorg/apache/cassandra/cql3/Operator;Lorg/apache/cassandra/cql3/Term$Raw;)V
            areturn
        end local 3 // java.util.List newEntities
        end local 2 // org.apache.cassandra.config.ColumnDefinition$Raw to
        end local 1 // org.apache.cassandra.config.ColumnDefinition$Raw from
        end local 0 // org.apache.cassandra.cql3.TokenRelation this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lorg/apache/cassandra/cql3/TokenRelation;
            0    4     1         from  Lorg/apache/cassandra/config/ColumnDefinition$Raw;
            0    4     2           to  Lorg/apache/cassandra/config/ColumnDefinition$Raw;
            3    4     3  newEntities  Ljava/util/List<Lorg/apache/cassandra/config/ColumnDefinition$Raw;>;
    MethodParameters:
      Name  Flags
      from  
      to    

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.TokenRelation this
         0: .line 143
            ldc "token%s %s %s"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.TokenRelation.entities:Ljava/util/List;
            invokestatic org.apache.cassandra.cql3.Tuples.tupleToString:(Ljava/util/List;)Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.TokenRelation.relationType:Lorg/apache/cassandra/cql3/Operator;
            aastore
            dup
            iconst_2
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.TokenRelation.value:Lorg/apache/cassandra/cql3/Term$Raw;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 0 // org.apache.cassandra.cql3.TokenRelation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/TokenRelation;

  private java.util.List<org.apache.cassandra.config.ColumnDefinition> getColumnDefinitions(org.apache.cassandra.config.CFMetaData);
    descriptor: (Lorg/apache/cassandra/config/CFMetaData;)Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // org.apache.cassandra.cql3.TokenRelation this
        start local 1 // org.apache.cassandra.config.CFMetaData cfm
         0: .line 155
            new java.util.ArrayList
            dup
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.TokenRelation.entities:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 2 /* columnDefs */
        start local 2 // java.util.List columnDefs
         1: .line 156
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.TokenRelation.entities:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 4
      StackMap locals: org.apache.cassandra.cql3.TokenRelation org.apache.cassandra.config.CFMetaData java.util.List top java.util.Iterator
      StackMap stack:
         2: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.config.ColumnDefinition$Raw
            astore 3 /* raw */
        start local 3 // org.apache.cassandra.config.ColumnDefinition$Raw raw
         3: .line 157
            aload 2 /* columnDefs */
            aload 3 /* raw */
            aload 1 /* cfm */
            invokevirtual org.apache.cassandra.config.ColumnDefinition$Raw.prepare:(Lorg/apache/cassandra/config/CFMetaData;)Lorg/apache/cassandra/config/ColumnDefinition;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // org.apache.cassandra.config.ColumnDefinition$Raw raw
         4: .line 156
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 158
            aload 2 /* columnDefs */
            areturn
        end local 2 // java.util.List columnDefs
        end local 1 // org.apache.cassandra.config.CFMetaData cfm
        end local 0 // org.apache.cassandra.cql3.TokenRelation this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lorg/apache/cassandra/cql3/TokenRelation;
            0    6     1         cfm  Lorg/apache/cassandra/config/CFMetaData;
            1    6     2  columnDefs  Ljava/util/List<Lorg/apache/cassandra/config/ColumnDefinition;>;
            3    4     3         raw  Lorg/apache/cassandra/config/ColumnDefinition$Raw;
    Exceptions:
      throws org.apache.cassandra.exceptions.InvalidRequestException
    Signature: (Lorg/apache/cassandra/config/CFMetaData;)Ljava/util/List<Lorg/apache/cassandra/config/ColumnDefinition;>;
    MethodParameters:
      Name  Flags
      cfm   

  private static java.util.List<? extends org.apache.cassandra.cql3.ColumnSpecification> toReceivers(org.apache.cassandra.config.CFMetaData, java.util.List<org.apache.cassandra.config.ColumnDefinition>);
    descriptor: (Lorg/apache/cassandra/config/CFMetaData;Ljava/util/List;)Ljava/util/List;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=8, locals=3, args_size=2
        start local 0 // org.apache.cassandra.config.CFMetaData cfm
        start local 1 // java.util.List columnDefs
         0: .line 174
            aload 1 /* columnDefs */
            aload 0 /* cfm */
            invokevirtual org.apache.cassandra.config.CFMetaData.partitionKeyColumns:()Ljava/util/List;
            invokeinterface java.util.List.equals:(Ljava/lang/Object;)Z
            ifne 9
         1: .line 176
            aload 1 /* columnDefs */
            aload 0 /* cfm */
            invokevirtual org.apache.cassandra.config.CFMetaData.partitionKeyColumns:()Ljava/util/List;
            invokeinterface java.util.List.containsAll:(Ljava/util/Collection;)Z
         2: .line 177
            ldc "The token() function must be applied to all partition key components or none of them"
         3: .line 176
            invokestatic org.apache.cassandra.cql3.statements.RequestValidations.checkTrue:(ZLjava/lang/String;)V
         4: .line 179
            aload 1 /* columnDefs */
            ldc "The token() function contains duplicate partition key components"
            invokestatic org.apache.cassandra.cql3.statements.RequestValidations.checkContainsNoDuplicates:(Ljava/util/List;Ljava/lang/String;)V
         5: .line 181
            aload 1 /* columnDefs */
            aload 0 /* cfm */
            invokevirtual org.apache.cassandra.config.CFMetaData.partitionKeyColumns:()Ljava/util/List;
            ldc "The token() function must contains only partition key components"
            invokestatic org.apache.cassandra.cql3.statements.RequestValidations.checkContainsOnly:(Ljava/util/List;Ljava/util/List;Ljava/lang/String;)V
         6: .line 183
            ldc "The token function arguments must be in the partition key order: %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
         7: .line 184
            ldc ", "
            invokestatic com.google.common.base.Joiner.on:(Ljava/lang/String;)Lcom/google/common/base/Joiner;
            aload 0 /* cfm */
            invokevirtual org.apache.cassandra.config.CFMetaData.partitionKeyColumns:()Ljava/util/List;
            invokestatic org.apache.cassandra.config.ColumnDefinition.toIdentifiers:(Ljava/util/Collection;)Ljava/util/Collection;
            invokevirtual com.google.common.base.Joiner.join:(Ljava/lang/Iterable;)Ljava/lang/String;
            aastore
         8: .line 183
            invokestatic org.apache.cassandra.cql3.statements.RequestValidations.invalidRequest:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/apache/cassandra/exceptions/InvalidRequestException;
            athrow
         9: .line 187
      StackMap locals:
      StackMap stack:
            aload 1 /* columnDefs */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.apache.cassandra.config.ColumnDefinition
            astore 2 /* firstColumn */
        start local 2 // org.apache.cassandra.config.ColumnDefinition firstColumn
        10: .line 188
            new org.apache.cassandra.cql3.ColumnSpecification
            dup
            aload 2 /* firstColumn */
            getfield org.apache.cassandra.config.ColumnDefinition.ksName:Ljava/lang/String;
        11: .line 189
            aload 2 /* firstColumn */
            getfield org.apache.cassandra.config.ColumnDefinition.cfName:Ljava/lang/String;
        12: .line 190
            new org.apache.cassandra.cql3.ColumnIdentifier
            dup
            ldc "partition key token"
            iconst_1
            invokespecial org.apache.cassandra.cql3.ColumnIdentifier.<init>:(Ljava/lang/String;Z)V
        13: .line 191
            aload 0 /* cfm */
            getfield org.apache.cassandra.config.CFMetaData.partitioner:Lorg/apache/cassandra/dht/IPartitioner;
            invokeinterface org.apache.cassandra.dht.IPartitioner.getTokenValidator:()Lorg/apache/cassandra/db/marshal/AbstractType;
        14: .line 188
            invokespecial org.apache.cassandra.cql3.ColumnSpecification.<init>:(Ljava/lang/String;Ljava/lang/String;Lorg/apache/cassandra/cql3/ColumnIdentifier;Lorg/apache/cassandra/db/marshal/AbstractType;)V
            invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
            areturn
        end local 2 // org.apache.cassandra.config.ColumnDefinition firstColumn
        end local 1 // java.util.List columnDefs
        end local 0 // org.apache.cassandra.config.CFMetaData cfm
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   15     0          cfm  Lorg/apache/cassandra/config/CFMetaData;
            0   15     1   columnDefs  Ljava/util/List<Lorg/apache/cassandra/config/ColumnDefinition;>;
           10   15     2  firstColumn  Lorg/apache/cassandra/config/ColumnDefinition;
    Exceptions:
      throws org.apache.cassandra.exceptions.InvalidRequestException
    Signature: (Lorg/apache/cassandra/config/CFMetaData;Ljava/util/List<Lorg/apache/cassandra/config/ColumnDefinition;>;)Ljava/util/List<+Lorg/apache/cassandra/cql3/ColumnSpecification;>;
    MethodParameters:
            Name  Flags
      cfm         
      columnDefs  

  private static org.apache.cassandra.config.ColumnDefinition$Raw lambda$0(org.apache.cassandra.config.ColumnDefinition$Raw, org.apache.cassandra.config.ColumnDefinition$Raw, org.apache.cassandra.config.ColumnDefinition$Raw);
    descriptor: (Lorg/apache/cassandra/config/ColumnDefinition$Raw;Lorg/apache/cassandra/config/ColumnDefinition$Raw;Lorg/apache/cassandra/config/ColumnDefinition$Raw;)Lorg/apache/cassandra/config/ColumnDefinition$Raw;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=3
        start local 2 // org.apache.cassandra.config.ColumnDefinition$Raw e
         0: .line 136
            aload 2 /* e */
            aload 0
            invokevirtual org.apache.cassandra.config.ColumnDefinition$Raw.equals:(Ljava/lang/Object;)Z
            ifeq 1
            aload 1
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 2 /* e */
      StackMap locals:
      StackMap stack: org.apache.cassandra.config.ColumnDefinition$Raw
         2: areturn
        end local 2 // org.apache.cassandra.config.ColumnDefinition$Raw e
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     2     e  Lorg/apache/cassandra/config/ColumnDefinition$Raw;
}
SourceFile: "TokenRelation.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract Raw = org.apache.cassandra.config.ColumnDefinition$Raw of org.apache.cassandra.config.ColumnDefinition
  public abstract Raw = org.apache.cassandra.cql3.Term$Raw of org.apache.cassandra.cql3.Term
  public final EQRestriction = org.apache.cassandra.cql3.restrictions.TokenRestriction$EQRestriction of org.apache.cassandra.cql3.restrictions.TokenRestriction
  public SliceRestriction = org.apache.cassandra.cql3.restrictions.TokenRestriction$SliceRestriction of org.apache.cassandra.cql3.restrictions.TokenRestriction