public class org.h2.schema.Schema extends org.h2.engine.DbObjectBase
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.h2.schema.Schema
  super_class: org.h2.engine.DbObjectBase
{
  private org.h2.engine.User owner;
    descriptor: Lorg/h2/engine/User;
    flags: (0x0002) ACC_PRIVATE

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

  private java.util.ArrayList<java.lang.String> tableEngineParams;
    descriptor: Ljava/util/ArrayList;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/ArrayList<Ljava/lang/String;>;

  private final java.util.concurrent.ConcurrentHashMap<java.lang.String, org.h2.table.Table> tablesAndViews;
    descriptor: Ljava/util/concurrent/ConcurrentHashMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lorg/h2/table/Table;>;

  private final java.util.concurrent.ConcurrentHashMap<java.lang.String, org.h2.table.TableSynonym> synonyms;
    descriptor: Ljava/util/concurrent/ConcurrentHashMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lorg/h2/table/TableSynonym;>;

  private final java.util.concurrent.ConcurrentHashMap<java.lang.String, org.h2.index.Index> indexes;
    descriptor: Ljava/util/concurrent/ConcurrentHashMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lorg/h2/index/Index;>;

  private final java.util.concurrent.ConcurrentHashMap<java.lang.String, org.h2.schema.Sequence> sequences;
    descriptor: Ljava/util/concurrent/ConcurrentHashMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lorg/h2/schema/Sequence;>;

  private final java.util.concurrent.ConcurrentHashMap<java.lang.String, org.h2.schema.TriggerObject> triggers;
    descriptor: Ljava/util/concurrent/ConcurrentHashMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lorg/h2/schema/TriggerObject;>;

  private final java.util.concurrent.ConcurrentHashMap<java.lang.String, org.h2.constraint.Constraint> constraints;
    descriptor: Ljava/util/concurrent/ConcurrentHashMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lorg/h2/constraint/Constraint;>;

  private final java.util.concurrent.ConcurrentHashMap<java.lang.String, org.h2.schema.Constant> constants;
    descriptor: Ljava/util/concurrent/ConcurrentHashMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lorg/h2/schema/Constant;>;

  private final java.util.concurrent.ConcurrentHashMap<java.lang.String, org.h2.engine.FunctionAlias> functions;
    descriptor: Ljava/util/concurrent/ConcurrentHashMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lorg/h2/engine/FunctionAlias;>;

  private final java.util.HashSet<java.lang.String> temporaryUniqueNames;
    descriptor: Ljava/util/HashSet;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/HashSet<Ljava/lang/String;>;

  public void <init>(org.h2.engine.Database, int, java.lang.String, org.h2.engine.User, boolean);
    descriptor: (Lorg/h2/engine/Database;ILjava/lang/String;Lorg/h2/engine/User;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=6
        start local 0 // org.h2.schema.Schema this
        start local 1 // org.h2.engine.Database database
        start local 2 // int id
        start local 3 // java.lang.String schemaName
        start local 4 // org.h2.engine.User owner
        start local 5 // boolean system
         0: .line 76
            aload 0 /* this */
            aload 1 /* database */
            iload 2 /* id */
            aload 3 /* schemaName */
            bipush 8
            invokespecial org.h2.engine.DbObjectBase.<init>:(Lorg/h2/engine/Database;ILjava/lang/String;I)V
         1: .line 62
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield org.h2.schema.Schema.temporaryUniqueNames:Ljava/util/HashSet;
         2: .line 77
            aload 0 /* this */
            aload 1 /* database */
            invokevirtual org.h2.engine.Database.newConcurrentStringMap:()Ljava/util/concurrent/ConcurrentHashMap;
            putfield org.h2.schema.Schema.tablesAndViews:Ljava/util/concurrent/ConcurrentHashMap;
         3: .line 78
            aload 0 /* this */
            aload 1 /* database */
            invokevirtual org.h2.engine.Database.newConcurrentStringMap:()Ljava/util/concurrent/ConcurrentHashMap;
            putfield org.h2.schema.Schema.synonyms:Ljava/util/concurrent/ConcurrentHashMap;
         4: .line 79
            aload 0 /* this */
            aload 1 /* database */
            invokevirtual org.h2.engine.Database.newConcurrentStringMap:()Ljava/util/concurrent/ConcurrentHashMap;
            putfield org.h2.schema.Schema.indexes:Ljava/util/concurrent/ConcurrentHashMap;
         5: .line 80
            aload 0 /* this */
            aload 1 /* database */
            invokevirtual org.h2.engine.Database.newConcurrentStringMap:()Ljava/util/concurrent/ConcurrentHashMap;
            putfield org.h2.schema.Schema.sequences:Ljava/util/concurrent/ConcurrentHashMap;
         6: .line 81
            aload 0 /* this */
            aload 1 /* database */
            invokevirtual org.h2.engine.Database.newConcurrentStringMap:()Ljava/util/concurrent/ConcurrentHashMap;
            putfield org.h2.schema.Schema.triggers:Ljava/util/concurrent/ConcurrentHashMap;
         7: .line 82
            aload 0 /* this */
            aload 1 /* database */
            invokevirtual org.h2.engine.Database.newConcurrentStringMap:()Ljava/util/concurrent/ConcurrentHashMap;
            putfield org.h2.schema.Schema.constraints:Ljava/util/concurrent/ConcurrentHashMap;
         8: .line 83
            aload 0 /* this */
            aload 1 /* database */
            invokevirtual org.h2.engine.Database.newConcurrentStringMap:()Ljava/util/concurrent/ConcurrentHashMap;
            putfield org.h2.schema.Schema.constants:Ljava/util/concurrent/ConcurrentHashMap;
         9: .line 84
            aload 0 /* this */
            aload 1 /* database */
            invokevirtual org.h2.engine.Database.newConcurrentStringMap:()Ljava/util/concurrent/ConcurrentHashMap;
            putfield org.h2.schema.Schema.functions:Ljava/util/concurrent/ConcurrentHashMap;
        10: .line 85
            aload 0 /* this */
            aload 4 /* owner */
            putfield org.h2.schema.Schema.owner:Lorg/h2/engine/User;
        11: .line 86
            aload 0 /* this */
            iload 5 /* system */
            putfield org.h2.schema.Schema.system:Z
        12: .line 87
            return
        end local 5 // boolean system
        end local 4 // org.h2.engine.User owner
        end local 3 // java.lang.String schemaName
        end local 2 // int id
        end local 1 // org.h2.engine.Database database
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   13     0        this  Lorg/h2/schema/Schema;
            0   13     1    database  Lorg/h2/engine/Database;
            0   13     2          id  I
            0   13     3  schemaName  Ljava/lang/String;
            0   13     4       owner  Lorg/h2/engine/User;
            0   13     5      system  Z
    MethodParameters:
            Name  Flags
      database    
      id          
      schemaName  
      owner       
      system      

  public boolean canDrop();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.schema.Schema this
         0: .line 95
            aload 0 /* this */
            getfield org.h2.schema.Schema.system:Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/h2/schema/Schema;

  public java.lang.String getCreateSQLForCopy(org.h2.table.Table, java.lang.String);
    descriptor: (Lorg/h2/table/Table;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // org.h2.schema.Schema this
        start local 1 // org.h2.table.Table table
        start local 2 // java.lang.String quotedName
         0: .line 100
            aload 0 /* this */
            invokevirtual org.h2.schema.Schema.toString:()Ljava/lang/String;
            invokestatic org.h2.message.DbException.throwInternalError:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        end local 2 // java.lang.String quotedName
        end local 1 // org.h2.table.Table table
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/h2/schema/Schema;
            0    1     1       table  Lorg/h2/table/Table;
            0    1     2  quotedName  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      table       
      quotedName  

  public java.lang.String getDropSQL();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.schema.Schema this
         0: .line 105
            aconst_null
            areturn
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/schema/Schema;

  public java.lang.String getCreateSQL();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.h2.schema.Schema this
         0: .line 110
            aload 0 /* this */
            getfield org.h2.schema.Schema.system:Z
            ifeq 2
         1: .line 111
            aconst_null
            areturn
         2: .line 113
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "CREATE SCHEMA IF NOT EXISTS "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 1 /* builder */
        start local 1 // java.lang.StringBuilder builder
         3: .line 114
            aload 0 /* this */
            aload 1 /* builder */
            iconst_1
            invokevirtual org.h2.schema.Schema.getSQL:(Ljava/lang/StringBuilder;Z)Ljava/lang/StringBuilder;
            ldc " AUTHORIZATION "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         4: .line 115
            aload 0 /* this */
            getfield org.h2.schema.Schema.owner:Lorg/h2/engine/User;
            aload 1 /* builder */
            iconst_1
            invokevirtual org.h2.engine.User.getSQL:(Ljava/lang/StringBuilder;Z)Ljava/lang/StringBuilder;
            pop
         5: .line 116
            aload 1 /* builder */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder builder
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/h2/schema/Schema;
            3    6     1  builder  Ljava/lang/StringBuilder;

  public int getType();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.schema.Schema this
         0: .line 121
            bipush 10
            ireturn
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/schema/Schema;

  public boolean isEmpty();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.schema.Schema this
         0: .line 130
            aload 0 /* this */
            getfield org.h2.schema.Schema.tablesAndViews:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.isEmpty:()Z
            ifeq 3
            aload 0 /* this */
            getfield org.h2.schema.Schema.synonyms:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.isEmpty:()Z
            ifeq 3
            aload 0 /* this */
            getfield org.h2.schema.Schema.indexes:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.isEmpty:()Z
            ifeq 3
            aload 0 /* this */
            getfield org.h2.schema.Schema.sequences:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.isEmpty:()Z
            ifeq 3
         1: .line 131
            aload 0 /* this */
            getfield org.h2.schema.Schema.triggers:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.isEmpty:()Z
            ifeq 3
            aload 0 /* this */
            getfield org.h2.schema.Schema.constraints:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.isEmpty:()Z
            ifeq 3
            aload 0 /* this */
            getfield org.h2.schema.Schema.constants:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.isEmpty:()Z
            ifeq 3
            aload 0 /* this */
            getfield org.h2.schema.Schema.functions:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.isEmpty:()Z
            ifeq 3
         2: .line 130
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/h2/schema/Schema;

  public java.util.ArrayList<org.h2.engine.DbObject> getChildren();
    descriptor: ()Ljava/util/ArrayList;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // org.h2.schema.Schema this
         0: .line 136
            invokestatic org.h2.util.Utils.newSmallArrayList:()Ljava/util/ArrayList;
            astore 1 /* children */
        start local 1 // java.util.ArrayList children
         1: .line 137
            aload 0 /* this */
            getfield org.h2.schema.Schema.database:Lorg/h2/engine/Database;
            invokevirtual org.h2.engine.Database.getAllRights:()Ljava/util/ArrayList;
            astore 2 /* rights */
        start local 2 // java.util.ArrayList rights
         2: .line 138
            aload 2 /* rights */
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 4
            goto 6
      StackMap locals: org.h2.schema.Schema java.util.ArrayList java.util.ArrayList top java.util.Iterator
      StackMap stack:
         3: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.h2.engine.Right
            astore 3 /* right */
        start local 3 // org.h2.engine.Right right
         4: .line 139
            aload 3 /* right */
            invokevirtual org.h2.engine.Right.getGrantedObject:()Lorg/h2/engine/DbObject;
            aload 0 /* this */
            if_acmpne 6
         5: .line 140
            aload 1 /* children */
            aload 3 /* right */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // org.h2.engine.Right right
         6: .line 138
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         7: .line 143
            aload 1 /* children */
            areturn
        end local 2 // java.util.ArrayList rights
        end local 1 // java.util.ArrayList children
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Lorg/h2/schema/Schema;
            1    8     1  children  Ljava/util/ArrayList<Lorg/h2/engine/DbObject;>;
            2    8     2    rights  Ljava/util/ArrayList<Lorg/h2/engine/Right;>;
            4    6     3     right  Lorg/h2/engine/Right;
    Signature: ()Ljava/util/ArrayList<Lorg/h2/engine/DbObject;>;

  public void removeChildrenAndResources(org.h2.engine.Session);
    descriptor: (Lorg/h2/engine/Session;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // org.h2.schema.Schema this
        start local 1 // org.h2.engine.Session session
         0: .line 148
            goto 3
         1: .line 149
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.triggers:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.toArray:()[Ljava/lang/Object;
            iconst_0
            aaload
            checkcast org.h2.schema.TriggerObject
            astore 2 /* obj */
        start local 2 // org.h2.schema.TriggerObject obj
         2: .line 150
            aload 0 /* this */
            getfield org.h2.schema.Schema.database:Lorg/h2/engine/Database;
            aload 1 /* session */
            aload 2 /* obj */
            invokevirtual org.h2.engine.Database.removeSchemaObject:(Lorg/h2/engine/Session;Lorg/h2/schema/SchemaObject;)V
        end local 2 // org.h2.schema.TriggerObject obj
         3: .line 148
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.triggers:Ljava/util/concurrent/ConcurrentHashMap;
            ifnull 7
            aload 0 /* this */
            getfield org.h2.schema.Schema.triggers:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.size:()I
            ifgt 1
         4: .line 152
            goto 7
         5: .line 153
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.constraints:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.toArray:()[Ljava/lang/Object;
            iconst_0
            aaload
            checkcast org.h2.constraint.Constraint
            astore 2 /* obj */
        start local 2 // org.h2.constraint.Constraint obj
         6: .line 154
            aload 0 /* this */
            getfield org.h2.schema.Schema.database:Lorg/h2/engine/Database;
            aload 1 /* session */
            aload 2 /* obj */
            invokevirtual org.h2.engine.Database.removeSchemaObject:(Lorg/h2/engine/Session;Lorg/h2/schema/SchemaObject;)V
        end local 2 // org.h2.constraint.Constraint obj
         7: .line 152
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.constraints:Ljava/util/concurrent/ConcurrentHashMap;
            ifnull 8
            aload 0 /* this */
            getfield org.h2.schema.Schema.constraints:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.size:()I
            ifgt 5
         8: .line 158
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* runLoopAgain */
        start local 2 // boolean runLoopAgain
         9: .line 160
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 2 /* runLoopAgain */
        10: .line 161
            aload 0 /* this */
            getfield org.h2.schema.Schema.tablesAndViews:Ljava/util/concurrent/ConcurrentHashMap;
            ifnull 19
        11: .line 163
            new java.util.ArrayList
            dup
            aload 0 /* this */
            getfield org.h2.schema.Schema.tablesAndViews:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.values:()Ljava/util/Collection;
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 4
            goto 18
      StackMap locals: org.h2.schema.Schema org.h2.engine.Session int top java.util.Iterator
      StackMap stack:
        12: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.h2.table.Table
            astore 3 /* obj */
        start local 3 // org.h2.table.Table obj
        13: .line 166
            aload 3 /* obj */
            invokevirtual org.h2.table.Table.getName:()Ljava/lang/String;
            ifnull 18
        14: .line 167
            aload 0 /* this */
            getfield org.h2.schema.Schema.database:Lorg/h2/engine/Database;
            aload 3 /* obj */
            aload 3 /* obj */
            invokevirtual org.h2.engine.Database.getDependentTable:(Lorg/h2/schema/SchemaObject;Lorg/h2/table/Table;)Lorg/h2/table/Table;
            ifnonnull 17
        15: .line 168
            aload 0 /* this */
            getfield org.h2.schema.Schema.database:Lorg/h2/engine/Database;
            aload 1 /* session */
            aload 3 /* obj */
            invokevirtual org.h2.engine.Database.removeSchemaObject:(Lorg/h2/engine/Session;Lorg/h2/schema/SchemaObject;)V
        16: .line 169
            goto 18
        17: .line 170
      StackMap locals: org.h2.schema.Schema org.h2.engine.Session int org.h2.table.Table java.util.Iterator
      StackMap stack:
            iconst_1
            istore 2 /* runLoopAgain */
        end local 3 // org.h2.table.Table obj
        18: .line 163
      StackMap locals: org.h2.schema.Schema org.h2.engine.Session int top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 12
        19: .line 175
      StackMap locals: org.h2.schema.Schema org.h2.engine.Session int
      StackMap stack:
            iload 2 /* runLoopAgain */
            ifne 9
        20: .line 176
            goto 23
        21: .line 177
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.indexes:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.toArray:()[Ljava/lang/Object;
            iconst_0
            aaload
            checkcast org.h2.index.Index
            astore 3 /* obj */
        start local 3 // org.h2.index.Index obj
        22: .line 178
            aload 0 /* this */
            getfield org.h2.schema.Schema.database:Lorg/h2/engine/Database;
            aload 1 /* session */
            aload 3 /* obj */
            invokevirtual org.h2.engine.Database.removeSchemaObject:(Lorg/h2/engine/Session;Lorg/h2/schema/SchemaObject;)V
        end local 3 // org.h2.index.Index obj
        23: .line 176
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.indexes:Ljava/util/concurrent/ConcurrentHashMap;
            ifnull 27
            aload 0 /* this */
            getfield org.h2.schema.Schema.indexes:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.size:()I
            ifgt 21
        24: .line 180
            goto 27
        25: .line 181
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.sequences:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.toArray:()[Ljava/lang/Object;
            iconst_0
            aaload
            checkcast org.h2.schema.Sequence
            astore 3 /* obj */
        start local 3 // org.h2.schema.Sequence obj
        26: .line 182
            aload 0 /* this */
            getfield org.h2.schema.Schema.database:Lorg/h2/engine/Database;
            aload 1 /* session */
            aload 3 /* obj */
            invokevirtual org.h2.engine.Database.removeSchemaObject:(Lorg/h2/engine/Session;Lorg/h2/schema/SchemaObject;)V
        end local 3 // org.h2.schema.Sequence obj
        27: .line 180
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.sequences:Ljava/util/concurrent/ConcurrentHashMap;
            ifnull 31
            aload 0 /* this */
            getfield org.h2.schema.Schema.sequences:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.size:()I
            ifgt 25
        28: .line 184
            goto 31
        29: .line 185
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.constants:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.toArray:()[Ljava/lang/Object;
            iconst_0
            aaload
            checkcast org.h2.schema.Constant
            astore 3 /* obj */
        start local 3 // org.h2.schema.Constant obj
        30: .line 186
            aload 0 /* this */
            getfield org.h2.schema.Schema.database:Lorg/h2/engine/Database;
            aload 1 /* session */
            aload 3 /* obj */
            invokevirtual org.h2.engine.Database.removeSchemaObject:(Lorg/h2/engine/Session;Lorg/h2/schema/SchemaObject;)V
        end local 3 // org.h2.schema.Constant obj
        31: .line 184
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.constants:Ljava/util/concurrent/ConcurrentHashMap;
            ifnull 35
            aload 0 /* this */
            getfield org.h2.schema.Schema.constants:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.size:()I
            ifgt 29
        32: .line 188
            goto 35
        33: .line 189
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.functions:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.toArray:()[Ljava/lang/Object;
            iconst_0
            aaload
            checkcast org.h2.engine.FunctionAlias
            astore 3 /* obj */
        start local 3 // org.h2.engine.FunctionAlias obj
        34: .line 190
            aload 0 /* this */
            getfield org.h2.schema.Schema.database:Lorg/h2/engine/Database;
            aload 1 /* session */
            aload 3 /* obj */
            invokevirtual org.h2.engine.Database.removeSchemaObject:(Lorg/h2/engine/Session;Lorg/h2/schema/SchemaObject;)V
        end local 3 // org.h2.engine.FunctionAlias obj
        35: .line 188
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.functions:Ljava/util/concurrent/ConcurrentHashMap;
            ifnull 36
            aload 0 /* this */
            getfield org.h2.schema.Schema.functions:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.size:()I
            ifgt 33
        36: .line 192
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.database:Lorg/h2/engine/Database;
            invokevirtual org.h2.engine.Database.getAllRights:()Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 4
            goto 40
      StackMap locals: org.h2.schema.Schema org.h2.engine.Session int top java.util.Iterator
      StackMap stack:
        37: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.h2.engine.Right
            astore 3 /* right */
        start local 3 // org.h2.engine.Right right
        38: .line 193
            aload 3 /* right */
            invokevirtual org.h2.engine.Right.getGrantedObject:()Lorg/h2/engine/DbObject;
            aload 0 /* this */
            if_acmpne 40
        39: .line 194
            aload 0 /* this */
            getfield org.h2.schema.Schema.database:Lorg/h2/engine/Database;
            aload 1 /* session */
            aload 3 /* right */
            invokevirtual org.h2.engine.Database.removeDatabaseObject:(Lorg/h2/engine/Session;Lorg/h2/engine/DbObject;)V
        end local 3 // org.h2.engine.Right right
        40: .line 192
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 37
        41: .line 197
            aload 0 /* this */
            getfield org.h2.schema.Schema.database:Lorg/h2/engine/Database;
            aload 1 /* session */
            aload 0 /* this */
            invokevirtual org.h2.schema.Schema.getId:()I
            invokevirtual org.h2.engine.Database.removeMeta:(Lorg/h2/engine/Session;I)V
        42: .line 198
            aload 0 /* this */
            aconst_null
            putfield org.h2.schema.Schema.owner:Lorg/h2/engine/User;
        43: .line 199
            aload 0 /* this */
            invokevirtual org.h2.schema.Schema.invalidate:()V
        44: .line 200
            return
        end local 2 // boolean runLoopAgain
        end local 1 // org.h2.engine.Session session
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   45     0          this  Lorg/h2/schema/Schema;
            0   45     1       session  Lorg/h2/engine/Session;
            2    3     2           obj  Lorg/h2/schema/TriggerObject;
            6    7     2           obj  Lorg/h2/constraint/Constraint;
            9   45     2  runLoopAgain  Z
           13   18     3           obj  Lorg/h2/table/Table;
           22   23     3           obj  Lorg/h2/index/Index;
           26   27     3           obj  Lorg/h2/schema/Sequence;
           30   31     3           obj  Lorg/h2/schema/Constant;
           34   35     3           obj  Lorg/h2/engine/FunctionAlias;
           38   40     3         right  Lorg/h2/engine/Right;
    MethodParameters:
         Name  Flags
      session  

  public void checkRename();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // org.h2.schema.Schema this
         0: .line 205
            return
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/schema/Schema;

  public org.h2.engine.User getOwner();
    descriptor: ()Lorg/h2/engine/User;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.schema.Schema this
         0: .line 213
            aload 0 /* this */
            getfield org.h2.schema.Schema.owner:Lorg/h2/engine/User;
            areturn
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/schema/Schema;

  public java.util.ArrayList<java.lang.String> getTableEngineParams();
    descriptor: ()Ljava/util/ArrayList;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.schema.Schema this
         0: .line 222
            aload 0 /* this */
            getfield org.h2.schema.Schema.tableEngineParams:Ljava/util/ArrayList;
            areturn
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/schema/Schema;
    Signature: ()Ljava/util/ArrayList<Ljava/lang/String;>;

  public void setTableEngineParams(java.util.ArrayList<java.lang.String>);
    descriptor: (Ljava/util/ArrayList;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.schema.Schema this
        start local 1 // java.util.ArrayList tableEngineParams
         0: .line 230
            aload 0 /* this */
            aload 1 /* tableEngineParams */
            putfield org.h2.schema.Schema.tableEngineParams:Ljava/util/ArrayList;
         1: .line 231
            return
        end local 1 // java.util.ArrayList tableEngineParams
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lorg/h2/schema/Schema;
            0    2     1  tableEngineParams  Ljava/util/ArrayList<Ljava/lang/String;>;
    Signature: (Ljava/util/ArrayList<Ljava/lang/String;>;)V
    MethodParameters:
                   Name  Flags
      tableEngineParams  

  private java.util.Map<java.lang.String, org.h2.schema.SchemaObject> getMap(int);
    descriptor: (I)Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.h2.schema.Schema this
        start local 1 // int type
         0: .line 236
            iload 1 /* type */
            tableswitch { // 0 - 15
                    0: 1
                    1: 7
                    2: 17
                    3: 5
                    4: 9
                    5: 11
                    6: 17
                    7: 17
                    8: 17
                    9: 15
                   10: 17
                   11: 13
                   12: 17
                   13: 17
                   14: 17
                   15: 3
              default: 17
          }
         1: .line 238
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.tablesAndViews:Ljava/util/concurrent/ConcurrentHashMap;
            astore 2 /* result */
        start local 2 // java.util.Map result
         2: .line 239
            goto 18
        end local 2 // java.util.Map result
         3: .line 241
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.synonyms:Ljava/util/concurrent/ConcurrentHashMap;
            astore 2 /* result */
        start local 2 // java.util.Map result
         4: .line 242
            goto 18
        end local 2 // java.util.Map result
         5: .line 244
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.sequences:Ljava/util/concurrent/ConcurrentHashMap;
            astore 2 /* result */
        start local 2 // java.util.Map result
         6: .line 245
            goto 18
        end local 2 // java.util.Map result
         7: .line 247
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.indexes:Ljava/util/concurrent/ConcurrentHashMap;
            astore 2 /* result */
        start local 2 // java.util.Map result
         8: .line 248
            goto 18
        end local 2 // java.util.Map result
         9: .line 250
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.triggers:Ljava/util/concurrent/ConcurrentHashMap;
            astore 2 /* result */
        start local 2 // java.util.Map result
        10: .line 251
            goto 18
        end local 2 // java.util.Map result
        11: .line 253
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.constraints:Ljava/util/concurrent/ConcurrentHashMap;
            astore 2 /* result */
        start local 2 // java.util.Map result
        12: .line 254
            goto 18
        end local 2 // java.util.Map result
        13: .line 256
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.constants:Ljava/util/concurrent/ConcurrentHashMap;
            astore 2 /* result */
        start local 2 // java.util.Map result
        14: .line 257
            goto 18
        end local 2 // java.util.Map result
        15: .line 259
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.functions:Ljava/util/concurrent/ConcurrentHashMap;
            astore 2 /* result */
        start local 2 // java.util.Map result
        16: .line 260
            goto 18
        end local 2 // java.util.Map result
        17: .line 262
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "type="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* type */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.h2.message.DbException.throwInternalError:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        start local 2 // java.util.Map result
        18: .line 264
      StackMap locals: java.util.Map
      StackMap stack:
            aload 2 /* result */
            areturn
        end local 2 // java.util.Map result
        end local 1 // int type
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   19     0    this  Lorg/h2/schema/Schema;
            0   19     1    type  I
            2    3     2  result  Ljava/util/Map<Ljava/lang/String;+Lorg/h2/schema/SchemaObject;>;
            4    5     2  result  Ljava/util/Map<Ljava/lang/String;+Lorg/h2/schema/SchemaObject;>;
            6    7     2  result  Ljava/util/Map<Ljava/lang/String;+Lorg/h2/schema/SchemaObject;>;
            8    9     2  result  Ljava/util/Map<Ljava/lang/String;+Lorg/h2/schema/SchemaObject;>;
           10   11     2  result  Ljava/util/Map<Ljava/lang/String;+Lorg/h2/schema/SchemaObject;>;
           12   13     2  result  Ljava/util/Map<Ljava/lang/String;+Lorg/h2/schema/SchemaObject;>;
           14   15     2  result  Ljava/util/Map<Ljava/lang/String;+Lorg/h2/schema/SchemaObject;>;
           16   17     2  result  Ljava/util/Map<Ljava/lang/String;+Lorg/h2/schema/SchemaObject;>;
           18   19     2  result  Ljava/util/Map<Ljava/lang/String;+Lorg/h2/schema/SchemaObject;>;
    Signature: (I)Ljava/util/Map<Ljava/lang/String;Lorg/h2/schema/SchemaObject;>;
    MethodParameters:
      Name  Flags
      type  

  public void add(org.h2.schema.SchemaObject);
    descriptor: (Lorg/h2/schema/SchemaObject;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.h2.schema.Schema this
        start local 1 // org.h2.schema.SchemaObject obj
         0: .line 275
            aload 1 /* obj */
            invokeinterface org.h2.schema.SchemaObject.getSchema:()Lorg/h2/schema/Schema;
            aload 0 /* this */
            if_acmpeq 2
         1: .line 276
            ldc "wrong schema"
            invokestatic org.h2.message.DbException.throwInternalError:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            pop
         2: .line 278
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            invokeinterface org.h2.schema.SchemaObject.getName:()Ljava/lang/String;
            astore 2 /* name */
        start local 2 // java.lang.String name
         3: .line 279
            aload 0 /* this */
            aload 1 /* obj */
            invokeinterface org.h2.schema.SchemaObject.getType:()I
            invokevirtual org.h2.schema.Schema.getMap:(I)Ljava/util/Map;
            astore 3 /* map */
        start local 3 // java.util.Map map
         4: .line 280
            getstatic org.h2.engine.SysProperties.CHECK:Z
            ifeq 6
            aload 3 /* map */
            aload 2 /* name */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            ifnull 6
         5: .line 281
            new java.lang.StringBuilder
            dup
            ldc "object already exists: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.h2.message.DbException.throwInternalError:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            pop
         6: .line 283
      StackMap locals: java.lang.String java.util.Map
      StackMap stack:
            aload 3 /* map */
            aload 2 /* name */
            aload 1 /* obj */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         7: .line 284
            aload 0 /* this */
            aload 2 /* name */
            invokevirtual org.h2.schema.Schema.freeUniqueName:(Ljava/lang/String;)V
         8: .line 285
            return
        end local 3 // java.util.Map map
        end local 2 // java.lang.String name
        end local 1 // org.h2.schema.SchemaObject obj
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/h2/schema/Schema;
            0    9     1   obj  Lorg/h2/schema/SchemaObject;
            3    9     2  name  Ljava/lang/String;
            4    9     3   map  Ljava/util/Map<Ljava/lang/String;Lorg/h2/schema/SchemaObject;>;
    MethodParameters:
      Name  Flags
      obj   

  public void rename(org.h2.schema.SchemaObject, java.lang.String);
    descriptor: (Lorg/h2/schema/SchemaObject;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.h2.schema.Schema this
        start local 1 // org.h2.schema.SchemaObject obj
        start local 2 // java.lang.String newName
         0: .line 294
            aload 1 /* obj */
            invokeinterface org.h2.schema.SchemaObject.getType:()I
            istore 3 /* type */
        start local 3 // int type
         1: .line 295
            aload 0 /* this */
            iload 3 /* type */
            invokevirtual org.h2.schema.Schema.getMap:(I)Ljava/util/Map;
            astore 4 /* map */
        start local 4 // java.util.Map map
         2: .line 296
            getstatic org.h2.engine.SysProperties.CHECK:Z
            ifeq 7
         3: .line 297
            aload 4 /* map */
            aload 1 /* obj */
            invokeinterface org.h2.schema.SchemaObject.getName:()Ljava/lang/String;
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifne 5
         4: .line 298
            new java.lang.StringBuilder
            dup
            ldc "not found: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* obj */
            invokeinterface org.h2.schema.SchemaObject.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.h2.message.DbException.throwInternalError:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            pop
         5: .line 300
      StackMap locals: int java.util.Map
      StackMap stack:
            aload 1 /* obj */
            invokeinterface org.h2.schema.SchemaObject.getName:()Ljava/lang/String;
            aload 2 /* newName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 6
            aload 4 /* map */
            aload 2 /* newName */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifeq 7
         6: .line 301
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "object already exists: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* newName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.h2.message.DbException.throwInternalError:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            pop
         7: .line 304
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            invokeinterface org.h2.schema.SchemaObject.checkRename:()V
         8: .line 305
            aload 4 /* map */
            aload 1 /* obj */
            invokeinterface org.h2.schema.SchemaObject.getName:()Ljava/lang/String;
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         9: .line 306
            aload 0 /* this */
            aload 1 /* obj */
            invokeinterface org.h2.schema.SchemaObject.getName:()Ljava/lang/String;
            invokevirtual org.h2.schema.Schema.freeUniqueName:(Ljava/lang/String;)V
        10: .line 307
            aload 1 /* obj */
            aload 2 /* newName */
            invokeinterface org.h2.schema.SchemaObject.rename:(Ljava/lang/String;)V
        11: .line 308
            aload 4 /* map */
            aload 2 /* newName */
            aload 1 /* obj */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        12: .line 309
            aload 0 /* this */
            aload 2 /* newName */
            invokevirtual org.h2.schema.Schema.freeUniqueName:(Ljava/lang/String;)V
        13: .line 310
            return
        end local 4 // java.util.Map map
        end local 3 // int type
        end local 2 // java.lang.String newName
        end local 1 // org.h2.schema.SchemaObject obj
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   14     0     this  Lorg/h2/schema/Schema;
            0   14     1      obj  Lorg/h2/schema/SchemaObject;
            0   14     2  newName  Ljava/lang/String;
            1   14     3     type  I
            2   14     4      map  Ljava/util/Map<Ljava/lang/String;Lorg/h2/schema/SchemaObject;>;
    MethodParameters:
         Name  Flags
      obj      
      newName  

  public org.h2.table.Table findTableOrView(org.h2.engine.Session, java.lang.String);
    descriptor: (Lorg/h2/engine/Session;Ljava/lang/String;)Lorg/h2/table/Table;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.h2.schema.Schema this
        start local 1 // org.h2.engine.Session session
        start local 2 // java.lang.String name
         0: .line 322
            aload 0 /* this */
            getfield org.h2.schema.Schema.tablesAndViews:Ljava/util/concurrent/ConcurrentHashMap;
            aload 2 /* name */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.h2.table.Table
            astore 3 /* table */
        start local 3 // org.h2.table.Table table
         1: .line 323
            aload 3 /* table */
            ifnonnull 3
            aload 1 /* session */
            ifnull 3
         2: .line 324
            aload 1 /* session */
            aload 2 /* name */
            invokevirtual org.h2.engine.Session.findLocalTempTable:(Ljava/lang/String;)Lorg/h2/table/Table;
            astore 3 /* table */
         3: .line 326
      StackMap locals: org.h2.table.Table
      StackMap stack:
            aload 3 /* table */
            areturn
        end local 3 // org.h2.table.Table table
        end local 2 // java.lang.String name
        end local 1 // org.h2.engine.Session session
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/h2/schema/Schema;
            0    4     1  session  Lorg/h2/engine/Session;
            0    4     2     name  Ljava/lang/String;
            1    4     3    table  Lorg/h2/table/Table;
    MethodParameters:
         Name  Flags
      session  
      name     

  public org.h2.table.Table resolveTableOrView(org.h2.engine.Session, java.lang.String);
    descriptor: (Lorg/h2/engine/Session;Ljava/lang/String;)Lorg/h2/table/Table;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.h2.schema.Schema this
        start local 1 // org.h2.engine.Session session
        start local 2 // java.lang.String name
         0: .line 340
            aload 0 /* this */
            aload 1 /* session */
            aload 2 /* name */
            invokevirtual org.h2.schema.Schema.findTableOrView:(Lorg/h2/engine/Session;Ljava/lang/String;)Lorg/h2/table/Table;
            astore 3 /* table */
        start local 3 // org.h2.table.Table table
         1: .line 341
            aload 3 /* table */
            ifnonnull 5
         2: .line 342
            aload 0 /* this */
            getfield org.h2.schema.Schema.synonyms:Ljava/util/concurrent/ConcurrentHashMap;
            aload 2 /* name */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.h2.table.TableSynonym
            astore 4 /* synonym */
        start local 4 // org.h2.table.TableSynonym synonym
         3: .line 343
            aload 4 /* synonym */
            ifnull 5
         4: .line 344
            aload 4 /* synonym */
            invokevirtual org.h2.table.TableSynonym.getSynonymFor:()Lorg/h2/table/Table;
            areturn
        end local 4 // org.h2.table.TableSynonym synonym
         5: .line 347
      StackMap locals: org.h2.table.Table
      StackMap stack:
            aload 3 /* table */
            areturn
        end local 3 // org.h2.table.Table table
        end local 2 // java.lang.String name
        end local 1 // org.h2.engine.Session session
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/h2/schema/Schema;
            0    6     1  session  Lorg/h2/engine/Session;
            0    6     2     name  Ljava/lang/String;
            1    6     3    table  Lorg/h2/table/Table;
            3    5     4  synonym  Lorg/h2/table/TableSynonym;
    MethodParameters:
         Name  Flags
      session  
      name     

  public org.h2.table.TableSynonym getSynonym(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/h2/table/TableSynonym;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.schema.Schema this
        start local 1 // java.lang.String name
         0: .line 358
            aload 0 /* this */
            getfield org.h2.schema.Schema.synonyms:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* name */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.h2.table.TableSynonym
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/schema/Schema;
            0    1     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public org.h2.index.Index findIndex(org.h2.engine.Session, java.lang.String);
    descriptor: (Lorg/h2/engine/Session;Ljava/lang/String;)Lorg/h2/index/Index;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.h2.schema.Schema this
        start local 1 // org.h2.engine.Session session
        start local 2 // java.lang.String name
         0: .line 370
            aload 0 /* this */
            getfield org.h2.schema.Schema.indexes:Ljava/util/concurrent/ConcurrentHashMap;
            aload 2 /* name */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.h2.index.Index
            astore 3 /* index */
        start local 3 // org.h2.index.Index index
         1: .line 371
            aload 3 /* index */
            ifnonnull 3
         2: .line 372
            aload 1 /* session */
            aload 2 /* name */
            invokevirtual org.h2.engine.Session.findLocalTempTableIndex:(Ljava/lang/String;)Lorg/h2/index/Index;
            astore 3 /* index */
         3: .line 374
      StackMap locals: org.h2.index.Index
      StackMap stack:
            aload 3 /* index */
            areturn
        end local 3 // org.h2.index.Index index
        end local 2 // java.lang.String name
        end local 1 // org.h2.engine.Session session
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/h2/schema/Schema;
            0    4     1  session  Lorg/h2/engine/Session;
            0    4     2     name  Ljava/lang/String;
            1    4     3    index  Lorg/h2/index/Index;
    MethodParameters:
         Name  Flags
      session  
      name     

  public org.h2.schema.TriggerObject findTrigger(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/h2/schema/TriggerObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.schema.Schema this
        start local 1 // java.lang.String name
         0: .line 385
            aload 0 /* this */
            getfield org.h2.schema.Schema.triggers:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* name */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.h2.schema.TriggerObject
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/schema/Schema;
            0    1     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public org.h2.schema.Sequence findSequence(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/h2/schema/Sequence;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.schema.Schema this
        start local 1 // java.lang.String sequenceName
         0: .line 396
            aload 0 /* this */
            getfield org.h2.schema.Schema.sequences:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* sequenceName */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.h2.schema.Sequence
            areturn
        end local 1 // java.lang.String sequenceName
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Lorg/h2/schema/Schema;
            0    1     1  sequenceName  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      sequenceName  

  public org.h2.constraint.Constraint findConstraint(org.h2.engine.Session, java.lang.String);
    descriptor: (Lorg/h2/engine/Session;Ljava/lang/String;)Lorg/h2/constraint/Constraint;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.h2.schema.Schema this
        start local 1 // org.h2.engine.Session session
        start local 2 // java.lang.String name
         0: .line 408
            aload 0 /* this */
            getfield org.h2.schema.Schema.constraints:Ljava/util/concurrent/ConcurrentHashMap;
            aload 2 /* name */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.h2.constraint.Constraint
            astore 3 /* constraint */
        start local 3 // org.h2.constraint.Constraint constraint
         1: .line 409
            aload 3 /* constraint */
            ifnonnull 3
         2: .line 410
            aload 1 /* session */
            aload 2 /* name */
            invokevirtual org.h2.engine.Session.findLocalTempTableConstraint:(Ljava/lang/String;)Lorg/h2/constraint/Constraint;
            astore 3 /* constraint */
         3: .line 412
      StackMap locals: org.h2.constraint.Constraint
      StackMap stack:
            aload 3 /* constraint */
            areturn
        end local 3 // org.h2.constraint.Constraint constraint
        end local 2 // java.lang.String name
        end local 1 // org.h2.engine.Session session
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lorg/h2/schema/Schema;
            0    4     1     session  Lorg/h2/engine/Session;
            0    4     2        name  Ljava/lang/String;
            1    4     3  constraint  Lorg/h2/constraint/Constraint;
    MethodParameters:
         Name  Flags
      session  
      name     

  public org.h2.schema.Constant findConstant(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/h2/schema/Constant;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.schema.Schema this
        start local 1 // java.lang.String constantName
         0: .line 423
            aload 0 /* this */
            getfield org.h2.schema.Schema.constants:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* constantName */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.h2.schema.Constant
            areturn
        end local 1 // java.lang.String constantName
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Lorg/h2/schema/Schema;
            0    1     1  constantName  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      constantName  

  public org.h2.engine.FunctionAlias findFunction(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/h2/engine/FunctionAlias;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.schema.Schema this
        start local 1 // java.lang.String functionAlias
         0: .line 434
            aload 0 /* this */
            getfield org.h2.schema.Schema.functions:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* functionAlias */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.h2.engine.FunctionAlias
            areturn
        end local 1 // java.lang.String functionAlias
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0           this  Lorg/h2/schema/Schema;
            0    1     1  functionAlias  Ljava/lang/String;
    MethodParameters:
               Name  Flags
      functionAlias  

  public void freeUniqueName(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.h2.schema.Schema this
        start local 1 // java.lang.String name
         0: .line 443
            aload 1 /* name */
            ifnull 7
         1: .line 444
            aload 0 /* this */
            getfield org.h2.schema.Schema.temporaryUniqueNames:Ljava/util/HashSet;
            dup
            astore 2
            monitorenter
         2: .line 445
            aload 0 /* this */
            getfield org.h2.schema.Schema.temporaryUniqueNames:Ljava/util/HashSet;
            aload 1 /* name */
            invokevirtual java.util.HashSet.remove:(Ljava/lang/Object;)Z
            pop
         3: .line 444
            aload 2
            monitorexit
         4: goto 7
      StackMap locals: org.h2.schema.Schema java.lang.String java.util.HashSet
      StackMap stack: java.lang.Throwable
         5: aload 2
            monitorexit
         6: athrow
         7: .line 448
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String name
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/h2/schema/Schema;
            0    8     1  name  Ljava/lang/String;
      Exception table:
        from    to  target  type
           2     4       5  any
           5     6       5  any
    MethodParameters:
      Name  Flags
      name  

  private java.lang.String getUniqueName(org.h2.engine.DbObject, java.util.Map<java.lang.String, ? extends org.h2.schema.SchemaObject>, java.lang.String);
    descriptor: (Lorg/h2/engine/DbObject;Ljava/util/Map;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=9, args_size=4
        start local 0 // org.h2.schema.Schema this
        start local 1 // org.h2.engine.DbObject obj
        start local 2 // java.util.Map map
        start local 3 // java.lang.String prefix
         0: .line 452
            aload 1 /* obj */
            invokeinterface org.h2.engine.DbObject.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.hashCode:()I
            invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
            invokestatic org.h2.util.StringUtils.toUpperEnglish:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* hash */
        start local 4 // java.lang.String hash
         1: .line 453
            aconst_null
            astore 5 /* name */
        start local 5 // java.lang.String name
         2: .line 454
            aload 0 /* this */
            getfield org.h2.schema.Schema.temporaryUniqueNames:Ljava/util/HashSet;
            dup
            astore 6
            monitorenter
         3: .line 455
            iconst_1
            istore 7 /* i */
        start local 7 // int i
         4: aload 4 /* hash */
            invokevirtual java.lang.String.length:()I
            istore 8 /* len */
        start local 8 // int len
         5: goto 11
         6: .line 456
      StackMap locals: org.h2.schema.Schema org.h2.engine.DbObject java.util.Map java.lang.String java.lang.String java.lang.String java.util.HashSet int int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 3 /* prefix */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* hash */
            iconst_0
            iload 7 /* i */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 5 /* name */
         7: .line 457
            aload 2 /* map */
            aload 5 /* name */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifne 9
            aload 0 /* this */
            getfield org.h2.schema.Schema.temporaryUniqueNames:Ljava/util/HashSet;
            aload 5 /* name */
            invokevirtual java.util.HashSet.contains:(Ljava/lang/Object;)Z
            ifne 9
         8: .line 458
            goto 12
         9: .line 460
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 5 /* name */
        10: .line 455
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 7 /* i */
            iload 8 /* len */
            if_icmplt 6
        end local 8 // int len
        end local 7 // int i
        12: .line 462
      StackMap locals:
      StackMap stack:
            aload 5 /* name */
            ifnonnull 19
        13: .line 463
            new java.lang.StringBuilder
            dup
            aload 3 /* prefix */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* hash */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "_"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* prefix */
        14: .line 464
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        15: .line 465
      StackMap locals: int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 3 /* prefix */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 7 /* i */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 5 /* name */
        16: .line 466
            aload 2 /* map */
            aload 5 /* name */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifne 18
            aload 0 /* this */
            getfield org.h2.schema.Schema.temporaryUniqueNames:Ljava/util/HashSet;
            aload 5 /* name */
            invokevirtual java.util.HashSet.contains:(Ljava/lang/Object;)Z
            ifne 18
        17: .line 467
            goto 19
        18: .line 464
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
            goto 15
        end local 7 // int i
        19: .line 471
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.temporaryUniqueNames:Ljava/util/HashSet;
            aload 5 /* name */
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
        20: .line 454
            aload 6
            monitorexit
        21: goto 24
      StackMap locals:
      StackMap stack: java.lang.Throwable
        22: aload 6
            monitorexit
        23: athrow
        24: .line 473
      StackMap locals:
      StackMap stack:
            aload 5 /* name */
            areturn
        end local 5 // java.lang.String name
        end local 4 // java.lang.String hash
        end local 3 // java.lang.String prefix
        end local 2 // java.util.Map map
        end local 1 // org.h2.engine.DbObject obj
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   25     0    this  Lorg/h2/schema/Schema;
            0   25     1     obj  Lorg/h2/engine/DbObject;
            0   25     2     map  Ljava/util/Map<Ljava/lang/String;+Lorg/h2/schema/SchemaObject;>;
            0   25     3  prefix  Ljava/lang/String;
            1   25     4    hash  Ljava/lang/String;
            2   25     5    name  Ljava/lang/String;
            4   12     7       i  I
            5   12     8     len  I
           15   19     7       i  I
      Exception table:
        from    to  target  type
           3    21      22  any
          22    23      22  any
    Signature: (Lorg/h2/engine/DbObject;Ljava/util/Map<Ljava/lang/String;+Lorg/h2/schema/SchemaObject;>;Ljava/lang/String;)Ljava/lang/String;
    MethodParameters:
        Name  Flags
      obj     
      map     
      prefix  

  public java.lang.String getUniqueConstraintName(org.h2.engine.Session, org.h2.table.Table);
    descriptor: (Lorg/h2/engine/Session;Lorg/h2/table/Table;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.h2.schema.Schema this
        start local 1 // org.h2.engine.Session session
        start local 2 // org.h2.table.Table table
         0: .line 485
            aload 2 /* table */
            invokevirtual org.h2.table.Table.isTemporary:()Z
            ifeq 3
            aload 2 /* table */
            invokevirtual org.h2.table.Table.isGlobalTemporary:()Z
            ifne 3
         1: .line 486
            aload 1 /* session */
            invokevirtual org.h2.engine.Session.getLocalTempTableConstraints:()Ljava/util/HashMap;
            astore 3 /* tableConstraints */
        start local 3 // java.util.Map tableConstraints
         2: .line 487
            goto 4
        end local 3 // java.util.Map tableConstraints
         3: .line 488
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.constraints:Ljava/util/concurrent/ConcurrentHashMap;
            astore 3 /* tableConstraints */
        start local 3 // java.util.Map tableConstraints
         4: .line 490
      StackMap locals: java.util.Map
      StackMap stack:
            aload 0 /* this */
            aload 2 /* table */
            aload 3 /* tableConstraints */
            ldc "CONSTRAINT_"
            invokevirtual org.h2.schema.Schema.getUniqueName:(Lorg/h2/engine/DbObject;Ljava/util/Map;Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 3 // java.util.Map tableConstraints
        end local 2 // org.h2.table.Table table
        end local 1 // org.h2.engine.Session session
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    5     0              this  Lorg/h2/schema/Schema;
            0    5     1           session  Lorg/h2/engine/Session;
            0    5     2             table  Lorg/h2/table/Table;
            2    3     3  tableConstraints  Ljava/util/Map<Ljava/lang/String;Lorg/h2/constraint/Constraint;>;
            4    5     3  tableConstraints  Ljava/util/Map<Ljava/lang/String;Lorg/h2/constraint/Constraint;>;
    MethodParameters:
         Name  Flags
      session  
      table    

  public java.lang.String getUniqueIndexName(org.h2.engine.Session, org.h2.table.Table, java.lang.String);
    descriptor: (Lorg/h2/engine/Session;Lorg/h2/table/Table;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.h2.schema.Schema this
        start local 1 // org.h2.engine.Session session
        start local 2 // org.h2.table.Table table
        start local 3 // java.lang.String prefix
         0: .line 503
            aload 2 /* table */
            invokevirtual org.h2.table.Table.isTemporary:()Z
            ifeq 3
            aload 2 /* table */
            invokevirtual org.h2.table.Table.isGlobalTemporary:()Z
            ifne 3
         1: .line 504
            aload 1 /* session */
            invokevirtual org.h2.engine.Session.getLocalTempTableIndexes:()Ljava/util/HashMap;
            astore 4 /* tableIndexes */
        start local 4 // java.util.Map tableIndexes
         2: .line 505
            goto 4
        end local 4 // java.util.Map tableIndexes
         3: .line 506
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.indexes:Ljava/util/concurrent/ConcurrentHashMap;
            astore 4 /* tableIndexes */
        start local 4 // java.util.Map tableIndexes
         4: .line 508
      StackMap locals: java.util.Map
      StackMap stack:
            aload 0 /* this */
            aload 2 /* table */
            aload 4 /* tableIndexes */
            aload 3 /* prefix */
            invokevirtual org.h2.schema.Schema.getUniqueName:(Lorg/h2/engine/DbObject;Ljava/util/Map;Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 4 // java.util.Map tableIndexes
        end local 3 // java.lang.String prefix
        end local 2 // org.h2.table.Table table
        end local 1 // org.h2.engine.Session session
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0          this  Lorg/h2/schema/Schema;
            0    5     1       session  Lorg/h2/engine/Session;
            0    5     2         table  Lorg/h2/table/Table;
            0    5     3        prefix  Ljava/lang/String;
            2    3     4  tableIndexes  Ljava/util/Map<Ljava/lang/String;Lorg/h2/index/Index;>;
            4    5     4  tableIndexes  Ljava/util/Map<Ljava/lang/String;Lorg/h2/index/Index;>;
    MethodParameters:
         Name  Flags
      session  
      table    
      prefix   

  public org.h2.table.Table getTableOrView(org.h2.engine.Session, java.lang.String);
    descriptor: (Lorg/h2/engine/Session;Ljava/lang/String;)Lorg/h2/table/Table;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.h2.schema.Schema this
        start local 1 // org.h2.engine.Session session
        start local 2 // java.lang.String name
         0: .line 521
            aload 0 /* this */
            getfield org.h2.schema.Schema.tablesAndViews:Ljava/util/concurrent/ConcurrentHashMap;
            aload 2 /* name */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.h2.table.Table
            astore 3 /* table */
        start local 3 // org.h2.table.Table table
         1: .line 522
            aload 3 /* table */
            ifnonnull 6
         2: .line 523
            aload 1 /* session */
            ifnull 4
         3: .line 524
            aload 1 /* session */
            aload 2 /* name */
            invokevirtual org.h2.engine.Session.findLocalTempTable:(Ljava/lang/String;)Lorg/h2/table/Table;
            astore 3 /* table */
         4: .line 526
      StackMap locals: org.h2.table.Table
      StackMap stack:
            aload 3 /* table */
            ifnonnull 6
         5: .line 527
            ldc 42102
            aload 2 /* name */
            invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
            athrow
         6: .line 530
      StackMap locals:
      StackMap stack:
            aload 3 /* table */
            areturn
        end local 3 // org.h2.table.Table table
        end local 2 // java.lang.String name
        end local 1 // org.h2.engine.Session session
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/h2/schema/Schema;
            0    7     1  session  Lorg/h2/engine/Session;
            0    7     2     name  Ljava/lang/String;
            1    7     3    table  Lorg/h2/table/Table;
    MethodParameters:
         Name  Flags
      session  
      name     

  public org.h2.index.Index getIndex(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/h2/index/Index;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.h2.schema.Schema this
        start local 1 // java.lang.String name
         0: .line 541
            aload 0 /* this */
            getfield org.h2.schema.Schema.indexes:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* name */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.h2.index.Index
            astore 2 /* index */
        start local 2 // org.h2.index.Index index
         1: .line 542
            aload 2 /* index */
            ifnonnull 3
         2: .line 543
            ldc 42112
            aload 1 /* name */
            invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
            athrow
         3: .line 545
      StackMap locals: org.h2.index.Index
      StackMap stack:
            aload 2 /* index */
            areturn
        end local 2 // org.h2.index.Index index
        end local 1 // java.lang.String name
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/h2/schema/Schema;
            0    4     1   name  Ljava/lang/String;
            1    4     2  index  Lorg/h2/index/Index;
    MethodParameters:
      Name  Flags
      name  

  public org.h2.constraint.Constraint getConstraint(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/h2/constraint/Constraint;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.h2.schema.Schema this
        start local 1 // java.lang.String name
         0: .line 556
            aload 0 /* this */
            getfield org.h2.schema.Schema.constraints:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* name */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.h2.constraint.Constraint
            astore 2 /* constraint */
        start local 2 // org.h2.constraint.Constraint constraint
         1: .line 557
            aload 2 /* constraint */
            ifnonnull 3
         2: .line 558
            ldc 90057
            aload 1 /* name */
            invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
            athrow
         3: .line 560
      StackMap locals: org.h2.constraint.Constraint
      StackMap stack:
            aload 2 /* constraint */
            areturn
        end local 2 // org.h2.constraint.Constraint constraint
        end local 1 // java.lang.String name
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lorg/h2/schema/Schema;
            0    4     1        name  Ljava/lang/String;
            1    4     2  constraint  Lorg/h2/constraint/Constraint;
    MethodParameters:
      Name  Flags
      name  

  public org.h2.schema.Constant getConstant(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/h2/schema/Constant;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.h2.schema.Schema this
        start local 1 // java.lang.String constantName
         0: .line 571
            aload 0 /* this */
            getfield org.h2.schema.Schema.constants:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* constantName */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.h2.schema.Constant
            astore 2 /* constant */
        start local 2 // org.h2.schema.Constant constant
         1: .line 572
            aload 2 /* constant */
            ifnonnull 3
         2: .line 573
            ldc 90115
            aload 1 /* constantName */
            invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
            athrow
         3: .line 575
      StackMap locals: org.h2.schema.Constant
      StackMap stack:
            aload 2 /* constant */
            areturn
        end local 2 // org.h2.schema.Constant constant
        end local 1 // java.lang.String constantName
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lorg/h2/schema/Schema;
            0    4     1  constantName  Ljava/lang/String;
            1    4     2      constant  Lorg/h2/schema/Constant;
    MethodParameters:
              Name  Flags
      constantName  

  public org.h2.schema.Sequence getSequence(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/h2/schema/Sequence;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.h2.schema.Schema this
        start local 1 // java.lang.String sequenceName
         0: .line 586
            aload 0 /* this */
            getfield org.h2.schema.Schema.sequences:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* sequenceName */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.h2.schema.Sequence
            astore 2 /* sequence */
        start local 2 // org.h2.schema.Sequence sequence
         1: .line 587
            aload 2 /* sequence */
            ifnonnull 3
         2: .line 588
            ldc 90036
            aload 1 /* sequenceName */
            invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
            athrow
         3: .line 590
      StackMap locals: org.h2.schema.Sequence
      StackMap stack:
            aload 2 /* sequence */
            areturn
        end local 2 // org.h2.schema.Sequence sequence
        end local 1 // java.lang.String sequenceName
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lorg/h2/schema/Schema;
            0    4     1  sequenceName  Ljava/lang/String;
            1    4     2      sequence  Lorg/h2/schema/Sequence;
    MethodParameters:
              Name  Flags
      sequenceName  

  public java.util.ArrayList<org.h2.schema.SchemaObject> getAll(java.util.ArrayList<org.h2.schema.SchemaObject>);
    descriptor: (Ljava/util/ArrayList;)Ljava/util/ArrayList;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.schema.Schema this
        start local 1 // java.util.ArrayList addTo
         0: .line 603
            aload 1 /* addTo */
            ifnonnull 2
         1: .line 604
            invokestatic org.h2.util.Utils.newSmallArrayList:()Ljava/util/ArrayList;
            astore 1 /* addTo */
         2: .line 606
      StackMap locals:
      StackMap stack:
            aload 1 /* addTo */
            aload 0 /* this */
            getfield org.h2.schema.Schema.tablesAndViews:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.values:()Ljava/util/Collection;
            invokevirtual java.util.ArrayList.addAll:(Ljava/util/Collection;)Z
            pop
         3: .line 607
            aload 1 /* addTo */
            aload 0 /* this */
            getfield org.h2.schema.Schema.synonyms:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.values:()Ljava/util/Collection;
            invokevirtual java.util.ArrayList.addAll:(Ljava/util/Collection;)Z
            pop
         4: .line 608
            aload 1 /* addTo */
            aload 0 /* this */
            getfield org.h2.schema.Schema.sequences:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.values:()Ljava/util/Collection;
            invokevirtual java.util.ArrayList.addAll:(Ljava/util/Collection;)Z
            pop
         5: .line 609
            aload 1 /* addTo */
            aload 0 /* this */
            getfield org.h2.schema.Schema.indexes:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.values:()Ljava/util/Collection;
            invokevirtual java.util.ArrayList.addAll:(Ljava/util/Collection;)Z
            pop
         6: .line 610
            aload 1 /* addTo */
            aload 0 /* this */
            getfield org.h2.schema.Schema.triggers:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.values:()Ljava/util/Collection;
            invokevirtual java.util.ArrayList.addAll:(Ljava/util/Collection;)Z
            pop
         7: .line 611
            aload 1 /* addTo */
            aload 0 /* this */
            getfield org.h2.schema.Schema.constraints:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.values:()Ljava/util/Collection;
            invokevirtual java.util.ArrayList.addAll:(Ljava/util/Collection;)Z
            pop
         8: .line 612
            aload 1 /* addTo */
            aload 0 /* this */
            getfield org.h2.schema.Schema.constants:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.values:()Ljava/util/Collection;
            invokevirtual java.util.ArrayList.addAll:(Ljava/util/Collection;)Z
            pop
         9: .line 613
            aload 1 /* addTo */
            aload 0 /* this */
            getfield org.h2.schema.Schema.functions:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.values:()Ljava/util/Collection;
            invokevirtual java.util.ArrayList.addAll:(Ljava/util/Collection;)Z
            pop
        10: .line 614
            aload 1 /* addTo */
            areturn
        end local 1 // java.util.ArrayList addTo
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   11     0   this  Lorg/h2/schema/Schema;
            0   11     1  addTo  Ljava/util/ArrayList<Lorg/h2/schema/SchemaObject;>;
    Signature: (Ljava/util/ArrayList<Lorg/h2/schema/SchemaObject;>;)Ljava/util/ArrayList<Lorg/h2/schema/SchemaObject;>;
    MethodParameters:
       Name  Flags
      addTo  

  public java.util.ArrayList<org.h2.schema.SchemaObject> getAll(int, java.util.ArrayList<org.h2.schema.SchemaObject>);
    descriptor: (ILjava/util/ArrayList;)Ljava/util/ArrayList;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.h2.schema.Schema this
        start local 1 // int type
        start local 2 // java.util.ArrayList addTo
         0: .line 629
            aload 0 /* this */
            iload 1 /* type */
            invokevirtual org.h2.schema.Schema.getMap:(I)Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            astore 3 /* values */
        start local 3 // java.util.Collection values
         1: .line 630
            aload 2 /* addTo */
            ifnull 4
         2: .line 631
            aload 2 /* addTo */
            aload 3 /* values */
            invokevirtual java.util.ArrayList.addAll:(Ljava/util/Collection;)Z
            pop
         3: .line 632
            goto 5
         4: .line 633
      StackMap locals: java.util.Collection
      StackMap stack:
            new java.util.ArrayList
            dup
            aload 3 /* values */
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            astore 2 /* addTo */
         5: .line 635
      StackMap locals:
      StackMap stack:
            aload 2 /* addTo */
            areturn
        end local 3 // java.util.Collection values
        end local 2 // java.util.ArrayList addTo
        end local 1 // int type
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lorg/h2/schema/Schema;
            0    6     1    type  I
            0    6     2   addTo  Ljava/util/ArrayList<Lorg/h2/schema/SchemaObject;>;
            1    6     3  values  Ljava/util/Collection<Lorg/h2/schema/SchemaObject;>;
    Signature: (ILjava/util/ArrayList<Lorg/h2/schema/SchemaObject;>;)Ljava/util/ArrayList<Lorg/h2/schema/SchemaObject;>;
    MethodParameters:
       Name  Flags
      type   
      addTo  

  public java.util.ArrayList<org.h2.table.Table> getAllTablesAndViews();
    descriptor: ()Ljava/util/ArrayList;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.h2.schema.Schema this
         0: .line 644
            aload 0 /* this */
            getfield org.h2.schema.Schema.database:Lorg/h2/engine/Database;
            dup
            astore 1
            monitorenter
         1: .line 645
            new java.util.ArrayList
            dup
            aload 0 /* this */
            getfield org.h2.schema.Schema.tablesAndViews:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.values:()Ljava/util/Collection;
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            aload 1
            monitorexit
         2: areturn
         3: .line 644
      StackMap locals: org.h2.schema.Schema org.h2.engine.Database
      StackMap stack: java.lang.Throwable
            aload 1
            monitorexit
         4: athrow
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/h2/schema/Schema;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any
    Signature: ()Ljava/util/ArrayList<Lorg/h2/table/Table;>;

  public java.util.ArrayList<org.h2.table.TableSynonym> getAllSynonyms();
    descriptor: ()Ljava/util/ArrayList;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.h2.schema.Schema this
         0: .line 651
            aload 0 /* this */
            getfield org.h2.schema.Schema.database:Lorg/h2/engine/Database;
            dup
            astore 1
            monitorenter
         1: .line 652
            new java.util.ArrayList
            dup
            aload 0 /* this */
            getfield org.h2.schema.Schema.synonyms:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.values:()Ljava/util/Collection;
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            aload 1
            monitorexit
         2: areturn
         3: .line 651
      StackMap locals: org.h2.schema.Schema org.h2.engine.Database
      StackMap stack: java.lang.Throwable
            aload 1
            monitorexit
         4: athrow
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/h2/schema/Schema;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any
    Signature: ()Ljava/util/ArrayList<Lorg/h2/table/TableSynonym;>;

  public org.h2.table.Table getTableOrViewByName(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/h2/table/Table;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.h2.schema.Schema this
        start local 1 // java.lang.String name
         0: .line 663
            aload 0 /* this */
            getfield org.h2.schema.Schema.database:Lorg/h2/engine/Database;
            dup
            astore 2
            monitorenter
         1: .line 664
            aload 0 /* this */
            getfield org.h2.schema.Schema.tablesAndViews:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* name */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.h2.table.Table
            aload 2
            monitorexit
         2: areturn
         3: .line 663
      StackMap locals: org.h2.schema.Schema java.lang.String org.h2.engine.Database
      StackMap stack: java.lang.Throwable
            aload 2
            monitorexit
         4: athrow
        end local 1 // java.lang.String name
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/h2/schema/Schema;
            0    5     1  name  Ljava/lang/String;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any
    MethodParameters:
      Name  Flags
      name  

  public void remove(org.h2.schema.SchemaObject);
    descriptor: (Lorg/h2/schema/SchemaObject;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.h2.schema.Schema this
        start local 1 // org.h2.schema.SchemaObject obj
         0: .line 674
            aload 1 /* obj */
            invokeinterface org.h2.schema.SchemaObject.getName:()Ljava/lang/String;
            astore 2 /* objName */
        start local 2 // java.lang.String objName
         1: .line 675
            aload 0 /* this */
            aload 1 /* obj */
            invokeinterface org.h2.schema.SchemaObject.getType:()I
            invokevirtual org.h2.schema.Schema.getMap:(I)Ljava/util/Map;
            astore 3 /* map */
        start local 3 // java.util.Map map
         2: .line 676
            aload 3 /* map */
            aload 2 /* objName */
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            ifnonnull 4
         3: .line 677
            new java.lang.StringBuilder
            dup
            ldc "not found: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* objName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.h2.message.DbException.throwInternalError:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            pop
         4: .line 679
      StackMap locals: java.lang.String java.util.Map
      StackMap stack:
            aload 0 /* this */
            aload 2 /* objName */
            invokevirtual org.h2.schema.Schema.freeUniqueName:(Ljava/lang/String;)V
         5: .line 680
            return
        end local 3 // java.util.Map map
        end local 2 // java.lang.String objName
        end local 1 // org.h2.schema.SchemaObject obj
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/h2/schema/Schema;
            0    6     1      obj  Lorg/h2/schema/SchemaObject;
            1    6     2  objName  Ljava/lang/String;
            2    6     3      map  Ljava/util/Map<Ljava/lang/String;Lorg/h2/schema/SchemaObject;>;
    MethodParameters:
      Name  Flags
      obj   

  public org.h2.table.Table createTable(org.h2.command.ddl.CreateTableData);
    descriptor: (Lorg/h2/command/ddl/CreateTableData;)Lorg/h2/table/Table;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.h2.schema.Schema this
        start local 1 // org.h2.command.ddl.CreateTableData data
         0: .line 689
            aload 0 /* this */
            getfield org.h2.schema.Schema.database:Lorg/h2/engine/Database;
            dup
            astore 2
            monitorenter
         1: .line 690
            aload 1 /* data */
            getfield org.h2.command.ddl.CreateTableData.temporary:Z
            ifeq 2
            aload 1 /* data */
            getfield org.h2.command.ddl.CreateTableData.globalTemporary:Z
            ifeq 3
         2: .line 691
      StackMap locals: org.h2.engine.Database
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.database:Lorg/h2/engine/Database;
            aload 1 /* data */
            getfield org.h2.command.ddl.CreateTableData.session:Lorg/h2/engine/Session;
            invokevirtual org.h2.engine.Database.lockMeta:(Lorg/h2/engine/Session;)Z
            pop
         3: .line 693
      StackMap locals:
      StackMap stack:
            aload 1 /* data */
            aload 0 /* this */
            putfield org.h2.command.ddl.CreateTableData.schema:Lorg/h2/schema/Schema;
         4: .line 694
            aload 1 /* data */
            getfield org.h2.command.ddl.CreateTableData.tableEngine:Ljava/lang/String;
            ifnonnull 11
         5: .line 695
            aload 0 /* this */
            getfield org.h2.schema.Schema.database:Lorg/h2/engine/Database;
            invokevirtual org.h2.engine.Database.getSettings:()Lorg/h2/engine/DbSettings;
            astore 3 /* s */
        start local 3 // org.h2.engine.DbSettings s
         6: .line 696
            aload 3 /* s */
            getfield org.h2.engine.DbSettings.defaultTableEngine:Ljava/lang/String;
            ifnull 9
         7: .line 697
            aload 1 /* data */
            aload 3 /* s */
            getfield org.h2.engine.DbSettings.defaultTableEngine:Ljava/lang/String;
            putfield org.h2.command.ddl.CreateTableData.tableEngine:Ljava/lang/String;
         8: .line 698
            goto 11
      StackMap locals: org.h2.engine.DbSettings
      StackMap stack:
         9: aload 3 /* s */
            getfield org.h2.engine.DbSettings.mvStore:Z
            ifeq 11
        10: .line 699
            aload 1 /* data */
            ldc Lorg/h2/mvstore/db/MVTableEngine;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            putfield org.h2.command.ddl.CreateTableData.tableEngine:Ljava/lang/String;
        end local 3 // org.h2.engine.DbSettings s
        11: .line 702
      StackMap locals:
      StackMap stack:
            aload 1 /* data */
            getfield org.h2.command.ddl.CreateTableData.tableEngine:Ljava/lang/String;
            ifnull 16
        12: .line 703
            aload 1 /* data */
            getfield org.h2.command.ddl.CreateTableData.tableEngineParams:Ljava/util/ArrayList;
            ifnonnull 14
        13: .line 704
            aload 1 /* data */
            aload 0 /* this */
            getfield org.h2.schema.Schema.tableEngineParams:Ljava/util/ArrayList;
            putfield org.h2.command.ddl.CreateTableData.tableEngineParams:Ljava/util/ArrayList;
        14: .line 706
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.Schema.database:Lorg/h2/engine/Database;
            aload 1 /* data */
            getfield org.h2.command.ddl.CreateTableData.tableEngine:Ljava/lang/String;
            invokevirtual org.h2.engine.Database.getTableEngine:(Ljava/lang/String;)Lorg/h2/api/TableEngine;
            aload 1 /* data */
            invokeinterface org.h2.api.TableEngine.createTable:(Lorg/h2/command/ddl/CreateTableData;)Lorg/h2/table/Table;
            aload 2
            monitorexit
        15: areturn
        16: .line 708
      StackMap locals:
      StackMap stack:
            new org.h2.table.PageStoreTable
            dup
            aload 1 /* data */
            invokespecial org.h2.table.PageStoreTable.<init>:(Lorg/h2/command/ddl/CreateTableData;)V
            aload 2
            monitorexit
        17: areturn
        18: .line 689
      StackMap locals:
      StackMap stack: java.lang.Throwable
            aload 2
            monitorexit
        19: athrow
        end local 1 // org.h2.command.ddl.CreateTableData data
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   20     0  this  Lorg/h2/schema/Schema;
            0   20     1  data  Lorg/h2/command/ddl/CreateTableData;
            6   11     3     s  Lorg/h2/engine/DbSettings;
      Exception table:
        from    to  target  type
           1    15      18  any
          16    17      18  any
          18    19      18  any
    MethodParameters:
      Name  Flags
      data  

  public org.h2.table.TableSynonym createSynonym(org.h2.command.ddl.CreateSynonymData);
    descriptor: (Lorg/h2/command/ddl/CreateSynonymData;)Lorg/h2/table/TableSynonym;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.h2.schema.Schema this
        start local 1 // org.h2.command.ddl.CreateSynonymData data
         0: .line 719
            aload 0 /* this */
            getfield org.h2.schema.Schema.database:Lorg/h2/engine/Database;
            dup
            astore 2
            monitorenter
         1: .line 720
            aload 0 /* this */
            getfield org.h2.schema.Schema.database:Lorg/h2/engine/Database;
            aload 1 /* data */
            getfield org.h2.command.ddl.CreateSynonymData.session:Lorg/h2/engine/Session;
            invokevirtual org.h2.engine.Database.lockMeta:(Lorg/h2/engine/Session;)Z
            pop
         2: .line 721
            aload 1 /* data */
            aload 0 /* this */
            putfield org.h2.command.ddl.CreateSynonymData.schema:Lorg/h2/schema/Schema;
         3: .line 722
            new org.h2.table.TableSynonym
            dup
            aload 1 /* data */
            invokespecial org.h2.table.TableSynonym.<init>:(Lorg/h2/command/ddl/CreateSynonymData;)V
            aload 2
            monitorexit
         4: areturn
         5: .line 719
      StackMap locals: org.h2.schema.Schema org.h2.command.ddl.CreateSynonymData org.h2.engine.Database
      StackMap stack: java.lang.Throwable
            aload 2
            monitorexit
         6: athrow
        end local 1 // org.h2.command.ddl.CreateSynonymData data
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/h2/schema/Schema;
            0    7     1  data  Lorg/h2/command/ddl/CreateSynonymData;
      Exception table:
        from    to  target  type
           1     4       5  any
           5     6       5  any
    MethodParameters:
      Name  Flags
      data  

  public org.h2.table.TableLink createTableLink(int, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, boolean, boolean);
    descriptor: (ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZZ)Lorg/h2/table/TableLink;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=13, locals=12, args_size=11
        start local 0 // org.h2.schema.Schema this
        start local 1 // int id
        start local 2 // java.lang.String tableName
        start local 3 // java.lang.String driver
        start local 4 // java.lang.String url
        start local 5 // java.lang.String user
        start local 6 // java.lang.String password
        start local 7 // java.lang.String originalSchema
        start local 8 // java.lang.String originalTable
        start local 9 // boolean emitUpdates
        start local 10 // boolean force
         0: .line 744
            aload 0 /* this */
            getfield org.h2.schema.Schema.database:Lorg/h2/engine/Database;
            dup
            astore 11
            monitorenter
         1: .line 745
            new org.h2.table.TableLink
            dup
            aload 0 /* this */
            iload 1 /* id */
            aload 2 /* tableName */
         2: .line 746
            aload 3 /* driver */
            aload 4 /* url */
            aload 5 /* user */
            aload 6 /* password */
         3: .line 747
            aload 7 /* originalSchema */
            aload 8 /* originalTable */
            iload 9 /* emitUpdates */
            iload 10 /* force */
         4: .line 745
            invokespecial org.h2.table.TableLink.<init>:(Lorg/h2/schema/Schema;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZZ)V
            aload 11
            monitorexit
         5: areturn
         6: .line 744
      StackMap locals: org.h2.schema.Schema int java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String int int org.h2.engine.Database
      StackMap stack: java.lang.Throwable
            aload 11
            monitorexit
         7: athrow
        end local 10 // boolean force
        end local 9 // boolean emitUpdates
        end local 8 // java.lang.String originalTable
        end local 7 // java.lang.String originalSchema
        end local 6 // java.lang.String password
        end local 5 // java.lang.String user
        end local 4 // java.lang.String url
        end local 3 // java.lang.String driver
        end local 2 // java.lang.String tableName
        end local 1 // int id
        end local 0 // org.h2.schema.Schema this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    8     0            this  Lorg/h2/schema/Schema;
            0    8     1              id  I
            0    8     2       tableName  Ljava/lang/String;
            0    8     3          driver  Ljava/lang/String;
            0    8     4             url  Ljava/lang/String;
            0    8     5            user  Ljava/lang/String;
            0    8     6        password  Ljava/lang/String;
            0    8     7  originalSchema  Ljava/lang/String;
            0    8     8   originalTable  Ljava/lang/String;
            0    8     9     emitUpdates  Z
            0    8    10           force  Z
      Exception table:
        from    to  target  type
           1     5       6  any
           6     7       6  any
    MethodParameters:
                Name  Flags
      id              
      tableName       
      driver          
      url             
      user            
      password        
      originalSchema  
      originalTable   
      emitUpdates     
      force           
}
SourceFile: "Schema.java"