public abstract class com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser
  super_class: java.lang.Object
{
  protected final com.datastax.oss.driver.internal.core.metadata.schema.queries.SchemaRows rows;
    descriptor: Lcom/datastax/oss/driver/internal/core/metadata/schema/queries/SchemaRows;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final com.datastax.oss.driver.internal.core.context.InternalDriverContext context;
    descriptor: Lcom/datastax/oss/driver/internal/core/context/InternalDriverContext;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final java.lang.String logPrefix;
    descriptor: Ljava/lang/String;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  public static final com.datastax.oss.driver.api.core.type.codec.TypeCodec<java.util.Map<java.lang.String, java.lang.String>> MAP_OF_TEXT_TO_TEXT;
    descriptor: Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec<Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;>;

  private static final com.datastax.oss.driver.api.core.type.codec.TypeCodec<java.util.Map<java.lang.String, java.nio.ByteBuffer>> MAP_OF_TEXT_TO_BLOB;
    descriptor: Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec<Ljava/util/Map<Ljava/lang/String;Ljava/nio/ByteBuffer;>;>;

  public static final com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap<java.lang.String, com.datastax.oss.driver.api.core.type.codec.TypeCodec<?>> OPTION_CODECS;
    descriptor: Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap<Ljava/lang/String;Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec<*>;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 133
            getstatic com.datastax.oss.driver.api.core.type.codec.TypeCodecs.TEXT:Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;
            getstatic com.datastax.oss.driver.api.core.type.codec.TypeCodecs.TEXT:Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;
            invokestatic com.datastax.oss.driver.api.core.type.codec.TypeCodecs.mapOf:(Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;)Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;
         1: .line 132
            putstatic com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser.MAP_OF_TEXT_TO_TEXT:Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;
         2: .line 135
            getstatic com.datastax.oss.driver.api.core.type.codec.TypeCodecs.TEXT:Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;
            getstatic com.datastax.oss.driver.api.core.type.codec.TypeCodecs.BLOB:Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;
            invokestatic com.datastax.oss.driver.api.core.type.codec.TypeCodecs.mapOf:(Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;)Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;
         3: .line 134
            putstatic com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser.MAP_OF_TEXT_TO_BLOB:Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;
         4: .line 141
            invokestatic com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap.builder:()Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
         5: .line 142
            ldc "additional_write_policy"
            getstatic com.datastax.oss.driver.api.core.type.codec.TypeCodecs.TEXT:Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
         6: .line 143
            ldc "bloom_filter_fp_chance"
            getstatic com.datastax.oss.driver.api.core.type.codec.TypeCodecs.DOUBLE:Lcom/datastax/oss/driver/api/core/type/codec/PrimitiveDoubleCodec;
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
         7: .line 145
            ldc "caching"
            getstatic com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser.MAP_OF_TEXT_TO_TEXT:Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
         8: .line 146
            ldc "cdc"
            getstatic com.datastax.oss.driver.api.core.type.codec.TypeCodecs.BOOLEAN:Lcom/datastax/oss/driver/api/core/type/codec/PrimitiveBooleanCodec;
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
         9: .line 147
            ldc "comment"
            getstatic com.datastax.oss.driver.api.core.type.codec.TypeCodecs.TEXT:Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
        10: .line 148
            ldc "compaction"
            getstatic com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser.MAP_OF_TEXT_TO_TEXT:Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
        11: .line 151
            ldc "compaction_strategy_class"
            getstatic com.datastax.oss.driver.api.core.type.codec.TypeCodecs.TEXT:Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
        12: .line 152
            ldc "compression"
            getstatic com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser.MAP_OF_TEXT_TO_TEXT:Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
        13: .line 154
            ldc "compression_parameters"
            getstatic com.datastax.oss.driver.api.core.type.codec.TypeCodecs.TEXT:Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
        14: .line 155
            ldc "crc_check_chance"
            getstatic com.datastax.oss.driver.api.core.type.codec.TypeCodecs.DOUBLE:Lcom/datastax/oss/driver/api/core/type/codec/PrimitiveDoubleCodec;
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
        15: .line 156
            ldc "dclocal_read_repair_chance"
            getstatic com.datastax.oss.driver.api.core.type.codec.TypeCodecs.DOUBLE:Lcom/datastax/oss/driver/api/core/type/codec/PrimitiveDoubleCodec;
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
        16: .line 157
            ldc "default_time_to_live"
            getstatic com.datastax.oss.driver.api.core.type.codec.TypeCodecs.INT:Lcom/datastax/oss/driver/api/core/type/codec/PrimitiveIntCodec;
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
        17: .line 158
            ldc "extensions"
            getstatic com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser.MAP_OF_TEXT_TO_BLOB:Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
        18: .line 159
            ldc "gc_grace_seconds"
            getstatic com.datastax.oss.driver.api.core.type.codec.TypeCodecs.INT:Lcom/datastax/oss/driver/api/core/type/codec/PrimitiveIntCodec;
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
        19: .line 160
            ldc "local_read_repair_chance"
            getstatic com.datastax.oss.driver.api.core.type.codec.TypeCodecs.DOUBLE:Lcom/datastax/oss/driver/api/core/type/codec/PrimitiveDoubleCodec;
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
        20: .line 161
            ldc "max_index_interval"
            getstatic com.datastax.oss.driver.api.core.type.codec.TypeCodecs.INT:Lcom/datastax/oss/driver/api/core/type/codec/PrimitiveIntCodec;
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
        21: .line 162
            ldc "memtable_flush_period_in_ms"
            getstatic com.datastax.oss.driver.api.core.type.codec.TypeCodecs.INT:Lcom/datastax/oss/driver/api/core/type/codec/PrimitiveIntCodec;
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
        22: .line 163
            ldc "min_index_interval"
            getstatic com.datastax.oss.driver.api.core.type.codec.TypeCodecs.INT:Lcom/datastax/oss/driver/api/core/type/codec/PrimitiveIntCodec;
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
        23: .line 164
            ldc "read_repair"
            getstatic com.datastax.oss.driver.api.core.type.codec.TypeCodecs.TEXT:Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
        24: .line 165
            ldc "read_repair_chance"
            getstatic com.datastax.oss.driver.api.core.type.codec.TypeCodecs.DOUBLE:Lcom/datastax/oss/driver/api/core/type/codec/PrimitiveDoubleCodec;
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
        25: .line 166
            ldc "speculative_retry"
            getstatic com.datastax.oss.driver.api.core.type.codec.TypeCodecs.TEXT:Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
        26: .line 167
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.build:()Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap;
        27: .line 140
            putstatic com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser.OPTION_CODECS:Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap;
        28: .line 167
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected void <init>(com.datastax.oss.driver.internal.core.metadata.schema.queries.SchemaRows, com.datastax.oss.driver.internal.core.context.InternalDriverContext);
    descriptor: (Lcom/datastax/oss/driver/internal/core/metadata/schema/queries/SchemaRows;Lcom/datastax/oss/driver/internal/core/context/InternalDriverContext;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser this
        start local 1 // com.datastax.oss.driver.internal.core.metadata.schema.queries.SchemaRows rows
        start local 2 // com.datastax.oss.driver.internal.core.context.InternalDriverContext context
         0: .line 43
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 44
            aload 0 /* this */
            aload 1 /* rows */
            putfield com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser.rows:Lcom/datastax/oss/driver/internal/core/metadata/schema/queries/SchemaRows;
         2: .line 45
            aload 0 /* this */
            aload 2 /* context */
            putfield com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser.context:Lcom/datastax/oss/driver/internal/core/context/InternalDriverContext;
         3: .line 46
            aload 0 /* this */
            aload 2 /* context */
            invokeinterface com.datastax.oss.driver.internal.core.context.InternalDriverContext.getSessionName:()Ljava/lang/String;
            putfield com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser.logPrefix:Ljava/lang/String;
         4: .line 47
            return
        end local 2 // com.datastax.oss.driver.internal.core.context.InternalDriverContext context
        end local 1 // com.datastax.oss.driver.internal.core.metadata.schema.queries.SchemaRows rows
        end local 0 // com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lcom/datastax/oss/driver/internal/core/metadata/schema/parsing/RelationParser;
            0    5     1     rows  Lcom/datastax/oss/driver/internal/core/metadata/schema/queries/SchemaRows;
            0    5     2  context  Lcom/datastax/oss/driver/internal/core/context/InternalDriverContext;
    MethodParameters:
         Name  Flags
      rows     
      context  

  protected java.util.Map<com.datastax.oss.driver.api.core.CqlIdentifier, java.lang.Object> parseOptions(com.datastax.oss.driver.internal.core.adminrequest.AdminRow);
    descriptor: (Lcom/datastax/oss/driver/internal/core/adminrequest/AdminRow;)Ljava/util/Map;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=9, args_size=2
        start local 0 // com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser this
        start local 1 // com.datastax.oss.driver.internal.core.adminrequest.AdminRow row
         0: .line 50
            invokestatic com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap.builder:()Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
            astore 2 /* builder */
        start local 2 // com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder builder
         1: .line 51
            getstatic com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser.OPTION_CODECS:Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap;
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap.entrySet:()Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableSet;
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableSet.iterator:()Ljava/util/Iterator;
            astore 4
            goto 33
      StackMap locals: com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser com.datastax.oss.driver.internal.core.adminrequest.AdminRow com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder top java.util.Iterator
      StackMap stack:
         2: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 3 /* entry */
        start local 3 // java.util.Map$Entry entry
         3: .line 52
            aload 3 /* entry */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* name */
        start local 5 // java.lang.String name
         4: .line 53
            aload 5 /* name */
            invokestatic com.datastax.oss.driver.api.core.CqlIdentifier.fromInternal:(Ljava/lang/String;)Lcom/datastax/oss/driver/api/core/CqlIdentifier;
            astore 6 /* id */
        start local 6 // com.datastax.oss.driver.api.core.CqlIdentifier id
         5: .line 54
            aload 3 /* entry */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast com.datastax.oss.driver.api.core.type.codec.TypeCodec
            astore 7 /* codec */
        start local 7 // com.datastax.oss.driver.api.core.type.codec.TypeCodec codec
         6: .line 56
            aload 5 /* name */
            ldc "caching"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 9
            aload 1 /* row */
            ldc "caching"
            invokevirtual com.datastax.oss.driver.internal.core.adminrequest.AdminRow.isString:(Ljava/lang/String;)Z
            ifeq 9
         7: .line 58
            aload 2 /* builder */
            aload 6 /* id */
            aload 1 /* row */
            aload 5 /* name */
            invokevirtual com.datastax.oss.driver.internal.core.adminrequest.AdminRow.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
            pop
         8: .line 59
            goto 33
      StackMap locals: com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser com.datastax.oss.driver.internal.core.adminrequest.AdminRow com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder java.util.Map$Entry java.util.Iterator java.lang.String com.datastax.oss.driver.api.core.CqlIdentifier com.datastax.oss.driver.api.core.type.codec.TypeCodec
      StackMap stack:
         9: aload 5 /* name */
            ldc "compaction_strategy_class"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 21
        10: .line 61
            aload 1 /* row */
            aload 5 /* name */
            invokevirtual com.datastax.oss.driver.internal.core.adminrequest.AdminRow.getString:(Ljava/lang/String;)Ljava/lang/String;
            astore 8 /* strategyClass */
        start local 8 // java.lang.String strategyClass
        11: .line 62
            aload 8 /* strategyClass */
            ifnull 33
        12: .line 63
            aload 2 /* builder */
        13: .line 64
            ldc "compaction"
            invokestatic com.datastax.oss.driver.api.core.CqlIdentifier.fromInternal:(Ljava/lang/String;)Lcom/datastax/oss/driver/api/core/CqlIdentifier;
        14: .line 65
            invokestatic com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap.builder:()Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
        15: .line 66
            ldc "class"
            aload 8 /* strategyClass */
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
        16: .line 68
            aload 1 /* row */
            ldc "compaction_strategy_options"
            invokevirtual com.datastax.oss.driver.internal.core.adminrequest.AdminRow.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic com.datastax.oss.driver.internal.core.metadata.schema.parsing.SimpleJsonParser.parseStringMap:(Ljava/lang/String;)Ljava/util/Map;
        17: .line 67
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.putAll:(Ljava/util/Map;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
        18: .line 69
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.build:()Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap;
        19: .line 63
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
            pop
        end local 8 // java.lang.String strategyClass
        20: .line 71
            goto 33
      StackMap locals:
      StackMap stack:
        21: aload 5 /* name */
            ldc "compression_parameters"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 29
        22: .line 73
            aload 1 /* row */
            aload 5 /* name */
            invokevirtual com.datastax.oss.driver.internal.core.adminrequest.AdminRow.getString:(Ljava/lang/String;)Ljava/lang/String;
            astore 8 /* compressionParameters */
        start local 8 // java.lang.String compressionParameters
        23: .line 74
            aload 8 /* compressionParameters */
            ifnull 33
        24: .line 75
            aload 2 /* builder */
        25: .line 76
            ldc "compression"
            invokestatic com.datastax.oss.driver.api.core.CqlIdentifier.fromInternal:(Ljava/lang/String;)Lcom/datastax/oss/driver/api/core/CqlIdentifier;
        26: .line 77
            aload 1 /* row */
            aload 5 /* name */
            invokevirtual com.datastax.oss.driver.internal.core.adminrequest.AdminRow.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic com.datastax.oss.driver.internal.core.metadata.schema.parsing.SimpleJsonParser.parseStringMap:(Ljava/lang/String;)Ljava/util/Map;
            invokestatic com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap.copyOf:(Ljava/util/Map;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap;
        27: .line 75
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
            pop
        end local 8 // java.lang.String compressionParameters
        28: .line 79
            goto 33
      StackMap locals:
      StackMap stack:
        29: aload 0 /* this */
            aload 5 /* name */
            invokevirtual com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser.isDeprecatedInCassandra4:(Ljava/lang/String;)Z
            ifne 33
        30: .line 81
            aload 1 /* row */
            aload 5 /* name */
            aload 7 /* codec */
            invokevirtual com.datastax.oss.driver.internal.core.adminrequest.AdminRow.get:(Ljava/lang/String;Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;)Ljava/lang/Object;
            astore 8 /* value */
        start local 8 // java.lang.Object value
        31: .line 82
            aload 8 /* value */
            ifnull 33
        32: .line 83
            aload 2 /* builder */
            aload 6 /* id */
            aload 8 /* value */
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder;
            pop
        end local 8 // java.lang.Object value
        end local 7 // com.datastax.oss.driver.api.core.type.codec.TypeCodec codec
        end local 6 // com.datastax.oss.driver.api.core.CqlIdentifier id
        end local 5 // java.lang.String name
        end local 3 // java.util.Map$Entry entry
        33: .line 51
      StackMap locals: com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser com.datastax.oss.driver.internal.core.adminrequest.AdminRow com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        34: .line 87
            aload 2 /* builder */
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder.build:()Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap;
            areturn
        end local 2 // com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder builder
        end local 1 // com.datastax.oss.driver.internal.core.adminrequest.AdminRow row
        end local 0 // com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   35     0                   this  Lcom/datastax/oss/driver/internal/core/metadata/schema/parsing/RelationParser;
            0   35     1                    row  Lcom/datastax/oss/driver/internal/core/adminrequest/AdminRow;
            1   35     2                builder  Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap$Builder<Lcom/datastax/oss/driver/api/core/CqlIdentifier;Ljava/lang/Object;>;
            3   33     3                  entry  Ljava/util/Map$Entry<Ljava/lang/String;Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec<*>;>;
            4   33     5                   name  Ljava/lang/String;
            5   33     6                     id  Lcom/datastax/oss/driver/api/core/CqlIdentifier;
            6   33     7                  codec  Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec<*>;
           11   20     8          strategyClass  Ljava/lang/String;
           23   28     8  compressionParameters  Ljava/lang/String;
           31   33     8                  value  Ljava/lang/Object;
    Signature: (Lcom/datastax/oss/driver/internal/core/adminrequest/AdminRow;)Ljava/util/Map<Lcom/datastax/oss/driver/api/core/CqlIdentifier;Ljava/lang/Object;>;
    MethodParameters:
      Name  Flags
      row   

  private boolean isDeprecatedInCassandra4(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser this
        start local 1 // java.lang.String name
         0: .line 96
            aload 0 /* this */
            invokevirtual com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser.isCassandra4OrAbove:()Z
            ifeq 5
         1: .line 97
            aload 1 /* name */
            ldc "read_repair_chance"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 4
         2: .line 98
            aload 1 /* name */
            ldc "dclocal_read_repair_chance"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 4
         3: .line 100
            aload 1 /* name */
            ldc "default_time_to_live"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 5
            aload 0 /* this */
            instanceof com.datastax.oss.driver.internal.core.metadata.schema.parsing.ViewParser
            ifeq 5
         4: .line 96
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         5: iconst_0
            ireturn
        end local 1 // java.lang.String name
        end local 0 // com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/datastax/oss/driver/internal/core/metadata/schema/parsing/RelationParser;
            0    6     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  private boolean isCassandra4OrAbove();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser this
         0: .line 104
            aload 0 /* this */
            getfield com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser.rows:Lcom/datastax/oss/driver/internal/core/metadata/schema/queries/SchemaRows;
            invokeinterface com.datastax.oss.driver.internal.core.metadata.schema.queries.SchemaRows.getNode:()Lcom/datastax/oss/driver/api/core/metadata/Node;
            astore 1 /* node */
        start local 1 // com.datastax.oss.driver.api.core.metadata.Node node
         1: .line 105
            aload 1 /* node */
            invokeinterface com.datastax.oss.driver.api.core.metadata.Node.getExtras:()Ljava/util/Map;
            ldc "DSE_VERSION"
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifne 5
         2: .line 106
            aload 1 /* node */
            invokeinterface com.datastax.oss.driver.api.core.metadata.Node.getCassandraVersion:()Lcom/datastax/oss/driver/api/core/Version;
            ifnull 5
         3: .line 107
            aload 1 /* node */
            invokeinterface com.datastax.oss.driver.api.core.metadata.Node.getCassandraVersion:()Lcom/datastax/oss/driver/api/core/Version;
            invokevirtual com.datastax.oss.driver.api.core.Version.nextStable:()Lcom/datastax/oss/driver/api/core/Version;
            getstatic com.datastax.oss.driver.api.core.Version.V4_0_0:Lcom/datastax/oss/driver/api/core/Version;
            invokevirtual com.datastax.oss.driver.api.core.Version.compareTo:(Lcom/datastax/oss/driver/api/core/Version;)I
         4: .line 105
            iflt 5
            iconst_1
            ireturn
      StackMap locals: com.datastax.oss.driver.api.core.metadata.Node
      StackMap stack:
         5: iconst_0
            ireturn
        end local 1 // com.datastax.oss.driver.api.core.metadata.Node node
        end local 0 // com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/datastax/oss/driver/internal/core/metadata/schema/parsing/RelationParser;
            1    6     1  node  Lcom/datastax/oss/driver/api/core/metadata/Node;

  public static void appendOptions(java.util.Map<com.datastax.oss.driver.api.core.CqlIdentifier, java.lang.Object>, com.datastax.oss.driver.internal.core.metadata.schema.ScriptBuilder);
    descriptor: (Ljava/util/Map;Lcom/datastax/oss/driver/internal/core/metadata/schema/ScriptBuilder;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=8, args_size=2
        start local 0 // java.util.Map options
        start local 1 // com.datastax.oss.driver.internal.core.metadata.schema.ScriptBuilder builder
         0: .line 111
            aload 0 /* options */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 14
      StackMap locals: java.util.Map com.datastax.oss.driver.internal.core.metadata.schema.ScriptBuilder top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 2 /* entry */
        start local 2 // java.util.Map$Entry entry
         2: .line 112
            aload 2 /* entry */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast com.datastax.oss.driver.api.core.CqlIdentifier
            astore 4 /* name */
        start local 4 // com.datastax.oss.driver.api.core.CqlIdentifier name
         3: .line 113
            aload 2 /* entry */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            astore 5 /* value */
        start local 5 // java.lang.Object value
         4: .line 115
            aload 4 /* name */
            invokevirtual com.datastax.oss.driver.api.core.CqlIdentifier.asInternal:()Ljava/lang/String;
            ldc "caching"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 7
            aload 5 /* value */
            instanceof java.lang.String
            ifeq 7
         5: .line 116
            getstatic com.datastax.oss.driver.api.core.type.codec.TypeCodecs.TEXT:Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;
            aload 5 /* value */
            checkcast java.lang.String
            invokeinterface com.datastax.oss.driver.api.core.type.codec.TypeCodec.format:(Ljava/lang/Object;)Ljava/lang/String;
            astore 6 /* formattedValue */
        start local 6 // java.lang.String formattedValue
         6: .line 117
            goto 10
        end local 6 // java.lang.String formattedValue
         7: .line 120
      StackMap locals: java.util.Map com.datastax.oss.driver.internal.core.metadata.schema.ScriptBuilder java.util.Map$Entry java.util.Iterator com.datastax.oss.driver.api.core.CqlIdentifier java.lang.Object
      StackMap stack:
            getstatic com.datastax.oss.driver.internal.core.metadata.schema.parsing.RelationParser.OPTION_CODECS:Lcom/datastax/oss/driver/shaded/guava/common/collect/ImmutableMap;
            aload 4 /* name */
            invokevirtual com.datastax.oss.driver.api.core.CqlIdentifier.asInternal:()Ljava/lang/String;
            invokevirtual com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.datastax.oss.driver.api.core.type.codec.TypeCodec
         8: .line 119
            astore 7 /* codec */
        start local 7 // com.datastax.oss.driver.api.core.type.codec.TypeCodec codec
         9: .line 121
            aload 7 /* codec */
            aload 5 /* value */
            invokeinterface com.datastax.oss.driver.api.core.type.codec.TypeCodec.format:(Ljava/lang/Object;)Ljava/lang/String;
            astore 6 /* formattedValue */
        end local 7 // com.datastax.oss.driver.api.core.type.codec.TypeCodec codec
        start local 6 // java.lang.String formattedValue
        10: .line 123
      StackMap locals: java.lang.String
      StackMap stack:
            aload 4 /* name */
            iconst_1
            invokevirtual com.datastax.oss.driver.api.core.CqlIdentifier.asCql:(Z)Ljava/lang/String;
            astore 7 /* optionName */
        start local 7 // java.lang.String optionName
        11: .line 124
            ldc "local_read_repair_chance"
            aload 7 /* optionName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 13
        12: .line 126
            ldc "dclocal_read_repair_chance"
            astore 7 /* optionName */
        13: .line 128
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* builder */
            invokevirtual com.datastax.oss.driver.internal.core.metadata.schema.ScriptBuilder.andWith:()Lcom/datastax/oss/driver/internal/core/metadata/schema/ScriptBuilder;
            aload 7 /* optionName */
            invokevirtual com.datastax.oss.driver.internal.core.metadata.schema.ScriptBuilder.append:(Ljava/lang/String;)Lcom/datastax/oss/driver/internal/core/metadata/schema/ScriptBuilder;
            ldc " = "
            invokevirtual com.datastax.oss.driver.internal.core.metadata.schema.ScriptBuilder.append:(Ljava/lang/String;)Lcom/datastax/oss/driver/internal/core/metadata/schema/ScriptBuilder;
            aload 6 /* formattedValue */
            invokevirtual com.datastax.oss.driver.internal.core.metadata.schema.ScriptBuilder.append:(Ljava/lang/String;)Lcom/datastax/oss/driver/internal/core/metadata/schema/ScriptBuilder;
            pop
        end local 7 // java.lang.String optionName
        end local 6 // java.lang.String formattedValue
        end local 5 // java.lang.Object value
        end local 4 // com.datastax.oss.driver.api.core.CqlIdentifier name
        end local 2 // java.util.Map$Entry entry
        14: .line 111
      StackMap locals: java.util.Map com.datastax.oss.driver.internal.core.metadata.schema.ScriptBuilder top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
        15: .line 130
            return
        end local 1 // com.datastax.oss.driver.internal.core.metadata.schema.ScriptBuilder builder
        end local 0 // java.util.Map options
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   16     0         options  Ljava/util/Map<Lcom/datastax/oss/driver/api/core/CqlIdentifier;Ljava/lang/Object;>;
            0   16     1         builder  Lcom/datastax/oss/driver/internal/core/metadata/schema/ScriptBuilder;
            2   14     2           entry  Ljava/util/Map$Entry<Lcom/datastax/oss/driver/api/core/CqlIdentifier;Ljava/lang/Object;>;
            3   14     4            name  Lcom/datastax/oss/driver/api/core/CqlIdentifier;
            4   14     5           value  Ljava/lang/Object;
            6    7     6  formattedValue  Ljava/lang/String;
           10   14     6  formattedValue  Ljava/lang/String;
            9   10     7           codec  Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec<Ljava/lang/Object;>;
           11   14     7      optionName  Ljava/lang/String;
    Signature: (Ljava/util/Map<Lcom/datastax/oss/driver/api/core/CqlIdentifier;Ljava/lang/Object;>;Lcom/datastax/oss/driver/internal/core/metadata/schema/ScriptBuilder;)V
    MethodParameters:
         Name  Flags
      options  
      builder  
}
SourceFile: "RelationParser.java"
InnerClasses:
  public Builder = com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap$Builder of com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap
  public abstract Entry = java.util.Map$Entry of java.util.Map
    RuntimeVisibleAnnotations: 
      net.jcip.annotations.ThreadSafe()