public class org.hibernate.id.MultipleHiLoPerTableGenerator implements org.hibernate.id.PersistentIdentifierGenerator, org.hibernate.id.Configurable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.hibernate.id.MultipleHiLoPerTableGenerator
  super_class: java.lang.Object
{
  private static final org.hibernate.internal.CoreMessageLogger LOG;
    descriptor: Lorg/hibernate/internal/CoreMessageLogger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  public static final java.lang.String ID_TABLE;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "table"

  public static final java.lang.String PK_COLUMN_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "primary_key_column"

  public static final java.lang.String PK_VALUE_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "primary_key_value"

  public static final java.lang.String VALUE_COLUMN_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "value_column"

  public static final java.lang.String PK_LENGTH_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "primary_key_length"

  private static final int DEFAULT_PK_LENGTH;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 255

  public static final java.lang.String DEFAULT_TABLE;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "hibernate_sequences"

  private static final java.lang.String DEFAULT_PK_COLUMN;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "sequence_name"

  private static final java.lang.String DEFAULT_VALUE_COLUMN;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "sequence_next_hi_value"

  private org.hibernate.boot.model.relational.QualifiedName qualifiedTableName;
    descriptor: Lorg/hibernate/boot/model/relational/QualifiedName;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String tableName;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String segmentColumnName;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String segmentName;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String valueColumnName;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String query;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String insert;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String update;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  public static final java.lang.String MAX_LO;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "max_lo"

  private int maxLo;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private org.hibernate.id.enhanced.LegacyHiLoAlgorithmOptimizer hiloOptimizer;
    descriptor: Lorg/hibernate/id/enhanced/LegacyHiLoAlgorithmOptimizer;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.Class returnClass;
    descriptor: Ljava/lang/Class;
    flags: (0x0002) ACC_PRIVATE

  private int keySize;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 82
            ldc Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
            invokestatic org.hibernate.internal.CoreLogging.messageLogger:(Ljava/lang/Class;)Lorg/hibernate/internal/CoreMessageLogger;
            putstatic org.hibernate.id.MultipleHiLoPerTableGenerator.LOG:Lorg/hibernate/internal/CoreMessageLogger;
         1: .line 105
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
         0: .line 81
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/id/MultipleHiLoPerTableGenerator;

  public synchronized java.io.Serializable generate(org.hibernate.engine.spi.SharedSessionContractImplementor, java.lang.Object);
    descriptor: (Lorg/hibernate/engine/spi/SharedSessionContractImplementor;Ljava/lang/Object;)Ljava/io/Serializable;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=6, locals=7, args_size=3
        start local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
        start local 1 // org.hibernate.engine.spi.SharedSessionContractImplementor session
        start local 2 // java.lang.Object obj
         0: .line 114
            getstatic org.hibernate.internal.log.DeprecationLogger.DEPRECATION_LOGGER:Lorg/hibernate/internal/log/DeprecationLogger;
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokeinterface org.hibernate.internal.log.DeprecationLogger.deprecatedTableGenerator:(Ljava/lang/String;)V
         1: .line 116
            aload 1 /* session */
            invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            invokeinterface org.hibernate.engine.spi.SessionFactoryImplementor.getServiceRegistry:()Lorg/hibernate/service/spi/ServiceRegistryImplementor;
         2: .line 117
            ldc Lorg/hibernate/engine/jdbc/spi/JdbcServices;
            invokeinterface org.hibernate.service.spi.ServiceRegistryImplementor.getService:(Ljava/lang/Class;)Lorg/hibernate/service/Service;
            checkcast org.hibernate.engine.jdbc.spi.JdbcServices
         3: .line 118
            invokeinterface org.hibernate.engine.jdbc.spi.JdbcServices.getSqlStatementLogger:()Lorg/hibernate/engine/jdbc/spi/SqlStatementLogger;
         4: .line 116
            astore 3 /* statementLogger */
        start local 3 // org.hibernate.engine.jdbc.spi.SqlStatementLogger statementLogger
         5: .line 119
            aload 1 /* session */
            invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getEventListenerManager:()Lorg/hibernate/engine/spi/SessionEventListenerManager;
            astore 4 /* statsCollector */
        start local 4 // org.hibernate.engine.spi.SessionEventListenerManager statsCollector
         6: .line 121
            new org.hibernate.id.MultipleHiLoPerTableGenerator$1
            dup
            aload 0 /* this */
            aload 3 /* statementLogger */
            aload 4 /* statsCollector */
            invokespecial org.hibernate.id.MultipleHiLoPerTableGenerator$1.<init>:(Lorg/hibernate/id/MultipleHiLoPerTableGenerator;Lorg/hibernate/engine/jdbc/spi/SqlStatementLogger;Lorg/hibernate/engine/spi/SessionEventListenerManager;)V
            astore 5 /* work */
        start local 5 // org.hibernate.jdbc.WorkExecutorVisitable work
         7: .line 193
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.maxLo:I
            iconst_1
            if_icmpge 13
         8: .line 195
            aconst_null
            astore 6 /* value */
        start local 6 // org.hibernate.id.IntegralDataTypeHolder value
         9: .line 196
            goto 11
        10: .line 197
      StackMap locals: org.hibernate.id.MultipleHiLoPerTableGenerator org.hibernate.engine.spi.SharedSessionContractImplementor java.lang.Object org.hibernate.engine.jdbc.spi.SqlStatementLogger org.hibernate.engine.spi.SessionEventListenerManager org.hibernate.jdbc.WorkExecutorVisitable org.hibernate.id.IntegralDataTypeHolder
      StackMap stack:
            aload 1 /* session */
            invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getTransactionCoordinator:()Lorg/hibernate/resource/transaction/spi/TransactionCoordinator;
            invokeinterface org.hibernate.resource.transaction.spi.TransactionCoordinator.createIsolationDelegate:()Lorg/hibernate/engine/transaction/spi/IsolationDelegate;
            aload 5 /* work */
            iconst_1
            invokeinterface org.hibernate.engine.transaction.spi.IsolationDelegate.delegateWork:(Lorg/hibernate/jdbc/WorkExecutorVisitable;Z)Ljava/lang/Object;
            checkcast org.hibernate.id.IntegralDataTypeHolder
            astore 6 /* value */
        11: .line 196
      StackMap locals:
      StackMap stack:
            aload 6 /* value */
            ifnull 10
            aload 6 /* value */
            lconst_1
            invokeinterface org.hibernate.id.IntegralDataTypeHolder.lt:(J)Z
            ifne 10
        12: .line 199
            aload 6 /* value */
            invokeinterface org.hibernate.id.IntegralDataTypeHolder.makeValue:()Ljava/lang/Number;
            areturn
        end local 6 // org.hibernate.id.IntegralDataTypeHolder value
        13: .line 202
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.hiloOptimizer:Lorg/hibernate/id/enhanced/LegacyHiLoAlgorithmOptimizer;
        14: .line 203
            new org.hibernate.id.MultipleHiLoPerTableGenerator$2
            dup
            aload 0 /* this */
            aload 1 /* session */
            aload 5 /* work */
            invokespecial org.hibernate.id.MultipleHiLoPerTableGenerator$2.<init>:(Lorg/hibernate/id/MultipleHiLoPerTableGenerator;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;Lorg/hibernate/jdbc/WorkExecutorVisitable;)V
        15: .line 202
            invokevirtual org.hibernate.id.enhanced.LegacyHiLoAlgorithmOptimizer.generate:(Lorg/hibernate/id/enhanced/AccessCallback;)Ljava/io/Serializable;
            areturn
        end local 5 // org.hibernate.jdbc.WorkExecutorVisitable work
        end local 4 // org.hibernate.engine.spi.SessionEventListenerManager statsCollector
        end local 3 // org.hibernate.engine.jdbc.spi.SqlStatementLogger statementLogger
        end local 2 // java.lang.Object obj
        end local 1 // org.hibernate.engine.spi.SharedSessionContractImplementor session
        end local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   16     0             this  Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
            0   16     1          session  Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
            0   16     2              obj  Ljava/lang/Object;
            5   16     3  statementLogger  Lorg/hibernate/engine/jdbc/spi/SqlStatementLogger;
            6   16     4   statsCollector  Lorg/hibernate/engine/spi/SessionEventListenerManager;
            7   16     5             work  Lorg/hibernate/jdbc/WorkExecutorVisitable<Lorg/hibernate/id/IntegralDataTypeHolder;>;
            9   13     6            value  Lorg/hibernate/id/IntegralDataTypeHolder;
    MethodParameters:
         Name  Flags
      session  final
      obj      

  private java.sql.PreparedStatement prepareStatement(java.sql.Connection, java.lang.String, org.hibernate.engine.jdbc.spi.SqlStatementLogger, org.hibernate.engine.spi.SessionEventListenerManager);
    descriptor: (Ljava/sql/Connection;Ljava/lang/String;Lorg/hibernate/engine/jdbc/spi/SqlStatementLogger;Lorg/hibernate/engine/spi/SessionEventListenerManager;)Ljava/sql/PreparedStatement;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=5
        start local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
        start local 1 // java.sql.Connection connection
        start local 2 // java.lang.String sql
        start local 3 // org.hibernate.engine.jdbc.spi.SqlStatementLogger statementLogger
        start local 4 // org.hibernate.engine.spi.SessionEventListenerManager statsCollector
         0: .line 224
            aload 3 /* statementLogger */
            aload 2 /* sql */
            getstatic org.hibernate.engine.jdbc.internal.FormatStyle.BASIC:Lorg/hibernate/engine/jdbc/internal/FormatStyle;
            invokevirtual org.hibernate.engine.jdbc.internal.FormatStyle.getFormatter:()Lorg/hibernate/engine/jdbc/internal/Formatter;
            invokevirtual org.hibernate.engine.jdbc.spi.SqlStatementLogger.logStatement:(Ljava/lang/String;Lorg/hibernate/engine/jdbc/internal/Formatter;)V
         1: .line 226
            aload 4 /* statsCollector */
            invokeinterface org.hibernate.engine.spi.SessionEventListenerManager.jdbcPrepareStatementStart:()V
         2: .line 227
            aload 1 /* connection */
            aload 2 /* sql */
            invokeinterface java.sql.Connection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
            astore 6
         3: .line 230
            aload 4 /* statsCollector */
            invokeinterface org.hibernate.engine.spi.SessionEventListenerManager.jdbcPrepareStatementEnd:()V
         4: .line 227
            aload 6
            areturn
         5: .line 229
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 5
         6: .line 230
            aload 4 /* statsCollector */
            invokeinterface org.hibernate.engine.spi.SessionEventListenerManager.jdbcPrepareStatementEnd:()V
         7: .line 231
            aload 5
            athrow
        end local 4 // org.hibernate.engine.spi.SessionEventListenerManager statsCollector
        end local 3 // org.hibernate.engine.jdbc.spi.SqlStatementLogger statementLogger
        end local 2 // java.lang.String sql
        end local 1 // java.sql.Connection connection
        end local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    8     0             this  Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
            0    8     1       connection  Ljava/sql/Connection;
            0    8     2              sql  Ljava/lang/String;
            0    8     3  statementLogger  Lorg/hibernate/engine/jdbc/spi/SqlStatementLogger;
            0    8     4   statsCollector  Lorg/hibernate/engine/spi/SessionEventListenerManager;
      Exception table:
        from    to  target  type
           1     3       5  any
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
                 Name  Flags
      connection       
      sql              
      statementLogger  
      statsCollector   

  private int executeUpdate(java.sql.PreparedStatement, org.hibernate.engine.spi.SessionEventListenerManager);
    descriptor: (Ljava/sql/PreparedStatement;Lorg/hibernate/engine/spi/SessionEventListenerManager;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=5, args_size=3
        start local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
        start local 1 // java.sql.PreparedStatement ps
        start local 2 // org.hibernate.engine.spi.SessionEventListenerManager statsCollector
         0: .line 236
            aload 2 /* statsCollector */
            invokeinterface org.hibernate.engine.spi.SessionEventListenerManager.jdbcExecuteStatementStart:()V
         1: .line 237
            aload 1 /* ps */
            invokeinterface java.sql.PreparedStatement.executeUpdate:()I
            istore 4
         2: .line 240
            aload 2 /* statsCollector */
            invokeinterface org.hibernate.engine.spi.SessionEventListenerManager.jdbcExecuteStatementEnd:()V
         3: .line 237
            iload 4
            ireturn
         4: .line 239
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 3
         5: .line 240
            aload 2 /* statsCollector */
            invokeinterface org.hibernate.engine.spi.SessionEventListenerManager.jdbcExecuteStatementEnd:()V
         6: .line 241
            aload 3
            athrow
        end local 2 // org.hibernate.engine.spi.SessionEventListenerManager statsCollector
        end local 1 // java.sql.PreparedStatement ps
        end local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    7     0            this  Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
            0    7     1              ps  Ljava/sql/PreparedStatement;
            0    7     2  statsCollector  Lorg/hibernate/engine/spi/SessionEventListenerManager;
      Exception table:
        from    to  target  type
           0     2       4  any
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
                Name  Flags
      ps              
      statsCollector  

  private java.sql.ResultSet executeQuery(java.sql.PreparedStatement, org.hibernate.engine.spi.SessionEventListenerManager);
    descriptor: (Ljava/sql/PreparedStatement;Lorg/hibernate/engine/spi/SessionEventListenerManager;)Ljava/sql/ResultSet;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=5, args_size=3
        start local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
        start local 1 // java.sql.PreparedStatement ps
        start local 2 // org.hibernate.engine.spi.SessionEventListenerManager statsCollector
         0: .line 248
            aload 2 /* statsCollector */
            invokeinterface org.hibernate.engine.spi.SessionEventListenerManager.jdbcExecuteStatementStart:()V
         1: .line 249
            aload 1 /* ps */
            invokeinterface java.sql.PreparedStatement.executeQuery:()Ljava/sql/ResultSet;
            astore 4
         2: .line 252
            aload 2 /* statsCollector */
            invokeinterface org.hibernate.engine.spi.SessionEventListenerManager.jdbcExecuteStatementEnd:()V
         3: .line 249
            aload 4
            areturn
         4: .line 251
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 3
         5: .line 252
            aload 2 /* statsCollector */
            invokeinterface org.hibernate.engine.spi.SessionEventListenerManager.jdbcExecuteStatementEnd:()V
         6: .line 253
            aload 3
            athrow
        end local 2 // org.hibernate.engine.spi.SessionEventListenerManager statsCollector
        end local 1 // java.sql.PreparedStatement ps
        end local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    7     0            this  Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
            0    7     1              ps  Ljava/sql/PreparedStatement;
            0    7     2  statsCollector  Lorg/hibernate/engine/spi/SessionEventListenerManager;
      Exception table:
        from    to  target  type
           0     2       4  any
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
                Name  Flags
      ps              
      statsCollector  

  public void configure(org.hibernate.type.Type, java.util.Properties, org.hibernate.service.ServiceRegistry);
    descriptor: (Lorg/hibernate/type/Type;Ljava/util/Properties;Lorg/hibernate/service/ServiceRegistry;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
        start local 1 // org.hibernate.type.Type type
        start local 2 // java.util.Properties params
        start local 3 // org.hibernate.service.ServiceRegistry serviceRegistry
         0: .line 258
            aload 0 /* this */
            aload 1 /* type */
            invokeinterface org.hibernate.type.Type.getReturnedClass:()Ljava/lang/Class;
            putfield org.hibernate.id.MultipleHiLoPerTableGenerator.returnClass:Ljava/lang/Class;
         1: .line 260
            aload 3 /* serviceRegistry */
            ldc Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;
            invokeinterface org.hibernate.service.ServiceRegistry.getService:(Ljava/lang/Class;)Lorg/hibernate/service/Service;
            checkcast org.hibernate.engine.jdbc.env.spi.JdbcEnvironment
            astore 4 /* jdbcEnvironment */
        start local 4 // org.hibernate.engine.jdbc.env.spi.JdbcEnvironment jdbcEnvironment
         2: .line 262
            aload 0 /* this */
            aload 0 /* this */
            aload 2 /* params */
            aload 4 /* jdbcEnvironment */
            invokevirtual org.hibernate.id.MultipleHiLoPerTableGenerator.determineGeneratorTableName:(Ljava/util/Properties;Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;)Lorg/hibernate/boot/model/relational/QualifiedName;
            putfield org.hibernate.id.MultipleHiLoPerTableGenerator.qualifiedTableName:Lorg/hibernate/boot/model/relational/QualifiedName;
         3: .line 264
            aload 0 /* this */
            aload 0 /* this */
            aload 2 /* params */
            aload 4 /* jdbcEnvironment */
            invokevirtual org.hibernate.id.MultipleHiLoPerTableGenerator.determineSegmentColumnName:(Ljava/util/Properties;Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;)Ljava/lang/String;
            putfield org.hibernate.id.MultipleHiLoPerTableGenerator.segmentColumnName:Ljava/lang/String;
         4: .line 265
            aload 0 /* this */
            ldc "primary_key_length"
            aload 2 /* params */
            sipush 255
            invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getInt:(Ljava/lang/String;Ljava/util/Map;I)I
            putfield org.hibernate.id.MultipleHiLoPerTableGenerator.keySize:I
         5: .line 266
            aload 0 /* this */
            ldc "primary_key_value"
            aload 2 /* params */
            aload 2 /* params */
            ldc "target_table"
            invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getString:(Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;)Ljava/lang/String;
            putfield org.hibernate.id.MultipleHiLoPerTableGenerator.segmentName:Ljava/lang/String;
         6: .line 268
            aload 0 /* this */
            aload 0 /* this */
            aload 2 /* params */
            aload 4 /* jdbcEnvironment */
            invokevirtual org.hibernate.id.MultipleHiLoPerTableGenerator.determineValueColumnName:(Ljava/util/Properties;Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;)Ljava/lang/String;
            putfield org.hibernate.id.MultipleHiLoPerTableGenerator.valueColumnName:Ljava/lang/String;
         7: .line 271
            aload 0 /* this */
            ldc "max_lo"
            aload 2 /* params */
            sipush 32767
            invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getInt:(Ljava/lang/String;Ljava/util/Map;I)I
            putfield org.hibernate.id.MultipleHiLoPerTableGenerator.maxLo:I
         8: .line 273
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.maxLo:I
            iconst_1
            if_icmplt 10
         9: .line 274
            aload 0 /* this */
            new org.hibernate.id.enhanced.LegacyHiLoAlgorithmOptimizer
            dup
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.returnClass:Ljava/lang/Class;
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.maxLo:I
            invokespecial org.hibernate.id.enhanced.LegacyHiLoAlgorithmOptimizer.<init>:(Ljava/lang/Class;I)V
            putfield org.hibernate.id.MultipleHiLoPerTableGenerator.hiloOptimizer:Lorg/hibernate/id/enhanced/LegacyHiLoAlgorithmOptimizer;
        10: .line 276
      StackMap locals: org.hibernate.engine.jdbc.env.spi.JdbcEnvironment
      StackMap stack:
            return
        end local 4 // org.hibernate.engine.jdbc.env.spi.JdbcEnvironment jdbcEnvironment
        end local 3 // org.hibernate.service.ServiceRegistry serviceRegistry
        end local 2 // java.util.Properties params
        end local 1 // org.hibernate.type.Type type
        end local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   11     0             this  Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
            0   11     1             type  Lorg/hibernate/type/Type;
            0   11     2           params  Ljava/util/Properties;
            0   11     3  serviceRegistry  Lorg/hibernate/service/ServiceRegistry;
            2   11     4  jdbcEnvironment  Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;
    Exceptions:
      throws org.hibernate.MappingException
    MethodParameters:
                 Name  Flags
      type             
      params           
      serviceRegistry  

  protected org.hibernate.boot.model.relational.QualifiedName determineGeneratorTableName(java.util.Properties, org.hibernate.engine.jdbc.env.spi.JdbcEnvironment);
    descriptor: (Ljava/util/Properties;Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;)Lorg/hibernate/boot/model/relational/QualifiedName;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=6, args_size=3
        start local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
        start local 1 // java.util.Properties params
        start local 2 // org.hibernate.engine.jdbc.env.spi.JdbcEnvironment jdbcEnvironment
         0: .line 279
            ldc "table"
            aload 1 /* params */
            ldc "hibernate_sequences"
            invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getString:(Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* tableName */
        start local 3 // java.lang.String tableName
         1: .line 281
            aload 3 /* tableName */
            ldc "."
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            ifeq 3
         2: .line 282
            getstatic org.hibernate.boot.model.relational.QualifiedNameParser.INSTANCE:Lorg/hibernate/boot/model/relational/QualifiedNameParser;
            aload 3 /* tableName */
            invokevirtual org.hibernate.boot.model.relational.QualifiedNameParser.parse:(Ljava/lang/String;)Lorg/hibernate/boot/model/relational/QualifiedNameParser$NameParts;
            areturn
         3: .line 286
      StackMap locals: java.lang.String
      StackMap stack:
            aload 2 /* jdbcEnvironment */
            invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getIdentifierHelper:()Lorg/hibernate/engine/jdbc/env/spi/IdentifierHelper;
         4: .line 287
            ldc "catalog"
            aload 1 /* params */
            invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getString:(Ljava/lang/String;Ljava/util/Map;)Ljava/lang/String;
         5: .line 286
            invokeinterface org.hibernate.engine.jdbc.env.spi.IdentifierHelper.toIdentifier:(Ljava/lang/String;)Lorg/hibernate/boot/model/naming/Identifier;
            astore 4 /* catalog */
        start local 4 // org.hibernate.boot.model.naming.Identifier catalog
         6: .line 289
            aload 2 /* jdbcEnvironment */
            invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getIdentifierHelper:()Lorg/hibernate/engine/jdbc/env/spi/IdentifierHelper;
         7: .line 290
            ldc "schema"
            aload 1 /* params */
            invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getString:(Ljava/lang/String;Ljava/util/Map;)Ljava/lang/String;
         8: .line 289
            invokeinterface org.hibernate.engine.jdbc.env.spi.IdentifierHelper.toIdentifier:(Ljava/lang/String;)Lorg/hibernate/boot/model/naming/Identifier;
            astore 5 /* schema */
        start local 5 // org.hibernate.boot.model.naming.Identifier schema
         9: .line 292
            new org.hibernate.boot.model.relational.QualifiedNameParser$NameParts
            dup
        10: .line 293
            aload 4 /* catalog */
        11: .line 294
            aload 5 /* schema */
        12: .line 295
            aload 2 /* jdbcEnvironment */
            invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getIdentifierHelper:()Lorg/hibernate/engine/jdbc/env/spi/IdentifierHelper;
            aload 3 /* tableName */
            invokeinterface org.hibernate.engine.jdbc.env.spi.IdentifierHelper.toIdentifier:(Ljava/lang/String;)Lorg/hibernate/boot/model/naming/Identifier;
        13: .line 292
            invokespecial org.hibernate.boot.model.relational.QualifiedNameParser$NameParts.<init>:(Lorg/hibernate/boot/model/naming/Identifier;Lorg/hibernate/boot/model/naming/Identifier;Lorg/hibernate/boot/model/naming/Identifier;)V
            areturn
        end local 5 // org.hibernate.boot.model.naming.Identifier schema
        end local 4 // org.hibernate.boot.model.naming.Identifier catalog
        end local 3 // java.lang.String tableName
        end local 2 // org.hibernate.engine.jdbc.env.spi.JdbcEnvironment jdbcEnvironment
        end local 1 // java.util.Properties params
        end local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   14     0             this  Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
            0   14     1           params  Ljava/util/Properties;
            0   14     2  jdbcEnvironment  Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;
            1   14     3        tableName  Ljava/lang/String;
            6   14     4          catalog  Lorg/hibernate/boot/model/naming/Identifier;
            9   14     5           schema  Lorg/hibernate/boot/model/naming/Identifier;
    MethodParameters:
                 Name  Flags
      params           
      jdbcEnvironment  

  protected java.lang.String determineSegmentColumnName(java.util.Properties, org.hibernate.engine.jdbc.env.spi.JdbcEnvironment);
    descriptor: (Ljava/util/Properties;Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
        start local 1 // java.util.Properties params
        start local 2 // org.hibernate.engine.jdbc.env.spi.JdbcEnvironment jdbcEnvironment
         0: .line 301
            ldc "primary_key_column"
            aload 1 /* params */
            ldc "sequence_name"
            invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getString:(Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* name */
        start local 3 // java.lang.String name
         1: .line 302
            aload 2 /* jdbcEnvironment */
            invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getIdentifierHelper:()Lorg/hibernate/engine/jdbc/env/spi/IdentifierHelper;
            aload 3 /* name */
            invokeinterface org.hibernate.engine.jdbc.env.spi.IdentifierHelper.toIdentifier:(Ljava/lang/String;)Lorg/hibernate/boot/model/naming/Identifier;
            aload 2 /* jdbcEnvironment */
            invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getDialect:()Lorg/hibernate/dialect/Dialect;
            invokevirtual org.hibernate.boot.model.naming.Identifier.render:(Lorg/hibernate/dialect/Dialect;)Ljava/lang/String;
            areturn
        end local 3 // java.lang.String name
        end local 2 // org.hibernate.engine.jdbc.env.spi.JdbcEnvironment jdbcEnvironment
        end local 1 // java.util.Properties params
        end local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
            0    2     1           params  Ljava/util/Properties;
            0    2     2  jdbcEnvironment  Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;
            1    2     3             name  Ljava/lang/String;
    MethodParameters:
                 Name  Flags
      params           
      jdbcEnvironment  

  protected java.lang.String determineValueColumnName(java.util.Properties, org.hibernate.engine.jdbc.env.spi.JdbcEnvironment);
    descriptor: (Ljava/util/Properties;Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
        start local 1 // java.util.Properties params
        start local 2 // org.hibernate.engine.jdbc.env.spi.JdbcEnvironment jdbcEnvironment
         0: .line 306
            ldc "value_column"
            aload 1 /* params */
            ldc "sequence_next_hi_value"
            invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getString:(Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* name */
        start local 3 // java.lang.String name
         1: .line 307
            aload 2 /* jdbcEnvironment */
            invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getIdentifierHelper:()Lorg/hibernate/engine/jdbc/env/spi/IdentifierHelper;
            aload 3 /* name */
            invokeinterface org.hibernate.engine.jdbc.env.spi.IdentifierHelper.toIdentifier:(Ljava/lang/String;)Lorg/hibernate/boot/model/naming/Identifier;
            aload 2 /* jdbcEnvironment */
            invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getDialect:()Lorg/hibernate/dialect/Dialect;
            invokevirtual org.hibernate.boot.model.naming.Identifier.render:(Lorg/hibernate/dialect/Dialect;)Ljava/lang/String;
            areturn
        end local 3 // java.lang.String name
        end local 2 // org.hibernate.engine.jdbc.env.spi.JdbcEnvironment jdbcEnvironment
        end local 1 // java.util.Properties params
        end local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
            0    2     1           params  Ljava/util/Properties;
            0    2     2  jdbcEnvironment  Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;
            1    2     3             name  Ljava/lang/String;
    MethodParameters:
                 Name  Flags
      params           
      jdbcEnvironment  

  public void registerExportables(org.hibernate.boot.model.relational.Database);
    descriptor: (Lorg/hibernate/boot/model/relational/Database;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=12, locals=6, args_size=2
        start local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
        start local 1 // org.hibernate.boot.model.relational.Database database
         0: .line 312
            aload 1 /* database */
         1: .line 313
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.qualifiedTableName:Lorg/hibernate/boot/model/relational/QualifiedName;
            invokeinterface org.hibernate.boot.model.relational.QualifiedName.getCatalogName:()Lorg/hibernate/boot/model/naming/Identifier;
         2: .line 314
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.qualifiedTableName:Lorg/hibernate/boot/model/relational/QualifiedName;
            invokeinterface org.hibernate.boot.model.relational.QualifiedName.getSchemaName:()Lorg/hibernate/boot/model/naming/Identifier;
         3: .line 312
            invokevirtual org.hibernate.boot.model.relational.Database.locateNamespace:(Lorg/hibernate/boot/model/naming/Identifier;Lorg/hibernate/boot/model/naming/Identifier;)Lorg/hibernate/boot/model/relational/Namespace;
            astore 2 /* namespace */
        start local 2 // org.hibernate.boot.model.relational.Namespace namespace
         4: .line 317
            aload 2 /* namespace */
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.qualifiedTableName:Lorg/hibernate/boot/model/relational/QualifiedName;
            invokeinterface org.hibernate.boot.model.relational.QualifiedName.getObjectName:()Lorg/hibernate/boot/model/naming/Identifier;
            invokevirtual org.hibernate.boot.model.relational.Namespace.locateTable:(Lorg/hibernate/boot/model/naming/Identifier;)Lorg/hibernate/mapping/Table;
            astore 3 /* table */
        start local 3 // org.hibernate.mapping.Table table
         5: .line 318
            aload 3 /* table */
            ifnonnull 25
         6: .line 319
            aload 2 /* namespace */
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.qualifiedTableName:Lorg/hibernate/boot/model/relational/QualifiedName;
            invokeinterface org.hibernate.boot.model.relational.QualifiedName.getObjectName:()Lorg/hibernate/boot/model/naming/Identifier;
            iconst_0
            invokevirtual org.hibernate.boot.model.relational.Namespace.createTable:(Lorg/hibernate/boot/model/naming/Identifier;Z)Lorg/hibernate/mapping/Table;
            astore 3 /* table */
         7: .line 322
            aload 3 /* table */
            new org.hibernate.mapping.PrimaryKey
            dup
            aload 3 /* table */
            invokespecial org.hibernate.mapping.PrimaryKey.<init>:(Lorg/hibernate/mapping/Table;)V
            invokevirtual org.hibernate.mapping.Table.setPrimaryKey:(Lorg/hibernate/mapping/PrimaryKey;)V
         8: .line 324
            new org.hibernate.id.ExportableColumn
            dup
         9: .line 325
            aload 1 /* database */
        10: .line 326
            aload 3 /* table */
        11: .line 327
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.segmentColumnName:Ljava/lang/String;
        12: .line 328
            getstatic org.hibernate.type.StringType.INSTANCE:Lorg/hibernate/type/StringType;
        13: .line 329
            aload 1 /* database */
            invokevirtual org.hibernate.boot.model.relational.Database.getDialect:()Lorg/hibernate/dialect/Dialect;
            bipush 12
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.keySize:I
            i2l
            iconst_0
            iconst_0
            invokevirtual org.hibernate.dialect.Dialect.getTypeName:(IJII)Ljava/lang/String;
        14: .line 324
            invokespecial org.hibernate.id.ExportableColumn.<init>:(Lorg/hibernate/boot/model/relational/Database;Lorg/hibernate/mapping/Table;Ljava/lang/String;Lorg/hibernate/type/BasicType;Ljava/lang/String;)V
            astore 4 /* pkColumn */
        start local 4 // org.hibernate.mapping.Column pkColumn
        15: .line 331
            aload 4 /* pkColumn */
            iconst_0
            invokevirtual org.hibernate.mapping.Column.setNullable:(Z)V
        16: .line 332
            aload 3 /* table */
            aload 4 /* pkColumn */
            invokevirtual org.hibernate.mapping.Table.addColumn:(Lorg/hibernate/mapping/Column;)V
        17: .line 333
            aload 3 /* table */
            invokevirtual org.hibernate.mapping.Table.getPrimaryKey:()Lorg/hibernate/mapping/PrimaryKey;
            aload 4 /* pkColumn */
            invokevirtual org.hibernate.mapping.PrimaryKey.addColumn:(Lorg/hibernate/mapping/Column;)V
        18: .line 335
            new org.hibernate.id.ExportableColumn
            dup
        19: .line 336
            aload 1 /* database */
        20: .line 337
            aload 3 /* table */
        21: .line 338
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.valueColumnName:Ljava/lang/String;
        22: .line 339
            getstatic org.hibernate.type.LongType.INSTANCE:Lorg/hibernate/type/LongType;
        23: .line 335
            invokespecial org.hibernate.id.ExportableColumn.<init>:(Lorg/hibernate/boot/model/relational/Database;Lorg/hibernate/mapping/Table;Ljava/lang/String;Lorg/hibernate/type/BasicType;)V
            astore 5 /* valueColumn */
        start local 5 // org.hibernate.mapping.Column valueColumn
        24: .line 341
            aload 3 /* table */
            aload 5 /* valueColumn */
            invokevirtual org.hibernate.mapping.Table.addColumn:(Lorg/hibernate/mapping/Column;)V
        end local 5 // org.hibernate.mapping.Column valueColumn
        end local 4 // org.hibernate.mapping.Column pkColumn
        25: .line 344
      StackMap locals: org.hibernate.boot.model.relational.Namespace org.hibernate.mapping.Table
      StackMap stack:
            aload 1 /* database */
            invokevirtual org.hibernate.boot.model.relational.Database.getJdbcEnvironment:()Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;
            astore 4 /* jdbcEnvironment */
        start local 4 // org.hibernate.engine.jdbc.env.spi.JdbcEnvironment jdbcEnvironment
        26: .line 347
            aload 0 /* this */
            aload 4 /* jdbcEnvironment */
            invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getQualifiedObjectNameFormatter:()Lorg/hibernate/engine/jdbc/env/spi/QualifiedObjectNameFormatter;
        27: .line 348
            aload 3 /* table */
            invokevirtual org.hibernate.mapping.Table.getQualifiedTableName:()Lorg/hibernate/boot/model/relational/QualifiedTableName;
        28: .line 349
            aload 4 /* jdbcEnvironment */
            invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getDialect:()Lorg/hibernate/dialect/Dialect;
        29: .line 347
            invokeinterface org.hibernate.engine.jdbc.env.spi.QualifiedObjectNameFormatter.format:(Lorg/hibernate/boot/model/relational/QualifiedTableName;Lorg/hibernate/dialect/Dialect;)Ljava/lang/String;
            putfield org.hibernate.id.MultipleHiLoPerTableGenerator.tableName:Ljava/lang/String;
        30: .line 352
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "select "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        31: .line 353
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.valueColumnName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        32: .line 354
            ldc " from "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        33: .line 355
            aload 4 /* jdbcEnvironment */
            invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getDialect:()Lorg/hibernate/dialect/Dialect;
            getstatic org.hibernate.LockMode.PESSIMISTIC_WRITE:Lorg/hibernate/LockMode;
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.tableName:Ljava/lang/String;
            invokevirtual org.hibernate.dialect.Dialect.appendLockHint:(Lorg/hibernate/LockMode;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        34: .line 356
            ldc " where "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.segmentColumnName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " = '"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.segmentName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        35: .line 357
            aload 4 /* jdbcEnvironment */
            invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getDialect:()Lorg/hibernate/dialect/Dialect;
            invokevirtual org.hibernate.dialect.Dialect.getForUpdateString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        36: .line 352
            putfield org.hibernate.id.MultipleHiLoPerTableGenerator.query:Ljava/lang/String;
        37: .line 359
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "update "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        38: .line 360
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.tableName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        39: .line 361
            ldc " set "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        40: .line 362
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.valueColumnName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        41: .line 363
            ldc " = ? where "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        42: .line 364
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.valueColumnName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        43: .line 365
            ldc " = ? and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        44: .line 366
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.segmentColumnName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        45: .line 367
            ldc " = '"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        46: .line 368
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.segmentName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        47: .line 369
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        48: .line 359
            putfield org.hibernate.id.MultipleHiLoPerTableGenerator.update:Ljava/lang/String;
        49: .line 371
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "insert into "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.tableName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        50: .line 372
            ldc "("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.segmentColumnName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.valueColumnName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ") "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        51: .line 373
            ldc "values('"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.segmentName:Ljava/lang/String;
            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;
        52: .line 371
            putfield org.hibernate.id.MultipleHiLoPerTableGenerator.insert:Ljava/lang/String;
        53: .line 377
            return
        end local 4 // org.hibernate.engine.jdbc.env.spi.JdbcEnvironment jdbcEnvironment
        end local 3 // org.hibernate.mapping.Table table
        end local 2 // org.hibernate.boot.model.relational.Namespace namespace
        end local 1 // org.hibernate.boot.model.relational.Database database
        end local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   54     0             this  Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
            0   54     1         database  Lorg/hibernate/boot/model/relational/Database;
            4   54     2        namespace  Lorg/hibernate/boot/model/relational/Namespace;
            5   54     3            table  Lorg/hibernate/mapping/Table;
           15   25     4         pkColumn  Lorg/hibernate/mapping/Column;
           24   25     5      valueColumn  Lorg/hibernate/mapping/Column;
           26   54     4  jdbcEnvironment  Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;
    MethodParameters:
          Name  Flags
      database  

  public java.lang.String[] sqlCreateStrings(org.hibernate.dialect.Dialect);
    descriptor: (Lorg/hibernate/dialect/Dialect;)[Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=2, args_size=2
        start local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
        start local 1 // org.hibernate.dialect.Dialect dialect
         0: .line 380
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
         1: .line 381
            new java.lang.StringBuilder
            dup
            aload 1 /* dialect */
            invokevirtual org.hibernate.dialect.Dialect.getCreateTableString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         2: .line 382
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.tableName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " ( "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 383
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.segmentColumnName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 1 /* dialect */
            bipush 12
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.keySize:I
            i2l
            iconst_0
            iconst_0
            invokevirtual org.hibernate.dialect.Dialect.getTypeName:(IJII)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ",  "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 384
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.valueColumnName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 1 /* dialect */
            iconst_4
            invokevirtual org.hibernate.dialect.Dialect.getTypeName:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         5: .line 385
            ldc " )"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* dialect */
            invokevirtual org.hibernate.dialect.Dialect.getTableTypeString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         6: .line 381
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aastore
         7: .line 380
            areturn
        end local 1 // org.hibernate.dialect.Dialect dialect
        end local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
            0    8     1  dialect  Lorg/hibernate/dialect/Dialect;
    Exceptions:
      throws org.hibernate.HibernateException
    MethodParameters:
         Name  Flags
      dialect  

  public java.lang.String[] sqlDropStrings(org.hibernate.dialect.Dialect);
    descriptor: (Lorg/hibernate/dialect/Dialect;)[Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
        start local 1 // org.hibernate.dialect.Dialect dialect
         0: .line 390
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 1 /* dialect */
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.tableName:Ljava/lang/String;
            invokevirtual org.hibernate.dialect.Dialect.getDropTableString:(Ljava/lang/String;)Ljava/lang/String;
            aastore
            areturn
        end local 1 // org.hibernate.dialect.Dialect dialect
        end local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
            0    1     1  dialect  Lorg/hibernate/dialect/Dialect;
    Exceptions:
      throws org.hibernate.HibernateException
    MethodParameters:
         Name  Flags
      dialect  

  public java.lang.Object generatorKey();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
         0: .line 394
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.tableName:Ljava/lang/String;
            areturn
        end local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
}
SourceFile: "MultipleHiLoPerTableGenerator.java"
NestMembers:
  org.hibernate.id.MultipleHiLoPerTableGenerator$1  org.hibernate.id.MultipleHiLoPerTableGenerator$2
InnerClasses:
  public NameParts = org.hibernate.boot.model.relational.QualifiedNameParser$NameParts of org.hibernate.boot.model.relational.QualifiedNameParser
  org.hibernate.id.MultipleHiLoPerTableGenerator$1
  org.hibernate.id.MultipleHiLoPerTableGenerator$2
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()