class org.hsqldb.test.TestBench$ClientThread extends java.lang.Thread
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.hsqldb.test.TestBench$ClientThread
  super_class: java.lang.Thread
{
  int ntrans;
    descriptor: I
    flags: (0x0000) 

  java.sql.Connection Conn;
    descriptor: Ljava/sql/Connection;
    flags: (0x0000) 

  java.sql.PreparedStatement pstmt1;
    descriptor: Ljava/sql/PreparedStatement;
    flags: (0x0000) 

  java.sql.PreparedStatement pstmt2;
    descriptor: Ljava/sql/PreparedStatement;
    flags: (0x0000) 

  java.sql.PreparedStatement pstmt3;
    descriptor: Ljava/sql/PreparedStatement;
    flags: (0x0000) 

  java.sql.PreparedStatement pstmt4;
    descriptor: Ljava/sql/PreparedStatement;
    flags: (0x0000) 

  java.sql.PreparedStatement pstmt5;
    descriptor: Ljava/sql/PreparedStatement;
    flags: (0x0000) 

  final org.hsqldb.test.TestBench this$0;
    descriptor: Lorg/hsqldb/test/TestBench;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  public void <init>(org.hsqldb.test.TestBench, int, java.lang.String, java.lang.String, java.lang.String, int);
    descriptor: (Lorg/hsqldb/test/TestBench;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=7
        start local 0 // org.hsqldb.test.TestBench$ClientThread this
        start local 2 // int number_of_txns
        start local 3 // java.lang.String url
        start local 4 // java.lang.String user
        start local 5 // java.lang.String password
        start local 6 // int transactionMode
         0: .line 922
            aload 0 /* this */
            aload 1
            putfield org.hsqldb.test.TestBench$ClientThread.this$0:Lorg/hsqldb/test/TestBench;
         1: .line 921
            aload 0 /* this */
            invokespecial java.lang.Thread.<init>:()V
         2: .line 913
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.test.TestBench$ClientThread.ntrans:I
         3: .line 915
            aload 0 /* this */
            aconst_null
            putfield org.hsqldb.test.TestBench$ClientThread.pstmt1:Ljava/sql/PreparedStatement;
         4: .line 916
            aload 0 /* this */
            aconst_null
            putfield org.hsqldb.test.TestBench$ClientThread.pstmt2:Ljava/sql/PreparedStatement;
         5: .line 917
            aload 0 /* this */
            aconst_null
            putfield org.hsqldb.test.TestBench$ClientThread.pstmt3:Ljava/sql/PreparedStatement;
         6: .line 918
            aload 0 /* this */
            aconst_null
            putfield org.hsqldb.test.TestBench$ClientThread.pstmt4:Ljava/sql/PreparedStatement;
         7: .line 919
            aload 0 /* this */
            aconst_null
            putfield org.hsqldb.test.TestBench$ClientThread.pstmt5:Ljava/sql/PreparedStatement;
         8: .line 924
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            iload 2 /* number_of_txns */
            invokevirtual java.io.PrintStream.println:(I)V
         9: .line 926
            aload 0 /* this */
            iload 2 /* number_of_txns */
            putfield org.hsqldb.test.TestBench$ClientThread.ntrans:I
        10: .line 927
            aload 0 /* this */
            aload 3 /* url */
            aload 4 /* user */
            aload 5 /* password */
            invokestatic org.hsqldb.test.TestBench.connect:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/Connection;
            putfield org.hsqldb.test.TestBench$ClientThread.Conn:Ljava/sql/Connection;
        11: .line 929
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.Conn:Ljava/sql/Connection;
            ifnonnull 13
        12: .line 930
            return
        13: .line 934
      StackMap locals: org.hsqldb.test.TestBench$ClientThread org.hsqldb.test.TestBench int java.lang.String java.lang.String java.lang.String int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.Conn:Ljava/sql/Connection;
            iconst_0
            invokeinterface java.sql.Connection.setAutoCommit:(Z)V
        14: .line 935
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.Conn:Ljava/sql/Connection;
            iload 6 /* transactionMode */
            invokeinterface java.sql.Connection.setTransactionIsolation:(I)V
        15: .line 936
            aload 0 /* this */
            invokevirtual org.hsqldb.test.TestBench$ClientThread.prepareStatements:()V
        16: .line 937
            goto 20
      StackMap locals:
      StackMap stack: java.lang.Exception
        17: astore 7 /* E */
        start local 7 // java.lang.Exception E
        18: .line 938
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            aload 7 /* E */
            invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        19: .line 939
            aload 7 /* E */
            invokevirtual java.lang.Exception.printStackTrace:()V
        end local 7 // java.lang.Exception E
        20: .line 941
      StackMap locals:
      StackMap stack:
            return
        end local 6 // int transactionMode
        end local 5 // java.lang.String password
        end local 4 // java.lang.String user
        end local 3 // java.lang.String url
        end local 2 // int number_of_txns
        end local 0 // org.hsqldb.test.TestBench$ClientThread this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   21     0             this  Lorg/hsqldb/test/TestBench$ClientThread;
            0   21     2   number_of_txns  I
            0   21     3              url  Ljava/lang/String;
            0   21     4             user  Ljava/lang/String;
            0   21     5         password  Ljava/lang/String;
            0   21     6  transactionMode  I
           18   20     7                E  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
          13    16      17  Class java.lang.Exception
    MethodParameters:
                 Name  Flags
      this$0           final
      number_of_txns   
      url              
      user             
      password         
      transactionMode  

  void prepareStatements();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.hsqldb.test.TestBench$ClientThread this
         0: .line 948
            ldc "UPDATE accounts SET Abalance = Abalance + ? WHERE  Aid = ?"
         1: .line 947
            astore 1 /* Query */
        start local 1 // java.lang.String Query
         2: .line 949
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.Conn:Ljava/sql/Connection;
            aload 1 /* Query */
            invokeinterface java.sql.Connection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
            putfield org.hsqldb.test.TestBench$ClientThread.pstmt1:Ljava/sql/PreparedStatement;
         3: .line 950
            ldc "SELECT Abalance FROM   accounts WHERE  Aid = ?"
            astore 1 /* Query */
         4: .line 951
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.Conn:Ljava/sql/Connection;
            aload 1 /* Query */
            invokeinterface java.sql.Connection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
            putfield org.hsqldb.test.TestBench$ClientThread.pstmt2:Ljava/sql/PreparedStatement;
         5: .line 953
            ldc "UPDATE tellers SET Tbalance = Tbalance + ? WHERE  Tid = ?"
         6: .line 952
            astore 1 /* Query */
         7: .line 954
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.Conn:Ljava/sql/Connection;
            aload 1 /* Query */
            invokeinterface java.sql.Connection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
            putfield org.hsqldb.test.TestBench$ClientThread.pstmt3:Ljava/sql/PreparedStatement;
         8: .line 956
            ldc "UPDATE branches SET Bbalance = Bbalance + ? WHERE  Bid = ?"
         9: .line 955
            astore 1 /* Query */
        10: .line 957
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.Conn:Ljava/sql/Connection;
            aload 1 /* Query */
            invokeinterface java.sql.Connection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
            putfield org.hsqldb.test.TestBench$ClientThread.pstmt4:Ljava/sql/PreparedStatement;
        11: .line 959
            ldc "INSERT INTO history(Tid, Bid, Aid, delta) VALUES (?,?,?,?)"
        12: .line 958
            astore 1 /* Query */
        13: .line 960
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.Conn:Ljava/sql/Connection;
            aload 1 /* Query */
            invokeinterface java.sql.Connection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
            putfield org.hsqldb.test.TestBench$ClientThread.pstmt5:Ljava/sql/PreparedStatement;
        14: .line 961
            return
        end local 1 // java.lang.String Query
        end local 0 // org.hsqldb.test.TestBench$ClientThread this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   15     0   this  Lorg/hsqldb/test/TestBench$ClientThread;
            2   15     1  Query  Ljava/lang/String;
    Exceptions:
      throws java.sql.SQLException

  public void run();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // org.hsqldb.test.TestBench$ClientThread this
         0: .line 965
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.ntrans:I
            istore 1 /* count */
        start local 1 // int count
         1: .line 967
            goto 11
         2: .line 968
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.this$0:Lorg/hsqldb/test/TestBench;
            iconst_2
            invokevirtual org.hsqldb.test.TestBench.getRandomID:(I)I
            istore 2 /* account */
        start local 2 // int account
         3: .line 969
            iload 2 /* account */
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.this$0:Lorg/hsqldb/test/TestBench;
            getfield org.hsqldb.test.TestBench.naccounts:I
            idiv
            istore 3 /* branch */
        start local 3 // int branch
         4: .line 970
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.this$0:Lorg/hsqldb/test/TestBench;
            iconst_0
            invokevirtual org.hsqldb.test.TestBench.getRandomID:(I)I
            istore 4 /* teller */
        start local 4 // int teller
         5: .line 971
            sipush -1000
            sipush 1000
            invokestatic org.hsqldb.test.TestBench.getRandomInt:(II)I
            istore 5 /* delta */
        start local 5 // int delta
         6: .line 973
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.this$0:Lorg/hsqldb/test/TestBench;
            getfield org.hsqldb.test.TestBench.selectOnly:Z
            ifeq 9
         7: .line 974
            aload 0 /* this */
            iload 2 /* account */
            invokevirtual org.hsqldb.test.TestBench$ClientThread.doOneSelect:(I)I
            pop
         8: .line 975
            goto 10
         9: .line 976
      StackMap locals: org.hsqldb.test.TestBench$ClientThread int int int int int
      StackMap stack:
            aload 0 /* this */
            iload 3 /* branch */
            iload 4 /* teller */
            iload 2 /* account */
            iload 5 /* delta */
            invokevirtual org.hsqldb.test.TestBench$ClientThread.doOne:(IIII)I
            pop
        10: .line 979
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.this$0:Lorg/hsqldb/test/TestBench;
            invokevirtual org.hsqldb.test.TestBench.incrementTransactionCount:()V
        end local 5 // int delta
        end local 4 // int teller
        end local 3 // int branch
        end local 2 // int account
        11: .line 967
      StackMap locals: org.hsqldb.test.TestBench$ClientThread int
      StackMap stack:
            iload 1 /* count */
            iinc 1 /* count */ -1
            ifgt 2
        12: .line 998
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt1:Ljava/sql/PreparedStatement;
            ifnull 14
        13: .line 999
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt1:Ljava/sql/PreparedStatement;
            invokeinterface java.sql.PreparedStatement.close:()V
        14: .line 1002
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt2:Ljava/sql/PreparedStatement;
            ifnull 16
        15: .line 1003
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt2:Ljava/sql/PreparedStatement;
            invokeinterface java.sql.PreparedStatement.close:()V
        16: .line 1006
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt3:Ljava/sql/PreparedStatement;
            ifnull 18
        17: .line 1007
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt3:Ljava/sql/PreparedStatement;
            invokeinterface java.sql.PreparedStatement.close:()V
        18: .line 1010
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt4:Ljava/sql/PreparedStatement;
            ifnull 20
        19: .line 1011
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt4:Ljava/sql/PreparedStatement;
            invokeinterface java.sql.PreparedStatement.close:()V
        20: .line 1014
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt5:Ljava/sql/PreparedStatement;
            ifnull 26
        21: .line 1015
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt5:Ljava/sql/PreparedStatement;
            invokeinterface java.sql.PreparedStatement.close:()V
        22: .line 1017
            goto 26
      StackMap locals:
      StackMap stack: java.lang.Exception
        23: astore 2 /* E */
        start local 2 // java.lang.Exception E
        24: .line 1018
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            aload 2 /* E */
            invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        25: .line 1019
            aload 2 /* E */
            invokevirtual java.lang.Exception.printStackTrace:()V
        end local 2 // java.lang.Exception E
        26: .line 1022
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.Conn:Ljava/sql/Connection;
            invokestatic org.hsqldb.test.TestBench.connectClose:(Ljava/sql/Connection;)V
        27: .line 1024
            aload 0 /* this */
            aconst_null
            putfield org.hsqldb.test.TestBench$ClientThread.Conn:Ljava/sql/Connection;
        28: .line 1025
            return
        end local 1 // int count
        end local 0 // org.hsqldb.test.TestBench$ClientThread this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   29     0     this  Lorg/hsqldb/test/TestBench$ClientThread;
            1   29     1    count  I
            3   11     2  account  I
            4   11     3   branch  I
            5   11     4   teller  I
            6   11     5    delta  I
           24   26     2        E  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
          12    22      23  Class java.lang.Exception

  int doOneSelect(int);
    descriptor: (I)I
    flags: (0x0000) 
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.hsqldb.test.TestBench$ClientThread this
        start local 1 // int aid
         0: .line 1029
            iconst_0
            istore 2 /* aBalance */
        start local 2 // int aBalance
         1: .line 1032
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt2:Ljava/sql/PreparedStatement;
            iconst_1
            iload 1 /* aid */
            invokeinterface java.sql.PreparedStatement.setInt:(II)V
         2: .line 1034
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt2:Ljava/sql/PreparedStatement;
            invokeinterface java.sql.PreparedStatement.executeQuery:()Ljava/sql/ResultSet;
            astore 3 /* RS */
        start local 3 // java.sql.ResultSet RS
         3: .line 1036
            aload 3 /* RS */
            invokeinterface java.sql.ResultSet.next:()Z
            ifeq 5
         4: .line 1037
            aload 3 /* RS */
            iconst_1
            invokeinterface java.sql.ResultSet.getInt:(I)I
            istore 2 /* aBalance */
         5: .line 1040
      StackMap locals: int java.sql.ResultSet
      StackMap stack:
            aload 3 /* RS */
            invokeinterface java.sql.ResultSet.close:()V
         6: .line 1042
            iload 2 /* aBalance */
         7: ireturn
        end local 3 // java.sql.ResultSet RS
         8: .line 1043
      StackMap locals: org.hsqldb.test.TestBench$ClientThread int int
      StackMap stack: java.lang.Exception
            astore 3 /* E */
        start local 3 // java.lang.Exception E
         9: .line 1044
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.this$0:Lorg/hsqldb/test/TestBench;
            getfield org.hsqldb.test.TestBench.verbose:Z
            ifeq 14
        10: .line 1045
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Transaction failed: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        11: .line 1046
            aload 3 /* 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;
        12: .line 1045
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        13: .line 1047
            aload 3 /* E */
            invokevirtual java.lang.Exception.printStackTrace:()V
        14: .line 1050
      StackMap locals: java.lang.Exception
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.this$0:Lorg/hsqldb/test/TestBench;
            invokevirtual org.hsqldb.test.TestBench.incrementFailedTransactionCount:()V
        end local 3 // java.lang.Exception E
        15: .line 1053
            iconst_0
            ireturn
        end local 2 // int aBalance
        end local 1 // int aid
        end local 0 // org.hsqldb.test.TestBench$ClientThread this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   16     0      this  Lorg/hsqldb/test/TestBench$ClientThread;
            0   16     1       aid  I
            1   16     2  aBalance  I
            3    8     3        RS  Ljava/sql/ResultSet;
            9   15     3         E  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           1     7       8  Class java.lang.Exception
    MethodParameters:
      Name  Flags
      aid   

  int doOne(int, int, int, int);
    descriptor: (IIII)I
    flags: (0x0000) 
    Code:
      stack=4, locals=9, args_size=5
        start local 0 // org.hsqldb.test.TestBench$ClientThread this
        start local 1 // int bid
        start local 2 // int tid
        start local 3 // int aid
        start local 4 // int delta
         0: .line 1062
            iconst_0
            istore 6 /* aBalance */
        start local 6 // int aBalance
         1: .line 1064
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.Conn:Ljava/sql/Connection;
            ifnonnull 4
         2: .line 1065
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.this$0:Lorg/hsqldb/test/TestBench;
            invokevirtual org.hsqldb.test.TestBench.incrementFailedTransactionCount:()V
         3: .line 1067
            iconst_0
            ireturn
         4: .line 1073
      StackMap locals: org.hsqldb.test.TestBench$ClientThread int int int int top int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.this$0:Lorg/hsqldb/test/TestBench;
            getfield org.hsqldb.test.TestBench.check_updates:Z
            ifeq 16
         5: .line 1074
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt2:Ljava/sql/PreparedStatement;
            iconst_1
            iload 3 /* aid */
            invokeinterface java.sql.PreparedStatement.setInt:(II)V
         6: .line 1076
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt2:Ljava/sql/PreparedStatement;
            invokeinterface java.sql.PreparedStatement.executeQuery:()Ljava/sql/ResultSet;
            astore 7 /* RS */
        start local 7 // java.sql.ResultSet RS
         7: .line 1078
            aload 7 /* RS */
            invokeinterface java.sql.ResultSet.next:()Z
            ifne 10
         8: .line 1079
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "not found before "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* aid */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         9: .line 1080
            goto 15
        10: .line 1081
      StackMap locals: java.sql.ResultSet
      StackMap stack:
            aload 7 /* RS */
            iconst_1
            invokeinterface java.sql.ResultSet.getInt:(I)I
            istore 6 /* aBalance */
        11: .line 1083
            aload 7 /* RS */
            invokeinterface java.sql.ResultSet.next:()Z
            ifeq 15
        12: .line 1084
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "duplicate record - account "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        13: .line 1085
            iload 3 /* aid */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        14: .line 1084
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        15: .line 1089
      StackMap locals:
      StackMap stack:
            aload 7 /* RS */
            invokeinterface java.sql.ResultSet.close:()V
        end local 7 // java.sql.ResultSet RS
        16: .line 1092
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt1:Ljava/sql/PreparedStatement;
            iconst_1
            iload 4 /* delta */
            invokeinterface java.sql.PreparedStatement.setInt:(II)V
        17: .line 1093
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt1:Ljava/sql/PreparedStatement;
            iconst_2
            iload 3 /* aid */
            invokeinterface java.sql.PreparedStatement.setInt:(II)V
        18: .line 1094
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt1:Ljava/sql/PreparedStatement;
            invokeinterface java.sql.PreparedStatement.executeUpdate:()I
            pop
        19: .line 1095
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt1:Ljava/sql/PreparedStatement;
            invokeinterface java.sql.PreparedStatement.clearWarnings:()V
        20: .line 1096
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt2:Ljava/sql/PreparedStatement;
            iconst_1
            iload 3 /* aid */
            invokeinterface java.sql.PreparedStatement.setInt:(II)V
        21: .line 1098
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt2:Ljava/sql/PreparedStatement;
            invokeinterface java.sql.PreparedStatement.executeQuery:()Ljava/sql/ResultSet;
            astore 7 /* RS */
        start local 7 // java.sql.ResultSet RS
        22: .line 1100
            aload 7 /* RS */
            invokeinterface java.sql.ResultSet.next:()Z
            ifeq 32
        23: .line 1101
            aload 7 /* RS */
            iconst_1
            invokeinterface java.sql.ResultSet.getInt:(I)I
            istore 8 /* newBalance */
        start local 8 // int newBalance
        24: .line 1103
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.this$0:Lorg/hsqldb/test/TestBench;
            getfield org.hsqldb.test.TestBench.check_updates:Z
            ifeq 36
        25: .line 1106
            iload 8 /* newBalance */
            iload 6 /* aBalance */
            iload 4 /* delta */
            iadd
            if_icmpeq 27
        26: .line 1109
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "error - not updated "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* aid */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        27: .line 1112
      StackMap locals: java.sql.ResultSet int
      StackMap stack:
            aload 7 /* RS */
            invokeinterface java.sql.ResultSet.next:()Z
            ifeq 36
        28: .line 1113
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "duplicate record - account "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        29: .line 1114
            iload 3 /* aid */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        30: .line 1113
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        end local 8 // int newBalance
        31: .line 1117
            goto 36
        32: .line 1118
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "not found after "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* aid */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        33: .line 1120
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.this$0:Lorg/hsqldb/test/TestBench;
            getfield org.hsqldb.test.TestBench.check_updates:Z
            ifeq 36
        34: .line 1121
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt2:Ljava/sql/PreparedStatement;
            invokeinterface java.sql.PreparedStatement.executeQuery:()Ljava/sql/ResultSet;
            astore 7 /* RS */
        35: .line 1123
            aload 7 /* RS */
            invokeinterface java.sql.ResultSet.next:()Z
            pop
        36: .line 1127
      StackMap locals:
      StackMap stack:
            aload 7 /* RS */
            invokeinterface java.sql.ResultSet.close:()V
        37: .line 1128
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt3:Ljava/sql/PreparedStatement;
            iconst_1
            iload 4 /* delta */
            invokeinterface java.sql.PreparedStatement.setInt:(II)V
        38: .line 1129
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt3:Ljava/sql/PreparedStatement;
            iconst_2
            iload 2 /* tid */
            invokeinterface java.sql.PreparedStatement.setInt:(II)V
        39: .line 1130
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt3:Ljava/sql/PreparedStatement;
            invokeinterface java.sql.PreparedStatement.executeUpdate:()I
            pop
        40: .line 1131
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt3:Ljava/sql/PreparedStatement;
            invokeinterface java.sql.PreparedStatement.clearWarnings:()V
        41: .line 1132
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt4:Ljava/sql/PreparedStatement;
            iconst_1
            iload 4 /* delta */
            invokeinterface java.sql.PreparedStatement.setInt:(II)V
        42: .line 1133
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt4:Ljava/sql/PreparedStatement;
            iconst_2
            iload 1 /* bid */
            invokeinterface java.sql.PreparedStatement.setInt:(II)V
        43: .line 1135
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt4:Ljava/sql/PreparedStatement;
            invokeinterface java.sql.PreparedStatement.executeUpdate:()I
            istore 5 /* updateCount */
        start local 5 // int updateCount
        44: .line 1137
            iload 5 /* updateCount */
            iconst_1
            if_icmpeq 47
        45: .line 1138
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "branches row not found "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* aid */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        46: .line 1139
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt4:Ljava/sql/PreparedStatement;
            invokeinterface java.sql.PreparedStatement.executeUpdate:()I
            pop
        47: .line 1142
      StackMap locals: org.hsqldb.test.TestBench$ClientThread int int int int int int java.sql.ResultSet
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt4:Ljava/sql/PreparedStatement;
            invokeinterface java.sql.PreparedStatement.clearWarnings:()V
        48: .line 1143
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt5:Ljava/sql/PreparedStatement;
            iconst_1
            iload 2 /* tid */
            invokeinterface java.sql.PreparedStatement.setInt:(II)V
        49: .line 1144
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt5:Ljava/sql/PreparedStatement;
            iconst_2
            iload 1 /* bid */
            invokeinterface java.sql.PreparedStatement.setInt:(II)V
        50: .line 1145
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt5:Ljava/sql/PreparedStatement;
            iconst_3
            iload 3 /* aid */
            invokeinterface java.sql.PreparedStatement.setInt:(II)V
        51: .line 1146
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt5:Ljava/sql/PreparedStatement;
            iconst_4
            iload 4 /* delta */
            invokeinterface java.sql.PreparedStatement.setInt:(II)V
        52: .line 1147
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt5:Ljava/sql/PreparedStatement;
            invokeinterface java.sql.PreparedStatement.executeUpdate:()I
            pop
        53: .line 1148
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.pstmt5:Ljava/sql/PreparedStatement;
            invokeinterface java.sql.PreparedStatement.clearWarnings:()V
        54: .line 1149
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.Conn:Ljava/sql/Connection;
            invokeinterface java.sql.Connection.commit:()V
        55: .line 1151
            iload 5 /* updateCount */
            iconst_1
            if_icmpeq 57
        56: .line 1152
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.this$0:Lorg/hsqldb/test/TestBench;
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.Conn:Ljava/sql/Connection;
            invokevirtual org.hsqldb.test.TestBench.checkSumsDetails:(Ljava/sql/Connection;)Z
            pop
        57: .line 1155
      StackMap locals:
      StackMap stack:
            iload 6 /* aBalance */
        58: ireturn
        end local 7 // java.sql.ResultSet RS
        end local 5 // int updateCount
        59: .line 1156
      StackMap locals: org.hsqldb.test.TestBench$ClientThread int int int int top int
      StackMap stack: java.lang.Exception
            astore 7 /* E */
        start local 7 // java.lang.Exception E
        60: .line 1157
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.this$0:Lorg/hsqldb/test/TestBench;
            getfield org.hsqldb.test.TestBench.verbose:Z
            ifeq 65
        61: .line 1158
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Transaction failed: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        62: .line 1159
            aload 7 /* 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;
        63: .line 1158
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        64: .line 1160
            aload 7 /* E */
            invokevirtual java.lang.Exception.printStackTrace:()V
        65: .line 1163
      StackMap locals: java.lang.Exception
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.this$0:Lorg/hsqldb/test/TestBench;
            invokevirtual org.hsqldb.test.TestBench.incrementFailedTransactionCount:()V
        66: .line 1166
            aload 0 /* this */
            getfield org.hsqldb.test.TestBench$ClientThread.Conn:Ljava/sql/Connection;
            invokeinterface java.sql.Connection.rollback:()V
        67: .line 1167
            goto 69
      StackMap locals:
      StackMap stack: java.sql.SQLException
        68: pop
        end local 7 // java.lang.Exception E
        69: .line 1170
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 6 // int aBalance
        end local 4 // int delta
        end local 3 // int aid
        end local 2 // int tid
        end local 1 // int bid
        end local 0 // org.hsqldb.test.TestBench$ClientThread this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   70     0         this  Lorg/hsqldb/test/TestBench$ClientThread;
            0   70     1          bid  I
            0   70     2          tid  I
            0   70     3          aid  I
            0   70     4        delta  I
           44   59     5  updateCount  I
            1   70     6     aBalance  I
            7   16     7           RS  Ljava/sql/ResultSet;
           22   59     7           RS  Ljava/sql/ResultSet;
           24   31     8   newBalance  I
           60   69     7            E  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           4    58      59  Class java.lang.Exception
          66    67      68  Class java.sql.SQLException
    MethodParameters:
       Name  Flags
      bid    
      tid    
      aid    
      delta  
}
SourceFile: "TestBench.java"
NestHost: org.hsqldb.test.TestBench
InnerClasses:
  ClientThread = org.hsqldb.test.TestBench$ClientThread of org.hsqldb.test.TestBench