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

  static final java.util.List<org.apache.cassandra.config.CFMetaData> LegacySchemaTables;
    descriptor: Ljava/util/List;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/List<Lorg/apache/cassandra/config/CFMetaData;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=0, args_size=0
         0: .line 64
            ldc Lorg/apache/cassandra/schema/LegacySchemaMigrator;
            invokestatic org.slf4j.LoggerFactory.getLogger:(Ljava/lang/Class;)Lorg/slf4j/Logger;
            putstatic org.apache.cassandra.schema.LegacySchemaMigrator.logger:Lorg/slf4j/Logger;
         1: .line 67
            getstatic org.apache.cassandra.db.SystemKeyspace.LegacyKeyspaces:Lorg/apache/cassandra/config/CFMetaData;
         2: .line 68
            getstatic org.apache.cassandra.db.SystemKeyspace.LegacyColumnfamilies:Lorg/apache/cassandra/config/CFMetaData;
         3: .line 69
            getstatic org.apache.cassandra.db.SystemKeyspace.LegacyColumns:Lorg/apache/cassandra/config/CFMetaData;
         4: .line 70
            getstatic org.apache.cassandra.db.SystemKeyspace.LegacyTriggers:Lorg/apache/cassandra/config/CFMetaData;
         5: .line 71
            getstatic org.apache.cassandra.db.SystemKeyspace.LegacyUsertypes:Lorg/apache/cassandra/config/CFMetaData;
         6: .line 72
            getstatic org.apache.cassandra.db.SystemKeyspace.LegacyFunctions:Lorg/apache/cassandra/config/CFMetaData;
         7: .line 73
            getstatic org.apache.cassandra.db.SystemKeyspace.LegacyAggregates:Lorg/apache/cassandra/config/CFMetaData;
         8: .line 67
            invokestatic com.google.common.collect.ImmutableList.of:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/google/common/collect/ImmutableList;
         9: .line 66
            putstatic org.apache.cassandra.schema.LegacySchemaMigrator.LegacySchemaTables:Ljava/util/List;
        10: .line 73
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.schema.LegacySchemaMigrator this
         0: .line 60
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 62
            return
        end local 0 // org.apache.cassandra.schema.LegacySchemaMigrator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/cassandra/schema/LegacySchemaMigrator;

  public static void migrate();
    descriptor: ()V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=1, args_size=0
         0: .line 78
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.readSchema:()Ljava/util/Collection;
            astore 0 /* keyspaces */
        start local 0 // java.util.Collection keyspaces
         1: .line 81
            aload 0 /* keyspaces */
            invokeinterface java.util.Collection.isEmpty:()Z
            ifeq 4
         2: .line 83
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.unloadLegacySchemaTables:()V
         3: .line 84
            return
         4: .line 88
      StackMap locals: java.util.Collection
      StackMap stack:
            getstatic org.apache.cassandra.schema.LegacySchemaMigrator.logger:Lorg/slf4j/Logger;
            ldc "Moving {} keyspaces from legacy schema tables to the new schema keyspace ({})"
         5: .line 89
            aload 0 /* keyspaces */
            invokeinterface java.util.Collection.size:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
         6: .line 90
            ldc "system_schema"
         7: .line 88
            invokeinterface org.slf4j.Logger.info:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
         8: .line 91
            aload 0 /* keyspaces */
            invokedynamic accept()Ljava/util/function/Consumer;
              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;)V
                  org/apache/cassandra/schema/LegacySchemaMigrator.storeKeyspaceInNewSchemaTables(Lorg/apache/cassandra/schema/LegacySchemaMigrator$Keyspace;)V (6)
                  (Lorg/apache/cassandra/schema/LegacySchemaMigrator$Keyspace;)V
            invokeinterface java.util.Collection.forEach:(Ljava/util/function/Consumer;)V
         9: .line 92
            aload 0 /* keyspaces */
            invokedynamic accept()Ljava/util/function/Consumer;
              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;)V
                  org/apache/cassandra/schema/LegacySchemaMigrator.migrateBuiltIndexesForKeyspace(Lorg/apache/cassandra/schema/LegacySchemaMigrator$Keyspace;)V (6)
                  (Lorg/apache/cassandra/schema/LegacySchemaMigrator$Keyspace;)V
            invokeinterface java.util.Collection.forEach:(Ljava/util/function/Consumer;)V
        10: .line 95
            invokestatic org.apache.cassandra.schema.SchemaKeyspace.flush:()V
        11: .line 98
            getstatic org.apache.cassandra.schema.LegacySchemaMigrator.logger:Lorg/slf4j/Logger;
            ldc "Truncating legacy schema tables"
            invokeinterface org.slf4j.Logger.info:(Ljava/lang/String;)V
        12: .line 99
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.truncateLegacySchemaTables:()V
        13: .line 102
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.unloadLegacySchemaTables:()V
        14: .line 104
            getstatic org.apache.cassandra.schema.LegacySchemaMigrator.logger:Lorg/slf4j/Logger;
            ldc "Completed migration of legacy schema tables"
            invokeinterface org.slf4j.Logger.info:(Ljava/lang/String;)V
        15: .line 105
            return
        end local 0 // java.util.Collection keyspaces
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            1   16     0  keyspaces  Ljava/util/Collection<Lorg/apache/cassandra/schema/LegacySchemaMigrator$Keyspace;>;

  private static void migrateBuiltIndexesForKeyspace(org.apache.cassandra.schema.LegacySchemaMigrator$Keyspace);
    descriptor: (Lorg/apache/cassandra/schema/LegacySchemaMigrator$Keyspace;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.cassandra.schema.LegacySchemaMigrator$Keyspace keyspace
         0: .line 109
            aload 0 /* keyspace */
            getfield org.apache.cassandra.schema.LegacySchemaMigrator$Keyspace.tables:Ljava/util/Collection;
            invokedynamic accept()Ljava/util/function/Consumer;
              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;)V
                  org/apache/cassandra/schema/LegacySchemaMigrator.migrateBuiltIndexesForTable(Lorg/apache/cassandra/schema/LegacySchemaMigrator$Table;)V (6)
                  (Lorg/apache/cassandra/schema/LegacySchemaMigrator$Table;)V
            invokeinterface java.util.Collection.forEach:(Ljava/util/function/Consumer;)V
         1: .line 110
            return
        end local 0 // org.apache.cassandra.schema.LegacySchemaMigrator$Keyspace keyspace
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0  keyspace  Lorg/apache/cassandra/schema/LegacySchemaMigrator$Keyspace;
    MethodParameters:
          Name  Flags
      keyspace  

  private static void migrateBuiltIndexesForTable(org.apache.cassandra.schema.LegacySchemaMigrator$Table);
    descriptor: (Lorg/apache/cassandra/schema/LegacySchemaMigrator$Table;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.cassandra.schema.LegacySchemaMigrator$Table table
         0: .line 114
            aload 0 /* table */
            getfield org.apache.cassandra.schema.LegacySchemaMigrator$Table.metadata:Lorg/apache/cassandra/config/CFMetaData;
            invokevirtual org.apache.cassandra.config.CFMetaData.getIndexes:()Lorg/apache/cassandra/schema/Indexes;
            aload 0 /* table */
            invokedynamic accept(Lorg/apache/cassandra/schema/LegacySchemaMigrator$Table;)Ljava/util/function/Consumer;
              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;)V
                  org/apache/cassandra/schema/LegacySchemaMigrator.lambda$3(Lorg/apache/cassandra/schema/LegacySchemaMigrator$Table;Lorg/apache/cassandra/schema/IndexMetadata;)V (6)
                  (Lorg/apache/cassandra/schema/IndexMetadata;)V
            invokevirtual org.apache.cassandra.schema.Indexes.forEach:(Ljava/util/function/Consumer;)V
         1: .line 117
            return
        end local 0 // org.apache.cassandra.schema.LegacySchemaMigrator$Table table
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0  table  Lorg/apache/cassandra/schema/LegacySchemaMigrator$Table;
    MethodParameters:
       Name  Flags
      table  

  private static void migrateIndexBuildStatus(java.lang.String, java.lang.String, org.apache.cassandra.schema.IndexMetadata);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Lorg/apache/cassandra/schema/IndexMetadata;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // java.lang.String keyspace
        start local 1 // java.lang.String table
        start local 2 // org.apache.cassandra.schema.IndexMetadata index
         0: .line 121
            aload 0 /* keyspace */
            new java.lang.StringBuilder
            dup
            aload 1 /* table */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 46
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 2 /* index */
            getfield org.apache.cassandra.schema.IndexMetadata.name:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.apache.cassandra.db.SystemKeyspace.isIndexBuilt:(Ljava/lang/String;Ljava/lang/String;)Z
            ifeq 3
         1: .line 123
            aload 0 /* keyspace */
            aload 2 /* index */
            getfield org.apache.cassandra.schema.IndexMetadata.name:Ljava/lang/String;
            invokestatic org.apache.cassandra.db.SystemKeyspace.setIndexBuilt:(Ljava/lang/String;Ljava/lang/String;)V
         2: .line 124
            aload 0 /* keyspace */
            new java.lang.StringBuilder
            dup
            aload 1 /* table */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 46
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 2 /* index */
            getfield org.apache.cassandra.schema.IndexMetadata.name:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.apache.cassandra.db.SystemKeyspace.setIndexRemoved:(Ljava/lang/String;Ljava/lang/String;)V
         3: .line 126
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.apache.cassandra.schema.IndexMetadata index
        end local 1 // java.lang.String table
        end local 0 // java.lang.String keyspace
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0  keyspace  Ljava/lang/String;
            0    4     1     table  Ljava/lang/String;
            0    4     2     index  Lorg/apache/cassandra/schema/IndexMetadata;
    MethodParameters:
          Name  Flags
      keyspace  
      table     
      index     

  static void unloadLegacySchemaTables();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=4, args_size=0
         0: .line 130
            getstatic org.apache.cassandra.config.Schema.instance:Lorg/apache/cassandra/config/Schema;
            ldc "system"
            invokevirtual org.apache.cassandra.config.Schema.getKSMetaData:(Ljava/lang/String;)Lorg/apache/cassandra/schema/KeyspaceMetadata;
            astore 0 /* systemKeyspace */
        start local 0 // org.apache.cassandra.schema.KeyspaceMetadata systemKeyspace
         1: .line 132
            aload 0 /* systemKeyspace */
            getfield org.apache.cassandra.schema.KeyspaceMetadata.tables:Lorg/apache/cassandra/schema/Tables;
            astore 1 /* systemTables */
        start local 1 // org.apache.cassandra.schema.Tables systemTables
         2: .line 133
            getstatic org.apache.cassandra.schema.LegacySchemaMigrator.LegacySchemaTables:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 5
      StackMap locals: org.apache.cassandra.schema.KeyspaceMetadata org.apache.cassandra.schema.Tables top java.util.Iterator
      StackMap stack:
         3: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.config.CFMetaData
            astore 2 /* table */
        start local 2 // org.apache.cassandra.config.CFMetaData table
         4: .line 134
            aload 1 /* systemTables */
            aload 2 /* table */
            getfield org.apache.cassandra.config.CFMetaData.cfName:Ljava/lang/String;
            invokevirtual org.apache.cassandra.schema.Tables.without:(Ljava/lang/String;)Lorg/apache/cassandra/schema/Tables;
            astore 1 /* systemTables */
        end local 2 // org.apache.cassandra.config.CFMetaData table
         5: .line 133
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         6: .line 136
            getstatic org.apache.cassandra.schema.LegacySchemaMigrator.LegacySchemaTables:Ljava/util/List;
            getstatic org.apache.cassandra.config.Schema.instance:Lorg/apache/cassandra/config/Schema;
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic accept(Lorg/apache/cassandra/config/Schema;)Ljava/util/function/Consumer;
              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;)V
                  org/apache/cassandra/config/Schema.unload(Lorg/apache/cassandra/config/CFMetaData;)V (5)
                  (Lorg/apache/cassandra/config/CFMetaData;)V
            invokeinterface java.util.List.forEach:(Ljava/util/function/Consumer;)V
         7: .line 137
            getstatic org.apache.cassandra.schema.LegacySchemaMigrator.LegacySchemaTables:Ljava/util/List;
            invokedynamic accept()Ljava/util/function/Consumer;
              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;)V
                  org/apache/cassandra/schema/LegacySchemaMigrator.lambda$5(Lorg/apache/cassandra/config/CFMetaData;)V (6)
                  (Lorg/apache/cassandra/config/CFMetaData;)V
            invokeinterface java.util.List.forEach:(Ljava/util/function/Consumer;)V
         8: .line 139
            getstatic org.apache.cassandra.config.Schema.instance:Lorg/apache/cassandra/config/Schema;
            aload 0 /* systemKeyspace */
            aload 1 /* systemTables */
            invokevirtual org.apache.cassandra.schema.KeyspaceMetadata.withSwapped:(Lorg/apache/cassandra/schema/Tables;)Lorg/apache/cassandra/schema/KeyspaceMetadata;
            invokevirtual org.apache.cassandra.config.Schema.setKeyspaceMetadata:(Lorg/apache/cassandra/schema/KeyspaceMetadata;)V
         9: .line 140
            return
        end local 1 // org.apache.cassandra.schema.Tables systemTables
        end local 0 // org.apache.cassandra.schema.KeyspaceMetadata systemKeyspace
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            1   10     0  systemKeyspace  Lorg/apache/cassandra/schema/KeyspaceMetadata;
            2   10     1    systemTables  Lorg/apache/cassandra/schema/Tables;
            4    5     2           table  Lorg/apache/cassandra/config/CFMetaData;

  private static void truncateLegacySchemaTables();
    descriptor: ()V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 144
            getstatic org.apache.cassandra.schema.LegacySchemaMigrator.LegacySchemaTables:Ljava/util/List;
            invokedynamic accept()Ljava/util/function/Consumer;
              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;)V
                  org/apache/cassandra/schema/LegacySchemaMigrator.lambda$6(Lorg/apache/cassandra/config/CFMetaData;)V (6)
                  (Lorg/apache/cassandra/config/CFMetaData;)V
            invokeinterface java.util.List.forEach:(Ljava/util/function/Consumer;)V
         1: .line 145
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static void storeKeyspaceInNewSchemaTables(org.apache.cassandra.schema.LegacySchemaMigrator$Keyspace);
    descriptor: (Lorg/apache/cassandra/schema/LegacySchemaMigrator$Keyspace;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // org.apache.cassandra.schema.LegacySchemaMigrator$Keyspace keyspace
         0: .line 149
            getstatic org.apache.cassandra.schema.LegacySchemaMigrator.logger:Lorg/slf4j/Logger;
            ldc "Migrating keyspace {}"
            aload 0 /* keyspace */
            invokeinterface org.slf4j.Logger.info:(Ljava/lang/String;Ljava/lang/Object;)V
         1: .line 151
            aload 0 /* keyspace */
            getfield org.apache.cassandra.schema.LegacySchemaMigrator$Keyspace.name:Ljava/lang/String;
            aload 0 /* keyspace */
            getfield org.apache.cassandra.schema.LegacySchemaMigrator$Keyspace.params:Lorg/apache/cassandra/schema/KeyspaceParams;
            aload 0 /* keyspace */
            getfield org.apache.cassandra.schema.LegacySchemaMigrator$Keyspace.timestamp:J
            invokestatic org.apache.cassandra.schema.SchemaKeyspace.makeCreateKeyspaceMutation:(Ljava/lang/String;Lorg/apache/cassandra/schema/KeyspaceParams;J)Lorg/apache/cassandra/db/Mutation$SimpleBuilder;
            astore 1 /* builder */
        start local 1 // org.apache.cassandra.db.Mutation$SimpleBuilder builder
         2: .line 152
            aload 0 /* keyspace */
            getfield org.apache.cassandra.schema.LegacySchemaMigrator$Keyspace.tables:Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3
            goto 5
      StackMap locals: org.apache.cassandra.schema.LegacySchemaMigrator$Keyspace org.apache.cassandra.db.Mutation$SimpleBuilder top java.util.Iterator
      StackMap stack:
         3: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.schema.LegacySchemaMigrator$Table
            astore 2 /* table */
        start local 2 // org.apache.cassandra.schema.LegacySchemaMigrator$Table table
         4: .line 153
            aload 2 /* table */
            getfield org.apache.cassandra.schema.LegacySchemaMigrator$Table.metadata:Lorg/apache/cassandra/config/CFMetaData;
            iconst_1
            aload 1 /* builder */
            aload 2 /* table */
            getfield org.apache.cassandra.schema.LegacySchemaMigrator$Table.timestamp:J
            invokeinterface org.apache.cassandra.db.Mutation$SimpleBuilder.timestamp:(J)Lorg/apache/cassandra/db/Mutation$SimpleBuilder;
            invokestatic org.apache.cassandra.schema.SchemaKeyspace.addTableToSchemaMutation:(Lorg/apache/cassandra/config/CFMetaData;ZLorg/apache/cassandra/db/Mutation$SimpleBuilder;)V
        end local 2 // org.apache.cassandra.schema.LegacySchemaMigrator$Table table
         5: .line 152
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         6: .line 155
            aload 0 /* keyspace */
            getfield org.apache.cassandra.schema.LegacySchemaMigrator$Keyspace.types:Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3
            goto 9
      StackMap locals:
      StackMap stack:
         7: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.schema.LegacySchemaMigrator$Type
            astore 2 /* type */
        start local 2 // org.apache.cassandra.schema.LegacySchemaMigrator$Type type
         8: .line 156
            aload 2 /* type */
            getfield org.apache.cassandra.schema.LegacySchemaMigrator$Type.metadata:Lorg/apache/cassandra/db/marshal/UserType;
            aload 1 /* builder */
            aload 2 /* type */
            getfield org.apache.cassandra.schema.LegacySchemaMigrator$Type.timestamp:J
            invokeinterface org.apache.cassandra.db.Mutation$SimpleBuilder.timestamp:(J)Lorg/apache/cassandra/db/Mutation$SimpleBuilder;
            invokestatic org.apache.cassandra.schema.SchemaKeyspace.addTypeToSchemaMutation:(Lorg/apache/cassandra/db/marshal/UserType;Lorg/apache/cassandra/db/Mutation$SimpleBuilder;)V
        end local 2 // org.apache.cassandra.schema.LegacySchemaMigrator$Type type
         9: .line 155
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        10: .line 158
            aload 0 /* keyspace */
            getfield org.apache.cassandra.schema.LegacySchemaMigrator$Keyspace.functions:Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3
            goto 13
      StackMap locals:
      StackMap stack:
        11: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.schema.LegacySchemaMigrator$Function
            astore 2 /* function */
        start local 2 // org.apache.cassandra.schema.LegacySchemaMigrator$Function function
        12: .line 159
            aload 2 /* function */
            getfield org.apache.cassandra.schema.LegacySchemaMigrator$Function.metadata:Lorg/apache/cassandra/cql3/functions/UDFunction;
            aload 1 /* builder */
            aload 2 /* function */
            getfield org.apache.cassandra.schema.LegacySchemaMigrator$Function.timestamp:J
            invokeinterface org.apache.cassandra.db.Mutation$SimpleBuilder.timestamp:(J)Lorg/apache/cassandra/db/Mutation$SimpleBuilder;
            invokestatic org.apache.cassandra.schema.SchemaKeyspace.addFunctionToSchemaMutation:(Lorg/apache/cassandra/cql3/functions/UDFunction;Lorg/apache/cassandra/db/Mutation$SimpleBuilder;)V
        end local 2 // org.apache.cassandra.schema.LegacySchemaMigrator$Function function
        13: .line 158
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 11
        14: .line 161
            aload 0 /* keyspace */
            getfield org.apache.cassandra.schema.LegacySchemaMigrator$Keyspace.aggregates:Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3
            goto 17
      StackMap locals:
      StackMap stack:
        15: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.schema.LegacySchemaMigrator$Aggregate
            astore 2 /* aggregate */
        start local 2 // org.apache.cassandra.schema.LegacySchemaMigrator$Aggregate aggregate
        16: .line 162
            aload 2 /* aggregate */
            getfield org.apache.cassandra.schema.LegacySchemaMigrator$Aggregate.metadata:Lorg/apache/cassandra/cql3/functions/UDAggregate;
            aload 1 /* builder */
            aload 2 /* aggregate */
            getfield org.apache.cassandra.schema.LegacySchemaMigrator$Aggregate.timestamp:J
            invokeinterface org.apache.cassandra.db.Mutation$SimpleBuilder.timestamp:(J)Lorg/apache/cassandra/db/Mutation$SimpleBuilder;
            invokestatic org.apache.cassandra.schema.SchemaKeyspace.addAggregateToSchemaMutation:(Lorg/apache/cassandra/cql3/functions/UDAggregate;Lorg/apache/cassandra/db/Mutation$SimpleBuilder;)V
        end local 2 // org.apache.cassandra.schema.LegacySchemaMigrator$Aggregate aggregate
        17: .line 161
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 15
        18: .line 164
            aload 1 /* builder */
            invokeinterface org.apache.cassandra.db.Mutation$SimpleBuilder.build:()Lorg/apache/cassandra/db/Mutation;
            invokevirtual org.apache.cassandra.db.Mutation.apply:()V
        19: .line 165
            return
        end local 1 // org.apache.cassandra.db.Mutation$SimpleBuilder builder
        end local 0 // org.apache.cassandra.schema.LegacySchemaMigrator$Keyspace keyspace
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   20     0   keyspace  Lorg/apache/cassandra/schema/LegacySchemaMigrator$Keyspace;
            2   20     1    builder  Lorg/apache/cassandra/db/Mutation$SimpleBuilder;
            4    5     2      table  Lorg/apache/cassandra/schema/LegacySchemaMigrator$Table;
            8    9     2       type  Lorg/apache/cassandra/schema/LegacySchemaMigrator$Type;
           12   13     2   function  Lorg/apache/cassandra/schema/LegacySchemaMigrator$Function;
           16   17     2  aggregate  Lorg/apache/cassandra/schema/LegacySchemaMigrator$Aggregate;
    MethodParameters:
          Name  Flags
      keyspace  

  private static java.util.Collection<org.apache.cassandra.schema.LegacySchemaMigrator$Keyspace> readSchema();
    descriptor: ()Ljava/util/Collection;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=0
         0: .line 172
            ldc "SELECT keyspace_name FROM %s.%s"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "system"
            aastore
            dup
            iconst_1
            ldc "schema_keyspaces"
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 0 /* query */
        start local 0 // java.lang.String query
         1: .line 173
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* keyspaceNames */
        start local 1 // java.util.Collection keyspaceNames
         2: .line 174
            aload 0 /* query */
            iconst_0
            anewarray java.lang.Object
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.query:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/apache/cassandra/cql3/UntypedResultSet;
            aload 1 /* keyspaceNames */
            invokedynamic accept(Ljava/util/Collection;)Ljava/util/function/Consumer;
              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;)V
                  org/apache/cassandra/schema/LegacySchemaMigrator.lambda$7(Ljava/util/Collection;Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)V (6)
                  (Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)V
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet.forEach:(Ljava/util/function/Consumer;)V
         3: .line 175
            aload 1 /* keyspaceNames */
            getstatic org.apache.cassandra.config.SchemaConstants.LOCAL_SYSTEM_KEYSPACE_NAMES:Ljava/util/Set;
            invokeinterface java.util.Collection.removeAll:(Ljava/util/Collection;)Z
            pop
         4: .line 177
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* keyspaces */
        start local 2 // java.util.Collection keyspaces
         5: .line 178
            aload 1 /* keyspaceNames */
            aload 2 /* keyspaces */
            invokedynamic accept(Ljava/util/Collection;)Ljava/util/function/Consumer;
              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;)V
                  org/apache/cassandra/schema/LegacySchemaMigrator.lambda$8(Ljava/util/Collection;Ljava/lang/String;)V (6)
                  (Ljava/lang/String;)V
            invokeinterface java.util.Collection.forEach:(Ljava/util/function/Consumer;)V
         6: .line 179
            aload 2 /* keyspaces */
            areturn
        end local 2 // java.util.Collection keyspaces
        end local 1 // java.util.Collection keyspaceNames
        end local 0 // java.lang.String query
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            1    7     0          query  Ljava/lang/String;
            2    7     1  keyspaceNames  Ljava/util/Collection<Ljava/lang/String;>;
            5    7     2      keyspaces  Ljava/util/Collection<Lorg/apache/cassandra/schema/LegacySchemaMigrator$Keyspace;>;
    Signature: ()Ljava/util/Collection<Lorg/apache/cassandra/schema/LegacySchemaMigrator$Keyspace;>;

  private static org.apache.cassandra.schema.LegacySchemaMigrator$Keyspace readKeyspace(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/apache/cassandra/schema/LegacySchemaMigrator$Keyspace;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=10, locals=9, args_size=1
        start local 0 // java.lang.String keyspaceName
         0: .line 184
            aload 0 /* keyspaceName */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.readKeyspaceTimestamp:(Ljava/lang/String;)J
            lstore 1 /* timestamp */
        start local 1 // long timestamp
         1: .line 185
            aload 0 /* keyspaceName */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.readKeyspaceParams:(Ljava/lang/String;)Lorg/apache/cassandra/schema/KeyspaceParams;
            astore 3 /* params */
        start local 3 // org.apache.cassandra.schema.KeyspaceParams params
         2: .line 187
            aload 0 /* keyspaceName */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.readTables:(Ljava/lang/String;)Ljava/util/Collection;
            astore 4 /* tables */
        start local 4 // java.util.Collection tables
         3: .line 188
            aload 0 /* keyspaceName */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.readTypes:(Ljava/lang/String;)Ljava/util/Collection;
            astore 5 /* types */
        start local 5 // java.util.Collection types
         4: .line 189
            aload 0 /* keyspaceName */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.readFunctions:(Ljava/lang/String;)Ljava/util/Collection;
            astore 6 /* functions */
        start local 6 // java.util.Collection functions
         5: .line 190
            invokestatic org.apache.cassandra.schema.Functions.builder:()Lorg/apache/cassandra/schema/Functions$Builder;
            astore 7 /* functionsBuilder */
        start local 7 // org.apache.cassandra.schema.Functions$Builder functionsBuilder
         6: .line 191
            aload 6 /* functions */
            aload 7 /* functionsBuilder */
            invokedynamic accept(Lorg/apache/cassandra/schema/Functions$Builder;)Ljava/util/function/Consumer;
              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;)V
                  org/apache/cassandra/schema/LegacySchemaMigrator.lambda$9(Lorg/apache/cassandra/schema/Functions$Builder;Lorg/apache/cassandra/schema/LegacySchemaMigrator$Function;)V (6)
                  (Lorg/apache/cassandra/schema/LegacySchemaMigrator$Function;)V
            invokeinterface java.util.Collection.forEach:(Ljava/util/function/Consumer;)V
         7: .line 192
            aload 7 /* functionsBuilder */
            invokevirtual org.apache.cassandra.schema.Functions$Builder.build:()Lorg/apache/cassandra/schema/Functions;
            aload 0 /* keyspaceName */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.readAggregates:(Lorg/apache/cassandra/schema/Functions;Ljava/lang/String;)Ljava/util/Collection;
            astore 8 /* aggregates */
        start local 8 // java.util.Collection aggregates
         8: .line 194
            new org.apache.cassandra.schema.LegacySchemaMigrator$Keyspace
            dup
            lload 1 /* timestamp */
            aload 0 /* keyspaceName */
            aload 3 /* params */
            aload 4 /* tables */
            aload 5 /* types */
            aload 6 /* functions */
            aload 8 /* aggregates */
            invokespecial org.apache.cassandra.schema.LegacySchemaMigrator$Keyspace.<init>:(JLjava/lang/String;Lorg/apache/cassandra/schema/KeyspaceParams;Ljava/util/Collection;Ljava/util/Collection;Ljava/util/Collection;Ljava/util/Collection;)V
            areturn
        end local 8 // java.util.Collection aggregates
        end local 7 // org.apache.cassandra.schema.Functions$Builder functionsBuilder
        end local 6 // java.util.Collection functions
        end local 5 // java.util.Collection types
        end local 4 // java.util.Collection tables
        end local 3 // org.apache.cassandra.schema.KeyspaceParams params
        end local 1 // long timestamp
        end local 0 // java.lang.String keyspaceName
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    9     0      keyspaceName  Ljava/lang/String;
            1    9     1         timestamp  J
            2    9     3            params  Lorg/apache/cassandra/schema/KeyspaceParams;
            3    9     4            tables  Ljava/util/Collection<Lorg/apache/cassandra/schema/LegacySchemaMigrator$Table;>;
            4    9     5             types  Ljava/util/Collection<Lorg/apache/cassandra/schema/LegacySchemaMigrator$Type;>;
            5    9     6         functions  Ljava/util/Collection<Lorg/apache/cassandra/schema/LegacySchemaMigrator$Function;>;
            6    9     7  functionsBuilder  Lorg/apache/cassandra/schema/Functions$Builder;
            8    9     8        aggregates  Ljava/util/Collection<Lorg/apache/cassandra/schema/LegacySchemaMigrator$Aggregate;>;
    MethodParameters:
              Name  Flags
      keyspaceName  

  private static long readKeyspaceTimestamp(java.lang.String);
    descriptor: (Ljava/lang/String;)J
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // java.lang.String keyspaceName
         0: .line 203
            ldc "SELECT writeTime(durable_writes) AS timestamp FROM %s.%s WHERE keyspace_name = ?"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
         1: .line 204
            ldc "system"
            aastore
            dup
            iconst_1
         2: .line 205
            ldc "schema_keyspaces"
            aastore
         3: .line 203
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 1 /* query */
        start local 1 // java.lang.String query
         4: .line 206
            aload 1 /* query */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* keyspaceName */
            aastore
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.query:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/apache/cassandra/cql3/UntypedResultSet;
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet.one:()Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
            ldc "timestamp"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getLong:(Ljava/lang/String;)J
            lreturn
        end local 1 // java.lang.String query
        end local 0 // java.lang.String keyspaceName
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0  keyspaceName  Ljava/lang/String;
            4    5     1         query  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      keyspaceName  

  private static org.apache.cassandra.schema.KeyspaceParams readKeyspaceParams(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/apache/cassandra/schema/KeyspaceParams;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // java.lang.String keyspaceName
         0: .line 211
            ldc "SELECT * FROM %s.%s WHERE keyspace_name = ?"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
         1: .line 212
            ldc "system"
            aastore
            dup
            iconst_1
         2: .line 213
            ldc "schema_keyspaces"
            aastore
         3: .line 211
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 1 /* query */
        start local 1 // java.lang.String query
         4: .line 214
            aload 1 /* query */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* keyspaceName */
            aastore
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.query:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/apache/cassandra/cql3/UntypedResultSet;
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet.one:()Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
            astore 2 /* row */
        start local 2 // org.apache.cassandra.cql3.UntypedResultSet$Row row
         5: .line 216
            aload 2 /* row */
            ldc "durable_writes"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getBoolean:(Ljava/lang/String;)Z
            istore 3 /* durableWrites */
        start local 3 // boolean durableWrites
         6: .line 218
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 4 /* replication */
        start local 4 // java.util.Map replication
         7: .line 219
            aload 4 /* replication */
            aload 2 /* row */
            ldc "strategy_options"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic org.apache.cassandra.utils.FBUtilities.fromJsonMap:(Ljava/lang/String;)Ljava/util/Map;
            invokeinterface java.util.Map.putAll:(Ljava/util/Map;)V
         8: .line 220
            aload 4 /* replication */
            ldc "class"
            aload 2 /* row */
            ldc "strategy_class"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         9: .line 222
            iload 3 /* durableWrites */
            aload 4 /* replication */
            invokestatic org.apache.cassandra.schema.KeyspaceParams.create:(ZLjava/util/Map;)Lorg/apache/cassandra/schema/KeyspaceParams;
            areturn
        end local 4 // java.util.Map replication
        end local 3 // boolean durableWrites
        end local 2 // org.apache.cassandra.cql3.UntypedResultSet$Row row
        end local 1 // java.lang.String query
        end local 0 // java.lang.String keyspaceName
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   10     0   keyspaceName  Ljava/lang/String;
            4   10     1          query  Ljava/lang/String;
            5   10     2            row  Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
            6   10     3  durableWrites  Z
            7   10     4    replication  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
    MethodParameters:
              Name  Flags
      keyspaceName  

  private static java.util.Collection<org.apache.cassandra.schema.LegacySchemaMigrator$Table> readTables(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/Collection;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // java.lang.String keyspaceName
         0: .line 231
            ldc "SELECT columnfamily_name FROM %s.%s WHERE keyspace_name = ?"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
         1: .line 232
            ldc "system"
            aastore
            dup
            iconst_1
         2: .line 233
            ldc "schema_columnfamilies"
            aastore
         3: .line 231
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 1 /* query */
        start local 1 // java.lang.String query
         4: .line 234
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* tableNames */
        start local 2 // java.util.Collection tableNames
         5: .line 235
            aload 1 /* query */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* keyspaceName */
            aastore
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.query:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/apache/cassandra/cql3/UntypedResultSet;
            aload 2 /* tableNames */
            invokedynamic accept(Ljava/util/Collection;)Ljava/util/function/Consumer;
              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;)V
                  org/apache/cassandra/schema/LegacySchemaMigrator.lambda$10(Ljava/util/Collection;Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)V (6)
                  (Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)V
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet.forEach:(Ljava/util/function/Consumer;)V
         6: .line 237
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* tables */
        start local 3 // java.util.Collection tables
         7: .line 238
            aload 2 /* tableNames */
            aload 3 /* tables */
            aload 0 /* keyspaceName */
            invokedynamic accept(Ljava/util/Collection;Ljava/lang/String;)Ljava/util/function/Consumer;
              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;)V
                  org/apache/cassandra/schema/LegacySchemaMigrator.lambda$11(Ljava/util/Collection;Ljava/lang/String;Ljava/lang/String;)V (6)
                  (Ljava/lang/String;)V
            invokeinterface java.util.Collection.forEach:(Ljava/util/function/Consumer;)V
         8: .line 239
            aload 3 /* tables */
            areturn
        end local 3 // java.util.Collection tables
        end local 2 // java.util.Collection tableNames
        end local 1 // java.lang.String query
        end local 0 // java.lang.String keyspaceName
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    9     0  keyspaceName  Ljava/lang/String;
            4    9     1         query  Ljava/lang/String;
            5    9     2    tableNames  Ljava/util/Collection<Ljava/lang/String;>;
            7    9     3        tables  Ljava/util/Collection<Lorg/apache/cassandra/schema/LegacySchemaMigrator$Table;>;
    Signature: (Ljava/lang/String;)Ljava/util/Collection<Lorg/apache/cassandra/schema/LegacySchemaMigrator$Table;>;
    MethodParameters:
              Name  Flags
      keyspaceName  

  private static org.apache.cassandra.schema.LegacySchemaMigrator$Table readTable(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Lorg/apache/cassandra/schema/LegacySchemaMigrator$Table;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // java.lang.String keyspaceName
        start local 1 // java.lang.String tableName
         0: .line 244
            aload 0 /* keyspaceName */
            aload 1 /* tableName */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.readTableTimestamp:(Ljava/lang/String;Ljava/lang/String;)J
            lstore 2 /* timestamp */
        start local 2 // long timestamp
         1: .line 245
            aload 0 /* keyspaceName */
            aload 1 /* tableName */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.readTableMetadata:(Ljava/lang/String;Ljava/lang/String;)Lorg/apache/cassandra/config/CFMetaData;
            astore 4 /* metadata */
        start local 4 // org.apache.cassandra.config.CFMetaData metadata
         2: .line 246
            new org.apache.cassandra.schema.LegacySchemaMigrator$Table
            dup
            lload 2 /* timestamp */
            aload 4 /* metadata */
            invokespecial org.apache.cassandra.schema.LegacySchemaMigrator$Table.<init>:(JLorg/apache/cassandra/config/CFMetaData;)V
            areturn
        end local 4 // org.apache.cassandra.config.CFMetaData metadata
        end local 2 // long timestamp
        end local 1 // java.lang.String tableName
        end local 0 // java.lang.String keyspaceName
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0  keyspaceName  Ljava/lang/String;
            0    3     1     tableName  Ljava/lang/String;
            1    3     2     timestamp  J
            2    3     4      metadata  Lorg/apache/cassandra/config/CFMetaData;
    MethodParameters:
              Name  Flags
      keyspaceName  
      tableName     

  private static long readTableTimestamp(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)J
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // java.lang.String keyspaceName
        start local 1 // java.lang.String tableName
         0: .line 251
            ldc "SELECT writeTime(type) AS timestamp FROM %s.%s WHERE keyspace_name = ? AND columnfamily_name = ?"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
         1: .line 252
            ldc "system"
            aastore
            dup
            iconst_1
         2: .line 253
            ldc "schema_columnfamilies"
            aastore
         3: .line 251
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 2 /* query */
        start local 2 // java.lang.String query
         4: .line 254
            aload 2 /* query */
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* keyspaceName */
            aastore
            dup
            iconst_1
            aload 1 /* tableName */
            aastore
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.query:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/apache/cassandra/cql3/UntypedResultSet;
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet.one:()Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
            ldc "timestamp"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getLong:(Ljava/lang/String;)J
            lreturn
        end local 2 // java.lang.String query
        end local 1 // java.lang.String tableName
        end local 0 // java.lang.String keyspaceName
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0  keyspaceName  Ljava/lang/String;
            0    5     1     tableName  Ljava/lang/String;
            4    5     2         query  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      keyspaceName  
      tableName     

  private static org.apache.cassandra.config.CFMetaData readTableMetadata(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Lorg/apache/cassandra/config/CFMetaData;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=8, args_size=2
        start local 0 // java.lang.String keyspaceName
        start local 1 // java.lang.String tableName
         0: .line 259
            ldc "SELECT * FROM %s.%s WHERE keyspace_name = ? AND columnfamily_name = ?"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
         1: .line 260
            ldc "system"
            aastore
            dup
            iconst_1
         2: .line 261
            ldc "schema_columnfamilies"
            aastore
         3: .line 259
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 2 /* tableQuery */
        start local 2 // java.lang.String tableQuery
         4: .line 262
            aload 2 /* tableQuery */
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* keyspaceName */
            aastore
            dup
            iconst_1
            aload 1 /* tableName */
            aastore
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.query:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/apache/cassandra/cql3/UntypedResultSet;
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet.one:()Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
            astore 3 /* tableRow */
        start local 3 // org.apache.cassandra.cql3.UntypedResultSet$Row tableRow
         5: .line 264
            ldc "SELECT * FROM %s.%s WHERE keyspace_name = ? AND columnfamily_name = ?"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
         6: .line 265
            ldc "system"
            aastore
            dup
            iconst_1
         7: .line 266
            ldc "schema_columns"
            aastore
         8: .line 264
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 4 /* columnsQuery */
        start local 4 // java.lang.String columnsQuery
         9: .line 267
            aload 4 /* columnsQuery */
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* keyspaceName */
            aastore
            dup
            iconst_1
            aload 1 /* tableName */
            aastore
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.query:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/apache/cassandra/cql3/UntypedResultSet;
            astore 5 /* columnRows */
        start local 5 // org.apache.cassandra.cql3.UntypedResultSet columnRows
        10: .line 269
            ldc "SELECT * FROM %s.%s WHERE keyspace_name = ? AND columnfamily_name = ?"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
        11: .line 270
            ldc "system"
            aastore
            dup
            iconst_1
        12: .line 271
            ldc "schema_triggers"
            aastore
        13: .line 269
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 6 /* triggersQuery */
        start local 6 // java.lang.String triggersQuery
        14: .line 272
            aload 6 /* triggersQuery */
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* keyspaceName */
            aastore
            dup
            iconst_1
            aload 1 /* tableName */
            aastore
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.query:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/apache/cassandra/cql3/UntypedResultSet;
            astore 7 /* triggerRows */
        start local 7 // org.apache.cassandra.cql3.UntypedResultSet triggerRows
        15: .line 274
            aload 1 /* tableName */
            aload 3 /* tableRow */
            aload 5 /* columnRows */
            aload 7 /* triggerRows */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.decodeTableMetadata:(Ljava/lang/String;Lorg/apache/cassandra/cql3/UntypedResultSet$Row;Lorg/apache/cassandra/cql3/UntypedResultSet;Lorg/apache/cassandra/cql3/UntypedResultSet;)Lorg/apache/cassandra/config/CFMetaData;
            areturn
        end local 7 // org.apache.cassandra.cql3.UntypedResultSet triggerRows
        end local 6 // java.lang.String triggersQuery
        end local 5 // org.apache.cassandra.cql3.UntypedResultSet columnRows
        end local 4 // java.lang.String columnsQuery
        end local 3 // org.apache.cassandra.cql3.UntypedResultSet$Row tableRow
        end local 2 // java.lang.String tableQuery
        end local 1 // java.lang.String tableName
        end local 0 // java.lang.String keyspaceName
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   16     0   keyspaceName  Ljava/lang/String;
            0   16     1      tableName  Ljava/lang/String;
            4   16     2     tableQuery  Ljava/lang/String;
            5   16     3       tableRow  Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
            9   16     4   columnsQuery  Ljava/lang/String;
           10   16     5     columnRows  Lorg/apache/cassandra/cql3/UntypedResultSet;
           14   16     6  triggersQuery  Ljava/lang/String;
           15   16     7    triggerRows  Lorg/apache/cassandra/cql3/UntypedResultSet;
    MethodParameters:
              Name  Flags
      keyspaceName  
      tableName     

  private static org.apache.cassandra.config.CFMetaData decodeTableMetadata(java.lang.String, org.apache.cassandra.cql3.UntypedResultSet$Row, org.apache.cassandra.cql3.UntypedResultSet, org.apache.cassandra.cql3.UntypedResultSet);
    descriptor: (Ljava/lang/String;Lorg/apache/cassandra/cql3/UntypedResultSet$Row;Lorg/apache/cassandra/cql3/UntypedResultSet;Lorg/apache/cassandra/cql3/UntypedResultSet;)Lorg/apache/cassandra/config/CFMetaData;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=10, locals=22, args_size=4
        start local 0 // java.lang.String tableName
        start local 1 // org.apache.cassandra.cql3.UntypedResultSet$Row tableRow
        start local 2 // org.apache.cassandra.cql3.UntypedResultSet columnRows
        start local 3 // org.apache.cassandra.cql3.UntypedResultSet triggerRows
         0: .line 282
            aload 1 /* tableRow */
            ldc "keyspace_name"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* ksName */
        start local 4 // java.lang.String ksName
         1: .line 283
            aload 1 /* tableRow */
            ldc "columnfamily_name"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            astore 5 /* cfName */
        start local 5 // java.lang.String cfName
         2: .line 285
            aload 1 /* tableRow */
            ldc "comparator"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic org.apache.cassandra.db.marshal.TypeParser.parse:(Ljava/lang/String;)Lorg/apache/cassandra/db/marshal/AbstractType;
            astore 6 /* rawComparator */
        start local 6 // org.apache.cassandra.db.marshal.AbstractType rawComparator
         3: .line 286
            aload 1 /* tableRow */
            ldc "subcomparator"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.has:(Ljava/lang/String;)Z
            ifeq 4
            aload 1 /* tableRow */
            ldc "subcomparator"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic org.apache.cassandra.db.marshal.TypeParser.parse:(Ljava/lang/String;)Lorg/apache/cassandra/db/marshal/AbstractType;
            goto 5
      StackMap locals: java.lang.String java.lang.String org.apache.cassandra.db.marshal.AbstractType
      StackMap stack:
         4: aconst_null
      StackMap locals:
      StackMap stack: org.apache.cassandra.db.marshal.AbstractType
         5: astore 7 /* subComparator */
        start local 7 // org.apache.cassandra.db.marshal.AbstractType subComparator
         6: .line 288
            ldc "super"
            aload 1 /* tableRow */
            ldc "type"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            istore 8 /* isSuper */
        start local 8 // boolean isSuper
         7: .line 289
            aload 6 /* rawComparator */
            instanceof org.apache.cassandra.db.marshal.CompositeType
            ifne 8
            iload 8 /* isSuper */
            ifne 8
            iconst_0
            goto 9
      StackMap locals: org.apache.cassandra.db.marshal.AbstractType int
      StackMap stack:
         8: iconst_1
      StackMap locals:
      StackMap stack: int
         9: istore 9 /* isCompound */
        start local 9 // boolean isCompound
        10: .line 296
            aload 1 /* tableRow */
            ldc "is_dense"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.has:(Ljava/lang/String;)Z
            ifeq 11
            aload 1 /* tableRow */
            ldc "is_dense"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getBoolean:(Ljava/lang/String;)Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            goto 12
      StackMap locals: int
      StackMap stack:
        11: aconst_null
      StackMap locals:
      StackMap stack: java.lang.Boolean
        12: astore 10 /* rawIsDense */
        start local 10 // java.lang.Boolean rawIsDense
        13: .line 298
            aload 10 /* rawIsDense */
            ifnull 16
            aload 10 /* rawIsDense */
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifne 16
        14: .line 299
            iconst_0
            istore 11 /* isDense */
        start local 11 // boolean isDense
        15: goto 17
        end local 11 // boolean isDense
        16: .line 301
      StackMap locals: java.lang.Boolean
      StackMap stack:
            aload 6 /* rawComparator */
            aload 2 /* columnRows */
            iload 8 /* isSuper */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.calculateIsDense:(Lorg/apache/cassandra/db/marshal/AbstractType;Lorg/apache/cassandra/cql3/UntypedResultSet;Z)Z
            istore 11 /* isDense */
        start local 11 // boolean isDense
        17: .line 305
      StackMap locals: int
      StackMap stack:
            iload 11 /* isDense */
            ifne 19
            aload 10 /* rawIsDense */
            ifnull 18
            aload 10 /* rawIsDense */
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 19
        18: .line 306
      StackMap locals:
      StackMap stack:
            aload 2 /* columnRows */
            iload 8 /* isSuper */
            iload 9 /* isCompound */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.filterOutRedundantRowsForSparse:(Lorg/apache/cassandra/cql3/UntypedResultSet;ZZ)Ljava/lang/Iterable;
            goto 20
        19: .line 307
      StackMap locals:
      StackMap stack:
            aload 2 /* columnRows */
        20: .line 305
      StackMap locals:
      StackMap stack: java.lang.Iterable
            astore 12 /* filteredColumnRows */
        start local 12 // java.lang.Iterable filteredColumnRows
        21: .line 310
            aload 1 /* tableRow */
            ldc "default_validator"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic org.apache.cassandra.db.marshal.TypeParser.parse:(Ljava/lang/String;)Lorg/apache/cassandra/db/marshal/AbstractType;
            astore 13 /* defaultValidator */
        start local 13 // org.apache.cassandra.db.marshal.AbstractType defaultValidator
        22: .line 311
            aload 13 /* defaultValidator */
            instanceof org.apache.cassandra.db.marshal.CounterColumnType
            istore 14 /* isCounter */
        start local 14 // boolean isCounter
        23: .line 320
            aload 1 /* tableRow */
            ldc "cf_id"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.has:(Ljava/lang/String;)Z
            ifeq 25
        24: .line 321
            aload 1 /* tableRow */
            ldc "cf_id"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getUUID:(Ljava/lang/String;)Ljava/util/UUID;
            goto 26
        25: .line 322
      StackMap locals: java.lang.Iterable org.apache.cassandra.db.marshal.AbstractType int
      StackMap stack:
            aload 4 /* ksName */
            aload 5 /* cfName */
            invokestatic org.apache.cassandra.config.CFMetaData.generateLegacyCfId:(Ljava/lang/String;Ljava/lang/String;)Ljava/util/UUID;
        26: .line 320
      StackMap locals:
      StackMap stack: java.util.UUID
            astore 15 /* cfId */
        start local 15 // java.util.UUID cfId
        27: .line 324
            iload 8 /* isSuper */
            ifne 28
            iload 11 /* isDense */
            ifne 28
            iload 9 /* isCompound */
            ifeq 28
            iconst_1
            goto 29
      StackMap locals: java.util.UUID
      StackMap stack:
        28: iconst_0
      StackMap locals:
      StackMap stack: int
        29: istore 16 /* isCQLTable */
        start local 16 // boolean isCQLTable
        30: .line 325
            iload 11 /* isDense */
            ifne 31
            iload 9 /* isCompound */
            ifne 31
            iconst_1
            goto 32
      StackMap locals: int
      StackMap stack:
        31: iconst_0
      StackMap locals:
      StackMap stack: int
        32: istore 17 /* isStaticCompactTable */
        start local 17 // boolean isStaticCompactTable
        33: .line 331
            iload 16 /* isCQLTable */
            ifne 34
            aload 12 /* filteredColumnRows */
            iload 8 /* isSuper */
            iload 17 /* isStaticCompactTable */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.checkNeedsUpgrade:(Ljava/lang/Iterable;ZZ)Z
            ifeq 34
            iconst_1
            goto 35
      StackMap locals: int
      StackMap stack:
        34: iconst_0
      StackMap locals:
      StackMap stack: int
        35: istore 18 /* needsUpgrade */
        start local 18 // boolean needsUpgrade
        36: .line 333
            aload 12 /* filteredColumnRows */
        37: .line 334
            aload 4 /* ksName */
        38: .line 335
            aload 5 /* cfName */
        39: .line 336
            aload 6 /* rawComparator */
        40: .line 337
            aload 7 /* subComparator */
        41: .line 338
            iload 8 /* isSuper */
        42: .line 339
            iload 16 /* isCQLTable */
        43: .line 340
            iload 17 /* isStaticCompactTable */
        44: .line 341
            iload 18 /* needsUpgrade */
        45: .line 333
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.createColumnsFromColumnRows:(Ljava/lang/Iterable;Ljava/lang/String;Ljava/lang/String;Lorg/apache/cassandra/db/marshal/AbstractType;Lorg/apache/cassandra/db/marshal/AbstractType;ZZZZ)Ljava/util/List;
            astore 19 /* columnDefs */
        start local 19 // java.util.List columnDefs
        46: .line 343
            iload 18 /* needsUpgrade */
            ifeq 56
        47: .line 345
            aload 19 /* columnDefs */
        48: .line 346
            aload 4 /* ksName */
        49: .line 347
            aload 5 /* cfName */
        50: .line 348
            iload 17 /* isStaticCompactTable */
        51: .line 349
            iload 8 /* isSuper */
        52: .line 350
            aload 6 /* rawComparator */
        53: .line 351
            aload 7 /* subComparator */
        54: .line 352
            aload 13 /* defaultValidator */
        55: .line 345
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.addDefinitionForUpgrade:(Ljava/util/List;Ljava/lang/String;Ljava/lang/String;ZZLorg/apache/cassandra/db/marshal/AbstractType;Lorg/apache/cassandra/db/marshal/AbstractType;Lorg/apache/cassandra/db/marshal/AbstractType;)V
        56: .line 355
      StackMap locals: int java.util.List
      StackMap stack:
            aload 4 /* ksName */
        57: .line 356
            aload 5 /* cfName */
        58: .line 357
            aload 15 /* cfId */
        59: .line 358
            iload 11 /* isDense */
        60: .line 359
            iload 9 /* isCompound */
        61: .line 360
            iload 8 /* isSuper */
        62: .line 361
            iload 14 /* isCounter */
        63: .line 362
            iconst_0
        64: .line 363
            aload 19 /* columnDefs */
        65: .line 364
            invokestatic org.apache.cassandra.config.DatabaseDescriptor.getPartitioner:()Lorg/apache/cassandra/dht/IPartitioner;
        66: .line 355
            invokestatic org.apache.cassandra.config.CFMetaData.create:(Ljava/lang/String;Ljava/lang/String;Ljava/util/UUID;ZZZZZLjava/util/List;Lorg/apache/cassandra/dht/IPartitioner;)Lorg/apache/cassandra/config/CFMetaData;
            astore 20 /* cfm */
        start local 20 // org.apache.cassandra.config.CFMetaData cfm
        67: .line 366
            aload 20 /* cfm */
        68: .line 367
            aload 12 /* filteredColumnRows */
        69: .line 368
            aload 4 /* ksName */
        70: .line 369
            aload 5 /* cfName */
        71: .line 370
            aload 6 /* rawComparator */
        72: .line 371
            aload 7 /* subComparator */
        73: .line 372
            iload 8 /* isSuper */
        74: .line 373
            iload 16 /* isCQLTable */
        75: .line 374
            iload 17 /* isStaticCompactTable */
        76: .line 375
            iload 18 /* needsUpgrade */
        77: .line 366
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.createIndexesFromColumnRows:(Lorg/apache/cassandra/config/CFMetaData;Ljava/lang/Iterable;Ljava/lang/String;Ljava/lang/String;Lorg/apache/cassandra/db/marshal/AbstractType;Lorg/apache/cassandra/db/marshal/AbstractType;ZZZZ)Lorg/apache/cassandra/schema/Indexes;
            astore 21 /* indexes */
        start local 21 // org.apache.cassandra.schema.Indexes indexes
        78: .line 376
            aload 20 /* cfm */
            aload 21 /* indexes */
            invokevirtual org.apache.cassandra.config.CFMetaData.indexes:(Lorg/apache/cassandra/schema/Indexes;)Lorg/apache/cassandra/config/CFMetaData;
            pop
        79: .line 378
            aload 1 /* tableRow */
            ldc "dropped_columns"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.has:(Ljava/lang/String;)Z
            ifeq 81
        80: .line 379
            aload 20 /* cfm */
            aload 6 /* rawComparator */
            aload 1 /* tableRow */
            ldc "dropped_columns"
            getstatic org.apache.cassandra.db.marshal.UTF8Type.instance:Lorg/apache/cassandra/db/marshal/UTF8Type;
            getstatic org.apache.cassandra.db.marshal.LongType.instance:Lorg/apache/cassandra/db/marshal/LongType;
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getMap:(Ljava/lang/String;Lorg/apache/cassandra/db/marshal/AbstractType;Lorg/apache/cassandra/db/marshal/AbstractType;)Ljava/util/Map;
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.addDroppedColumns:(Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/db/marshal/AbstractType;Ljava/util/Map;)V
        81: .line 381
      StackMap locals: org.apache.cassandra.config.CFMetaData org.apache.cassandra.schema.Indexes
      StackMap stack:
            aload 20 /* cfm */
            aload 1 /* tableRow */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.decodeTableParams:(Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)Lorg/apache/cassandra/schema/TableParams;
            invokevirtual org.apache.cassandra.config.CFMetaData.params:(Lorg/apache/cassandra/schema/TableParams;)Lorg/apache/cassandra/config/CFMetaData;
        82: .line 382
            aload 3 /* triggerRows */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.createTriggersFromTriggerRows:(Lorg/apache/cassandra/cql3/UntypedResultSet;)Lorg/apache/cassandra/schema/Triggers;
            invokevirtual org.apache.cassandra.config.CFMetaData.triggers:(Lorg/apache/cassandra/schema/Triggers;)Lorg/apache/cassandra/config/CFMetaData;
        83: .line 381
            areturn
        end local 21 // org.apache.cassandra.schema.Indexes indexes
        end local 20 // org.apache.cassandra.config.CFMetaData cfm
        end local 19 // java.util.List columnDefs
        end local 18 // boolean needsUpgrade
        end local 17 // boolean isStaticCompactTable
        end local 16 // boolean isCQLTable
        end local 15 // java.util.UUID cfId
        end local 14 // boolean isCounter
        end local 13 // org.apache.cassandra.db.marshal.AbstractType defaultValidator
        end local 12 // java.lang.Iterable filteredColumnRows
        end local 11 // boolean isDense
        end local 10 // java.lang.Boolean rawIsDense
        end local 9 // boolean isCompound
        end local 8 // boolean isSuper
        end local 7 // org.apache.cassandra.db.marshal.AbstractType subComparator
        end local 6 // org.apache.cassandra.db.marshal.AbstractType rawComparator
        end local 5 // java.lang.String cfName
        end local 4 // java.lang.String ksName
        end local 3 // org.apache.cassandra.cql3.UntypedResultSet triggerRows
        end local 2 // org.apache.cassandra.cql3.UntypedResultSet columnRows
        end local 1 // org.apache.cassandra.cql3.UntypedResultSet$Row tableRow
        end local 0 // java.lang.String tableName
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   84     0             tableName  Ljava/lang/String;
            0   84     1              tableRow  Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
            0   84     2            columnRows  Lorg/apache/cassandra/cql3/UntypedResultSet;
            0   84     3           triggerRows  Lorg/apache/cassandra/cql3/UntypedResultSet;
            1   84     4                ksName  Ljava/lang/String;
            2   84     5                cfName  Ljava/lang/String;
            3   84     6         rawComparator  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
            6   84     7         subComparator  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
            7   84     8               isSuper  Z
           10   84     9            isCompound  Z
           13   84    10            rawIsDense  Ljava/lang/Boolean;
           15   16    11               isDense  Z
           17   84    11               isDense  Z
           21   84    12    filteredColumnRows  Ljava/lang/Iterable<Lorg/apache/cassandra/cql3/UntypedResultSet$Row;>;
           22   84    13      defaultValidator  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
           23   84    14             isCounter  Z
           27   84    15                  cfId  Ljava/util/UUID;
           30   84    16            isCQLTable  Z
           33   84    17  isStaticCompactTable  Z
           36   84    18          needsUpgrade  Z
           46   84    19            columnDefs  Ljava/util/List<Lorg/apache/cassandra/config/ColumnDefinition;>;
           67   84    20                   cfm  Lorg/apache/cassandra/config/CFMetaData;
           78   84    21               indexes  Lorg/apache/cassandra/schema/Indexes;
    MethodParameters:
             Name  Flags
      tableName    
      tableRow     
      columnRows   
      triggerRows  

  private static boolean calculateIsDense(org.apache.cassandra.db.marshal.AbstractType<?>, org.apache.cassandra.cql3.UntypedResultSet, );
    descriptor: (Lorg/apache/cassandra/db/marshal/AbstractType;Lorg/apache/cassandra/cql3/UntypedResultSet;Z)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // org.apache.cassandra.db.marshal.AbstractType comparator
        start local 1 // org.apache.cassandra.cql3.UntypedResultSet columnRows
        start local 2 // boolean isSuper
         0: .line 414
            aload 1 /* columnRows */
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet.iterator:()Ljava/util/Iterator;
            astore 4
            goto 4
      StackMap locals: org.apache.cassandra.db.marshal.AbstractType org.apache.cassandra.cql3.UntypedResultSet int top java.util.Iterator
      StackMap stack:
         1: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.cql3.UntypedResultSet$Row
            astore 3 /* columnRow */
        start local 3 // org.apache.cassandra.cql3.UntypedResultSet$Row columnRow
         2: .line 416
            ldc "regular"
            aload 3 /* columnRow */
            ldc "type"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 417
            iconst_0
            ireturn
        end local 3 // org.apache.cassandra.cql3.UntypedResultSet$Row columnRow
         4: .line 414
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 422
            iload 2 /* isSuper */
            ifeq 7
         6: .line 423
            iconst_1
            ireturn
         7: .line 425
      StackMap locals: org.apache.cassandra.db.marshal.AbstractType org.apache.cassandra.cql3.UntypedResultSet int
      StackMap stack:
            iconst_m1
            istore 3 /* maxClusteringIdx */
        start local 3 // int maxClusteringIdx
         8: .line 426
            aload 1 /* columnRows */
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet.iterator:()Ljava/util/Iterator;
            astore 5
            goto 14
      StackMap locals: org.apache.cassandra.db.marshal.AbstractType org.apache.cassandra.cql3.UntypedResultSet int int top java.util.Iterator
      StackMap stack:
         9: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.cql3.UntypedResultSet$Row
            astore 4 /* columnRow */
        start local 4 // org.apache.cassandra.cql3.UntypedResultSet$Row columnRow
        10: .line 427
            ldc "clustering_key"
            aload 4 /* columnRow */
            ldc "type"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 14
        11: .line 428
            iload 3 /* maxClusteringIdx */
            aload 4 /* columnRow */
            ldc "component_index"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.has:(Ljava/lang/String;)Z
            ifeq 12
            aload 4 /* columnRow */
            ldc "component_index"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getInt:(Ljava/lang/String;)I
            goto 13
      StackMap locals: org.apache.cassandra.db.marshal.AbstractType org.apache.cassandra.cql3.UntypedResultSet int int org.apache.cassandra.cql3.UntypedResultSet$Row java.util.Iterator
      StackMap stack: int
        12: iconst_0
      StackMap locals: org.apache.cassandra.db.marshal.AbstractType org.apache.cassandra.cql3.UntypedResultSet int int org.apache.cassandra.cql3.UntypedResultSet$Row java.util.Iterator
      StackMap stack: int int
        13: invokestatic java.lang.Math.max:(II)I
            istore 3 /* maxClusteringIdx */
        end local 4 // org.apache.cassandra.cql3.UntypedResultSet$Row columnRow
        14: .line 426
      StackMap locals: org.apache.cassandra.db.marshal.AbstractType org.apache.cassandra.cql3.UntypedResultSet int int top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        15: .line 430
            iload 3 /* maxClusteringIdx */
            iflt 18
        16: .line 431
            iload 3 /* maxClusteringIdx */
            aload 0 /* comparator */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.componentsCount:()I
            iconst_1
            isub
            if_icmpne 17
            iconst_1
            goto 20
      StackMap locals: org.apache.cassandra.db.marshal.AbstractType org.apache.cassandra.cql3.UntypedResultSet int int
      StackMap stack:
        17: iconst_0
            goto 20
        18: .line 432
      StackMap locals:
      StackMap stack:
            aload 0 /* comparator */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.isCQL3OnlyPKComparator:(Lorg/apache/cassandra/db/marshal/AbstractType;)Z
            ifeq 19
            iconst_0
            goto 20
      StackMap locals:
      StackMap stack:
        19: iconst_1
        20: .line 430
      StackMap locals:
      StackMap stack: int
            ireturn
        end local 3 // int maxClusteringIdx
        end local 2 // boolean isSuper
        end local 1 // org.apache.cassandra.cql3.UntypedResultSet columnRows
        end local 0 // org.apache.cassandra.db.marshal.AbstractType comparator
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   21     0        comparator  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
            0   21     1        columnRows  Lorg/apache/cassandra/cql3/UntypedResultSet;
            0   21     2           isSuper  Z
            2    4     3         columnRow  Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
            8   21     3  maxClusteringIdx  I
           10   14     4         columnRow  Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
    Signature: (Lorg/apache/cassandra/db/marshal/AbstractType<*>;Lorg/apache/cassandra/cql3/UntypedResultSet;Z)Z
    MethodParameters:
            Name  Flags
      comparator  
      columnRows  
      isSuper     

  private static java.lang.Iterable<org.apache.cassandra.cql3.UntypedResultSet$Row> filterOutRedundantRowsForSparse(org.apache.cassandra.cql3.UntypedResultSet, boolean, boolean);
    descriptor: (Lorg/apache/cassandra/cql3/UntypedResultSet;ZZ)Ljava/lang/Iterable;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=7, args_size=3
        start local 0 // org.apache.cassandra.cql3.UntypedResultSet columnRows
        start local 1 // boolean isSuper
        start local 2 // boolean isCompound
         0: .line 437
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* filteredRows */
        start local 3 // java.util.Collection filteredRows
         1: .line 438
            aload 0 /* columnRows */
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet.iterator:()Ljava/util/Iterator;
            astore 5
            goto 9
      StackMap locals: org.apache.cassandra.cql3.UntypedResultSet int int java.util.Collection top java.util.Iterator
      StackMap stack:
         2: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.cql3.UntypedResultSet$Row
            astore 4 /* columnRow */
        start local 4 // org.apache.cassandra.cql3.UntypedResultSet$Row columnRow
         3: .line 440
            aload 4 /* columnRow */
            ldc "type"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            astore 6 /* kind */
        start local 6 // java.lang.String kind
         4: .line 442
            iload 1 /* isSuper */
            ifne 6
            ldc "compact_value"
            aload 6 /* kind */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 6
         5: .line 443
            goto 9
         6: .line 445
      StackMap locals: org.apache.cassandra.cql3.UntypedResultSet int int java.util.Collection org.apache.cassandra.cql3.UntypedResultSet$Row java.util.Iterator java.lang.String
      StackMap stack:
            ldc "clustering_key"
            aload 6 /* kind */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
            iload 1 /* isSuper */
            ifne 8
            iload 2 /* isCompound */
            ifne 8
         7: .line 446
            goto 9
         8: .line 448
      StackMap locals:
      StackMap stack:
            aload 3 /* filteredRows */
            aload 4 /* columnRow */
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
        end local 6 // java.lang.String kind
        end local 4 // org.apache.cassandra.cql3.UntypedResultSet$Row columnRow
         9: .line 438
      StackMap locals: org.apache.cassandra.cql3.UntypedResultSet int int java.util.Collection top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        10: .line 451
            aload 3 /* filteredRows */
            areturn
        end local 3 // java.util.Collection filteredRows
        end local 2 // boolean isCompound
        end local 1 // boolean isSuper
        end local 0 // org.apache.cassandra.cql3.UntypedResultSet columnRows
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   11     0    columnRows  Lorg/apache/cassandra/cql3/UntypedResultSet;
            0   11     1       isSuper  Z
            0   11     2    isCompound  Z
            1   11     3  filteredRows  Ljava/util/Collection<Lorg/apache/cassandra/cql3/UntypedResultSet$Row;>;
            3    9     4     columnRow  Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
            4    9     6          kind  Ljava/lang/String;
    Signature: (Lorg/apache/cassandra/cql3/UntypedResultSet;ZZ)Ljava/lang/Iterable<Lorg/apache/cassandra/cql3/UntypedResultSet$Row;>;
    MethodParameters:
            Name  Flags
      columnRows  
      isSuper     
      isCompound  

  private static boolean isCQL3OnlyPKComparator(org.apache.cassandra.db.marshal.AbstractType<?>);
    descriptor: (Lorg/apache/cassandra/db/marshal/AbstractType;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.apache.cassandra.db.marshal.AbstractType comparator
         0: .line 456
            aload 0 /* comparator */
            instanceof org.apache.cassandra.db.marshal.CompositeType
            ifne 2
         1: .line 457
            iconst_0
            ireturn
         2: .line 459
      StackMap locals:
      StackMap stack:
            aload 0 /* comparator */
            checkcast org.apache.cassandra.db.marshal.CompositeType
            astore 1 /* ct */
        start local 1 // org.apache.cassandra.db.marshal.CompositeType ct
         3: .line 460
            aload 1 /* ct */
            getfield org.apache.cassandra.db.marshal.CompositeType.types:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_1
            if_icmpne 4
            aload 1 /* ct */
            getfield org.apache.cassandra.db.marshal.CompositeType.types:Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            instanceof org.apache.cassandra.db.marshal.UTF8Type
            ifeq 4
            iconst_1
            ireturn
      StackMap locals: org.apache.cassandra.db.marshal.CompositeType
      StackMap stack:
         4: iconst_0
            ireturn
        end local 1 // org.apache.cassandra.db.marshal.CompositeType ct
        end local 0 // org.apache.cassandra.db.marshal.AbstractType comparator
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0  comparator  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
            3    5     1          ct  Lorg/apache/cassandra/db/marshal/CompositeType;
    Signature: (Lorg/apache/cassandra/db/marshal/AbstractType<*>;)Z
    MethodParameters:
            Name  Flags
      comparator  

  private static org.apache.cassandra.schema.TableParams decodeTableParams(org.apache.cassandra.cql3.UntypedResultSet$Row);
    descriptor: (Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)Lorg/apache/cassandra/schema/TableParams;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // org.apache.cassandra.cql3.UntypedResultSet$Row row
         0: .line 465
            invokestatic org.apache.cassandra.schema.TableParams.builder:()Lorg/apache/cassandra/schema/TableParams$Builder;
            astore 1 /* params */
        start local 1 // org.apache.cassandra.schema.TableParams$Builder params
         1: .line 467
            aload 1 /* params */
            aload 0 /* row */
            ldc "read_repair_chance"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getDouble:(Ljava/lang/String;)D
            invokevirtual org.apache.cassandra.schema.TableParams$Builder.readRepairChance:(D)Lorg/apache/cassandra/schema/TableParams$Builder;
         2: .line 468
            aload 0 /* row */
            ldc "local_read_repair_chance"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getDouble:(Ljava/lang/String;)D
            invokevirtual org.apache.cassandra.schema.TableParams$Builder.dcLocalReadRepairChance:(D)Lorg/apache/cassandra/schema/TableParams$Builder;
         3: .line 469
            aload 0 /* row */
            ldc "gc_grace_seconds"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getInt:(Ljava/lang/String;)I
            invokevirtual org.apache.cassandra.schema.TableParams$Builder.gcGraceSeconds:(I)Lorg/apache/cassandra/schema/TableParams$Builder;
            pop
         4: .line 471
            aload 0 /* row */
            ldc "comment"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.has:(Ljava/lang/String;)Z
            ifeq 6
         5: .line 472
            aload 1 /* params */
            aload 0 /* row */
            ldc "comment"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual org.apache.cassandra.schema.TableParams$Builder.comment:(Ljava/lang/String;)Lorg/apache/cassandra/schema/TableParams$Builder;
            pop
         6: .line 474
      StackMap locals: org.apache.cassandra.schema.TableParams$Builder
      StackMap stack:
            aload 0 /* row */
            ldc "memtable_flush_period_in_ms"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.has:(Ljava/lang/String;)Z
            ifeq 8
         7: .line 475
            aload 1 /* params */
            aload 0 /* row */
            ldc "memtable_flush_period_in_ms"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getInt:(Ljava/lang/String;)I
            invokevirtual org.apache.cassandra.schema.TableParams$Builder.memtableFlushPeriodInMs:(I)Lorg/apache/cassandra/schema/TableParams$Builder;
            pop
         8: .line 477
      StackMap locals:
      StackMap stack:
            aload 1 /* params */
            aload 0 /* row */
            ldc "caching"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.cachingFromRow:(Ljava/lang/String;)Lorg/apache/cassandra/schema/CachingParams;
            invokevirtual org.apache.cassandra.schema.TableParams$Builder.caching:(Lorg/apache/cassandra/schema/CachingParams;)Lorg/apache/cassandra/schema/TableParams$Builder;
            pop
         9: .line 479
            aload 0 /* row */
            ldc "default_time_to_live"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.has:(Ljava/lang/String;)Z
            ifeq 11
        10: .line 480
            aload 1 /* params */
            aload 0 /* row */
            ldc "default_time_to_live"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getInt:(Ljava/lang/String;)I
            invokevirtual org.apache.cassandra.schema.TableParams$Builder.defaultTimeToLive:(I)Lorg/apache/cassandra/schema/TableParams$Builder;
            pop
        11: .line 482
      StackMap locals:
      StackMap stack:
            aload 0 /* row */
            ldc "speculative_retry"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.has:(Ljava/lang/String;)Z
            ifeq 13
        12: .line 483
            aload 1 /* params */
            aload 0 /* row */
            ldc "speculative_retry"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic org.apache.cassandra.schema.SpeculativeRetryParam.fromString:(Ljava/lang/String;)Lorg/apache/cassandra/schema/SpeculativeRetryParam;
            invokevirtual org.apache.cassandra.schema.TableParams$Builder.speculativeRetry:(Lorg/apache/cassandra/schema/SpeculativeRetryParam;)Lorg/apache/cassandra/schema/TableParams$Builder;
            pop
        13: .line 485
      StackMap locals:
      StackMap stack:
            aload 0 /* row */
            ldc "compression_parameters"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic org.apache.cassandra.utils.FBUtilities.fromJsonMap:(Ljava/lang/String;)Ljava/util/Map;
            astore 2 /* compressionParameters */
        start local 2 // java.util.Map compressionParameters
        14: .line 486
            aload 2 /* compressionParameters */
            ldc "crc_check_chance"
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* crcCheckChance */
        start local 3 // java.lang.String crcCheckChance
        15: .line 488
            aload 3 /* crcCheckChance */
            ifnull 17
        16: .line 489
            aload 1 /* params */
            aload 3 /* crcCheckChance */
            invokestatic java.lang.Double.parseDouble:(Ljava/lang/String;)D
            invokevirtual org.apache.cassandra.schema.TableParams$Builder.crcCheckChance:(D)Lorg/apache/cassandra/schema/TableParams$Builder;
            pop
        17: .line 491
      StackMap locals: java.util.Map java.lang.String
      StackMap stack:
            aload 1 /* params */
            aload 2 /* compressionParameters */
            invokestatic org.apache.cassandra.schema.CompressionParams.fromMap:(Ljava/util/Map;)Lorg/apache/cassandra/schema/CompressionParams;
            invokevirtual org.apache.cassandra.schema.TableParams$Builder.compression:(Lorg/apache/cassandra/schema/CompressionParams;)Lorg/apache/cassandra/schema/TableParams$Builder;
            pop
        18: .line 493
            aload 1 /* params */
            aload 0 /* row */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.compactionFromRow:(Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)Lorg/apache/cassandra/schema/CompactionParams;
            invokevirtual org.apache.cassandra.schema.TableParams$Builder.compaction:(Lorg/apache/cassandra/schema/CompactionParams;)Lorg/apache/cassandra/schema/TableParams$Builder;
            pop
        19: .line 495
            aload 0 /* row */
            ldc "min_index_interval"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.has:(Ljava/lang/String;)Z
            ifeq 21
        20: .line 496
            aload 1 /* params */
            aload 0 /* row */
            ldc "min_index_interval"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getInt:(Ljava/lang/String;)I
            invokevirtual org.apache.cassandra.schema.TableParams$Builder.minIndexInterval:(I)Lorg/apache/cassandra/schema/TableParams$Builder;
            pop
        21: .line 498
      StackMap locals:
      StackMap stack:
            aload 0 /* row */
            ldc "max_index_interval"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.has:(Ljava/lang/String;)Z
            ifeq 23
        22: .line 499
            aload 1 /* params */
            aload 0 /* row */
            ldc "max_index_interval"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getInt:(Ljava/lang/String;)I
            invokevirtual org.apache.cassandra.schema.TableParams$Builder.maxIndexInterval:(I)Lorg/apache/cassandra/schema/TableParams$Builder;
            pop
        23: .line 501
      StackMap locals:
      StackMap stack:
            aload 0 /* row */
            ldc "bloom_filter_fp_chance"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.has:(Ljava/lang/String;)Z
            ifeq 25
        24: .line 502
            aload 1 /* params */
            aload 0 /* row */
            ldc "bloom_filter_fp_chance"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getDouble:(Ljava/lang/String;)D
            invokevirtual org.apache.cassandra.schema.TableParams$Builder.bloomFilterFpChance:(D)Lorg/apache/cassandra/schema/TableParams$Builder;
            pop
        25: .line 504
      StackMap locals:
      StackMap stack:
            aload 1 /* params */
            invokevirtual org.apache.cassandra.schema.TableParams$Builder.build:()Lorg/apache/cassandra/schema/TableParams;
            areturn
        end local 3 // java.lang.String crcCheckChance
        end local 2 // java.util.Map compressionParameters
        end local 1 // org.apache.cassandra.schema.TableParams$Builder params
        end local 0 // org.apache.cassandra.cql3.UntypedResultSet$Row row
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   26     0                    row  Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
            1   26     1                 params  Lorg/apache/cassandra/schema/TableParams$Builder;
           14   26     2  compressionParameters  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
           15   26     3         crcCheckChance  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      row   

  public static org.apache.cassandra.schema.CachingParams cachingFromRow(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/apache/cassandra/schema/CachingParams;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // java.lang.String caching
         0: .line 519
            aload 0 /* caching */
            dup
            astore 1
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 4
                64897: 1
              2402104: 2
            430478930: 3
           1724531479: 4
              default: 9
          }
      StackMap locals: java.lang.String
      StackMap stack:
         1: aload 1
            ldc "ALL"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 8
            goto 9
      StackMap locals:
      StackMap stack:
         2: aload 1
            ldc "NONE"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 5
            goto 9
      StackMap locals:
      StackMap stack:
         3: aload 1
            ldc "ROWS_ONLY"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 7
            goto 9
      StackMap locals:
      StackMap stack:
         4: aload 1
            ldc "KEYS_ONLY"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 6
            goto 9
         5: .line 522
      StackMap locals:
      StackMap stack:
            getstatic org.apache.cassandra.schema.CachingParams.CACHE_NOTHING:Lorg/apache/cassandra/schema/CachingParams;
            areturn
         6: .line 524
      StackMap locals:
      StackMap stack:
            getstatic org.apache.cassandra.schema.CachingParams.CACHE_KEYS:Lorg/apache/cassandra/schema/CachingParams;
            areturn
         7: .line 526
      StackMap locals:
      StackMap stack:
            new org.apache.cassandra.schema.CachingParams
            dup
            iconst_0
            ldc 2147483647
            invokespecial org.apache.cassandra.schema.CachingParams.<init>:(ZI)V
            areturn
         8: .line 528
      StackMap locals:
      StackMap stack:
            getstatic org.apache.cassandra.schema.CachingParams.CACHE_EVERYTHING:Lorg/apache/cassandra/schema/CachingParams;
            areturn
         9: .line 530
      StackMap locals:
      StackMap stack:
            aload 0 /* caching */
            invokestatic org.apache.cassandra.utils.FBUtilities.fromJsonMap:(Ljava/lang/String;)Ljava/util/Map;
            invokestatic org.apache.cassandra.schema.CachingParams.fromMap:(Ljava/util/Map;)Lorg/apache/cassandra/schema/CachingParams;
            areturn
        end local 0 // java.lang.String caching
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0  caching  Ljava/lang/String;
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.VisibleForTesting()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        com.google.common.annotations.VisibleForTesting()
    MethodParameters:
         Name  Flags
      caching  

  private static org.apache.cassandra.schema.CompactionParams compactionFromRow(org.apache.cassandra.cql3.UntypedResultSet$Row);
    descriptor: (Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)Lorg/apache/cassandra/schema/CompactionParams;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=7, args_size=1
        start local 0 // org.apache.cassandra.cql3.UntypedResultSet$Row row
         0: .line 545
            aload 0 /* row */
            ldc "compaction_strategy_class"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic org.apache.cassandra.config.CFMetaData.createCompactionStrategy:(Ljava/lang/String;)Ljava/lang/Class;
         1: .line 544
            astore 1 /* klass */
        start local 1 // java.lang.Class klass
         2: .line 546
            aload 0 /* row */
            ldc "compaction_strategy_options"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic org.apache.cassandra.utils.FBUtilities.fromJsonMap:(Ljava/lang/String;)Ljava/util/Map;
            astore 2 /* options */
        start local 2 // java.util.Map options
         3: .line 548
            aload 0 /* row */
            ldc "min_compaction_threshold"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getInt:(Ljava/lang/String;)I
            istore 3 /* minThreshold */
        start local 3 // int minThreshold
         4: .line 549
            aload 0 /* row */
            ldc "max_compaction_threshold"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getInt:(Ljava/lang/String;)I
            istore 4 /* maxThreshold */
        start local 4 // int maxThreshold
         5: .line 551
            new java.util.HashMap
            dup
            aload 2 /* options */
            invokespecial java.util.HashMap.<init>:(Ljava/util/Map;)V
            astore 5 /* optionsWithThresholds */
        start local 5 // java.util.Map optionsWithThresholds
         6: .line 552
            aload 5 /* optionsWithThresholds */
            getstatic org.apache.cassandra.schema.CompactionParams$Option.MIN_THRESHOLD:Lorg/apache/cassandra/schema/CompactionParams$Option;
            invokevirtual org.apache.cassandra.schema.CompactionParams$Option.toString:()Ljava/lang/String;
            iload 3 /* minThreshold */
            invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
            invokeinterface java.util.Map.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         7: .line 553
            aload 5 /* optionsWithThresholds */
            getstatic org.apache.cassandra.schema.CompactionParams$Option.MAX_THRESHOLD:Lorg/apache/cassandra/schema/CompactionParams$Option;
            invokevirtual org.apache.cassandra.schema.CompactionParams$Option.toString:()Ljava/lang/String;
            iload 4 /* maxThreshold */
            invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
            invokeinterface java.util.Map.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 558
            aload 1 /* klass */
            ldc "validateOptions"
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/util/Map;
            aastore
            invokevirtual java.lang.Class.getMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
            aconst_null
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 5 /* optionsWithThresholds */
            aastore
            invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Map
         9: .line 557
            astore 6 /* unrecognizedOptions */
        start local 6 // java.util.Map unrecognizedOptions
        10: .line 560
            aload 6 /* unrecognizedOptions */
            invokeinterface java.util.Map.isEmpty:()Z
            ifeq 15
        11: .line 561
            aload 5 /* optionsWithThresholds */
            astore 2 /* options */
        end local 6 // java.util.Map unrecognizedOptions
        12: .line 562
            goto 15
        13: .line 563
      StackMap locals: org.apache.cassandra.cql3.UntypedResultSet$Row java.lang.Class java.util.Map int int java.util.Map
      StackMap stack: java.lang.Exception
            astore 6 /* e */
        start local 6 // java.lang.Exception e
        14: .line 565
            new java.lang.RuntimeException
            dup
            aload 6 /* e */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 6 // java.lang.Exception e
        15: .line 568
      StackMap locals:
      StackMap stack:
            aload 1 /* klass */
            aload 2 /* options */
            invokestatic org.apache.cassandra.schema.CompactionParams.create:(Ljava/lang/Class;Ljava/util/Map;)Lorg/apache/cassandra/schema/CompactionParams;
            areturn
        end local 5 // java.util.Map optionsWithThresholds
        end local 4 // int maxThreshold
        end local 3 // int minThreshold
        end local 2 // java.util.Map options
        end local 1 // java.lang.Class klass
        end local 0 // org.apache.cassandra.cql3.UntypedResultSet$Row row
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   16     0                    row  Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
            2   16     1                  klass  Ljava/lang/Class<+Lorg/apache/cassandra/db/compaction/AbstractCompactionStrategy;>;
            3   16     2                options  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            4   16     3           minThreshold  I
            5   16     4           maxThreshold  I
            6   16     5  optionsWithThresholds  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
           10   12     6    unrecognizedOptions  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
           14   15     6                      e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           8    12      13  Class java.lang.Exception
    MethodParameters:
      Name  Flags
      row   

  private static boolean checkNeedsUpgrade(java.lang.Iterable<org.apache.cassandra.cql3.UntypedResultSet$Row>, boolean, );
    descriptor: (Ljava/lang/Iterable;ZZ)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // java.lang.Iterable defs
        start local 1 // boolean isSuper
        start local 2 // boolean isStaticCompactTable
         0: .line 575
            iload 1 /* isSuper */
            ifeq 2
         1: .line 576
            iconst_1
            ireturn
         2: .line 580
      StackMap locals:
      StackMap stack:
            iload 2 /* isStaticCompactTable */
            ifeq 6
         3: .line 581
            aload 0 /* defs */
            getstatic org.apache.cassandra.config.ColumnDefinition$Kind.STATIC:Lorg/apache/cassandra/config/ColumnDefinition$Kind;
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.hasKind:(Ljava/lang/Iterable;Lorg/apache/cassandra/config/ColumnDefinition$Kind;)Z
            ifeq 4
            iconst_0
            goto 5
      StackMap locals:
      StackMap stack:
         4: iconst_1
      StackMap locals:
      StackMap stack: int
         5: ireturn
         6: .line 584
      StackMap locals:
      StackMap stack:
            aload 0 /* defs */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.hasRegularColumns:(Ljava/lang/Iterable;)Z
            ifeq 7
            iconst_0
            goto 8
      StackMap locals:
      StackMap stack:
         7: iconst_1
      StackMap locals:
      StackMap stack: int
         8: ireturn
        end local 2 // boolean isStaticCompactTable
        end local 1 // boolean isSuper
        end local 0 // java.lang.Iterable defs
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    9     0                  defs  Ljava/lang/Iterable<Lorg/apache/cassandra/cql3/UntypedResultSet$Row;>;
            0    9     1               isSuper  Z
            0    9     2  isStaticCompactTable  Z
    Signature: (Ljava/lang/Iterable<Lorg/apache/cassandra/cql3/UntypedResultSet$Row;>;ZZ)Z
    MethodParameters:
                      Name  Flags
      defs                  
      isSuper               
      isStaticCompactTable  

  private static boolean hasRegularColumns(java.lang.Iterable<org.apache.cassandra.cql3.UntypedResultSet$Row>);
    descriptor: (Ljava/lang/Iterable;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // java.lang.Iterable columnRows
         0: .line 589
            aload 0 /* columnRows */
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 2
            goto 6
      StackMap locals: java.lang.Iterable top java.util.Iterator
      StackMap stack:
         1: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.cql3.UntypedResultSet$Row
            astore 1 /* row */
        start local 1 // org.apache.cassandra.cql3.UntypedResultSet$Row row
         2: .line 598
            aload 1 /* row */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.isEmptyCompactValueColumn:(Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)Z
            ifeq 4
         3: .line 599
            iconst_0
            ireturn
         4: .line 601
      StackMap locals: java.lang.Iterable org.apache.cassandra.cql3.UntypedResultSet$Row java.util.Iterator
      StackMap stack:
            aload 1 /* row */
            ldc "type"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.deserializeKind:(Ljava/lang/String;)Lorg/apache/cassandra/config/ColumnDefinition$Kind;
            getstatic org.apache.cassandra.config.ColumnDefinition$Kind.REGULAR:Lorg/apache/cassandra/config/ColumnDefinition$Kind;
            if_acmpne 6
         5: .line 602
            iconst_1
            ireturn
        end local 1 // org.apache.cassandra.cql3.UntypedResultSet$Row row
         6: .line 589
      StackMap locals: java.lang.Iterable top java.util.Iterator
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         7: .line 605
            iconst_0
            ireturn
        end local 0 // java.lang.Iterable columnRows
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0  columnRows  Ljava/lang/Iterable<Lorg/apache/cassandra/cql3/UntypedResultSet$Row;>;
            2    6     1         row  Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
    Signature: (Ljava/lang/Iterable<Lorg/apache/cassandra/cql3/UntypedResultSet$Row;>;)Z
    MethodParameters:
            Name  Flags
      columnRows  

  private static boolean isEmptyCompactValueColumn(org.apache.cassandra.cql3.UntypedResultSet$Row);
    descriptor: (Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.UntypedResultSet$Row row
         0: .line 610
            ldc "compact_value"
            aload 0 /* row */
            ldc "type"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 1
            aload 0 /* row */
            ldc "column_name"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.apache.cassandra.cql3.UntypedResultSet$Row row
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0   row  Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
    MethodParameters:
      Name  Flags
      row   

  private static void addDefinitionForUpgrade(java.util.List<org.apache.cassandra.config.ColumnDefinition>, java.lang.String, java.lang.String, boolean, boolean, org.apache.cassandra.db.marshal.AbstractType<?>, org.apache.cassandra.db.marshal.AbstractType<?>, org.apache.cassandra.db.marshal.AbstractType<?>);
    descriptor: (Ljava/util/List;Ljava/lang/String;Ljava/lang/String;ZZLorg/apache/cassandra/db/marshal/AbstractType;Lorg/apache/cassandra/db/marshal/AbstractType;Lorg/apache/cassandra/db/marshal/AbstractType;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=9, args_size=8
        start local 0 // java.util.List defs
        start local 1 // java.lang.String ksName
        start local 2 // java.lang.String cfName
        start local 3 // boolean isStaticCompactTable
        start local 4 // boolean isSuper
        start local 5 // org.apache.cassandra.db.marshal.AbstractType rawComparator
        start local 6 // org.apache.cassandra.db.marshal.AbstractType subComparator
        start local 7 // org.apache.cassandra.db.marshal.AbstractType defaultValidator
         0: .line 622
            aload 0 /* defs */
            invokestatic org.apache.cassandra.db.CompactTables.defaultNameGenerator:(Ljava/lang/Iterable;)Lorg/apache/cassandra/db/CompactTables$DefaultNames;
            astore 8 /* names */
        start local 8 // org.apache.cassandra.db.CompactTables$DefaultNames names
         1: .line 624
            iload 4 /* isSuper */
            ifeq 4
         2: .line 626
            aload 0 /* defs */
            aload 1 /* ksName */
            aload 2 /* cfName */
            getstatic org.apache.cassandra.cql3.SuperColumnCompatibility.SUPER_COLUMN_MAP_COLUMN_STR:Ljava/lang/String;
            aload 6 /* subComparator */
            aload 7 /* defaultValidator */
            iconst_1
            invokestatic org.apache.cassandra.db.marshal.MapType.getInstance:(Lorg/apache/cassandra/db/marshal/AbstractType;Lorg/apache/cassandra/db/marshal/AbstractType;Z)Lorg/apache/cassandra/db/marshal/MapType;
            invokestatic org.apache.cassandra.config.ColumnDefinition.regularDef:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/apache/cassandra/db/marshal/AbstractType;)Lorg/apache/cassandra/config/ColumnDefinition;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         3: .line 627
            goto 9
         4: .line 628
      StackMap locals: org.apache.cassandra.db.CompactTables$DefaultNames
      StackMap stack:
            iload 3 /* isStaticCompactTable */
            ifeq 8
         5: .line 630
            aload 0 /* defs */
            aload 1 /* ksName */
            aload 2 /* cfName */
            aload 8 /* names */
            invokevirtual org.apache.cassandra.db.CompactTables$DefaultNames.defaultClusteringName:()Ljava/lang/String;
            aload 5 /* rawComparator */
            iconst_0
            invokestatic org.apache.cassandra.config.ColumnDefinition.clusteringDef:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/apache/cassandra/db/marshal/AbstractType;I)Lorg/apache/cassandra/config/ColumnDefinition;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         6: .line 631
            aload 0 /* defs */
            aload 1 /* ksName */
            aload 2 /* cfName */
            aload 8 /* names */
            invokevirtual org.apache.cassandra.db.CompactTables$DefaultNames.defaultCompactValueName:()Ljava/lang/String;
            aload 7 /* defaultValidator */
            invokestatic org.apache.cassandra.config.ColumnDefinition.regularDef:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/apache/cassandra/db/marshal/AbstractType;)Lorg/apache/cassandra/config/ColumnDefinition;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         7: .line 632
            goto 9
         8: .line 637
      StackMap locals:
      StackMap stack:
            aload 0 /* defs */
            aload 1 /* ksName */
            aload 2 /* cfName */
            aload 8 /* names */
            invokevirtual org.apache.cassandra.db.CompactTables$DefaultNames.defaultCompactValueName:()Ljava/lang/String;
            getstatic org.apache.cassandra.db.marshal.EmptyType.instance:Lorg/apache/cassandra/db/marshal/EmptyType;
            invokestatic org.apache.cassandra.config.ColumnDefinition.regularDef:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/apache/cassandra/db/marshal/AbstractType;)Lorg/apache/cassandra/config/ColumnDefinition;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         9: .line 639
      StackMap locals:
      StackMap stack:
            return
        end local 8 // org.apache.cassandra.db.CompactTables$DefaultNames names
        end local 7 // org.apache.cassandra.db.marshal.AbstractType defaultValidator
        end local 6 // org.apache.cassandra.db.marshal.AbstractType subComparator
        end local 5 // org.apache.cassandra.db.marshal.AbstractType rawComparator
        end local 4 // boolean isSuper
        end local 3 // boolean isStaticCompactTable
        end local 2 // java.lang.String cfName
        end local 1 // java.lang.String ksName
        end local 0 // java.util.List defs
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   10     0                  defs  Ljava/util/List<Lorg/apache/cassandra/config/ColumnDefinition;>;
            0   10     1                ksName  Ljava/lang/String;
            0   10     2                cfName  Ljava/lang/String;
            0   10     3  isStaticCompactTable  Z
            0   10     4               isSuper  Z
            0   10     5         rawComparator  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
            0   10     6         subComparator  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
            0   10     7      defaultValidator  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
            1   10     8                 names  Lorg/apache/cassandra/db/CompactTables$DefaultNames;
    Signature: (Ljava/util/List<Lorg/apache/cassandra/config/ColumnDefinition;>;Ljava/lang/String;Ljava/lang/String;ZZLorg/apache/cassandra/db/marshal/AbstractType<*>;Lorg/apache/cassandra/db/marshal/AbstractType<*>;Lorg/apache/cassandra/db/marshal/AbstractType<*>;)V
    MethodParameters:
                      Name  Flags
      defs                  
      ksName                
      cfName                
      isStaticCompactTable  
      isSuper               
      rawComparator         
      subComparator         
      defaultValidator      

  private static boolean hasKind(java.lang.Iterable<org.apache.cassandra.cql3.UntypedResultSet$Row>, org.apache.cassandra.config.ColumnDefinition$Kind);
    descriptor: (Ljava/lang/Iterable;Lorg/apache/cassandra/config/ColumnDefinition$Kind;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // java.lang.Iterable defs
        start local 1 // org.apache.cassandra.config.ColumnDefinition$Kind kind
         0: .line 643
            aload 0 /* defs */
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 3
            goto 4
      StackMap locals: java.lang.Iterable org.apache.cassandra.config.ColumnDefinition$Kind top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.cql3.UntypedResultSet$Row
            astore 2 /* row */
        start local 2 // org.apache.cassandra.cql3.UntypedResultSet$Row row
         2: .line 644
            aload 2 /* row */
            ldc "type"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.deserializeKind:(Ljava/lang/String;)Lorg/apache/cassandra/config/ColumnDefinition$Kind;
            aload 1 /* kind */
            if_acmpne 4
         3: .line 645
            iconst_1
            ireturn
        end local 2 // org.apache.cassandra.cql3.UntypedResultSet$Row row
         4: .line 643
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 647
            iconst_0
            ireturn
        end local 1 // org.apache.cassandra.config.ColumnDefinition$Kind kind
        end local 0 // java.lang.Iterable defs
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  defs  Ljava/lang/Iterable<Lorg/apache/cassandra/cql3/UntypedResultSet$Row;>;
            0    6     1  kind  Lorg/apache/cassandra/config/ColumnDefinition$Kind;
            2    4     2   row  Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
    Signature: (Ljava/lang/Iterable<Lorg/apache/cassandra/cql3/UntypedResultSet$Row;>;Lorg/apache/cassandra/config/ColumnDefinition$Kind;)Z
    MethodParameters:
      Name  Flags
      defs  
      kind  

  private static void addDroppedColumns(org.apache.cassandra.config.CFMetaData, org.apache.cassandra.db.marshal.AbstractType<?>, java.util.Map<java.lang.String, java.lang.Long>);
    descriptor: (Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/db/marshal/AbstractType;Ljava/util/Map;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=9, locals=12, args_size=3
        start local 0 // org.apache.cassandra.config.CFMetaData cfm
        start local 1 // org.apache.cassandra.db.marshal.AbstractType comparator
        start local 2 // java.util.Map droppedTimes
         0: .line 661
            aload 1 /* comparator */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.getComponents:()Ljava/util/List;
            aload 1 /* comparator */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.componentsCount:()I
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.apache.cassandra.db.marshal.AbstractType
            astore 3 /* last */
        start local 3 // org.apache.cassandra.db.marshal.AbstractType last
         1: .line 662
            aload 3 /* last */
            instanceof org.apache.cassandra.db.marshal.ColumnToCollectionType
            ifeq 3
         2: .line 663
            aload 3 /* last */
            checkcast org.apache.cassandra.db.marshal.ColumnToCollectionType
            getfield org.apache.cassandra.db.marshal.ColumnToCollectionType.defined:Ljava/util/Map;
            goto 4
         3: .line 664
      StackMap locals: org.apache.cassandra.db.marshal.AbstractType
      StackMap stack:
            invokestatic java.util.Collections.emptyMap:()Ljava/util/Map;
         4: .line 662
      StackMap locals:
      StackMap stack: java.util.Map
            astore 4 /* collections */
        start local 4 // java.util.Map collections
         5: .line 666
            aload 2 /* droppedTimes */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 6
            goto 15
      StackMap locals: org.apache.cassandra.config.CFMetaData org.apache.cassandra.db.marshal.AbstractType java.util.Map org.apache.cassandra.db.marshal.AbstractType java.util.Map top java.util.Iterator
      StackMap stack:
         6: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 5 /* entry */
        start local 5 // java.util.Map$Entry entry
         7: .line 668
            aload 5 /* entry */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 7 /* name */
        start local 7 // java.lang.String name
         8: .line 669
            getstatic org.apache.cassandra.db.marshal.UTF8Type.instance:Lorg/apache/cassandra/db/marshal/UTF8Type;
            aload 7 /* name */
            invokevirtual org.apache.cassandra.db.marshal.UTF8Type.decompose:(Ljava/lang/Object;)Ljava/nio/ByteBuffer;
            astore 8 /* nameBytes */
        start local 8 // java.nio.ByteBuffer nameBytes
         9: .line 670
            aload 5 /* entry */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.Long
            invokevirtual java.lang.Long.longValue:()J
            lstore 9 /* time */
        start local 9 // long time
        10: .line 672
            aload 4 /* collections */
            aload 8 /* nameBytes */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifeq 12
        11: .line 673
            aload 4 /* collections */
            aload 8 /* nameBytes */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.apache.cassandra.db.marshal.AbstractType
            goto 13
        12: .line 674
      StackMap locals: org.apache.cassandra.config.CFMetaData org.apache.cassandra.db.marshal.AbstractType java.util.Map org.apache.cassandra.db.marshal.AbstractType java.util.Map java.util.Map$Entry java.util.Iterator java.lang.String java.nio.ByteBuffer long
      StackMap stack:
            getstatic org.apache.cassandra.db.marshal.BytesType.instance:Lorg/apache/cassandra/db/marshal/BytesType;
        13: .line 672
      StackMap locals:
      StackMap stack: org.apache.cassandra.db.marshal.AbstractType
            astore 11 /* type */
        start local 11 // org.apache.cassandra.db.marshal.AbstractType type
        14: .line 676
            aload 0 /* cfm */
            invokevirtual org.apache.cassandra.config.CFMetaData.getDroppedColumns:()Ljava/util/Map;
            aload 8 /* nameBytes */
            new org.apache.cassandra.config.CFMetaData$DroppedColumn
            dup
            aload 7 /* name */
            aconst_null
            aload 11 /* type */
            lload 9 /* time */
            invokespecial org.apache.cassandra.config.CFMetaData$DroppedColumn.<init>:(Ljava/lang/String;Lorg/apache/cassandra/config/ColumnDefinition$Kind;Lorg/apache/cassandra/db/marshal/AbstractType;J)V
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 11 // org.apache.cassandra.db.marshal.AbstractType type
        end local 9 // long time
        end local 8 // java.nio.ByteBuffer nameBytes
        end local 7 // java.lang.String name
        end local 5 // java.util.Map$Entry entry
        15: .line 666
      StackMap locals: org.apache.cassandra.config.CFMetaData org.apache.cassandra.db.marshal.AbstractType java.util.Map org.apache.cassandra.db.marshal.AbstractType java.util.Map top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        16: .line 678
            return
        end local 4 // java.util.Map collections
        end local 3 // org.apache.cassandra.db.marshal.AbstractType last
        end local 2 // java.util.Map droppedTimes
        end local 1 // org.apache.cassandra.db.marshal.AbstractType comparator
        end local 0 // org.apache.cassandra.config.CFMetaData cfm
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   17     0           cfm  Lorg/apache/cassandra/config/CFMetaData;
            0   17     1    comparator  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
            0   17     2  droppedTimes  Ljava/util/Map<Ljava/lang/String;Ljava/lang/Long;>;
            1   17     3          last  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
            5   17     4   collections  Ljava/util/Map<Ljava/nio/ByteBuffer;Lorg/apache/cassandra/db/marshal/CollectionType;>;
            7   15     5         entry  Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/Long;>;
            8   15     7          name  Ljava/lang/String;
            9   15     8     nameBytes  Ljava/nio/ByteBuffer;
           10   15     9          time  J
           14   15    11          type  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
    Signature: (Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/db/marshal/AbstractType<*>;Ljava/util/Map<Ljava/lang/String;Ljava/lang/Long;>;)V
    MethodParameters:
              Name  Flags
      cfm           
      comparator    
      droppedTimes  

  private static java.util.List<org.apache.cassandra.config.ColumnDefinition> createColumnsFromColumnRows(java.lang.Iterable<org.apache.cassandra.cql3.UntypedResultSet$Row>, java.lang.String, java.lang.String, org.apache.cassandra.db.marshal.AbstractType<?>, org.apache.cassandra.db.marshal.AbstractType<?>, boolean, boolean, boolean, boolean);
    descriptor: (Ljava/lang/Iterable;Ljava/lang/String;Ljava/lang/String;Lorg/apache/cassandra/db/marshal/AbstractType;Lorg/apache/cassandra/db/marshal/AbstractType;ZZZZ)Ljava/util/List;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=10, locals=12, args_size=9
        start local 0 // java.lang.Iterable rows
        start local 1 // java.lang.String keyspace
        start local 2 // java.lang.String table
        start local 3 // org.apache.cassandra.db.marshal.AbstractType rawComparator
        start local 4 // org.apache.cassandra.db.marshal.AbstractType rawSubComparator
        start local 5 // boolean isSuper
        start local 6 // boolean isCQLTable
        start local 7 // boolean isStaticCompactTable
        start local 8 // boolean needsUpgrade
         0: .line 690
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 9 /* columns */
        start local 9 // java.util.List columns
         1: .line 692
            aload 0 /* rows */
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 11
            goto 15
      StackMap locals: java.lang.Iterable java.lang.String java.lang.String org.apache.cassandra.db.marshal.AbstractType org.apache.cassandra.db.marshal.AbstractType int int int int java.util.List top java.util.Iterator
      StackMap stack:
         2: aload 11
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.cql3.UntypedResultSet$Row
            astore 10 /* row */
        start local 10 // org.apache.cassandra.cql3.UntypedResultSet$Row row
         3: .line 695
            aload 10 /* row */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.isEmptyCompactValueColumn:(Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)Z
            ifeq 5
         4: .line 696
            goto 15
         5: .line 698
      StackMap locals: java.lang.Iterable java.lang.String java.lang.String org.apache.cassandra.db.marshal.AbstractType org.apache.cassandra.db.marshal.AbstractType int int int int java.util.List org.apache.cassandra.cql3.UntypedResultSet$Row java.util.Iterator
      StackMap stack:
            aload 9 /* columns */
            aload 10 /* row */
         6: .line 699
            aload 1 /* keyspace */
         7: .line 700
            aload 2 /* table */
         8: .line 701
            aload 3 /* rawComparator */
         9: .line 702
            aload 4 /* rawSubComparator */
        10: .line 703
            iload 5 /* isSuper */
        11: .line 704
            iload 6 /* isCQLTable */
        12: .line 705
            iload 7 /* isStaticCompactTable */
        13: .line 706
            iload 8 /* needsUpgrade */
        14: .line 698
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.createColumnFromColumnRow:(Lorg/apache/cassandra/cql3/UntypedResultSet$Row;Ljava/lang/String;Ljava/lang/String;Lorg/apache/cassandra/db/marshal/AbstractType;Lorg/apache/cassandra/db/marshal/AbstractType;ZZZZ)Lorg/apache/cassandra/config/ColumnDefinition;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 10 // org.apache.cassandra.cql3.UntypedResultSet$Row row
        15: .line 692
      StackMap locals: java.lang.Iterable java.lang.String java.lang.String org.apache.cassandra.db.marshal.AbstractType org.apache.cassandra.db.marshal.AbstractType int int int int java.util.List top java.util.Iterator
      StackMap stack:
            aload 11
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        16: .line 709
            aload 9 /* columns */
            areturn
        end local 9 // java.util.List columns
        end local 8 // boolean needsUpgrade
        end local 7 // boolean isStaticCompactTable
        end local 6 // boolean isCQLTable
        end local 5 // boolean isSuper
        end local 4 // org.apache.cassandra.db.marshal.AbstractType rawSubComparator
        end local 3 // org.apache.cassandra.db.marshal.AbstractType rawComparator
        end local 2 // java.lang.String table
        end local 1 // java.lang.String keyspace
        end local 0 // java.lang.Iterable rows
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   17     0                  rows  Ljava/lang/Iterable<Lorg/apache/cassandra/cql3/UntypedResultSet$Row;>;
            0   17     1              keyspace  Ljava/lang/String;
            0   17     2                 table  Ljava/lang/String;
            0   17     3         rawComparator  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
            0   17     4      rawSubComparator  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
            0   17     5               isSuper  Z
            0   17     6            isCQLTable  Z
            0   17     7  isStaticCompactTable  Z
            0   17     8          needsUpgrade  Z
            1   17     9               columns  Ljava/util/List<Lorg/apache/cassandra/config/ColumnDefinition;>;
            3   15    10                   row  Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
    Signature: (Ljava/lang/Iterable<Lorg/apache/cassandra/cql3/UntypedResultSet$Row;>;Ljava/lang/String;Ljava/lang/String;Lorg/apache/cassandra/db/marshal/AbstractType<*>;Lorg/apache/cassandra/db/marshal/AbstractType<*>;ZZZZ)Ljava/util/List<Lorg/apache/cassandra/config/ColumnDefinition;>;
    MethodParameters:
                      Name  Flags
      rows                  
      keyspace              
      table                 
      rawComparator         
      rawSubComparator      
      isSuper               
      isCQLTable            
      isStaticCompactTable  
      needsUpgrade          

  private static org.apache.cassandra.config.ColumnDefinition createColumnFromColumnRow(org.apache.cassandra.cql3.UntypedResultSet$Row, java.lang.String, java.lang.String, org.apache.cassandra.db.marshal.AbstractType<?>, org.apache.cassandra.db.marshal.AbstractType<?>, boolean, boolean, boolean, boolean);
    descriptor: (Lorg/apache/cassandra/cql3/UntypedResultSet$Row;Ljava/lang/String;Ljava/lang/String;Lorg/apache/cassandra/db/marshal/AbstractType;Lorg/apache/cassandra/db/marshal/AbstractType;ZZZZ)Lorg/apache/cassandra/config/ColumnDefinition;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=8, locals=15, args_size=9
        start local 0 // org.apache.cassandra.cql3.UntypedResultSet$Row row
        start local 1 // java.lang.String keyspace
        start local 2 // java.lang.String table
        start local 3 // org.apache.cassandra.db.marshal.AbstractType rawComparator
        start local 4 // org.apache.cassandra.db.marshal.AbstractType rawSubComparator
        start local 5 // boolean isSuper
        start local 6 // boolean isCQLTable
        start local 7 // boolean isStaticCompactTable
        start local 8 // boolean needsUpgrade
         0: .line 722
            aload 0 /* row */
            ldc "type"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            astore 9 /* rawKind */
        start local 9 // java.lang.String rawKind
         1: .line 724
            aload 9 /* rawKind */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.deserializeKind:(Ljava/lang/String;)Lorg/apache/cassandra/config/ColumnDefinition$Kind;
            astore 10 /* kind */
        start local 10 // org.apache.cassandra.config.ColumnDefinition$Kind kind
         2: .line 725
            iload 8 /* needsUpgrade */
            ifeq 4
            iload 7 /* isStaticCompactTable */
            ifeq 4
            aload 10 /* kind */
            getstatic org.apache.cassandra.config.ColumnDefinition$Kind.REGULAR:Lorg/apache/cassandra/config/ColumnDefinition$Kind;
            if_acmpne 4
         3: .line 726
            getstatic org.apache.cassandra.config.ColumnDefinition$Kind.STATIC:Lorg/apache/cassandra/config/ColumnDefinition$Kind;
            astore 10 /* kind */
         4: .line 728
      StackMap locals: java.lang.String org.apache.cassandra.config.ColumnDefinition$Kind
      StackMap stack:
            iconst_m1
            istore 11 /* componentIndex */
        start local 11 // int componentIndex
         5: .line 732
            aload 10 /* kind */
            invokevirtual org.apache.cassandra.config.ColumnDefinition$Kind.isPrimaryKeyKind:()Z
            ifeq 9
         6: .line 734
            aload 0 /* row */
            ldc "component_index"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.has:(Ljava/lang/String;)Z
            ifeq 7
            aload 0 /* row */
            ldc "component_index"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getInt:(Ljava/lang/String;)I
            goto 8
      StackMap locals: int
      StackMap stack:
         7: iconst_0
      StackMap locals:
      StackMap stack: int
         8: istore 11 /* componentIndex */
         9: .line 738
      StackMap locals:
      StackMap stack:
            iload 6 /* isCQLTable */
            ifeq 11
        10: .line 739
            getstatic org.apache.cassandra.db.marshal.UTF8Type.instance:Lorg/apache/cassandra/db/marshal/UTF8Type;
            goto 12
        11: .line 740
      StackMap locals:
      StackMap stack:
            aload 9 /* rawKind */
            iload 5 /* isSuper */
            aload 3 /* rawComparator */
            aload 4 /* rawSubComparator */
            invokestatic org.apache.cassandra.db.CompactTables.columnDefinitionComparator:(Ljava/lang/String;ZLorg/apache/cassandra/db/marshal/AbstractType;Lorg/apache/cassandra/db/marshal/AbstractType;)Lorg/apache/cassandra/db/marshal/AbstractType;
        12: .line 738
      StackMap locals:
      StackMap stack: org.apache.cassandra.db.marshal.AbstractType
            astore 12 /* comparator */
        start local 12 // org.apache.cassandra.db.marshal.AbstractType comparator
        13: .line 741
            aload 12 /* comparator */
            aload 0 /* row */
            ldc "column_name"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.fromString:(Ljava/lang/String;)Ljava/nio/ByteBuffer;
            aload 12 /* comparator */
            invokestatic org.apache.cassandra.cql3.ColumnIdentifier.getInterned:(Ljava/nio/ByteBuffer;Lorg/apache/cassandra/db/marshal/AbstractType;)Lorg/apache/cassandra/cql3/ColumnIdentifier;
            astore 13 /* name */
        start local 13 // org.apache.cassandra.cql3.ColumnIdentifier name
        14: .line 743
            aload 0 /* row */
            ldc "validator"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.parseType:(Ljava/lang/String;)Lorg/apache/cassandra/db/marshal/AbstractType;
            astore 14 /* validator */
        start local 14 // org.apache.cassandra.db.marshal.AbstractType validator
        15: .line 748
            aload 14 /* validator */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.isUDT:()Z
            ifeq 17
            aload 14 /* validator */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.isMultiCell:()Z
            ifeq 17
        16: .line 749
            aload 14 /* validator */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.freeze:()Lorg/apache/cassandra/db/marshal/AbstractType;
            astore 14 /* validator */
            goto 18
        17: .line 751
      StackMap locals: org.apache.cassandra.db.marshal.AbstractType org.apache.cassandra.cql3.ColumnIdentifier org.apache.cassandra.db.marshal.AbstractType
      StackMap stack:
            aload 14 /* validator */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.freezeNestedMulticellTypes:()Lorg/apache/cassandra/db/marshal/AbstractType;
            astore 14 /* validator */
        18: .line 753
      StackMap locals:
      StackMap stack:
            new org.apache.cassandra.config.ColumnDefinition
            dup
            aload 1 /* keyspace */
            aload 2 /* table */
            aload 13 /* name */
            aload 14 /* validator */
            iload 11 /* componentIndex */
            aload 10 /* kind */
            invokespecial org.apache.cassandra.config.ColumnDefinition.<init>:(Ljava/lang/String;Ljava/lang/String;Lorg/apache/cassandra/cql3/ColumnIdentifier;Lorg/apache/cassandra/db/marshal/AbstractType;ILorg/apache/cassandra/config/ColumnDefinition$Kind;)V
            areturn
        end local 14 // org.apache.cassandra.db.marshal.AbstractType validator
        end local 13 // org.apache.cassandra.cql3.ColumnIdentifier name
        end local 12 // org.apache.cassandra.db.marshal.AbstractType comparator
        end local 11 // int componentIndex
        end local 10 // org.apache.cassandra.config.ColumnDefinition$Kind kind
        end local 9 // java.lang.String rawKind
        end local 8 // boolean needsUpgrade
        end local 7 // boolean isStaticCompactTable
        end local 6 // boolean isCQLTable
        end local 5 // boolean isSuper
        end local 4 // org.apache.cassandra.db.marshal.AbstractType rawSubComparator
        end local 3 // org.apache.cassandra.db.marshal.AbstractType rawComparator
        end local 2 // java.lang.String table
        end local 1 // java.lang.String keyspace
        end local 0 // org.apache.cassandra.cql3.UntypedResultSet$Row row
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   19     0                   row  Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
            0   19     1              keyspace  Ljava/lang/String;
            0   19     2                 table  Ljava/lang/String;
            0   19     3         rawComparator  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
            0   19     4      rawSubComparator  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
            0   19     5               isSuper  Z
            0   19     6            isCQLTable  Z
            0   19     7  isStaticCompactTable  Z
            0   19     8          needsUpgrade  Z
            1   19     9               rawKind  Ljava/lang/String;
            2   19    10                  kind  Lorg/apache/cassandra/config/ColumnDefinition$Kind;
            5   19    11        componentIndex  I
           13   19    12            comparator  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
           14   19    13                  name  Lorg/apache/cassandra/cql3/ColumnIdentifier;
           15   19    14             validator  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
    Signature: (Lorg/apache/cassandra/cql3/UntypedResultSet$Row;Ljava/lang/String;Ljava/lang/String;Lorg/apache/cassandra/db/marshal/AbstractType<*>;Lorg/apache/cassandra/db/marshal/AbstractType<*>;ZZZZ)Lorg/apache/cassandra/config/ColumnDefinition;
    MethodParameters:
                      Name  Flags
      row                   
      keyspace              
      table                 
      rawComparator         
      rawSubComparator      
      isSuper               
      isCQLTable            
      isStaticCompactTable  
      needsUpgrade          

  private static org.apache.cassandra.schema.Indexes createIndexesFromColumnRows(org.apache.cassandra.config.CFMetaData, java.lang.Iterable<org.apache.cassandra.cql3.UntypedResultSet$Row>, java.lang.String, java.lang.String, org.apache.cassandra.db.marshal.AbstractType<?>, org.apache.cassandra.db.marshal.AbstractType<?>, boolean, boolean, boolean, boolean);
    descriptor: (Lorg/apache/cassandra/config/CFMetaData;Ljava/lang/Iterable;Ljava/lang/String;Ljava/lang/String;Lorg/apache/cassandra/db/marshal/AbstractType;Lorg/apache/cassandra/db/marshal/AbstractType;ZZZZ)Lorg/apache/cassandra/schema/Indexes;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=9, locals=17, args_size=10
        start local 0 // org.apache.cassandra.config.CFMetaData cfm
        start local 1 // java.lang.Iterable rows
        start local 2 // java.lang.String keyspace
        start local 3 // java.lang.String table
        start local 4 // org.apache.cassandra.db.marshal.AbstractType rawComparator
        start local 5 // org.apache.cassandra.db.marshal.AbstractType rawSubComparator
        start local 6 // boolean isSuper
        start local 7 // boolean isCQLTable
        start local 8 // boolean isStaticCompactTable
        start local 9 // boolean needsUpgrade
         0: .line 767
            invokestatic org.apache.cassandra.schema.Indexes.builder:()Lorg/apache/cassandra/schema/Indexes$Builder;
            astore 10 /* indexes */
        start local 10 // org.apache.cassandra.schema.Indexes$Builder indexes
         1: .line 769
            aload 1 /* rows */
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 12
            goto 26
      StackMap locals: org.apache.cassandra.config.CFMetaData java.lang.Iterable java.lang.String java.lang.String org.apache.cassandra.db.marshal.AbstractType org.apache.cassandra.db.marshal.AbstractType int int int int org.apache.cassandra.schema.Indexes$Builder top java.util.Iterator
      StackMap stack:
         2: aload 12
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.cql3.UntypedResultSet$Row
            astore 11 /* row */
        start local 11 // org.apache.cassandra.cql3.UntypedResultSet$Row row
         3: .line 771
            aconst_null
            astore 13 /* kind */
        start local 13 // org.apache.cassandra.schema.IndexMetadata$Kind kind
         4: .line 772
            aload 11 /* row */
            ldc "index_type"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.has:(Ljava/lang/String;)Z
            ifeq 6
         5: .line 773
            aload 11 /* row */
            ldc "index_type"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic org.apache.cassandra.schema.IndexMetadata$Kind.valueOf:(Ljava/lang/String;)Lorg/apache/cassandra/schema/IndexMetadata$Kind;
            astore 13 /* kind */
         6: .line 775
      StackMap locals: org.apache.cassandra.config.CFMetaData java.lang.Iterable java.lang.String java.lang.String org.apache.cassandra.db.marshal.AbstractType org.apache.cassandra.db.marshal.AbstractType int int int int org.apache.cassandra.schema.Indexes$Builder org.apache.cassandra.cql3.UntypedResultSet$Row java.util.Iterator org.apache.cassandra.schema.IndexMetadata$Kind
      StackMap stack:
            aload 13 /* kind */
            ifnonnull 8
         7: .line 776
            goto 26
         8: .line 778
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 14 /* indexOptions */
        start local 14 // java.util.Map indexOptions
         9: .line 779
            aload 11 /* row */
            ldc "index_options"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.has:(Ljava/lang/String;)Z
            ifeq 11
        10: .line 780
            aload 11 /* row */
            ldc "index_options"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic org.apache.cassandra.utils.FBUtilities.fromJsonMap:(Ljava/lang/String;)Ljava/util/Map;
            astore 14 /* indexOptions */
        11: .line 782
      StackMap locals: java.util.Map
      StackMap stack:
            aload 11 /* row */
            ldc "index_name"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.has:(Ljava/lang/String;)Z
            ifeq 25
        12: .line 784
            aload 11 /* row */
            ldc "index_name"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            astore 15 /* indexName */
        start local 15 // java.lang.String indexName
        13: .line 786
            aload 11 /* row */
        14: .line 787
            aload 2 /* keyspace */
        15: .line 788
            aload 3 /* table */
        16: .line 789
            aload 4 /* rawComparator */
        17: .line 790
            aload 5 /* rawSubComparator */
        18: .line 791
            iload 6 /* isSuper */
        19: .line 792
            iload 7 /* isCQLTable */
        20: .line 793
            iload 8 /* isStaticCompactTable */
        21: .line 794
            iload 9 /* needsUpgrade */
        22: .line 786
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.createColumnFromColumnRow:(Lorg/apache/cassandra/cql3/UntypedResultSet$Row;Ljava/lang/String;Ljava/lang/String;Lorg/apache/cassandra/db/marshal/AbstractType;Lorg/apache/cassandra/db/marshal/AbstractType;ZZZZ)Lorg/apache/cassandra/config/ColumnDefinition;
            astore 16 /* column */
        start local 16 // org.apache.cassandra.config.ColumnDefinition column
        23: .line 796
            aload 10 /* indexes */
            aload 0 /* cfm */
            aload 16 /* column */
            aload 15 /* indexName */
            aload 13 /* kind */
            aload 14 /* indexOptions */
            invokestatic org.apache.cassandra.schema.IndexMetadata.fromLegacyMetadata:(Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/config/ColumnDefinition;Ljava/lang/String;Lorg/apache/cassandra/schema/IndexMetadata$Kind;Ljava/util/Map;)Lorg/apache/cassandra/schema/IndexMetadata;
            invokevirtual org.apache.cassandra.schema.Indexes$Builder.add:(Lorg/apache/cassandra/schema/IndexMetadata;)Lorg/apache/cassandra/schema/Indexes$Builder;
            pop
        end local 16 // org.apache.cassandra.config.ColumnDefinition column
        end local 15 // java.lang.String indexName
        24: .line 797
            goto 26
        25: .line 800
      StackMap locals:
      StackMap stack:
            getstatic org.apache.cassandra.schema.LegacySchemaMigrator.logger:Lorg/slf4j/Logger;
            ldc "Failed to find index name for legacy migration of index on {}.{}"
            aload 2 /* keyspace */
            aload 3 /* table */
            invokeinterface org.slf4j.Logger.error:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        end local 14 // java.util.Map indexOptions
        end local 13 // org.apache.cassandra.schema.IndexMetadata$Kind kind
        end local 11 // org.apache.cassandra.cql3.UntypedResultSet$Row row
        26: .line 769
      StackMap locals: org.apache.cassandra.config.CFMetaData java.lang.Iterable java.lang.String java.lang.String org.apache.cassandra.db.marshal.AbstractType org.apache.cassandra.db.marshal.AbstractType int int int int org.apache.cassandra.schema.Indexes$Builder top java.util.Iterator
      StackMap stack:
            aload 12
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        27: .line 804
            aload 10 /* indexes */
            invokevirtual org.apache.cassandra.schema.Indexes$Builder.build:()Lorg/apache/cassandra/schema/Indexes;
            areturn
        end local 10 // org.apache.cassandra.schema.Indexes$Builder indexes
        end local 9 // boolean needsUpgrade
        end local 8 // boolean isStaticCompactTable
        end local 7 // boolean isCQLTable
        end local 6 // boolean isSuper
        end local 5 // org.apache.cassandra.db.marshal.AbstractType rawSubComparator
        end local 4 // org.apache.cassandra.db.marshal.AbstractType rawComparator
        end local 3 // java.lang.String table
        end local 2 // java.lang.String keyspace
        end local 1 // java.lang.Iterable rows
        end local 0 // org.apache.cassandra.config.CFMetaData cfm
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   28     0                   cfm  Lorg/apache/cassandra/config/CFMetaData;
            0   28     1                  rows  Ljava/lang/Iterable<Lorg/apache/cassandra/cql3/UntypedResultSet$Row;>;
            0   28     2              keyspace  Ljava/lang/String;
            0   28     3                 table  Ljava/lang/String;
            0   28     4         rawComparator  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
            0   28     5      rawSubComparator  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
            0   28     6               isSuper  Z
            0   28     7            isCQLTable  Z
            0   28     8  isStaticCompactTable  Z
            0   28     9          needsUpgrade  Z
            1   28    10               indexes  Lorg/apache/cassandra/schema/Indexes$Builder;
            3   26    11                   row  Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
            4   26    13                  kind  Lorg/apache/cassandra/schema/IndexMetadata$Kind;
            9   26    14          indexOptions  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
           13   24    15             indexName  Ljava/lang/String;
           23   24    16                column  Lorg/apache/cassandra/config/ColumnDefinition;
    Signature: (Lorg/apache/cassandra/config/CFMetaData;Ljava/lang/Iterable<Lorg/apache/cassandra/cql3/UntypedResultSet$Row;>;Ljava/lang/String;Ljava/lang/String;Lorg/apache/cassandra/db/marshal/AbstractType<*>;Lorg/apache/cassandra/db/marshal/AbstractType<*>;ZZZZ)Lorg/apache/cassandra/schema/Indexes;
    MethodParameters:
                      Name  Flags
      cfm                   
      rows                  
      keyspace              
      table                 
      rawComparator         
      rawSubComparator      
      isSuper               
      isCQLTable            
      isStaticCompactTable  
      needsUpgrade          

  private static org.apache.cassandra.config.ColumnDefinition$Kind deserializeKind(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/apache/cassandra/config/ColumnDefinition$Kind;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String kind
         0: .line 809
            ldc "clustering_key"
            aload 0 /* kind */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 2
         1: .line 810
            getstatic org.apache.cassandra.config.ColumnDefinition$Kind.CLUSTERING:Lorg/apache/cassandra/config/ColumnDefinition$Kind;
            areturn
         2: .line 812
      StackMap locals:
      StackMap stack:
            ldc "compact_value"
            aload 0 /* kind */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 4
         3: .line 813
            getstatic org.apache.cassandra.config.ColumnDefinition$Kind.REGULAR:Lorg/apache/cassandra/config/ColumnDefinition$Kind;
            areturn
         4: .line 815
      StackMap locals:
      StackMap stack:
            ldc Lorg/apache/cassandra/config/ColumnDefinition$Kind;
            aload 0 /* kind */
            invokevirtual java.lang.String.toUpperCase:()Ljava/lang/String;
            invokestatic java.lang.Enum.valueOf:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
            checkcast org.apache.cassandra.config.ColumnDefinition$Kind
            areturn
        end local 0 // java.lang.String kind
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  kind  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      kind  

  private static org.apache.cassandra.schema.Triggers createTriggersFromTriggerRows(org.apache.cassandra.cql3.UntypedResultSet);
    descriptor: (Lorg/apache/cassandra/cql3/UntypedResultSet;)Lorg/apache/cassandra/schema/Triggers;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.apache.cassandra.cql3.UntypedResultSet rows
         0: .line 820
            invokestatic org.apache.cassandra.schema.Triggers.builder:()Lorg/apache/cassandra/schema/Triggers$Builder;
            astore 1 /* triggers */
        start local 1 // org.apache.cassandra.schema.Triggers$Builder triggers
         1: .line 821
            aload 0 /* rows */
            aload 1 /* triggers */
            invokedynamic accept(Lorg/apache/cassandra/schema/Triggers$Builder;)Ljava/util/function/Consumer;
              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;)V
                  org/apache/cassandra/schema/LegacySchemaMigrator.lambda$12(Lorg/apache/cassandra/schema/Triggers$Builder;Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)V (6)
                  (Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)V
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet.forEach:(Ljava/util/function/Consumer;)V
         2: .line 822
            aload 1 /* triggers */
            invokevirtual org.apache.cassandra.schema.Triggers$Builder.build:()Lorg/apache/cassandra/schema/Triggers;
            areturn
        end local 1 // org.apache.cassandra.schema.Triggers$Builder triggers
        end local 0 // org.apache.cassandra.cql3.UntypedResultSet rows
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      rows  Lorg/apache/cassandra/cql3/UntypedResultSet;
            1    3     1  triggers  Lorg/apache/cassandra/schema/Triggers$Builder;
    MethodParameters:
      Name  Flags
      rows  

  private static org.apache.cassandra.schema.TriggerMetadata createTriggerFromTriggerRow(org.apache.cassandra.cql3.UntypedResultSet$Row);
    descriptor: (Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)Lorg/apache/cassandra/schema/TriggerMetadata;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // org.apache.cassandra.cql3.UntypedResultSet$Row row
         0: .line 827
            aload 0 /* row */
            ldc "trigger_name"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* name */
        start local 1 // java.lang.String name
         1: .line 828
            aload 0 /* row */
            ldc "trigger_options"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getTextMap:(Ljava/lang/String;)Ljava/util/Map;
            ldc "class"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* classOption */
        start local 2 // java.lang.String classOption
         2: .line 829
            new org.apache.cassandra.schema.TriggerMetadata
            dup
            aload 1 /* name */
            aload 2 /* classOption */
            invokespecial org.apache.cassandra.schema.TriggerMetadata.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            areturn
        end local 2 // java.lang.String classOption
        end local 1 // java.lang.String name
        end local 0 // org.apache.cassandra.cql3.UntypedResultSet$Row row
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0          row  Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
            1    3     1         name  Ljava/lang/String;
            2    3     2  classOption  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      row   

  private static java.util.Collection<org.apache.cassandra.schema.LegacySchemaMigrator$Type> readTypes(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/Collection;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // java.lang.String keyspaceName
         0: .line 838
            ldc "SELECT type_name FROM %s.%s WHERE keyspace_name = ?"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
         1: .line 839
            ldc "system"
            aastore
            dup
            iconst_1
         2: .line 840
            ldc "schema_usertypes"
            aastore
         3: .line 838
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 1 /* query */
        start local 1 // java.lang.String query
         4: .line 841
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* typeNames */
        start local 2 // java.util.Collection typeNames
         5: .line 842
            aload 1 /* query */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* keyspaceName */
            aastore
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.query:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/apache/cassandra/cql3/UntypedResultSet;
            aload 2 /* typeNames */
            invokedynamic accept(Ljava/util/Collection;)Ljava/util/function/Consumer;
              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;)V
                  org/apache/cassandra/schema/LegacySchemaMigrator.lambda$13(Ljava/util/Collection;Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)V (6)
                  (Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)V
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet.forEach:(Ljava/util/function/Consumer;)V
         6: .line 844
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* types */
        start local 3 // java.util.Collection types
         7: .line 845
            aload 2 /* typeNames */
            aload 3 /* types */
            aload 0 /* keyspaceName */
            invokedynamic accept(Ljava/util/Collection;Ljava/lang/String;)Ljava/util/function/Consumer;
              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;)V
                  org/apache/cassandra/schema/LegacySchemaMigrator.lambda$14(Ljava/util/Collection;Ljava/lang/String;Ljava/lang/String;)V (6)
                  (Ljava/lang/String;)V
            invokeinterface java.util.Collection.forEach:(Ljava/util/function/Consumer;)V
         8: .line 846
            aload 3 /* types */
            areturn
        end local 3 // java.util.Collection types
        end local 2 // java.util.Collection typeNames
        end local 1 // java.lang.String query
        end local 0 // java.lang.String keyspaceName
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    9     0  keyspaceName  Ljava/lang/String;
            4    9     1         query  Ljava/lang/String;
            5    9     2     typeNames  Ljava/util/Collection<Ljava/lang/String;>;
            7    9     3         types  Ljava/util/Collection<Lorg/apache/cassandra/schema/LegacySchemaMigrator$Type;>;
    Signature: (Ljava/lang/String;)Ljava/util/Collection<Lorg/apache/cassandra/schema/LegacySchemaMigrator$Type;>;
    MethodParameters:
              Name  Flags
      keyspaceName  

  private static org.apache.cassandra.schema.LegacySchemaMigrator$Type readType(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Lorg/apache/cassandra/schema/LegacySchemaMigrator$Type;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // java.lang.String keyspaceName
        start local 1 // java.lang.String typeName
         0: .line 851
            aload 0 /* keyspaceName */
            aload 1 /* typeName */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.readTypeTimestamp:(Ljava/lang/String;Ljava/lang/String;)J
            lstore 2 /* timestamp */
        start local 2 // long timestamp
         1: .line 852
            aload 0 /* keyspaceName */
            aload 1 /* typeName */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.readTypeMetadata:(Ljava/lang/String;Ljava/lang/String;)Lorg/apache/cassandra/db/marshal/UserType;
            astore 4 /* metadata */
        start local 4 // org.apache.cassandra.db.marshal.UserType metadata
         2: .line 853
            new org.apache.cassandra.schema.LegacySchemaMigrator$Type
            dup
            lload 2 /* timestamp */
            aload 4 /* metadata */
            invokespecial org.apache.cassandra.schema.LegacySchemaMigrator$Type.<init>:(JLorg/apache/cassandra/db/marshal/UserType;)V
            areturn
        end local 4 // org.apache.cassandra.db.marshal.UserType metadata
        end local 2 // long timestamp
        end local 1 // java.lang.String typeName
        end local 0 // java.lang.String keyspaceName
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0  keyspaceName  Ljava/lang/String;
            0    3     1      typeName  Ljava/lang/String;
            1    3     2     timestamp  J
            2    3     4      metadata  Lorg/apache/cassandra/db/marshal/UserType;
    MethodParameters:
              Name  Flags
      keyspaceName  
      typeName      

  private static long readTypeTimestamp(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)J
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=12, args_size=2
        start local 0 // java.lang.String keyspaceName
        start local 1 // java.lang.String typeName
         0: .line 862
            ldc "system"
            invokestatic org.apache.cassandra.db.Keyspace.open:(Ljava/lang/String;)Lorg/apache/cassandra/db/Keyspace;
         1: .line 863
            ldc "schema_usertypes"
            invokevirtual org.apache.cassandra.db.Keyspace.getColumnFamilyStore:(Ljava/lang/String;)Lorg/apache/cassandra/db/ColumnFamilyStore;
         2: .line 862
            astore 2 /* store */
        start local 2 // org.apache.cassandra.db.ColumnFamilyStore store
         3: .line 865
            aload 2 /* store */
            getfield org.apache.cassandra.db.ColumnFamilyStore.metadata:Lorg/apache/cassandra/config/CFMetaData;
            getfield org.apache.cassandra.config.CFMetaData.comparator:Lorg/apache/cassandra/db/ClusteringComparator;
            astore 3 /* comparator */
        start local 3 // org.apache.cassandra.db.ClusteringComparator comparator
         4: .line 866
            aload 3 /* comparator */
            aload 3 /* comparator */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* typeName */
            aastore
            invokestatic org.apache.cassandra.db.Slice.make:(Lorg/apache/cassandra/db/ClusteringComparator;[Ljava/lang/Object;)Lorg/apache/cassandra/db/Slice;
            invokestatic org.apache.cassandra.db.Slices.with:(Lorg/apache/cassandra/db/ClusteringComparator;Lorg/apache/cassandra/db/Slice;)Lorg/apache/cassandra/db/Slices;
            astore 4 /* slices */
        start local 4 // org.apache.cassandra.db.Slices slices
         5: .line 867
            invokestatic org.apache.cassandra.utils.FBUtilities.nowInSeconds:()I
            istore 5 /* nowInSec */
        start local 5 // int nowInSec
         6: .line 868
            aload 2 /* store */
            getfield org.apache.cassandra.db.ColumnFamilyStore.metadata:Lorg/apache/cassandra/config/CFMetaData;
            getstatic org.apache.cassandra.db.marshal.AsciiType.instance:Lorg/apache/cassandra/db/marshal/AsciiType;
            aload 0 /* keyspaceName */
            invokevirtual org.apache.cassandra.db.marshal.AsciiType.fromString:(Ljava/lang/String;)Ljava/nio/ByteBuffer;
            invokevirtual org.apache.cassandra.config.CFMetaData.decorateKey:(Ljava/nio/ByteBuffer;)Lorg/apache/cassandra/db/DecoratedKey;
            astore 6 /* key */
        start local 6 // org.apache.cassandra.db.DecoratedKey key
         7: .line 869
            aload 2 /* store */
            getfield org.apache.cassandra.db.ColumnFamilyStore.metadata:Lorg/apache/cassandra/config/CFMetaData;
            iload 5 /* nowInSec */
            aload 6 /* key */
            aload 4 /* slices */
            invokestatic org.apache.cassandra.db.SinglePartitionReadCommand.create:(Lorg/apache/cassandra/config/CFMetaData;ILorg/apache/cassandra/db/DecoratedKey;Lorg/apache/cassandra/db/Slices;)Lorg/apache/cassandra/db/SinglePartitionReadCommand;
            astore 7 /* command */
        start local 7 // org.apache.cassandra.db.SinglePartitionReadCommand command
         8: .line 871
            aconst_null
            astore 8
            aconst_null
            astore 9
         9: aload 7 /* command */
            invokevirtual org.apache.cassandra.db.SinglePartitionReadCommand.executionController:()Lorg/apache/cassandra/db/ReadExecutionController;
            astore 10 /* controller */
        start local 10 // org.apache.cassandra.db.ReadExecutionController controller
        10: .line 872
            aload 7 /* command */
            aload 2 /* store */
            aload 10 /* controller */
            invokevirtual org.apache.cassandra.db.SinglePartitionReadCommand.queryMemtableAndDisk:(Lorg/apache/cassandra/db/ColumnFamilyStore;Lorg/apache/cassandra/db/ReadExecutionController;)Lorg/apache/cassandra/db/rows/UnfilteredRowIterator;
            iload 5 /* nowInSec */
            invokestatic org.apache.cassandra.db.rows.UnfilteredRowIterators.filter:(Lorg/apache/cassandra/db/rows/UnfilteredRowIterator;I)Lorg/apache/cassandra/db/rows/RowIterator;
            astore 11 /* partition */
        start local 11 // org.apache.cassandra.db.rows.RowIterator partition
        11: .line 874
            aload 11 /* partition */
            invokeinterface org.apache.cassandra.db.rows.RowIterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.rows.Row
            invokeinterface org.apache.cassandra.db.rows.Row.primaryKeyLivenessInfo:()Lorg/apache/cassandra/db/LivenessInfo;
            invokevirtual org.apache.cassandra.db.LivenessInfo.timestamp:()J
        12: .line 875
            aload 11 /* partition */
            ifnull 13
            aload 11 /* partition */
            invokeinterface org.apache.cassandra.db.rows.RowIterator.close:()V
      StackMap locals: java.lang.String java.lang.String org.apache.cassandra.db.ColumnFamilyStore org.apache.cassandra.db.ClusteringComparator org.apache.cassandra.db.Slices int org.apache.cassandra.db.DecoratedKey org.apache.cassandra.db.SinglePartitionReadCommand java.lang.Throwable java.lang.Throwable org.apache.cassandra.db.ReadExecutionController org.apache.cassandra.db.rows.RowIterator
      StackMap stack: long
        13: aload 10 /* controller */
            ifnull 14
            aload 10 /* controller */
            invokevirtual org.apache.cassandra.db.ReadExecutionController.close:()V
        14: .line 874
      StackMap locals:
      StackMap stack: long
            lreturn
      StackMap locals:
      StackMap stack: java.lang.Throwable
        15: astore 8
        16: .line 875
            aload 11 /* partition */
            ifnull 17
            aload 11 /* partition */
            invokeinterface org.apache.cassandra.db.rows.RowIterator.close:()V
        end local 11 // org.apache.cassandra.db.rows.RowIterator partition
      StackMap locals:
      StackMap stack:
        17: aload 8
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        18: astore 9
            aload 8
            ifnonnull 19
            aload 9
            astore 8
            goto 20
      StackMap locals:
      StackMap stack:
        19: aload 8
            aload 9
            if_acmpeq 20
            aload 8
            aload 9
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        20: aload 10 /* controller */
            ifnull 21
            aload 10 /* controller */
            invokevirtual org.apache.cassandra.db.ReadExecutionController.close:()V
        end local 10 // org.apache.cassandra.db.ReadExecutionController controller
      StackMap locals:
      StackMap stack:
        21: aload 8
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        22: astore 9
            aload 8
            ifnonnull 23
            aload 9
            astore 8
            goto 24
      StackMap locals:
      StackMap stack:
        23: aload 8
            aload 9
            if_acmpeq 24
            aload 8
            aload 9
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        24: aload 8
            athrow
        end local 7 // org.apache.cassandra.db.SinglePartitionReadCommand command
        end local 6 // org.apache.cassandra.db.DecoratedKey key
        end local 5 // int nowInSec
        end local 4 // org.apache.cassandra.db.Slices slices
        end local 3 // org.apache.cassandra.db.ClusteringComparator comparator
        end local 2 // org.apache.cassandra.db.ColumnFamilyStore store
        end local 1 // java.lang.String typeName
        end local 0 // java.lang.String keyspaceName
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   25     0  keyspaceName  Ljava/lang/String;
            0   25     1      typeName  Ljava/lang/String;
            3   25     2         store  Lorg/apache/cassandra/db/ColumnFamilyStore;
            4   25     3    comparator  Lorg/apache/cassandra/db/ClusteringComparator;
            5   25     4        slices  Lorg/apache/cassandra/db/Slices;
            6   25     5      nowInSec  I
            7   25     6           key  Lorg/apache/cassandra/db/DecoratedKey;
            8   25     7       command  Lorg/apache/cassandra/db/SinglePartitionReadCommand;
           10   21    10    controller  Lorg/apache/cassandra/db/ReadExecutionController;
           11   17    11     partition  Lorg/apache/cassandra/db/rows/RowIterator;
      Exception table:
        from    to  target  type
          11    12      15  any
          10    13      18  any
          15    18      18  any
           9    14      22  any
          15    22      22  any
    MethodParameters:
              Name  Flags
      keyspaceName  
      typeName      

  private static org.apache.cassandra.db.marshal.UserType readTypeMetadata(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Lorg/apache/cassandra/db/marshal/UserType;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=6, args_size=2
        start local 0 // java.lang.String keyspaceName
        start local 1 // java.lang.String typeName
         0: .line 880
            ldc "SELECT * FROM %s.%s WHERE keyspace_name = ? AND type_name = ?"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
         1: .line 881
            ldc "system"
            aastore
            dup
            iconst_1
         2: .line 882
            ldc "schema_usertypes"
            aastore
         3: .line 880
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 2 /* query */
        start local 2 // java.lang.String query
         4: .line 883
            aload 2 /* query */
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* keyspaceName */
            aastore
            dup
            iconst_1
            aload 1 /* typeName */
            aastore
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.query:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/apache/cassandra/cql3/UntypedResultSet;
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet.one:()Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
            astore 3 /* row */
        start local 3 // org.apache.cassandra.cql3.UntypedResultSet$Row row
         5: .line 886
            aload 3 /* row */
            ldc "field_names"
            getstatic org.apache.cassandra.db.marshal.UTF8Type.instance:Lorg/apache/cassandra/db/marshal/UTF8Type;
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getList:(Ljava/lang/String;Lorg/apache/cassandra/db/marshal/AbstractType;)Ljava/util/List;
         6: .line 887
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
         7: .line 888
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/apache/cassandra/schema/LegacySchemaMigrator.lambda$15(Ljava/lang/String;)Lorg/apache/cassandra/cql3/FieldIdentifier; (6)
                  (Ljava/lang/String;)Lorg/apache/cassandra/cql3/FieldIdentifier;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         8: .line 889
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
         9: .line 885
            astore 4 /* names */
        start local 4 // java.util.List names
        10: .line 892
            aload 3 /* row */
            ldc "field_types"
            getstatic org.apache.cassandra.db.marshal.UTF8Type.instance:Lorg/apache/cassandra/db/marshal/UTF8Type;
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getList:(Ljava/lang/String;Lorg/apache/cassandra/db/marshal/AbstractType;)Ljava/util/List;
        11: .line 893
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
        12: .line 894
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/apache/cassandra/schema/LegacySchemaMigrator.parseType(Ljava/lang/String;)Lorg/apache/cassandra/db/marshal/AbstractType; (6)
                  (Ljava/lang/String;)Lorg/apache/cassandra/db/marshal/AbstractType;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
        13: .line 895
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
        14: .line 891
            astore 5 /* types */
        start local 5 // java.util.List types
        15: .line 897
            new org.apache.cassandra.db.marshal.UserType
            dup
            aload 0 /* keyspaceName */
            aload 1 /* typeName */
            invokestatic org.apache.cassandra.utils.ByteBufferUtil.bytes:(Ljava/lang/String;)Ljava/nio/ByteBuffer;
            aload 4 /* names */
            aload 5 /* types */
            iconst_1
            invokespecial org.apache.cassandra.db.marshal.UserType.<init>:(Ljava/lang/String;Ljava/nio/ByteBuffer;Ljava/util/List;Ljava/util/List;Z)V
            areturn
        end local 5 // java.util.List types
        end local 4 // java.util.List names
        end local 3 // org.apache.cassandra.cql3.UntypedResultSet$Row row
        end local 2 // java.lang.String query
        end local 1 // java.lang.String typeName
        end local 0 // java.lang.String keyspaceName
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   16     0  keyspaceName  Ljava/lang/String;
            0   16     1      typeName  Ljava/lang/String;
            4   16     2         query  Ljava/lang/String;
            5   16     3           row  Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
           10   16     4         names  Ljava/util/List<Lorg/apache/cassandra/cql3/FieldIdentifier;>;
           15   16     5         types  Ljava/util/List<Lorg/apache/cassandra/db/marshal/AbstractType<*>;>;
    MethodParameters:
              Name  Flags
      keyspaceName  
      typeName      

  private static java.util.Collection<org.apache.cassandra.schema.LegacySchemaMigrator$Function> readFunctions(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/Collection;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // java.lang.String keyspaceName
         0: .line 906
            ldc "SELECT function_name, signature FROM %s.%s WHERE keyspace_name = ?"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
         1: .line 907
            ldc "system"
            aastore
            dup
            iconst_1
         2: .line 908
            ldc "schema_functions"
            aastore
         3: .line 906
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 1 /* query */
        start local 1 // java.lang.String query
         4: .line 909
            invokestatic com.google.common.collect.HashMultimap.create:()Lcom/google/common/collect/HashMultimap;
            astore 2 /* functionSignatures */
        start local 2 // com.google.common.collect.HashMultimap functionSignatures
         5: .line 910
            aload 1 /* query */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* keyspaceName */
            aastore
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.query:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/apache/cassandra/cql3/UntypedResultSet;
            aload 2 /* functionSignatures */
            invokedynamic accept(Lcom/google/common/collect/HashMultimap;)Ljava/util/function/Consumer;
              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;)V
                  org/apache/cassandra/schema/LegacySchemaMigrator.lambda$17(Lcom/google/common/collect/HashMultimap;Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)V (6)
                  (Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)V
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet.forEach:(Ljava/util/function/Consumer;)V
         6: .line 912
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* functions */
        start local 3 // java.util.Collection functions
         7: .line 913
            aload 2 /* functionSignatures */
            invokevirtual com.google.common.collect.HashMultimap.entries:()Ljava/util/Set;
            aload 3 /* functions */
            aload 0 /* keyspaceName */
            invokedynamic accept(Ljava/util/Collection;Ljava/lang/String;)Ljava/util/function/Consumer;
              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;)V
                  org/apache/cassandra/schema/LegacySchemaMigrator.lambda$18(Ljava/util/Collection;Ljava/lang/String;Ljava/util/Map$Entry;)V (6)
                  (Ljava/util/Map$Entry;)V
            invokeinterface java.util.Set.forEach:(Ljava/util/function/Consumer;)V
         8: .line 914
            aload 3 /* functions */
            areturn
        end local 3 // java.util.Collection functions
        end local 2 // com.google.common.collect.HashMultimap functionSignatures
        end local 1 // java.lang.String query
        end local 0 // java.lang.String keyspaceName
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    9     0        keyspaceName  Ljava/lang/String;
            4    9     1               query  Ljava/lang/String;
            5    9     2  functionSignatures  Lcom/google/common/collect/HashMultimap<Ljava/lang/String;Ljava/util/List<Ljava/lang/String;>;>;
            7    9     3           functions  Ljava/util/Collection<Lorg/apache/cassandra/schema/LegacySchemaMigrator$Function;>;
    Signature: (Ljava/lang/String;)Ljava/util/Collection<Lorg/apache/cassandra/schema/LegacySchemaMigrator$Function;>;
    MethodParameters:
              Name  Flags
      keyspaceName  

  private static org.apache.cassandra.schema.LegacySchemaMigrator$Function readFunction(java.lang.String, java.lang.String, java.util.List<java.lang.String>);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Lorg/apache/cassandra/schema/LegacySchemaMigrator$Function;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // java.lang.String keyspaceName
        start local 1 // java.lang.String functionName
        start local 2 // java.util.List signature
         0: .line 919
            aload 0 /* keyspaceName */
            aload 1 /* functionName */
            aload 2 /* signature */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.readFunctionTimestamp:(Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)J
            lstore 3 /* timestamp */
        start local 3 // long timestamp
         1: .line 920
            aload 0 /* keyspaceName */
            aload 1 /* functionName */
            aload 2 /* signature */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.readFunctionMetadata:(Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Lorg/apache/cassandra/cql3/functions/UDFunction;
            astore 5 /* metadata */
        start local 5 // org.apache.cassandra.cql3.functions.UDFunction metadata
         2: .line 921
            new org.apache.cassandra.schema.LegacySchemaMigrator$Function
            dup
            lload 3 /* timestamp */
            aload 5 /* metadata */
            invokespecial org.apache.cassandra.schema.LegacySchemaMigrator$Function.<init>:(JLorg/apache/cassandra/cql3/functions/UDFunction;)V
            areturn
        end local 5 // org.apache.cassandra.cql3.functions.UDFunction metadata
        end local 3 // long timestamp
        end local 2 // java.util.List signature
        end local 1 // java.lang.String functionName
        end local 0 // java.lang.String keyspaceName
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0  keyspaceName  Ljava/lang/String;
            0    3     1  functionName  Ljava/lang/String;
            0    3     2     signature  Ljava/util/List<Ljava/lang/String;>;
            1    3     3     timestamp  J
            2    3     5      metadata  Lorg/apache/cassandra/cql3/functions/UDFunction;
    Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/List<Ljava/lang/String;>;)Lorg/apache/cassandra/schema/LegacySchemaMigrator$Function;
    MethodParameters:
              Name  Flags
      keyspaceName  
      functionName  
      signature     

  private static long readFunctionTimestamp(java.lang.String, java.lang.String, java.util.List<java.lang.String>);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)J
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // java.lang.String keyspaceName
        start local 1 // java.lang.String functionName
        start local 2 // java.util.List signature
         0: .line 926
            ldc "SELECT writeTime(return_type) AS timestamp FROM %s.%s WHERE keyspace_name = ? AND function_name = ? AND signature = ?"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
         1: .line 929
            ldc "system"
            aastore
            dup
            iconst_1
         2: .line 930
            ldc "schema_functions"
            aastore
         3: .line 926
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 3 /* query */
        start local 3 // java.lang.String query
         4: .line 931
            aload 3 /* query */
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* keyspaceName */
            aastore
            dup
            iconst_1
            aload 1 /* functionName */
            aastore
            dup
            iconst_2
            aload 2 /* signature */
            aastore
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.query:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/apache/cassandra/cql3/UntypedResultSet;
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet.one:()Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
            ldc "timestamp"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getLong:(Ljava/lang/String;)J
            lreturn
        end local 3 // java.lang.String query
        end local 2 // java.util.List signature
        end local 1 // java.lang.String functionName
        end local 0 // java.lang.String keyspaceName
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0  keyspaceName  Ljava/lang/String;
            0    5     1  functionName  Ljava/lang/String;
            0    5     2     signature  Ljava/util/List<Ljava/lang/String;>;
            4    5     3         query  Ljava/lang/String;
    Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/List<Ljava/lang/String;>;)J
    MethodParameters:
              Name  Flags
      keyspaceName  
      functionName  
      signature     

  private static org.apache.cassandra.cql3.functions.UDFunction readFunctionMetadata(java.lang.String, java.lang.String, java.util.List<java.lang.String>);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Lorg/apache/cassandra/cql3/functions/UDFunction;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=8, locals=13, args_size=3
        start local 0 // java.lang.String keyspaceName
        start local 1 // java.lang.String functionName
        start local 2 // java.util.List signature
         0: .line 936
            ldc "SELECT * FROM %s.%s WHERE keyspace_name = ? AND function_name = ? AND signature = ?"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
         1: .line 937
            ldc "system"
            aastore
            dup
            iconst_1
         2: .line 938
            ldc "schema_functions"
            aastore
         3: .line 936
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 3 /* query */
        start local 3 // java.lang.String query
         4: .line 939
            aload 3 /* query */
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* keyspaceName */
            aastore
            dup
            iconst_1
            aload 1 /* functionName */
            aastore
            dup
            iconst_2
            aload 2 /* signature */
            aastore
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.query:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/apache/cassandra/cql3/UntypedResultSet;
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet.one:()Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
            astore 4 /* row */
        start local 4 // org.apache.cassandra.cql3.UntypedResultSet$Row row
         5: .line 941
            new org.apache.cassandra.cql3.functions.FunctionName
            dup
            aload 0 /* keyspaceName */
            aload 1 /* functionName */
            invokespecial org.apache.cassandra.cql3.functions.FunctionName.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 5 /* name */
        start local 5 // org.apache.cassandra.cql3.functions.FunctionName name
         6: .line 943
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 6 /* argNames */
        start local 6 // java.util.List argNames
         7: .line 944
            aload 4 /* row */
            ldc "argument_names"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.has:(Ljava/lang/String;)Z
            ifeq 12
         8: .line 945
            aload 4 /* row */
            ldc "argument_names"
            getstatic org.apache.cassandra.db.marshal.UTF8Type.instance:Lorg/apache/cassandra/db/marshal/UTF8Type;
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getList:(Ljava/lang/String;Lorg/apache/cassandra/db/marshal/AbstractType;)Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 8
            goto 11
      StackMap locals: java.lang.String java.lang.String java.util.List java.lang.String org.apache.cassandra.cql3.UntypedResultSet$Row org.apache.cassandra.cql3.functions.FunctionName java.util.List top java.util.Iterator
      StackMap stack:
         9: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 7 /* arg */
        start local 7 // java.lang.String arg
        10: .line 946
            aload 6 /* argNames */
            new org.apache.cassandra.cql3.ColumnIdentifier
            dup
            aload 7 /* arg */
            iconst_1
            invokespecial org.apache.cassandra.cql3.ColumnIdentifier.<init>:(Ljava/lang/String;Z)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 7 // java.lang.String arg
        11: .line 945
      StackMap locals:
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        12: .line 948
      StackMap locals: java.lang.String java.lang.String java.util.List java.lang.String org.apache.cassandra.cql3.UntypedResultSet$Row org.apache.cassandra.cql3.functions.FunctionName java.util.List
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 7 /* argTypes */
        start local 7 // java.util.List argTypes
        13: .line 949
            aload 4 /* row */
            ldc "argument_types"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.has:(Ljava/lang/String;)Z
            ifeq 18
        14: .line 950
            aload 4 /* row */
            ldc "argument_types"
            getstatic org.apache.cassandra.db.marshal.UTF8Type.instance:Lorg/apache/cassandra/db/marshal/UTF8Type;
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getList:(Ljava/lang/String;Lorg/apache/cassandra/db/marshal/AbstractType;)Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9
            goto 17
      StackMap locals: java.lang.String java.lang.String java.util.List java.lang.String org.apache.cassandra.cql3.UntypedResultSet$Row org.apache.cassandra.cql3.functions.FunctionName java.util.List java.util.List top java.util.Iterator
      StackMap stack:
        15: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 8 /* type */
        start local 8 // java.lang.String type
        16: .line 951
            aload 7 /* argTypes */
            aload 8 /* type */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.parseType:(Ljava/lang/String;)Lorg/apache/cassandra/db/marshal/AbstractType;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 8 // java.lang.String type
        17: .line 950
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 15
        18: .line 953
      StackMap locals: java.lang.String java.lang.String java.util.List java.lang.String org.apache.cassandra.cql3.UntypedResultSet$Row org.apache.cassandra.cql3.functions.FunctionName java.util.List java.util.List
      StackMap stack:
            aload 4 /* row */
            ldc "return_type"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.parseType:(Ljava/lang/String;)Lorg/apache/cassandra/db/marshal/AbstractType;
            astore 8 /* returnType */
        start local 8 // org.apache.cassandra.db.marshal.AbstractType returnType
        19: .line 955
            aload 4 /* row */
            ldc "language"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            astore 9 /* language */
        start local 9 // java.lang.String language
        20: .line 956
            aload 4 /* row */
            ldc "body"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            astore 10 /* body */
        start local 10 // java.lang.String body
        21: .line 957
            aload 4 /* row */
            ldc "called_on_null_input"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getBoolean:(Ljava/lang/String;)Z
            istore 11 /* calledOnNullInput */
        start local 11 // boolean calledOnNullInput
        22: .line 961
            aload 5 /* name */
            aload 6 /* argNames */
            aload 7 /* argTypes */
            aload 8 /* returnType */
            iload 11 /* calledOnNullInput */
            aload 9 /* language */
            aload 10 /* body */
            invokestatic org.apache.cassandra.cql3.functions.UDFunction.create:(Lorg/apache/cassandra/cql3/functions/FunctionName;Ljava/util/List;Ljava/util/List;Lorg/apache/cassandra/db/marshal/AbstractType;ZLjava/lang/String;Ljava/lang/String;)Lorg/apache/cassandra/cql3/functions/UDFunction;
        23: areturn
        24: .line 963
      StackMap locals: java.lang.String java.lang.String java.util.List java.lang.String org.apache.cassandra.cql3.UntypedResultSet$Row org.apache.cassandra.cql3.functions.FunctionName java.util.List java.util.List org.apache.cassandra.db.marshal.AbstractType java.lang.String java.lang.String int
      StackMap stack: org.apache.cassandra.exceptions.InvalidRequestException
            astore 12 /* e */
        start local 12 // org.apache.cassandra.exceptions.InvalidRequestException e
        25: .line 965
            aload 5 /* name */
            aload 6 /* argNames */
            aload 7 /* argTypes */
            aload 8 /* returnType */
            iload 11 /* calledOnNullInput */
            aload 9 /* language */
            aload 10 /* body */
            aload 12 /* e */
            invokestatic org.apache.cassandra.cql3.functions.UDFunction.createBrokenFunction:(Lorg/apache/cassandra/cql3/functions/FunctionName;Ljava/util/List;Ljava/util/List;Lorg/apache/cassandra/db/marshal/AbstractType;ZLjava/lang/String;Ljava/lang/String;Lorg/apache/cassandra/exceptions/InvalidRequestException;)Lorg/apache/cassandra/cql3/functions/UDFunction;
            areturn
        end local 12 // org.apache.cassandra.exceptions.InvalidRequestException e
        end local 11 // boolean calledOnNullInput
        end local 10 // java.lang.String body
        end local 9 // java.lang.String language
        end local 8 // org.apache.cassandra.db.marshal.AbstractType returnType
        end local 7 // java.util.List argTypes
        end local 6 // java.util.List argNames
        end local 5 // org.apache.cassandra.cql3.functions.FunctionName name
        end local 4 // org.apache.cassandra.cql3.UntypedResultSet$Row row
        end local 3 // java.lang.String query
        end local 2 // java.util.List signature
        end local 1 // java.lang.String functionName
        end local 0 // java.lang.String keyspaceName
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   26     0       keyspaceName  Ljava/lang/String;
            0   26     1       functionName  Ljava/lang/String;
            0   26     2          signature  Ljava/util/List<Ljava/lang/String;>;
            4   26     3              query  Ljava/lang/String;
            5   26     4                row  Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
            6   26     5               name  Lorg/apache/cassandra/cql3/functions/FunctionName;
            7   26     6           argNames  Ljava/util/List<Lorg/apache/cassandra/cql3/ColumnIdentifier;>;
           10   11     7                arg  Ljava/lang/String;
           13   26     7           argTypes  Ljava/util/List<Lorg/apache/cassandra/db/marshal/AbstractType<*>;>;
           16   17     8               type  Ljava/lang/String;
           19   26     8         returnType  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
           20   26     9           language  Ljava/lang/String;
           21   26    10               body  Ljava/lang/String;
           22   26    11  calledOnNullInput  Z
           25   26    12                  e  Lorg/apache/cassandra/exceptions/InvalidRequestException;
      Exception table:
        from    to  target  type
          22    23      24  Class org.apache.cassandra.exceptions.InvalidRequestException
    Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/List<Ljava/lang/String;>;)Lorg/apache/cassandra/cql3/functions/UDFunction;
    MethodParameters:
              Name  Flags
      keyspaceName  
      functionName  
      signature     

  private static java.util.Collection<org.apache.cassandra.schema.LegacySchemaMigrator$Aggregate> readAggregates(org.apache.cassandra.schema.Functions, java.lang.String);
    descriptor: (Lorg/apache/cassandra/schema/Functions;Ljava/lang/String;)Ljava/util/Collection;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // org.apache.cassandra.schema.Functions functions
        start local 1 // java.lang.String keyspaceName
         0: .line 975
            ldc "SELECT aggregate_name, signature FROM %s.%s WHERE keyspace_name = ?"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
         1: .line 976
            ldc "system"
            aastore
            dup
            iconst_1
         2: .line 977
            ldc "schema_aggregates"
            aastore
         3: .line 975
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 2 /* query */
        start local 2 // java.lang.String query
         4: .line 978
            invokestatic com.google.common.collect.HashMultimap.create:()Lcom/google/common/collect/HashMultimap;
            astore 3 /* aggregateSignatures */
        start local 3 // com.google.common.collect.HashMultimap aggregateSignatures
         5: .line 979
            aload 2 /* query */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* keyspaceName */
            aastore
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.query:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/apache/cassandra/cql3/UntypedResultSet;
            aload 3 /* aggregateSignatures */
            invokedynamic accept(Lcom/google/common/collect/HashMultimap;)Ljava/util/function/Consumer;
              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;)V
                  org/apache/cassandra/schema/LegacySchemaMigrator.lambda$19(Lcom/google/common/collect/HashMultimap;Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)V (6)
                  (Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)V
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet.forEach:(Ljava/util/function/Consumer;)V
         6: .line 981
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 4 /* aggregates */
        start local 4 // java.util.Collection aggregates
         7: .line 982
            aload 3 /* aggregateSignatures */
            invokevirtual com.google.common.collect.HashMultimap.entries:()Ljava/util/Set;
            aload 4 /* aggregates */
            aload 0 /* functions */
            aload 1 /* keyspaceName */
            invokedynamic accept(Ljava/util/Collection;Lorg/apache/cassandra/schema/Functions;Ljava/lang/String;)Ljava/util/function/Consumer;
              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;)V
                  org/apache/cassandra/schema/LegacySchemaMigrator.lambda$20(Ljava/util/Collection;Lorg/apache/cassandra/schema/Functions;Ljava/lang/String;Ljava/util/Map$Entry;)V (6)
                  (Ljava/util/Map$Entry;)V
            invokeinterface java.util.Set.forEach:(Ljava/util/function/Consumer;)V
         8: .line 983
            aload 4 /* aggregates */
            areturn
        end local 4 // java.util.Collection aggregates
        end local 3 // com.google.common.collect.HashMultimap aggregateSignatures
        end local 2 // java.lang.String query
        end local 1 // java.lang.String keyspaceName
        end local 0 // org.apache.cassandra.schema.Functions functions
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    9     0            functions  Lorg/apache/cassandra/schema/Functions;
            0    9     1         keyspaceName  Ljava/lang/String;
            4    9     2                query  Ljava/lang/String;
            5    9     3  aggregateSignatures  Lcom/google/common/collect/HashMultimap<Ljava/lang/String;Ljava/util/List<Ljava/lang/String;>;>;
            7    9     4           aggregates  Ljava/util/Collection<Lorg/apache/cassandra/schema/LegacySchemaMigrator$Aggregate;>;
    Signature: (Lorg/apache/cassandra/schema/Functions;Ljava/lang/String;)Ljava/util/Collection<Lorg/apache/cassandra/schema/LegacySchemaMigrator$Aggregate;>;
    MethodParameters:
              Name  Flags
      functions     
      keyspaceName  

  private static org.apache.cassandra.schema.LegacySchemaMigrator$Aggregate readAggregate(org.apache.cassandra.schema.Functions, java.lang.String, java.lang.String, java.util.List<java.lang.String>);
    descriptor: (Lorg/apache/cassandra/schema/Functions;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Lorg/apache/cassandra/schema/LegacySchemaMigrator$Aggregate;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=7, args_size=4
        start local 0 // org.apache.cassandra.schema.Functions functions
        start local 1 // java.lang.String keyspaceName
        start local 2 // java.lang.String aggregateName
        start local 3 // java.util.List signature
         0: .line 988
            aload 1 /* keyspaceName */
            aload 2 /* aggregateName */
            aload 3 /* signature */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.readAggregateTimestamp:(Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)J
            lstore 4 /* timestamp */
        start local 4 // long timestamp
         1: .line 989
            aload 0 /* functions */
            aload 1 /* keyspaceName */
            aload 2 /* aggregateName */
            aload 3 /* signature */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.readAggregateMetadata:(Lorg/apache/cassandra/schema/Functions;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Lorg/apache/cassandra/cql3/functions/UDAggregate;
            astore 6 /* metadata */
        start local 6 // org.apache.cassandra.cql3.functions.UDAggregate metadata
         2: .line 990
            new org.apache.cassandra.schema.LegacySchemaMigrator$Aggregate
            dup
            lload 4 /* timestamp */
            aload 6 /* metadata */
            invokespecial org.apache.cassandra.schema.LegacySchemaMigrator$Aggregate.<init>:(JLorg/apache/cassandra/cql3/functions/UDAggregate;)V
            areturn
        end local 6 // org.apache.cassandra.cql3.functions.UDAggregate metadata
        end local 4 // long timestamp
        end local 3 // java.util.List signature
        end local 2 // java.lang.String aggregateName
        end local 1 // java.lang.String keyspaceName
        end local 0 // org.apache.cassandra.schema.Functions functions
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0      functions  Lorg/apache/cassandra/schema/Functions;
            0    3     1   keyspaceName  Ljava/lang/String;
            0    3     2  aggregateName  Ljava/lang/String;
            0    3     3      signature  Ljava/util/List<Ljava/lang/String;>;
            1    3     4      timestamp  J
            2    3     6       metadata  Lorg/apache/cassandra/cql3/functions/UDAggregate;
    Signature: (Lorg/apache/cassandra/schema/Functions;Ljava/lang/String;Ljava/lang/String;Ljava/util/List<Ljava/lang/String;>;)Lorg/apache/cassandra/schema/LegacySchemaMigrator$Aggregate;
    MethodParameters:
               Name  Flags
      functions      
      keyspaceName   
      aggregateName  
      signature      

  private static long readAggregateTimestamp(java.lang.String, java.lang.String, java.util.List<java.lang.String>);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)J
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // java.lang.String keyspaceName
        start local 1 // java.lang.String aggregateName
        start local 2 // java.util.List signature
         0: .line 995
            ldc "SELECT writeTime(return_type) AS timestamp FROM %s.%s WHERE keyspace_name = ? AND aggregate_name = ? AND signature = ?"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
         1: .line 998
            ldc "system"
            aastore
            dup
            iconst_1
         2: .line 999
            ldc "schema_aggregates"
            aastore
         3: .line 995
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 3 /* query */
        start local 3 // java.lang.String query
         4: .line 1000
            aload 3 /* query */
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* keyspaceName */
            aastore
            dup
            iconst_1
            aload 1 /* aggregateName */
            aastore
            dup
            iconst_2
            aload 2 /* signature */
            aastore
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.query:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/apache/cassandra/cql3/UntypedResultSet;
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet.one:()Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
            ldc "timestamp"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getLong:(Ljava/lang/String;)J
            lreturn
        end local 3 // java.lang.String query
        end local 2 // java.util.List signature
        end local 1 // java.lang.String aggregateName
        end local 0 // java.lang.String keyspaceName
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    5     0   keyspaceName  Ljava/lang/String;
            0    5     1  aggregateName  Ljava/lang/String;
            0    5     2      signature  Ljava/util/List<Ljava/lang/String;>;
            4    5     3          query  Ljava/lang/String;
    Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/List<Ljava/lang/String;>;)J
    MethodParameters:
               Name  Flags
      keyspaceName   
      aggregateName  
      signature      

  private static org.apache.cassandra.cql3.functions.UDAggregate readAggregateMetadata(org.apache.cassandra.schema.Functions, java.lang.String, java.lang.String, java.util.List<java.lang.String>);
    descriptor: (Lorg/apache/cassandra/schema/Functions;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Lorg/apache/cassandra/cql3/functions/UDAggregate;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=8, locals=15, args_size=4
        start local 0 // org.apache.cassandra.schema.Functions functions
        start local 1 // java.lang.String keyspaceName
        start local 2 // java.lang.String functionName
        start local 3 // java.util.List signature
         0: .line 1005
            ldc "SELECT * FROM %s.%s WHERE keyspace_name = ? AND aggregate_name = ? AND signature = ?"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
         1: .line 1006
            ldc "system"
            aastore
            dup
            iconst_1
         2: .line 1007
            ldc "schema_aggregates"
            aastore
         3: .line 1005
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 4 /* query */
        start local 4 // java.lang.String query
         4: .line 1008
            aload 4 /* query */
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* keyspaceName */
            aastore
            dup
            iconst_1
            aload 2 /* functionName */
            aastore
            dup
            iconst_2
            aload 3 /* signature */
            aastore
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.query:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/apache/cassandra/cql3/UntypedResultSet;
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet.one:()Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
            astore 5 /* row */
        start local 5 // org.apache.cassandra.cql3.UntypedResultSet$Row row
         5: .line 1010
            new org.apache.cassandra.cql3.functions.FunctionName
            dup
            aload 1 /* keyspaceName */
            aload 2 /* functionName */
            invokespecial org.apache.cassandra.cql3.functions.FunctionName.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 6 /* name */
        start local 6 // org.apache.cassandra.cql3.functions.FunctionName name
         6: .line 1012
            aload 5 /* row */
            ldc "argument_types"
            getstatic org.apache.cassandra.db.marshal.UTF8Type.instance:Lorg/apache/cassandra/db/marshal/UTF8Type;
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getList:(Ljava/lang/String;Lorg/apache/cassandra/db/marshal/AbstractType;)Ljava/util/List;
            astore 7 /* types */
        start local 7 // java.util.List types
         7: .line 1014
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 8 /* argTypes */
        start local 8 // java.util.List argTypes
         8: .line 1015
            aload 7 /* types */
            ifnull 14
         9: .line 1017
            new java.util.ArrayList
            dup
            aload 7 /* types */
            invokeinterface java.util.List.size:()I
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 8 /* argTypes */
        10: .line 1018
            aload 7 /* types */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 10
            goto 13
      StackMap locals: org.apache.cassandra.schema.Functions java.lang.String java.lang.String java.util.List java.lang.String org.apache.cassandra.cql3.UntypedResultSet$Row org.apache.cassandra.cql3.functions.FunctionName java.util.List java.util.List top java.util.Iterator
      StackMap stack:
        11: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 9 /* type */
        start local 9 // java.lang.String type
        12: .line 1019
            aload 8 /* argTypes */
            aload 9 /* type */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.parseType:(Ljava/lang/String;)Lorg/apache/cassandra/db/marshal/AbstractType;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 9 // java.lang.String type
        13: .line 1018
      StackMap locals:
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 11
        14: .line 1022
      StackMap locals: org.apache.cassandra.schema.Functions java.lang.String java.lang.String java.util.List java.lang.String org.apache.cassandra.cql3.UntypedResultSet$Row org.apache.cassandra.cql3.functions.FunctionName java.util.List java.util.List
      StackMap stack:
            aload 5 /* row */
            ldc "return_type"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.parseType:(Ljava/lang/String;)Lorg/apache/cassandra/db/marshal/AbstractType;
            astore 9 /* returnType */
        start local 9 // org.apache.cassandra.db.marshal.AbstractType returnType
        15: .line 1024
            new org.apache.cassandra.cql3.functions.FunctionName
            dup
            aload 1 /* keyspaceName */
            aload 5 /* row */
            ldc "state_func"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokespecial org.apache.cassandra.cql3.functions.FunctionName.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 10 /* stateFunc */
        start local 10 // org.apache.cassandra.cql3.functions.FunctionName stateFunc
        16: .line 1025
            aload 5 /* row */
            ldc "state_type"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.parseType:(Ljava/lang/String;)Lorg/apache/cassandra/db/marshal/AbstractType;
            astore 11 /* stateType */
        start local 11 // org.apache.cassandra.db.marshal.AbstractType stateType
        17: .line 1026
            aload 5 /* row */
            ldc "final_func"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.has:(Ljava/lang/String;)Z
            ifeq 18
            new org.apache.cassandra.cql3.functions.FunctionName
            dup
            aload 1 /* keyspaceName */
            aload 5 /* row */
            ldc "final_func"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokespecial org.apache.cassandra.cql3.functions.FunctionName.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            goto 19
      StackMap locals: org.apache.cassandra.db.marshal.AbstractType org.apache.cassandra.cql3.functions.FunctionName org.apache.cassandra.db.marshal.AbstractType
      StackMap stack:
        18: aconst_null
      StackMap locals:
      StackMap stack: org.apache.cassandra.cql3.functions.FunctionName
        19: astore 12 /* finalFunc */
        start local 12 // org.apache.cassandra.cql3.functions.FunctionName finalFunc
        20: .line 1027
            aload 5 /* row */
            ldc "initcond"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.has:(Ljava/lang/String;)Z
            ifeq 21
            aload 5 /* row */
            ldc "initcond"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getBytes:(Ljava/lang/String;)Ljava/nio/ByteBuffer;
            goto 22
      StackMap locals: org.apache.cassandra.cql3.functions.FunctionName
      StackMap stack:
        21: aconst_null
      StackMap locals:
      StackMap stack: java.nio.ByteBuffer
        22: astore 13 /* initcond */
        start local 13 // java.nio.ByteBuffer initcond
        23: .line 1031
            aload 0 /* functions */
            aload 6 /* name */
            aload 8 /* argTypes */
            aload 9 /* returnType */
            aload 10 /* stateFunc */
            aload 12 /* finalFunc */
            aload 11 /* stateType */
            aload 13 /* initcond */
            invokestatic org.apache.cassandra.cql3.functions.UDAggregate.create:(Lorg/apache/cassandra/schema/Functions;Lorg/apache/cassandra/cql3/functions/FunctionName;Ljava/util/List;Lorg/apache/cassandra/db/marshal/AbstractType;Lorg/apache/cassandra/cql3/functions/FunctionName;Lorg/apache/cassandra/cql3/functions/FunctionName;Lorg/apache/cassandra/db/marshal/AbstractType;Ljava/nio/ByteBuffer;)Lorg/apache/cassandra/cql3/functions/UDAggregate;
        24: areturn
        25: .line 1033
      StackMap locals: org.apache.cassandra.schema.Functions java.lang.String java.lang.String java.util.List java.lang.String org.apache.cassandra.cql3.UntypedResultSet$Row org.apache.cassandra.cql3.functions.FunctionName java.util.List java.util.List org.apache.cassandra.db.marshal.AbstractType org.apache.cassandra.cql3.functions.FunctionName org.apache.cassandra.db.marshal.AbstractType org.apache.cassandra.cql3.functions.FunctionName java.nio.ByteBuffer
      StackMap stack: org.apache.cassandra.exceptions.InvalidRequestException
            astore 14 /* reason */
        start local 14 // org.apache.cassandra.exceptions.InvalidRequestException reason
        26: .line 1035
            aload 6 /* name */
            aload 8 /* argTypes */
            aload 9 /* returnType */
            aload 13 /* initcond */
            aload 14 /* reason */
            invokestatic org.apache.cassandra.cql3.functions.UDAggregate.createBroken:(Lorg/apache/cassandra/cql3/functions/FunctionName;Ljava/util/List;Lorg/apache/cassandra/db/marshal/AbstractType;Ljava/nio/ByteBuffer;Lorg/apache/cassandra/exceptions/InvalidRequestException;)Lorg/apache/cassandra/cql3/functions/UDAggregate;
            areturn
        end local 14 // org.apache.cassandra.exceptions.InvalidRequestException reason
        end local 13 // java.nio.ByteBuffer initcond
        end local 12 // org.apache.cassandra.cql3.functions.FunctionName finalFunc
        end local 11 // org.apache.cassandra.db.marshal.AbstractType stateType
        end local 10 // org.apache.cassandra.cql3.functions.FunctionName stateFunc
        end local 9 // org.apache.cassandra.db.marshal.AbstractType returnType
        end local 8 // java.util.List argTypes
        end local 7 // java.util.List types
        end local 6 // org.apache.cassandra.cql3.functions.FunctionName name
        end local 5 // org.apache.cassandra.cql3.UntypedResultSet$Row row
        end local 4 // java.lang.String query
        end local 3 // java.util.List signature
        end local 2 // java.lang.String functionName
        end local 1 // java.lang.String keyspaceName
        end local 0 // org.apache.cassandra.schema.Functions functions
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   27     0     functions  Lorg/apache/cassandra/schema/Functions;
            0   27     1  keyspaceName  Ljava/lang/String;
            0   27     2  functionName  Ljava/lang/String;
            0   27     3     signature  Ljava/util/List<Ljava/lang/String;>;
            4   27     4         query  Ljava/lang/String;
            5   27     5           row  Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
            6   27     6          name  Lorg/apache/cassandra/cql3/functions/FunctionName;
            7   27     7         types  Ljava/util/List<Ljava/lang/String;>;
            8   27     8      argTypes  Ljava/util/List<Lorg/apache/cassandra/db/marshal/AbstractType<*>;>;
           12   13     9          type  Ljava/lang/String;
           15   27     9    returnType  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
           16   27    10     stateFunc  Lorg/apache/cassandra/cql3/functions/FunctionName;
           17   27    11     stateType  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
           20   27    12     finalFunc  Lorg/apache/cassandra/cql3/functions/FunctionName;
           23   27    13      initcond  Ljava/nio/ByteBuffer;
           26   27    14        reason  Lorg/apache/cassandra/exceptions/InvalidRequestException;
      Exception table:
        from    to  target  type
          23    24      25  Class org.apache.cassandra.exceptions.InvalidRequestException
    Signature: (Lorg/apache/cassandra/schema/Functions;Ljava/lang/String;Ljava/lang/String;Ljava/util/List<Ljava/lang/String;>;)Lorg/apache/cassandra/cql3/functions/UDAggregate;
    MethodParameters:
              Name  Flags
      functions     
      keyspaceName  
      functionName  
      signature     

  private static org.apache.cassandra.cql3.UntypedResultSet query(java.lang.String, java.lang.Object[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;)Lorg/apache/cassandra/cql3/UntypedResultSet;
    flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.String query
        start local 1 // java.lang.Object[] values
         0: .line 1041
            aload 0 /* query */
            aload 1 /* values */
            invokestatic org.apache.cassandra.cql3.QueryProcessor.executeOnceInternal:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/apache/cassandra/cql3/UntypedResultSet;
            areturn
        end local 1 // java.lang.Object[] values
        end local 0 // java.lang.String query
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0   query  Ljava/lang/String;
            0    1     1  values  [Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      query   
      values  

  private static org.apache.cassandra.db.marshal.AbstractType<?> parseType(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/apache/cassandra/db/marshal/AbstractType;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String str
         0: .line 1046
            aload 0 /* str */
            invokestatic org.apache.cassandra.db.marshal.TypeParser.parse:(Ljava/lang/String;)Lorg/apache/cassandra/db/marshal/AbstractType;
            areturn
        end local 0 // java.lang.String str
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   str  Ljava/lang/String;
    Signature: (Ljava/lang/String;)Lorg/apache/cassandra/db/marshal/AbstractType<*>;
    MethodParameters:
      Name  Flags
      str   

  private static void lambda$3(org.apache.cassandra.schema.LegacySchemaMigrator$Table, org.apache.cassandra.schema.IndexMetadata);
    descriptor: (Lorg/apache/cassandra/schema/LegacySchemaMigrator$Table;Lorg/apache/cassandra/schema/IndexMetadata;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
        start local 1 // org.apache.cassandra.schema.IndexMetadata index
         0: .line 114
            aload 0
            getfield org.apache.cassandra.schema.LegacySchemaMigrator$Table.metadata:Lorg/apache/cassandra/config/CFMetaData;
            getfield org.apache.cassandra.config.CFMetaData.ksName:Ljava/lang/String;
         1: .line 115
            aload 0
            getfield org.apache.cassandra.schema.LegacySchemaMigrator$Table.metadata:Lorg/apache/cassandra/config/CFMetaData;
            getfield org.apache.cassandra.config.CFMetaData.cfName:Ljava/lang/String;
         2: .line 116
            aload 1 /* index */
         3: .line 114
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.migrateIndexBuildStatus:(Ljava/lang/String;Ljava/lang/String;Lorg/apache/cassandra/schema/IndexMetadata;)V
         4: .line 116
            return
        end local 1 // org.apache.cassandra.schema.IndexMetadata index
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     1  index  Lorg/apache/cassandra/schema/IndexMetadata;

  private static void lambda$5(org.apache.cassandra.config.CFMetaData);
    descriptor: (Lorg/apache/cassandra/config/CFMetaData;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.config.CFMetaData cfm
         0: .line 137
            aload 0 /* cfm */
            invokestatic org.apache.cassandra.db.Keyspace.openAndGetStore:(Lorg/apache/cassandra/config/CFMetaData;)Lorg/apache/cassandra/db/ColumnFamilyStore;
            invokevirtual org.apache.cassandra.db.ColumnFamilyStore.invalidate:()V
            return
        end local 0 // org.apache.cassandra.config.CFMetaData cfm
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   cfm  Lorg/apache/cassandra/config/CFMetaData;

  private static void lambda$6(org.apache.cassandra.config.CFMetaData);
    descriptor: (Lorg/apache/cassandra/config/CFMetaData;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.cassandra.config.CFMetaData table
         0: .line 144
            getstatic org.apache.cassandra.config.Schema.instance:Lorg/apache/cassandra/config/Schema;
            aload 0 /* table */
            getfield org.apache.cassandra.config.CFMetaData.cfId:Ljava/util/UUID;
            invokevirtual org.apache.cassandra.config.Schema.getColumnFamilyStoreInstance:(Ljava/util/UUID;)Lorg/apache/cassandra/db/ColumnFamilyStore;
            invokevirtual org.apache.cassandra.db.ColumnFamilyStore.truncateBlocking:()V
            return
        end local 0 // org.apache.cassandra.config.CFMetaData table
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  table  Lorg/apache/cassandra/config/CFMetaData;

  private static void lambda$7(java.util.Collection, org.apache.cassandra.cql3.UntypedResultSet$Row);
    descriptor: (Ljava/util/Collection;Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
        start local 1 // org.apache.cassandra.cql3.UntypedResultSet$Row row
         0: .line 174
            aload 0
            aload 1 /* row */
            ldc "keyspace_name"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            return
        end local 1 // org.apache.cassandra.cql3.UntypedResultSet$Row row
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1   row  Lorg/apache/cassandra/cql3/UntypedResultSet$Row;

  private static void lambda$8(java.util.Collection, java.lang.String);
    descriptor: (Ljava/util/Collection;Ljava/lang/String;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // java.lang.String name
         0: .line 178
            aload 0
            aload 1 /* name */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.readKeyspace:(Ljava/lang/String;)Lorg/apache/cassandra/schema/LegacySchemaMigrator$Keyspace;
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            return
        end local 1 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1  name  Ljava/lang/String;

  private static void lambda$9(org.apache.cassandra.schema.Functions$Builder, org.apache.cassandra.schema.LegacySchemaMigrator$Function);
    descriptor: (Lorg/apache/cassandra/schema/Functions$Builder;Lorg/apache/cassandra/schema/LegacySchemaMigrator$Function;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // org.apache.cassandra.schema.LegacySchemaMigrator$Function udf
         0: .line 191
            aload 0
            aload 1 /* udf */
            getfield org.apache.cassandra.schema.LegacySchemaMigrator$Function.metadata:Lorg/apache/cassandra/cql3/functions/UDFunction;
            invokevirtual org.apache.cassandra.schema.Functions$Builder.add:(Lorg/apache/cassandra/cql3/functions/Function;)Lorg/apache/cassandra/schema/Functions$Builder;
            return
        end local 1 // org.apache.cassandra.schema.LegacySchemaMigrator$Function udf
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1   udf  Lorg/apache/cassandra/schema/LegacySchemaMigrator$Function;

  private static void lambda$10(java.util.Collection, org.apache.cassandra.cql3.UntypedResultSet$Row);
    descriptor: (Ljava/util/Collection;Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
        start local 1 // org.apache.cassandra.cql3.UntypedResultSet$Row row
         0: .line 235
            aload 0
            aload 1 /* row */
            ldc "columnfamily_name"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            return
        end local 1 // org.apache.cassandra.cql3.UntypedResultSet$Row row
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1   row  Lorg/apache/cassandra/cql3/UntypedResultSet$Row;

  private static void lambda$11(java.util.Collection, java.lang.String, java.lang.String);
    descriptor: (Ljava/util/Collection;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 2 // java.lang.String name
         0: .line 238
            aload 0
            aload 1
            aload 2 /* name */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.readTable:(Ljava/lang/String;Ljava/lang/String;)Lorg/apache/cassandra/schema/LegacySchemaMigrator$Table;
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            return
        end local 2 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     2  name  Ljava/lang/String;

  private static void lambda$12(org.apache.cassandra.schema.Triggers$Builder, org.apache.cassandra.cql3.UntypedResultSet$Row);
    descriptor: (Lorg/apache/cassandra/schema/Triggers$Builder;Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // org.apache.cassandra.cql3.UntypedResultSet$Row row
         0: .line 821
            aload 0
            aload 1 /* row */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.createTriggerFromTriggerRow:(Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)Lorg/apache/cassandra/schema/TriggerMetadata;
            invokevirtual org.apache.cassandra.schema.Triggers$Builder.add:(Lorg/apache/cassandra/schema/TriggerMetadata;)Lorg/apache/cassandra/schema/Triggers$Builder;
            return
        end local 1 // org.apache.cassandra.cql3.UntypedResultSet$Row row
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1   row  Lorg/apache/cassandra/cql3/UntypedResultSet$Row;

  private static void lambda$13(java.util.Collection, org.apache.cassandra.cql3.UntypedResultSet$Row);
    descriptor: (Ljava/util/Collection;Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
        start local 1 // org.apache.cassandra.cql3.UntypedResultSet$Row row
         0: .line 842
            aload 0
            aload 1 /* row */
            ldc "type_name"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            return
        end local 1 // org.apache.cassandra.cql3.UntypedResultSet$Row row
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1   row  Lorg/apache/cassandra/cql3/UntypedResultSet$Row;

  private static void lambda$14(java.util.Collection, java.lang.String, java.lang.String);
    descriptor: (Ljava/util/Collection;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 2 // java.lang.String name
         0: .line 845
            aload 0
            aload 1
            aload 2 /* name */
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.readType:(Ljava/lang/String;Ljava/lang/String;)Lorg/apache/cassandra/schema/LegacySchemaMigrator$Type;
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            return
        end local 2 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     2  name  Ljava/lang/String;

  private static org.apache.cassandra.cql3.FieldIdentifier lambda$15(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/apache/cassandra/cql3/FieldIdentifier;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String t
         0: .line 888
            aload 0 /* t */
            invokestatic org.apache.cassandra.cql3.FieldIdentifier.forInternalString:(Ljava/lang/String;)Lorg/apache/cassandra/cql3/FieldIdentifier;
            areturn
        end local 0 // java.lang.String t
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     t  Ljava/lang/String;

  private static void lambda$17(com.google.common.collect.HashMultimap, org.apache.cassandra.cql3.UntypedResultSet$Row);
    descriptor: (Lcom/google/common/collect/HashMultimap;Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=5, locals=2, args_size=2
        start local 1 // org.apache.cassandra.cql3.UntypedResultSet$Row row
         0: .line 910
            aload 0
            aload 1 /* row */
            ldc "function_name"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            aload 1 /* row */
            ldc "signature"
            getstatic org.apache.cassandra.db.marshal.UTF8Type.instance:Lorg/apache/cassandra/db/marshal/UTF8Type;
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getList:(Ljava/lang/String;Lorg/apache/cassandra/db/marshal/AbstractType;)Ljava/util/List;
            invokevirtual com.google.common.collect.HashMultimap.put:(Ljava/lang/Object;Ljava/lang/Object;)Z
            return
        end local 1 // org.apache.cassandra.cql3.UntypedResultSet$Row row
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1   row  Lorg/apache/cassandra/cql3/UntypedResultSet$Row;

  private static void lambda$18(java.util.Collection, java.lang.String, java.util.Map$Entry);
    descriptor: (Ljava/util/Collection;Ljava/lang/String;Ljava/util/Map$Entry;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=3, args_size=3
        start local 2 // java.util.Map$Entry pair
         0: .line 913
            aload 0
            aload 1
            aload 2 /* pair */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            aload 2 /* pair */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.util.List
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.readFunction:(Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Lorg/apache/cassandra/schema/LegacySchemaMigrator$Function;
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            return
        end local 2 // java.util.Map$Entry pair
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     2  pair  Ljava/util/Map$Entry<Ljava/lang/String;Ljava/util/List<Ljava/lang/String;>;>;

  private static void lambda$19(com.google.common.collect.HashMultimap, org.apache.cassandra.cql3.UntypedResultSet$Row);
    descriptor: (Lcom/google/common/collect/HashMultimap;Lorg/apache/cassandra/cql3/UntypedResultSet$Row;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=5, locals=2, args_size=2
        start local 1 // org.apache.cassandra.cql3.UntypedResultSet$Row row
         0: .line 979
            aload 0
            aload 1 /* row */
            ldc "aggregate_name"
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getString:(Ljava/lang/String;)Ljava/lang/String;
            aload 1 /* row */
            ldc "signature"
            getstatic org.apache.cassandra.db.marshal.UTF8Type.instance:Lorg/apache/cassandra/db/marshal/UTF8Type;
            invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getList:(Ljava/lang/String;Lorg/apache/cassandra/db/marshal/AbstractType;)Ljava/util/List;
            invokevirtual com.google.common.collect.HashMultimap.put:(Ljava/lang/Object;Ljava/lang/Object;)Z
            return
        end local 1 // org.apache.cassandra.cql3.UntypedResultSet$Row row
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1   row  Lorg/apache/cassandra/cql3/UntypedResultSet$Row;

  private static void lambda$20(java.util.Collection, org.apache.cassandra.schema.Functions, java.lang.String, java.util.Map$Entry);
    descriptor: (Ljava/util/Collection;Lorg/apache/cassandra/schema/Functions;Ljava/lang/String;Ljava/util/Map$Entry;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=5, locals=4, args_size=4
        start local 3 // java.util.Map$Entry pair
         0: .line 982
            aload 0
            aload 1
            aload 2
            aload 3 /* pair */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            aload 3 /* pair */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.util.List
            invokestatic org.apache.cassandra.schema.LegacySchemaMigrator.readAggregate:(Lorg/apache/cassandra/schema/Functions;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Lorg/apache/cassandra/schema/LegacySchemaMigrator$Aggregate;
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            return
        end local 3 // java.util.Map$Entry pair
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     3  pair  Ljava/util/Map$Entry<Ljava/lang/String;Ljava/util/List<Ljava/lang/String;>;>;
}
SourceFile: "LegacySchemaMigrator.java"
NestMembers:
  org.apache.cassandra.schema.LegacySchemaMigrator$Aggregate  org.apache.cassandra.schema.LegacySchemaMigrator$Function  org.apache.cassandra.schema.LegacySchemaMigrator$Keyspace  org.apache.cassandra.schema.LegacySchemaMigrator$Table  org.apache.cassandra.schema.LegacySchemaMigrator$Type
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract Entry = java.util.Map$Entry of java.util.Map
  public DroppedColumn = org.apache.cassandra.config.CFMetaData$DroppedColumn of org.apache.cassandra.config.CFMetaData
  public final Kind = org.apache.cassandra.config.ColumnDefinition$Kind of org.apache.cassandra.config.ColumnDefinition
  public Row = org.apache.cassandra.cql3.UntypedResultSet$Row of org.apache.cassandra.cql3.UntypedResultSet
  public DefaultNames = org.apache.cassandra.db.CompactTables$DefaultNames of org.apache.cassandra.db.CompactTables
  public abstract SimpleBuilder = org.apache.cassandra.db.Mutation$SimpleBuilder of org.apache.cassandra.db.Mutation
  public final Option = org.apache.cassandra.schema.CompactionParams$Option of org.apache.cassandra.schema.CompactionParams
  public final Builder = org.apache.cassandra.schema.Functions$Builder of org.apache.cassandra.schema.Functions
  public final Kind = org.apache.cassandra.schema.IndexMetadata$Kind of org.apache.cassandra.schema.IndexMetadata
  public final Builder = org.apache.cassandra.schema.Indexes$Builder of org.apache.cassandra.schema.Indexes
  private final Aggregate = org.apache.cassandra.schema.LegacySchemaMigrator$Aggregate of org.apache.cassandra.schema.LegacySchemaMigrator
  private final Function = org.apache.cassandra.schema.LegacySchemaMigrator$Function of org.apache.cassandra.schema.LegacySchemaMigrator
  private final Keyspace = org.apache.cassandra.schema.LegacySchemaMigrator$Keyspace of org.apache.cassandra.schema.LegacySchemaMigrator
  private final Table = org.apache.cassandra.schema.LegacySchemaMigrator$Table of org.apache.cassandra.schema.LegacySchemaMigrator
  private final Type = org.apache.cassandra.schema.LegacySchemaMigrator$Type of org.apache.cassandra.schema.LegacySchemaMigrator
  public final Builder = org.apache.cassandra.schema.TableParams$Builder of org.apache.cassandra.schema.TableParams
  public final Builder = org.apache.cassandra.schema.Triggers$Builder of org.apache.cassandra.schema.Triggers