public abstract class org.apache.cassandra.db.marshal.AbstractType<T> implements java.util.Comparator<java.nio.ByteBuffer>, org.apache.cassandra.cql3.AssignmentTestable
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.apache.cassandra.db.marshal.AbstractType
  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 final java.util.Comparator<java.nio.ByteBuffer> reverseComparator;
    descriptor: Ljava/util/Comparator;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Signature: Ljava/util/Comparator<Ljava/nio/ByteBuffer;>;

  public final org.apache.cassandra.db.marshal.AbstractType$ComparisonType comparisonType;
    descriptor: Lorg/apache/cassandra/db/marshal/AbstractType$ComparisonType;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Signature: Lorg/apache/cassandra/db/marshal/AbstractType$ComparisonType;

  public final boolean isByteOrderComparable;
    descriptor: Z
    flags: (0x0011) ACC_PUBLIC, 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$db$marshal$AbstractType$ComparisonType;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 60
            ldc Lorg/apache/cassandra/db/marshal/AbstractType;
            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.db.marshal.AbstractType.$assertionsDisabled:Z
         3: .line 62
            ldc Lorg/apache/cassandra/db/marshal/AbstractType;
            invokestatic org.slf4j.LoggerFactory.getLogger:(Ljava/lang/Class;)Lorg/slf4j/Logger;
            putstatic org.apache.cassandra.db.marshal.AbstractType.logger:Lorg/slf4j/Logger;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected void <init>(org.apache.cassandra.db.marshal.AbstractType$ComparisonType);
    descriptor: (Lorg/apache/cassandra/db/marshal/AbstractType$ComparisonType;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // org.apache.cassandra.db.marshal.AbstractType$ComparisonType comparisonType
         0: .line 87
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 89
            aload 0 /* this */
            aload 1 /* comparisonType */
            putfield org.apache.cassandra.db.marshal.AbstractType.comparisonType:Lorg/apache/cassandra/db/marshal/AbstractType$ComparisonType;
         2: .line 90
            aload 0 /* this */
            aload 1 /* comparisonType */
            getstatic org.apache.cassandra.db.marshal.AbstractType$ComparisonType.BYTE_ORDER:Lorg/apache/cassandra/db/marshal/AbstractType$ComparisonType;
            if_acmpne 3
            iconst_1
            goto 4
      StackMap locals: org.apache.cassandra.db.marshal.AbstractType org.apache.cassandra.db.marshal.AbstractType$ComparisonType
      StackMap stack: org.apache.cassandra.db.marshal.AbstractType
         3: iconst_0
      StackMap locals: org.apache.cassandra.db.marshal.AbstractType org.apache.cassandra.db.marshal.AbstractType$ComparisonType
      StackMap stack: org.apache.cassandra.db.marshal.AbstractType int
         4: putfield org.apache.cassandra.db.marshal.AbstractType.isByteOrderComparable:Z
         5: .line 91
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic compare(Lorg/apache/cassandra/db/marshal/AbstractType;)Ljava/util/Comparator;
              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;)I
                  org/apache/cassandra/db/marshal/AbstractType.lambda$0(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)I (7)
                  (Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)I
            putfield org.apache.cassandra.db.marshal.AbstractType.reverseComparator:Ljava/util/Comparator;
         6: .line 94
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            ldc "compareCustom"
            iconst_2
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/nio/ByteBuffer;
            aastore
            dup
            iconst_1
            ldc Ljava/nio/ByteBuffer;
            aastore
            invokevirtual java.lang.Class.getMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
            astore 2 /* custom */
        start local 2 // java.lang.reflect.Method custom
         7: .line 95
            aload 2 /* custom */
            invokevirtual java.lang.reflect.Method.getDeclaringClass:()Ljava/lang/Class;
            ldc Lorg/apache/cassandra/db/marshal/AbstractType;
            if_acmpne 8
            iconst_1
            goto 9
      StackMap locals: java.lang.reflect.Method
      StackMap stack:
         8: iconst_0
      StackMap locals:
      StackMap stack: int
         9: aload 1 /* comparisonType */
            getstatic org.apache.cassandra.db.marshal.AbstractType$ComparisonType.CUSTOM:Lorg/apache/cassandra/db/marshal/AbstractType$ComparisonType;
            if_acmpne 10
            iconst_1
            goto 11
      StackMap locals:
      StackMap stack: int
        10: iconst_0
      StackMap locals: org.apache.cassandra.db.marshal.AbstractType org.apache.cassandra.db.marshal.AbstractType$ComparisonType java.lang.reflect.Method
      StackMap stack: int int
        11: if_icmpne 20
        12: .line 96
            new java.lang.IllegalStateException
            dup
        13: new java.lang.StringBuilder
            dup
            aload 1 /* comparisonType */
            getstatic org.apache.cassandra.db.marshal.AbstractType$ComparisonType.CUSTOM:Lorg/apache/cassandra/db/marshal/AbstractType$ComparisonType;
            if_acmpne 14
            ldc "compareCustom must be overridden if ComparisonType is CUSTOM"
            goto 15
        14: .line 97
      StackMap locals: org.apache.cassandra.db.marshal.AbstractType org.apache.cassandra.db.marshal.AbstractType$ComparisonType java.lang.reflect.Method
      StackMap stack: new 12 new 12 new 13 new 13
            ldc "compareCustom should not be overridden if ComparisonType is not CUSTOM"
      StackMap locals: org.apache.cassandra.db.marshal.AbstractType org.apache.cassandra.db.marshal.AbstractType$ComparisonType java.lang.reflect.Method
      StackMap stack: new 12 new 12 new 13 new 13 java.lang.String
        15: invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        16: .line 98
            ldc " ("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        17: .line 96
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // java.lang.reflect.Method custom
        18: .line 100
      StackMap locals: org.apache.cassandra.db.marshal.AbstractType org.apache.cassandra.db.marshal.AbstractType$ComparisonType
      StackMap stack: java.lang.NoSuchMethodException
            pop
        19: .line 102
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
        20: .line 104
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.apache.cassandra.db.marshal.AbstractType$ComparisonType comparisonType
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   21     0            this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0   21     1  comparisonType  Lorg/apache/cassandra/db/marshal/AbstractType$ComparisonType;
            7   18     2          custom  Ljava/lang/reflect/Method;
      Exception table:
        from    to  target  type
           6    18      18  Class java.lang.NoSuchMethodException
    Signature: (Lorg/apache/cassandra/db/marshal/AbstractType$ComparisonType;)V
    MethodParameters:
                Name  Flags
      comparisonType  

  public static java.util.List<java.lang.String> asCQLTypeStringList(java.util.List<org.apache.cassandra.db.marshal.AbstractType<?>>);
    descriptor: (Ljava/util/List;)Ljava/util/List;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // java.util.List abstractTypes
         0: .line 108
            new java.util.ArrayList
            dup
            aload 0 /* abstractTypes */
            invokeinterface java.util.List.size:()I
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 1 /* r */
        start local 1 // java.util.List r
         1: .line 109
            aload 0 /* abstractTypes */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 4
      StackMap locals: java.util.List java.util.List top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.marshal.AbstractType
            astore 2 /* abstractType */
        start local 2 // org.apache.cassandra.db.marshal.AbstractType abstractType
         3: .line 110
            aload 1 /* r */
            aload 2 /* abstractType */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.asCQL3Type:()Lorg/apache/cassandra/cql3/CQL3Type;
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 2 // org.apache.cassandra.db.marshal.AbstractType abstractType
         4: .line 109
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 111
            aload 1 /* r */
            areturn
        end local 1 // java.util.List r
        end local 0 // java.util.List abstractTypes
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    6     0  abstractTypes  Ljava/util/List<Lorg/apache/cassandra/db/marshal/AbstractType<*>;>;
            1    6     1              r  Ljava/util/List<Ljava/lang/String;>;
            3    4     2   abstractType  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
    Signature: (Ljava/util/List<Lorg/apache/cassandra/db/marshal/AbstractType<*>;>;)Ljava/util/List<Ljava/lang/String;>;
    MethodParameters:
               Name  Flags
      abstractTypes  

  public T compose(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // java.nio.ByteBuffer bytes
         0: .line 116
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.getSerializer:()Lorg/apache/cassandra/serializers/TypeSerializer;
            aload 1 /* bytes */
            invokeinterface org.apache.cassandra.serializers.TypeSerializer.deserialize:(Ljava/nio/ByteBuffer;)Ljava/lang/Object;
            areturn
        end local 1 // java.nio.ByteBuffer bytes
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0    1     1  bytes  Ljava/nio/ByteBuffer;
    Signature: (Ljava/nio/ByteBuffer;)TT;
    MethodParameters:
       Name  Flags
      bytes  

  public java.nio.ByteBuffer decompose(T);
    descriptor: (Ljava/lang/Object;)Ljava/nio/ByteBuffer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // java.lang.Object value
         0: .line 121
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.getSerializer:()Lorg/apache/cassandra/serializers/TypeSerializer;
            aload 1 /* value */
            invokeinterface org.apache.cassandra.serializers.TypeSerializer.serialize:(Ljava/lang/Object;)Ljava/nio/ByteBuffer;
            areturn
        end local 1 // java.lang.Object value
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0    1     1  value  TT;
    Signature: (TT;)Ljava/nio/ByteBuffer;
    MethodParameters:
       Name  Flags
      value  

  public java.lang.String getString(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // java.nio.ByteBuffer bytes
         0: .line 127
            aload 1 /* bytes */
            ifnonnull 2
         1: .line 128
            ldc "null"
            areturn
         2: .line 130
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.getSerializer:()Lorg/apache/cassandra/serializers/TypeSerializer;
            astore 2 /* serializer */
        start local 2 // org.apache.cassandra.serializers.TypeSerializer serializer
         3: .line 131
            aload 2 /* serializer */
            aload 1 /* bytes */
            invokeinterface org.apache.cassandra.serializers.TypeSerializer.validate:(Ljava/nio/ByteBuffer;)V
         4: .line 133
            aload 2 /* serializer */
            aload 2 /* serializer */
            aload 1 /* bytes */
            invokeinterface org.apache.cassandra.serializers.TypeSerializer.deserialize:(Ljava/nio/ByteBuffer;)Ljava/lang/Object;
            invokeinterface org.apache.cassandra.serializers.TypeSerializer.toString:(Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 2 // org.apache.cassandra.serializers.TypeSerializer serializer
        end local 1 // java.nio.ByteBuffer bytes
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0    5     1       bytes  Ljava/nio/ByteBuffer;
            3    5     2  serializer  Lorg/apache/cassandra/serializers/TypeSerializer<TT;>;
    MethodParameters:
       Name  Flags
      bytes  

  public abstract java.nio.ByteBuffer fromString(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/nio/ByteBuffer;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Exceptions:
      throws org.apache.cassandra.serializers.MarshalException
    MethodParameters:
        Name  Flags
      source  

  public abstract org.apache.cassandra.cql3.Term fromJSONObject(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Lorg/apache/cassandra/cql3/Term;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Exceptions:
      throws org.apache.cassandra.serializers.MarshalException
    MethodParameters:
        Name  Flags
      parsed  

  public java.lang.String toJSONString(java.nio.ByteBuffer, org.apache.cassandra.transport.ProtocolVersion);
    descriptor: (Ljava/nio/ByteBuffer;Lorg/apache/cassandra/transport/ProtocolVersion;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // java.nio.ByteBuffer buffer
        start local 2 // org.apache.cassandra.transport.ProtocolVersion protocolVersion
         0: .line 156
            new java.lang.StringBuilder
            dup
            bipush 34
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.getSerializer:()Lorg/apache/cassandra/serializers/TypeSerializer;
            aload 1 /* buffer */
            invokeinterface org.apache.cassandra.serializers.TypeSerializer.deserialize:(Ljava/nio/ByteBuffer;)Ljava/lang/Object;
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 34
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // org.apache.cassandra.transport.ProtocolVersion protocolVersion
        end local 1 // java.nio.ByteBuffer buffer
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    1     0             this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0    1     1           buffer  Ljava/nio/ByteBuffer;
            0    1     2  protocolVersion  Lorg/apache/cassandra/transport/ProtocolVersion;
    MethodParameters:
                 Name  Flags
      buffer           
      protocolVersion  

  public void validate(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // java.nio.ByteBuffer bytes
         0: .line 162
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.getSerializer:()Lorg/apache/cassandra/serializers/TypeSerializer;
            aload 1 /* bytes */
            invokeinterface org.apache.cassandra.serializers.TypeSerializer.validate:(Ljava/nio/ByteBuffer;)V
         1: .line 163
            return
        end local 1 // java.nio.ByteBuffer bytes
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0    2     1  bytes  Ljava/nio/ByteBuffer;
    Exceptions:
      throws org.apache.cassandra.serializers.MarshalException
    MethodParameters:
       Name  Flags
      bytes  

  public final int compare(java.nio.ByteBuffer, java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // java.nio.ByteBuffer left
        start local 2 // java.nio.ByteBuffer right
         0: .line 167
            aload 0 /* this */
            getfield org.apache.cassandra.db.marshal.AbstractType.isByteOrderComparable:Z
            ifeq 2
         1: .line 168
            aload 1 /* left */
            aload 2 /* right */
            invokestatic org.apache.cassandra.utils.FastByteOperations.compareUnsigned:(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)I
            goto 3
         2: .line 169
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* left */
            aload 2 /* right */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.compareCustom:(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)I
         3: .line 167
      StackMap locals:
      StackMap stack: int
            ireturn
        end local 2 // java.nio.ByteBuffer right
        end local 1 // java.nio.ByteBuffer left
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0    4     1   left  Ljava/nio/ByteBuffer;
            0    4     2  right  Ljava/nio/ByteBuffer;
    MethodParameters:
       Name  Flags
      left   
      right  

  public int compareCustom(java.nio.ByteBuffer, java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // java.nio.ByteBuffer left
        start local 2 // java.nio.ByteBuffer right
         0: .line 183
            new java.lang.UnsupportedOperationException
            dup
            invokespecial java.lang.UnsupportedOperationException.<init>:()V
            athrow
        end local 2 // java.nio.ByteBuffer right
        end local 1 // java.nio.ByteBuffer left
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0    1     1   left  Ljava/nio/ByteBuffer;
            0    1     2  right  Ljava/nio/ByteBuffer;
    MethodParameters:
       Name  Flags
      left   
      right  

  public void validateCellValue(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // java.nio.ByteBuffer cellValue
         0: .line 196
            aload 0 /* this */
            aload 1 /* cellValue */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.validate:(Ljava/nio/ByteBuffer;)V
         1: .line 197
            return
        end local 1 // java.nio.ByteBuffer cellValue
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0    2     1  cellValue  Ljava/nio/ByteBuffer;
    Exceptions:
      throws org.apache.cassandra.serializers.MarshalException
    MethodParameters:
           Name  Flags
      cellValue  

  public org.apache.cassandra.cql3.CQL3Type asCQL3Type();
    descriptor: ()Lorg/apache/cassandra/cql3/CQL3Type;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
         0: .line 202
            new org.apache.cassandra.cql3.CQL3Type$Custom
            dup
            aload 0 /* this */
            invokespecial org.apache.cassandra.cql3.CQL3Type$Custom.<init>:(Lorg/apache/cassandra/db/marshal/AbstractType;)V
            areturn
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;

  public int compareForCQL(java.nio.ByteBuffer, java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // java.nio.ByteBuffer v1
        start local 2 // java.nio.ByteBuffer v2
         0: .line 213
            aload 0 /* this */
            aload 1 /* v1 */
            aload 2 /* v2 */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.compare:(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)I
            ireturn
        end local 2 // java.nio.ByteBuffer v2
        end local 1 // java.nio.ByteBuffer v1
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0    1     1    v1  Ljava/nio/ByteBuffer;
            0    1     2    v2  Ljava/nio/ByteBuffer;
    MethodParameters:
      Name  Flags
      v1    
      v2    

  public abstract org.apache.cassandra.serializers.TypeSerializer<T> getSerializer();
    descriptor: ()Lorg/apache/cassandra/serializers/TypeSerializer;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()Lorg/apache/cassandra/serializers/TypeSerializer<TT;>;

  public java.lang.String getString(java.util.Collection<java.nio.ByteBuffer>);
    descriptor: (Ljava/util/Collection;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // java.util.Collection names
         0: .line 221
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 2 /* builder */
        start local 2 // java.lang.StringBuilder builder
         1: .line 222
            aload 1 /* names */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 4
            goto 4
      StackMap locals: org.apache.cassandra.db.marshal.AbstractType java.util.Collection java.lang.StringBuilder top java.util.Iterator
      StackMap stack:
         2: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.nio.ByteBuffer
            astore 3 /* name */
        start local 3 // java.nio.ByteBuffer name
         3: .line 224
            aload 2 /* builder */
            aload 0 /* this */
            aload 3 /* name */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.getString:(Ljava/nio/ByteBuffer;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ","
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 3 // java.nio.ByteBuffer name
         4: .line 222
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 226
            aload 2 /* builder */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.StringBuilder builder
        end local 1 // java.util.Collection names
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0    6     1    names  Ljava/util/Collection<Ljava/nio/ByteBuffer;>;
            1    6     2  builder  Ljava/lang/StringBuilder;
            3    4     3     name  Ljava/nio/ByteBuffer;
    Signature: (Ljava/util/Collection<Ljava/nio/ByteBuffer;>;)Ljava/lang/String;
    MethodParameters:
       Name  Flags
      names  

  public boolean isCounter();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
         0: .line 231
            iconst_0
            ireturn
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;

  public boolean isFrozenCollection();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
         0: .line 236
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.isCollection:()Z
            ifeq 1
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.isMultiCell:()Z
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;

  public boolean isReversed();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
         0: .line 241
            iconst_0
            ireturn
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;

  public static org.apache.cassandra.db.marshal.AbstractType<?> parseDefaultParameters(org.apache.cassandra.db.marshal.AbstractType<?>, org.apache.cassandra.db.marshal.TypeParser);
    descriptor: (Lorg/apache/cassandra/db/marshal/AbstractType;Lorg/apache/cassandra/db/marshal/TypeParser;)Lorg/apache/cassandra/db/marshal/AbstractType;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.apache.cassandra.db.marshal.AbstractType baseType
        start local 1 // org.apache.cassandra.db.marshal.TypeParser parser
         0: .line 246
            aload 1 /* parser */
            invokevirtual org.apache.cassandra.db.marshal.TypeParser.getKeyValueParameters:()Ljava/util/Map;
            astore 2 /* parameters */
        start local 2 // java.util.Map parameters
         1: .line 247
            aload 2 /* parameters */
            ldc "reversed"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* reversed */
        start local 3 // java.lang.String reversed
         2: .line 248
            aload 3 /* reversed */
            ifnull 4
            aload 3 /* reversed */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 3
            aload 3 /* reversed */
            ldc "true"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 250
      StackMap locals: java.util.Map java.lang.String
      StackMap stack:
            aload 0 /* baseType */
            invokestatic org.apache.cassandra.db.marshal.ReversedType.getInstance:(Lorg/apache/cassandra/db/marshal/AbstractType;)Lorg/apache/cassandra/db/marshal/ReversedType;
            areturn
         4: .line 254
      StackMap locals:
      StackMap stack:
            aload 0 /* baseType */
            areturn
        end local 3 // java.lang.String reversed
        end local 2 // java.util.Map parameters
        end local 1 // org.apache.cassandra.db.marshal.TypeParser parser
        end local 0 // org.apache.cassandra.db.marshal.AbstractType baseType
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0    baseType  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
            0    5     1      parser  Lorg/apache/cassandra/db/marshal/TypeParser;
            1    5     2  parameters  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            2    5     3    reversed  Ljava/lang/String;
    Exceptions:
      throws org.apache.cassandra.exceptions.SyntaxException
    Signature: (Lorg/apache/cassandra/db/marshal/AbstractType<*>;Lorg/apache/cassandra/db/marshal/TypeParser;)Lorg/apache/cassandra/db/marshal/AbstractType<*>;
    MethodParameters:
          Name  Flags
      baseType  
      parser    

  public boolean isCompatibleWith(org.apache.cassandra.db.marshal.AbstractType<?>);
    descriptor: (Lorg/apache/cassandra/db/marshal/AbstractType;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // org.apache.cassandra.db.marshal.AbstractType previous
         0: .line 270
            aload 0 /* this */
            aload 1 /* previous */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // org.apache.cassandra.db.marshal.AbstractType previous
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0    1     1  previous  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
    Signature: (Lorg/apache/cassandra/db/marshal/AbstractType<*>;)Z
    MethodParameters:
          Name  Flags
      previous  

  public boolean isValueCompatibleWith(org.apache.cassandra.db.marshal.AbstractType<?>);
    descriptor: (Lorg/apache/cassandra/db/marshal/AbstractType;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // org.apache.cassandra.db.marshal.AbstractType otherType
         0: .line 286
            aload 0 /* this */
            aload 1 /* otherType */
            instanceof org.apache.cassandra.db.marshal.ReversedType
            ifeq 1
            aload 1 /* otherType */
            checkcast org.apache.cassandra.db.marshal.ReversedType
            getfield org.apache.cassandra.db.marshal.ReversedType.baseType:Lorg/apache/cassandra/db/marshal/AbstractType;
            goto 2
      StackMap locals:
      StackMap stack: org.apache.cassandra.db.marshal.AbstractType
         1: aload 1 /* otherType */
      StackMap locals: org.apache.cassandra.db.marshal.AbstractType org.apache.cassandra.db.marshal.AbstractType
      StackMap stack: org.apache.cassandra.db.marshal.AbstractType org.apache.cassandra.db.marshal.AbstractType
         2: invokevirtual org.apache.cassandra.db.marshal.AbstractType.isValueCompatibleWithInternal:(Lorg/apache/cassandra/db/marshal/AbstractType;)Z
            ireturn
        end local 1 // org.apache.cassandra.db.marshal.AbstractType otherType
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0    3     1  otherType  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
    Signature: (Lorg/apache/cassandra/db/marshal/AbstractType<*>;)Z
    MethodParameters:
           Name  Flags
      otherType  

  protected boolean isValueCompatibleWithInternal(org.apache.cassandra.db.marshal.AbstractType<?>);
    descriptor: (Lorg/apache/cassandra/db/marshal/AbstractType;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // org.apache.cassandra.db.marshal.AbstractType otherType
         0: .line 295
            aload 0 /* this */
            aload 1 /* otherType */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.isCompatibleWith:(Lorg/apache/cassandra/db/marshal/AbstractType;)Z
            ireturn
        end local 1 // org.apache.cassandra.db.marshal.AbstractType otherType
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0    1     1  otherType  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
    Signature: (Lorg/apache/cassandra/db/marshal/AbstractType<*>;)Z
    MethodParameters:
           Name  Flags
      otherType  

  public int compareCollectionMembers(java.nio.ByteBuffer, java.nio.ByteBuffer, java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // java.nio.ByteBuffer v1
        start local 2 // java.nio.ByteBuffer v2
        start local 3 // java.nio.ByteBuffer collectionName
         0: .line 308
            aload 0 /* this */
            aload 1 /* v1 */
            aload 2 /* v2 */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.compare:(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)I
            ireturn
        end local 3 // java.nio.ByteBuffer collectionName
        end local 2 // java.nio.ByteBuffer v2
        end local 1 // java.nio.ByteBuffer v1
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0            this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0    1     1              v1  Ljava/nio/ByteBuffer;
            0    1     2              v2  Ljava/nio/ByteBuffer;
            0    1     3  collectionName  Ljava/nio/ByteBuffer;
    MethodParameters:
                Name  Flags
      v1              
      v2              
      collectionName  

  public void validateCollectionMember(java.nio.ByteBuffer, java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // java.nio.ByteBuffer bytes
        start local 2 // java.nio.ByteBuffer collectionName
         0: .line 318
            aload 0 /* this */
            aload 1 /* bytes */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.validate:(Ljava/nio/ByteBuffer;)V
         1: .line 319
            return
        end local 2 // java.nio.ByteBuffer collectionName
        end local 1 // java.nio.ByteBuffer bytes
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0    2     1           bytes  Ljava/nio/ByteBuffer;
            0    2     2  collectionName  Ljava/nio/ByteBuffer;
    Exceptions:
      throws org.apache.cassandra.serializers.MarshalException
    MethodParameters:
                Name  Flags
      bytes           
      collectionName  

  public boolean isCollection();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
         0: .line 323
            iconst_0
            ireturn
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;

  public boolean isUDT();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
         0: .line 328
            iconst_0
            ireturn
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;

  public boolean isTuple();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
         0: .line 333
            iconst_0
            ireturn
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;

  public boolean isMultiCell();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
         0: .line 338
            iconst_0
            ireturn
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;

  public boolean isFreezable();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
         0: .line 343
            iconst_0
            ireturn
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;

  public org.apache.cassandra.db.marshal.AbstractType<?> freeze();
    descriptor: ()Lorg/apache/cassandra/db/marshal/AbstractType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
         0: .line 348
            aload 0 /* this */
            areturn
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
    Signature: ()Lorg/apache/cassandra/db/marshal/AbstractType<*>;

  public org.apache.cassandra.db.marshal.AbstractType<?> freezeNestedMulticellTypes();
    descriptor: ()Lorg/apache/cassandra/db/marshal/AbstractType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
         0: .line 361
            aload 0 /* this */
            areturn
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
    Signature: ()Lorg/apache/cassandra/db/marshal/AbstractType<*>;

  public boolean isEmptyValueMeaningless();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
         0: .line 369
            iconst_0
            ireturn
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;

  public java.lang.String toString(boolean);
    descriptor: (Z)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // boolean ignoreFreezing
         0: .line 377
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.toString:()Ljava/lang/String;
            areturn
        end local 1 // boolean ignoreFreezing
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0            this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0    1     1  ignoreFreezing  Z
    MethodParameters:
                Name  Flags
      ignoreFreezing  

  public int componentsCount();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
         0: .line 386
            iconst_1
            ireturn
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;

  public java.util.List<org.apache.cassandra.db.marshal.AbstractType<?>> getComponents();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
         0: .line 395
            aload 0 /* this */
            invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
            areturn
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
    Signature: ()Ljava/util/List<Lorg/apache/cassandra/db/marshal/AbstractType<*>;>;

  protected int valueLengthIfFixed();
    descriptor: ()I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
         0: .line 403
            iconst_m1
            ireturn
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;

  public void writeValue(java.nio.ByteBuffer, org.apache.cassandra.io.util.DataOutputPlus);
    descriptor: (Ljava/nio/ByteBuffer;Lorg/apache/cassandra/io/util/DataOutputPlus;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // java.nio.ByteBuffer value
        start local 2 // org.apache.cassandra.io.util.DataOutputPlus out
         0: .line 409
            getstatic org.apache.cassandra.db.marshal.AbstractType.$assertionsDisabled:Z
            ifne 1
            aload 1 /* value */
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 410
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.valueLengthIfFixed:()I
            iflt 3
         2: .line 411
            aload 2 /* out */
            aload 1 /* value */
            invokeinterface org.apache.cassandra.io.util.DataOutputPlus.write:(Ljava/nio/ByteBuffer;)V
            goto 4
         3: .line 413
      StackMap locals:
      StackMap stack:
            aload 1 /* value */
            aload 2 /* out */
            invokestatic org.apache.cassandra.utils.ByteBufferUtil.writeWithVIntLength:(Ljava/nio/ByteBuffer;Lorg/apache/cassandra/io/util/DataOutputPlus;)V
         4: .line 414
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.apache.cassandra.io.util.DataOutputPlus out
        end local 1 // java.nio.ByteBuffer value
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0    5     1  value  Ljava/nio/ByteBuffer;
            0    5     2    out  Lorg/apache/cassandra/io/util/DataOutputPlus;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      value  
      out    

  public long writtenLength(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // java.nio.ByteBuffer value
         0: .line 418
            getstatic org.apache.cassandra.db.marshal.AbstractType.$assertionsDisabled:Z
            ifne 1
            aload 1 /* value */
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 419
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.valueLengthIfFixed:()I
            iflt 3
         2: .line 420
            aload 1 /* value */
            invokevirtual java.nio.ByteBuffer.remaining:()I
            goto 4
         3: .line 421
      StackMap locals:
      StackMap stack:
            aload 1 /* value */
            invokestatic org.apache.cassandra.db.TypeSizes.sizeofWithVIntLength:(Ljava/nio/ByteBuffer;)I
         4: .line 419
      StackMap locals:
      StackMap stack: int
            i2l
            lreturn
        end local 1 // java.nio.ByteBuffer value
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0    5     1  value  Ljava/nio/ByteBuffer;
    MethodParameters:
       Name  Flags
      value  

  public java.nio.ByteBuffer readValue(org.apache.cassandra.io.util.DataInputPlus);
    descriptor: (Lorg/apache/cassandra/io/util/DataInputPlus;)Ljava/nio/ByteBuffer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // org.apache.cassandra.io.util.DataInputPlus in
         0: .line 426
            aload 0 /* this */
            aload 1 /* in */
            ldc 2147483647
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.readValue:(Lorg/apache/cassandra/io/util/DataInputPlus;I)Ljava/nio/ByteBuffer;
            areturn
        end local 1 // org.apache.cassandra.io.util.DataInputPlus in
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0    1     1    in  Lorg/apache/cassandra/io/util/DataInputPlus;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      in    

  public java.nio.ByteBuffer readValue(org.apache.cassandra.io.util.DataInputPlus, int);
    descriptor: (Lorg/apache/cassandra/io/util/DataInputPlus;I)Ljava/nio/ByteBuffer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=3
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // org.apache.cassandra.io.util.DataInputPlus in
        start local 2 // int maxValueSize
         0: .line 431
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.valueLengthIfFixed:()I
            istore 3 /* length */
        start local 3 // int length
         1: .line 433
            iload 3 /* length */
            iflt 3
         2: .line 434
            aload 1 /* in */
            iload 3 /* length */
            invokestatic org.apache.cassandra.utils.ByteBufferUtil.read:(Ljava/io/DataInput;I)Ljava/nio/ByteBuffer;
            areturn
         3: .line 437
      StackMap locals: int
      StackMap stack:
            aload 1 /* in */
            invokeinterface org.apache.cassandra.io.util.DataInputPlus.readUnsignedVInt:()J
            l2i
            istore 4 /* l */
        start local 4 // int l
         4: .line 438
            iload 4 /* l */
            ifge 6
         5: .line 439
            new java.io.IOException
            dup
            ldc "Corrupt (negative) value length encountered"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 441
      StackMap locals: int
      StackMap stack:
            iload 4 /* l */
            iload 2 /* maxValueSize */
            if_icmple 10
         7: .line 442
            new java.io.IOException
            dup
            ldc "Corrupt value length %d encountered, as it exceeds the maximum of %d, which is set via max_value_size_in_mb in cassandra.yaml"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
         8: .line 444
            iload 4 /* l */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_1
            iload 2 /* maxValueSize */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
         9: .line 442
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 446
      StackMap locals:
      StackMap stack:
            aload 1 /* in */
            iload 4 /* l */
            invokestatic org.apache.cassandra.utils.ByteBufferUtil.read:(Ljava/io/DataInput;I)Ljava/nio/ByteBuffer;
            areturn
        end local 4 // int l
        end local 3 // int length
        end local 2 // int maxValueSize
        end local 1 // org.apache.cassandra.io.util.DataInputPlus in
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   11     0          this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0   11     1            in  Lorg/apache/cassandra/io/util/DataInputPlus;
            0   11     2  maxValueSize  I
            1   11     3        length  I
            4   11     4             l  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
              Name  Flags
      in            
      maxValueSize  

  public void skipValue(org.apache.cassandra.io.util.DataInputPlus);
    descriptor: (Lorg/apache/cassandra/io/util/DataInputPlus;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // org.apache.cassandra.io.util.DataInputPlus in
         0: .line 452
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.valueLengthIfFixed:()I
            istore 2 /* length */
        start local 2 // int length
         1: .line 453
            iload 2 /* length */
            iflt 3
         2: .line 454
            aload 1 /* in */
            iload 2 /* length */
            invokeinterface org.apache.cassandra.io.util.DataInputPlus.skipBytesFully:(I)V
            goto 4
         3: .line 456
      StackMap locals: int
      StackMap stack:
            aload 1 /* in */
            invokestatic org.apache.cassandra.utils.ByteBufferUtil.skipWithVIntLength:(Lorg/apache/cassandra/io/util/DataInputPlus;)V
         4: .line 457
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int length
        end local 1 // org.apache.cassandra.io.util.DataInputPlus in
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0    5     1      in  Lorg/apache/cassandra/io/util/DataInputPlus;
            1    5     2  length  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      in    

  public boolean referencesUserType(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // java.lang.String userTypeName
         0: .line 461
            iconst_0
            ireturn
        end local 1 // java.lang.String userTypeName
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0    1     1  userTypeName  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      userTypeName  

  public boolean referencesDuration();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
         0: .line 466
            iconst_0
            ireturn
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
         0: .line 479
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            areturn
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;

  public boolean equals(java.lang.Object, boolean);
    descriptor: (Ljava/lang/Object;Z)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // java.lang.Object other
        start local 2 // boolean ignoreFreezing
         0: .line 490
            aload 0 /* this */
            aload 1 /* other */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 2 // boolean ignoreFreezing
        end local 1 // java.lang.Object other
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0            this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0    1     1           other  Ljava/lang/Object;
            0    1     2  ignoreFreezing  Z
    MethodParameters:
                Name  Flags
      other           
      ignoreFreezing  

  public void checkComparable();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
         0: .line 495
            invokestatic org.apache.cassandra.db.marshal.AbstractType.$SWITCH_TABLE$org$apache$cassandra$db$marshal$AbstractType$ComparisonType:()[I
            aload 0 /* this */
            getfield org.apache.cassandra.db.marshal.AbstractType.comparisonType:Lorg/apache/cassandra/db/marshal/AbstractType$ComparisonType;
            invokevirtual org.apache.cassandra.db.marshal.AbstractType$ComparisonType.ordinal:()I
            iaload
            tableswitch { // 1 - 1
                    1: 1
              default: 2
          }
         1: .line 498
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 0 /* this */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " cannot be used in comparisons, so cannot be used as a clustering column"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 500
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;

  public final org.apache.cassandra.cql3.AssignmentTestable$TestResult testAssignment(java.lang.String, org.apache.cassandra.cql3.ColumnSpecification);
    descriptor: (Ljava/lang/String;Lorg/apache/cassandra/cql3/ColumnSpecification;)Lorg/apache/cassandra/cql3/AssignmentTestable$TestResult;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // java.lang.String keyspace
        start local 2 // org.apache.cassandra.cql3.ColumnSpecification receiver
         0: .line 506
            aload 2 /* receiver */
            getfield org.apache.cassandra.cql3.ColumnSpecification.type:Lorg/apache/cassandra/db/marshal/AbstractType;
            astore 3 /* receiverType */
        start local 3 // org.apache.cassandra.db.marshal.AbstractType receiverType
         1: .line 507
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.isFreezable:()Z
            ifeq 3
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.isMultiCell:()Z
            ifne 3
         2: .line 508
            aload 3 /* receiverType */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.freeze:()Lorg/apache/cassandra/db/marshal/AbstractType;
            astore 3 /* receiverType */
         3: .line 510
      StackMap locals: org.apache.cassandra.db.marshal.AbstractType
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.isReversed:()Z
            ifeq 5
         4: .line 511
            aload 3 /* receiverType */
            invokestatic org.apache.cassandra.db.marshal.ReversedType.getInstance:(Lorg/apache/cassandra/db/marshal/AbstractType;)Lorg/apache/cassandra/db/marshal/ReversedType;
            astore 3 /* receiverType */
         5: .line 513
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* receiverType */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 7
         6: .line 514
            getstatic org.apache.cassandra.cql3.AssignmentTestable$TestResult.EXACT_MATCH:Lorg/apache/cassandra/cql3/AssignmentTestable$TestResult;
            areturn
         7: .line 516
      StackMap locals:
      StackMap stack:
            aload 3 /* receiverType */
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.isValueCompatibleWith:(Lorg/apache/cassandra/db/marshal/AbstractType;)Z
            ifeq 9
         8: .line 517
            getstatic org.apache.cassandra.cql3.AssignmentTestable$TestResult.WEAKLY_ASSIGNABLE:Lorg/apache/cassandra/cql3/AssignmentTestable$TestResult;
            areturn
         9: .line 519
      StackMap locals:
      StackMap stack:
            getstatic org.apache.cassandra.cql3.AssignmentTestable$TestResult.NOT_ASSIGNABLE:Lorg/apache/cassandra/cql3/AssignmentTestable$TestResult;
            areturn
        end local 3 // org.apache.cassandra.db.marshal.AbstractType receiverType
        end local 2 // org.apache.cassandra.cql3.ColumnSpecification receiver
        end local 1 // java.lang.String keyspace
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   10     0          this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0   10     1      keyspace  Ljava/lang/String;
            0   10     2      receiver  Lorg/apache/cassandra/cql3/ColumnSpecification;
            1   10     3  receiverType  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
    MethodParameters:
          Name  Flags
      keyspace  
      receiver  

  public int compare(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)I
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            aload 1
            checkcast java.nio.ByteBuffer
            aload 2
            checkcast java.nio.ByteBuffer
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.compare:(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)I
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static int[] $SWITCH_TABLE$org$apache$cassandra$db$marshal$AbstractType$ComparisonType();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 60
            getstatic org.apache.cassandra.db.marshal.AbstractType.$SWITCH_TABLE$org$apache$cassandra$db$marshal$AbstractType$ComparisonType:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.apache.cassandra.db.marshal.AbstractType$ComparisonType.values:()[Lorg/apache/cassandra/db/marshal/AbstractType$ComparisonType;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.apache.cassandra.db.marshal.AbstractType$ComparisonType.BYTE_ORDER:Lorg/apache/cassandra/db/marshal/AbstractType$ComparisonType;
            invokevirtual org.apache.cassandra.db.marshal.AbstractType$ComparisonType.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.db.marshal.AbstractType$ComparisonType.CUSTOM:Lorg/apache/cassandra/db/marshal/AbstractType$ComparisonType;
            invokevirtual org.apache.cassandra.db.marshal.AbstractType$ComparisonType.ordinal:()I
            iconst_3
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.apache.cassandra.db.marshal.AbstractType$ComparisonType.NOT_COMPARABLE:Lorg/apache/cassandra/db/marshal/AbstractType$ComparisonType;
            invokevirtual org.apache.cassandra.db.marshal.AbstractType$ComparisonType.ordinal:()I
            iconst_1
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            dup
            putstatic org.apache.cassandra.db.marshal.AbstractType.$SWITCH_TABLE$org$apache$cassandra$db$marshal$AbstractType$ComparisonType:[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

  private int lambda$0(java.nio.ByteBuffer, java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)I
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.apache.cassandra.db.marshal.AbstractType this
        start local 1 // java.nio.ByteBuffer o1
        start local 2 // java.nio.ByteBuffer o2
         0: .line 91
            aload 0 /* this */
            aload 2 /* o2 */
            aload 1 /* o1 */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.compare:(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)I
            ireturn
        end local 2 // java.nio.ByteBuffer o2
        end local 1 // java.nio.ByteBuffer o1
        end local 0 // org.apache.cassandra.db.marshal.AbstractType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/marshal/AbstractType<TT;>;
            0    1     1    o1  Ljava/nio/ByteBuffer;
            0    1     2    o2  Ljava/nio/ByteBuffer;
}
Signature: <T:Ljava/lang/Object;>Ljava/lang/Object;Ljava/util/Comparator<Ljava/nio/ByteBuffer;>;Lorg/apache/cassandra/cql3/AssignmentTestable;
SourceFile: "AbstractType.java"
NestMembers:
  org.apache.cassandra.db.marshal.AbstractType$ComparisonType
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public final TestResult = org.apache.cassandra.cql3.AssignmentTestable$TestResult of org.apache.cassandra.cql3.AssignmentTestable
  public Custom = org.apache.cassandra.cql3.CQL3Type$Custom of org.apache.cassandra.cql3.CQL3Type
  public final ComparisonType = org.apache.cassandra.db.marshal.AbstractType$ComparisonType of org.apache.cassandra.db.marshal.AbstractType
    RuntimeVisibleAnnotations: 
      org.github.jamm.Unmetered()