class org.hsqldb.test.TestScripts extends org.hsqldb.test.TestUtil
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.hsqldb.test.TestScripts
  super_class: org.hsqldb.test.TestUtil
{
  private static final java.lang.String SYNTAX_MSG;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static java.lang.String DEF_DB;
    descriptor: Ljava/lang/String;
    flags: (0x0008) ACC_STATIC

  static java.lang.String DEF_URL;
    descriptor: Ljava/lang/String;
    flags: (0x0008) ACC_STATIC

  static java.lang.String DEF_USER;
    descriptor: Ljava/lang/String;
    flags: (0x0008) ACC_STATIC

  static java.lang.String DEF_PASSWORD;
    descriptor: Ljava/lang/String;
    flags: (0x0008) ACC_STATIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 135
            new java.lang.StringBuilder
            dup
            ldc "SYNTAX  java "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         1: .line 136
            ldc Lorg/hsqldb/test/TestScripts;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         2: .line 137
            ldc " [--ephConnId=x | --persistConnId=x] file1.txt..."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 135
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putstatic org.hsqldb.test.TestScripts.SYNTAX_MSG:Ljava/lang/String;
         4: .line 139
            ldc "test3"
            putstatic org.hsqldb.test.TestScripts.DEF_DB:Ljava/lang/String;
         5: .line 140
            new java.lang.StringBuilder
            dup
            ldc "jdbc:hsqldb:"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.hsqldb.test.TestScripts.DEF_DB:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         6: .line 141
            ldc ";sql.enforce_strict_size=true"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 140
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putstatic org.hsqldb.test.TestScripts.DEF_URL:Ljava/lang/String;
         8: .line 142
            ldc "SA"
            putstatic org.hsqldb.test.TestScripts.DEF_USER:Ljava/lang/String;
         9: .line 143
            ldc ""
            putstatic org.hsqldb.test.TestScripts.DEF_PASSWORD:Ljava/lang/String;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.test.TestScripts this
         0: .line 46
            aload 0 /* this */
            invokespecial org.hsqldb.test.TestUtil.<init>:()V
            return
        end local 0 // org.hsqldb.test.TestScripts this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/test/TestScripts;

  public static void main(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=6, args_size=1
        start local 0 // java.lang.String[] argv
         0: .line 58
            aload 0 /* argv */
            arraylength
            ifle 3
            aload 0 /* argv */
            iconst_0
            aaload
            ldc "--help"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 3
         1: .line 59
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            getstatic org.hsqldb.test.TestScripts.SYNTAX_MSG:Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         2: .line 60
            iconst_2
            invokestatic java.lang.System.exit:(I)V
         3: .line 63
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* scripts */
        start local 1 // java.util.ArrayList scripts
         4: .line 64
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* connIds */
        start local 2 // java.util.ArrayList connIds
         5: .line 65
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* retains */
        start local 3 // java.util.ArrayList retains
         6: .line 66
            iconst_m1
            istore 4 /* i */
        start local 4 // int i
         7: .line 70
            aload 2 /* connIds */
            aconst_null
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         8: .line 71
            aload 3 /* retains */
            aconst_null
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         9: .line 73
            aconst_null
            astore 5 /* newName */
        start local 5 // java.lang.String newName
        10: .line 75
            goto 38
        11: .line 76
      StackMap locals: java.lang.String[] java.util.ArrayList java.util.ArrayList java.util.ArrayList int java.lang.String
      StackMap stack:
            aload 0 /* argv */
            iload 4 /* i */
            aaload
            ldc "--ephConnId="
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 21
        12: .line 77
            aload 0 /* argv */
            iload 4 /* i */
            aaload
            invokestatic org.hsqldb.test.TestScripts.getIdName:(Ljava/lang/String;)Ljava/lang/String;
            astore 5 /* newName */
        13: .line 79
            aload 5 /* newName */
            ifnull 15
        14: .line 80
            aload 2 /* connIds */
            aload 2 /* connIds */
            invokevirtual java.util.ArrayList.size:()I
            iconst_1
            isub
            aload 0 /* argv */
            iload 4 /* i */
            aaload
            invokestatic org.hsqldb.test.TestScripts.getIdName:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.util.ArrayList.set:(ILjava/lang/Object;)Ljava/lang/Object;
            ifnull 17
        15: .line 82
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            getstatic org.hsqldb.test.TestScripts.SYNTAX_MSG:Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        16: .line 83
            iconst_2
            invokestatic java.lang.System.exit:(I)V
        17: .line 86
      StackMap locals:
      StackMap stack:
            aload 3 /* retains */
            aload 3 /* retains */
            invokevirtual java.util.ArrayList.size:()I
            iconst_1
            isub
            getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
            invokevirtual java.util.ArrayList.set:(ILjava/lang/Object;)Ljava/lang/Object;
            ifnull 38
        18: .line 87
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            getstatic org.hsqldb.test.TestScripts.SYNTAX_MSG:Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        19: .line 88
            iconst_2
            invokestatic java.lang.System.exit:(I)V
        20: .line 90
            goto 38
      StackMap locals:
      StackMap stack:
        21: aload 0 /* argv */
            iload 4 /* i */
            aaload
            ldc "--persistConnId="
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 31
        22: .line 91
            aload 0 /* argv */
            iload 4 /* i */
            aaload
            invokestatic org.hsqldb.test.TestScripts.getIdName:(Ljava/lang/String;)Ljava/lang/String;
            astore 5 /* newName */
        23: .line 93
            aload 5 /* newName */
            ifnull 25
        24: .line 94
            aload 2 /* connIds */
            aload 2 /* connIds */
            invokevirtual java.util.ArrayList.size:()I
            iconst_1
            isub
            aload 5 /* newName */
            invokevirtual java.util.ArrayList.set:(ILjava/lang/Object;)Ljava/lang/Object;
            ifnull 27
        25: .line 95
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            getstatic org.hsqldb.test.TestScripts.SYNTAX_MSG:Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        26: .line 96
            iconst_2
            invokestatic java.lang.System.exit:(I)V
        27: .line 99
      StackMap locals:
      StackMap stack:
            aload 3 /* retains */
            aload 3 /* retains */
            invokevirtual java.util.ArrayList.size:()I
            iconst_1
            isub
            getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
            invokevirtual java.util.ArrayList.set:(ILjava/lang/Object;)Ljava/lang/Object;
            ifnull 38
        28: .line 100
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            getstatic org.hsqldb.test.TestScripts.SYNTAX_MSG:Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        29: .line 101
            iconst_2
            invokestatic java.lang.System.exit:(I)V
        30: .line 103
            goto 38
      StackMap locals:
      StackMap stack:
        31: aload 0 /* argv */
            iload 4 /* i */
            aaload
            ldc "-"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 35
        32: .line 104
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            getstatic org.hsqldb.test.TestScripts.SYNTAX_MSG:Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        33: .line 105
            iconst_2
            invokestatic java.lang.System.exit:(I)V
        34: .line 106
            goto 38
        35: .line 107
      StackMap locals:
      StackMap stack:
            aload 1 /* scripts */
            aload 0 /* argv */
            iload 4 /* i */
            aaload
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        36: .line 108
            aload 2 /* connIds */
            aconst_null
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        37: .line 109
            aload 3 /* retains */
            aconst_null
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        38: .line 75
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
            iload 4 /* i */
            aload 0 /* argv */
            arraylength
            if_icmplt 11
        39: .line 113
            getstatic org.hsqldb.test.TestScripts.DEF_URL:Ljava/lang/String;
            getstatic org.hsqldb.test.TestScripts.DEF_USER:Ljava/lang/String;
            getstatic org.hsqldb.test.TestScripts.DEF_PASSWORD:Ljava/lang/String;
            getstatic org.hsqldb.test.TestScripts.DEF_DB:Ljava/lang/String;
        40: .line 114
            aload 1 /* scripts */
            iconst_0
            anewarray java.lang.String
            invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.String[]
        41: .line 115
            aload 2 /* connIds */
            iconst_0
            anewarray java.lang.String
            invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.String[]
        42: .line 116
            aload 3 /* retains */
            iconst_0
            anewarray java.lang.Boolean
            invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.Boolean[]
        43: .line 113
            invokestatic org.hsqldb.test.TestScripts.test:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/Boolean;)V
        44: .line 117
            return
        end local 5 // java.lang.String newName
        end local 4 // int i
        end local 3 // java.util.ArrayList retains
        end local 2 // java.util.ArrayList connIds
        end local 1 // java.util.ArrayList scripts
        end local 0 // java.lang.String[] argv
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   45     0     argv  [Ljava/lang/String;
            4   45     1  scripts  Ljava/util/ArrayList;
            5   45     2  connIds  Ljava/util/ArrayList;
            6   45     3  retains  Ljava/util/ArrayList;
            7   45     4        i  I
           10   45     5  newName  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      argv  

  private static java.lang.String getIdName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.lang.String s
         0: .line 121
            aload 0 /* s */
            bipush 61
            invokevirtual java.lang.String.indexOf:(I)I
            iconst_1
            iadd
            istore 1 /* nameStart */
        start local 1 // int nameStart
         1: .line 123
            iload 1 /* nameStart */
            iconst_1
            if_icmpge 3
         2: .line 124
            aconst_null
            areturn
         3: .line 127
      StackMap locals: int
      StackMap stack:
            iload 1 /* nameStart */
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            if_icmpne 7
         4: .line 128
            new java.lang.RuntimeException
            dup
         5: .line 129
            ldc "Leave off '=' if you do not want to name a connection"
         6: .line 128
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 132
      StackMap locals:
      StackMap stack:
            aload 0 /* s */
            iload 1 /* nameStart */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            areturn
        end local 1 // int nameStart
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0          s  Ljava/lang/String;
            1    8     1  nameStart  I
    MethodParameters:
      Name  Flags
      s     

  static void test(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String[], java.lang.String[], java.lang.Boolean[]);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/Boolean;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=11, args_size=7
        start local 0 // java.lang.String url
        start local 1 // java.lang.String user
        start local 2 // java.lang.String password
        start local 3 // java.lang.String db
        start local 4 // java.lang.String[] scriptList
        start local 5 // java.lang.String[] idList
        start local 6 // java.lang.Boolean[] persistList
         0: .line 149
            aload 4 /* scriptList */
            arraylength
            iconst_1
            if_icmpge 3
         1: .line 150
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "Nothing to do.  No scripts specified."
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         2: .line 152
            return
         3: .line 155
      StackMap locals:
      StackMap stack:
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 7 /* connMap */
        start local 7 // java.util.HashMap connMap
         4: .line 157
            aload 3 /* db */
            ifnull 6
         5: .line 158
            aload 3 /* db */
            invokestatic org.hsqldb.test.TestScripts.deleteDatabase:(Ljava/lang/String;)V
         6: .line 162
      StackMap locals: java.util.HashMap
      StackMap stack:
            new org.hsqldb.jdbc.JDBCDriver
            dup
            invokespecial org.hsqldb.jdbc.JDBCDriver.<init>:()V
            invokestatic java.sql.DriverManager.registerDriver:(Ljava/sql/Driver;)V
         7: .line 164
            aconst_null
            astore 8 /* cConnection */
        start local 8 // java.sql.Connection cConnection
         8: .line 167
            iconst_0
            istore 10 /* i */
        start local 10 // int i
         9: goto 31
        10: .line 168
      StackMap locals: java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String[] java.lang.String[] java.lang.Boolean[] java.util.HashMap java.sql.Connection top int
      StackMap stack:
            aload 5 /* idList */
            iload 10 /* i */
            aaload
            astore 9 /* id */
        start local 9 // java.lang.String id
        11: .line 170
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "ID: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 9 /* id */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        12: .line 172
            aload 9 /* id */
            ifnonnull 13
            aconst_null
            goto 14
        13: .line 173
      StackMap locals: java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String[] java.lang.String[] java.lang.Boolean[] java.util.HashMap java.sql.Connection java.lang.String int
      StackMap stack:
            aload 7 /* connMap */
            aload 9 /* id */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.sql.Connection
        14: .line 172
      StackMap locals:
      StackMap stack: java.sql.Connection
            astore 8 /* cConnection */
        15: .line 175
            aload 8 /* cConnection */
            ifnonnull 23
        16: .line 176
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "Getting NEW conn"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        17: .line 178
            aload 0 /* url */
            aload 1 /* user */
        18: .line 179
            aload 2 /* password */
        19: .line 178
            invokestatic java.sql.DriverManager.getConnection:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/Connection;
            astore 8 /* cConnection */
        20: .line 181
            aload 9 /* id */
            ifnull 23
        21: .line 184
            aload 7 /* connMap */
            aload 9 /* id */
            aload 8 /* cConnection */
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        22: .line 185
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "Storing NEW conn"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        23: .line 189
      StackMap locals:
      StackMap stack:
            aload 8 /* cConnection */
            aload 4 /* scriptList */
            iload 10 /* i */
            aaload
            invokestatic org.hsqldb.test.TestScripts.testScript:(Ljava/sql/Connection;Ljava/lang/String;)V
        24: .line 191
            aload 6 /* persistList */
            iload 10 /* i */
            aaload
            ifnull 25
            aload 6 /* persistList */
            iload 10 /* i */
            aaload
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifne 30
        25: .line 192
      StackMap locals:
      StackMap stack:
            aload 9 /* id */
            ifnull 28
        26: .line 193
            aload 7 /* connMap */
            aload 9 /* id */
            invokevirtual java.util.HashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        27: .line 194
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "Removed conn"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        28: .line 197
      StackMap locals:
      StackMap stack:
            aload 8 /* cConnection */
            invokeinterface java.sql.Connection.close:()V
        29: .line 198
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "Closed conn"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        30: .line 167
      StackMap locals:
      StackMap stack:
            iinc 10 /* i */ 1
        end local 9 // java.lang.String id
      StackMap locals: java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String[] java.lang.String[] java.lang.Boolean[] java.util.HashMap java.sql.Connection top int
      StackMap stack:
        31: iload 10 /* i */
            aload 4 /* scriptList */
            arraylength
            if_icmplt 10
        end local 10 // int i
        end local 8 // java.sql.Connection cConnection
        32: .line 201
            goto 36
      StackMap locals: java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String[] java.lang.String[] java.lang.Boolean[] java.util.HashMap
      StackMap stack: java.lang.Exception
        33: astore 8 /* e */
        start local 8 // java.lang.Exception e
        34: .line 202
            aload 8 /* e */
            invokevirtual java.lang.Exception.printStackTrace:()V
        35: .line 203
            new java.lang.StringBuilder
            dup
            ldc "TestSelf init error: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 8 /* e */
            invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.hsqldb.test.TestScripts.print:(Ljava/lang/String;)V
        end local 8 // java.lang.Exception e
        36: .line 205
      StackMap locals:
      StackMap stack:
            return
        end local 7 // java.util.HashMap connMap
        end local 6 // java.lang.Boolean[] persistList
        end local 5 // java.lang.String[] idList
        end local 4 // java.lang.String[] scriptList
        end local 3 // java.lang.String db
        end local 2 // java.lang.String password
        end local 1 // java.lang.String user
        end local 0 // java.lang.String url
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   37     0          url  Ljava/lang/String;
            0   37     1         user  Ljava/lang/String;
            0   37     2     password  Ljava/lang/String;
            0   37     3           db  Ljava/lang/String;
            0   37     4   scriptList  [Ljava/lang/String;
            0   37     5       idList  [Ljava/lang/String;
            0   37     6  persistList  [Ljava/lang/Boolean;
            4   37     7      connMap  Ljava/util/HashMap;
            8   32     8  cConnection  Ljava/sql/Connection;
           11   31     9           id  Ljava/lang/String;
            9   32    10            i  I
           34   36     8            e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           6    32      33  Class java.lang.Exception
    MethodParameters:
             Name  Flags
      url          
      user         
      password     
      db           
      scriptList   
      idList       
      persistList  
}
SourceFile: "TestScripts.java"