public final class org.hibernate.internal.util.StringHelper
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.hibernate.internal.util.StringHelper
  super_class: java.lang.Object
{
  private static final int ALIAS_TRUNCATE_LENGTH;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 10

  public static final java.lang.String WHITESPACE;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: " \n\r\f\t"

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

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.internal.util.StringHelper this
         0: .line 43
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 44
            return
        end local 0 // org.hibernate.internal.util.StringHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/hibernate/internal/util/StringHelper;

  public static int lastIndexOfLetter(java.lang.String);
    descriptor: (Ljava/lang/String;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // java.lang.String string
         0: .line 54
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         1: goto 5
         2: .line 55
      StackMap locals: int
      StackMap stack:
            aload 0 /* string */
            iload 1 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 2 /* character */
        start local 2 // char character
         3: .line 57
            iload 2 /* character */
            invokestatic java.lang.Character.isLetter:(C)Z
            ifne 4
            bipush 95
            iload 2 /* character */
            if_icmpeq 4
            iload 1 /* i */
            iconst_1
            isub
            ireturn
        end local 2 // char character
         4: .line 54
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 1 /* i */
            aload 0 /* string */
            invokevirtual java.lang.String.length:()I
            if_icmplt 2
        end local 1 // int i
         6: .line 59
            aload 0 /* string */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            ireturn
        end local 0 // java.lang.String string
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0     string  Ljava/lang/String;
            1    6     1          i  I
            3    4     2  character  C
    MethodParameters:
        Name  Flags
      string  

  public static java.lang.String join(java.lang.String, java.lang.String[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // java.lang.String seperator
        start local 1 // java.lang.String[] strings
         0: .line 63
            aload 1 /* strings */
            arraylength
            istore 2 /* length */
        start local 2 // int length
         1: .line 64
            iload 2 /* length */
            ifne 2
            ldc ""
            areturn
         2: .line 65
      StackMap locals: int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            iload 2 /* length */
            aload 1 /* strings */
            iconst_0
            aaload
            invokevirtual java.lang.String.length:()I
            imul
            invokespecial java.lang.StringBuilder.<init>:(I)V
         3: .line 66
            aload 1 /* strings */
            iconst_0
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 65
            astore 3 /* buf */
        start local 3 // java.lang.StringBuilder buf
         5: .line 67
            iconst_1
            istore 4 /* i */
        start local 4 // int i
         6: goto 9
         7: .line 68
      StackMap locals: java.lang.StringBuilder int
      StackMap stack:
            aload 3 /* buf */
            aload 0 /* seperator */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* strings */
            iload 4 /* i */
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         8: .line 67
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 4 /* i */
            iload 2 /* length */
            if_icmplt 7
        end local 4 // int i
        10: .line 70
            aload 3 /* buf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 3 // java.lang.StringBuilder buf
        end local 2 // int length
        end local 1 // java.lang.String[] strings
        end local 0 // java.lang.String seperator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0  seperator  Ljava/lang/String;
            0   11     1    strings  [Ljava/lang/String;
            1   11     2     length  I
            5   11     3        buf  Ljava/lang/StringBuilder;
            6   10     4          i  I
    MethodParameters:
           Name  Flags
      seperator  
      strings    

  public static java.lang.String joinWithQualifierAndSuffix(java.lang.String[], java.lang.String, java.lang.String, java.lang.String);
    descriptor: ([Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=7, args_size=4
        start local 0 // java.lang.String[] values
        start local 1 // java.lang.String qualifier
        start local 2 // java.lang.String suffix
        start local 3 // java.lang.String deliminator
         0: .line 74
            aload 0 /* values */
            arraylength
            istore 4 /* length */
        start local 4 // int length
         1: .line 75
            iload 4 /* length */
            ifne 2
            ldc ""
            areturn
         2: .line 76
      StackMap locals: int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            iload 4 /* length */
            aload 0 /* values */
            iconst_0
            aaload
            invokevirtual java.lang.String.length:()I
            aload 2 /* suffix */
            invokevirtual java.lang.String.length:()I
            iadd
            imul
            invokespecial java.lang.StringBuilder.<init>:(I)V
         3: .line 77
            aload 1 /* qualifier */
            aload 0 /* values */
            iconst_0
            aaload
            invokestatic org.hibernate.internal.util.StringHelper.qualify:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* suffix */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 76
            astore 5 /* buf */
        start local 5 // java.lang.StringBuilder buf
         5: .line 78
            iconst_1
            istore 6 /* i */
        start local 6 // int i
         6: goto 9
         7: .line 79
      StackMap locals: java.lang.StringBuilder int
      StackMap stack:
            aload 5 /* buf */
            aload 3 /* deliminator */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* qualifier */
            aload 0 /* values */
            iload 6 /* i */
            aaload
            invokestatic org.hibernate.internal.util.StringHelper.qualify:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* suffix */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         8: .line 78
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 6 /* i */
            iload 4 /* length */
            if_icmplt 7
        end local 6 // int i
        10: .line 81
            aload 5 /* buf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 5 // java.lang.StringBuilder buf
        end local 4 // int length
        end local 3 // java.lang.String deliminator
        end local 2 // java.lang.String suffix
        end local 1 // java.lang.String qualifier
        end local 0 // java.lang.String[] values
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0       values  [Ljava/lang/String;
            0   11     1    qualifier  Ljava/lang/String;
            0   11     2       suffix  Ljava/lang/String;
            0   11     3  deliminator  Ljava/lang/String;
            1   11     4       length  I
            5   11     5          buf  Ljava/lang/StringBuilder;
            6   10     6            i  I
    MethodParameters:
             Name  Flags
      values       
      qualifier    
      suffix       
      deliminator  

  public static java.lang.String join(java.lang.String, java.util.Iterator);
    descriptor: (Ljava/lang/String;Ljava/util/Iterator;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.lang.String seperator
        start local 1 // java.util.Iterator objects
         0: .line 85
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 2 /* buf */
        start local 2 // java.lang.StringBuilder buf
         1: .line 86
            aload 1 /* objects */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 4
            aload 2 /* buf */
            aload 1 /* objects */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            pop
         2: .line 87
            goto 4
         3: .line 88
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 2 /* buf */
            aload 0 /* seperator */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* objects */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            pop
         4: .line 87
      StackMap locals:
      StackMap stack:
            aload 1 /* objects */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         5: .line 90
            aload 2 /* buf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.StringBuilder buf
        end local 1 // java.util.Iterator objects
        end local 0 // java.lang.String seperator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0  seperator  Ljava/lang/String;
            0    6     1    objects  Ljava/util/Iterator;
            1    6     2        buf  Ljava/lang/StringBuilder;
    MethodParameters:
           Name  Flags
      seperator  
      objects    

  public static java.lang.String[] add(java.lang.String[], java.lang.String, java.lang.String[]);
    descriptor: ([Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)[Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // java.lang.String[] x
        start local 1 // java.lang.String sep
        start local 2 // java.lang.String[] y
         0: .line 94
            aload 0 /* x */
            arraylength
            anewarray java.lang.String
            astore 3 /* result */
        start local 3 // java.lang.String[] result
         1: .line 95
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: goto 5
         3: .line 96
      StackMap locals: java.lang.String[] int
      StackMap stack:
            aload 3 /* result */
            iload 4 /* i */
            new java.lang.StringBuilder
            dup
            aload 0 /* x */
            iload 4 /* i */
            aaload
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* sep */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* y */
            iload 4 /* i */
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aastore
         4: .line 95
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 4 /* i */
            aload 0 /* x */
            arraylength
            if_icmplt 3
        end local 4 // int i
         6: .line 98
            aload 3 /* result */
            areturn
        end local 3 // java.lang.String[] result
        end local 2 // java.lang.String[] y
        end local 1 // java.lang.String sep
        end local 0 // java.lang.String[] x
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0       x  [Ljava/lang/String;
            0    7     1     sep  Ljava/lang/String;
            0    7     2       y  [Ljava/lang/String;
            1    7     3  result  [Ljava/lang/String;
            2    6     4       i  I
    MethodParameters:
      Name  Flags
      x     
      sep   
      y     

  public static java.lang.String repeat(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // java.lang.String string
        start local 1 // int times
         0: .line 102
            new java.lang.StringBuilder
            dup
            aload 0 /* string */
            invokevirtual java.lang.String.length:()I
            iload 1 /* times */
            imul
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 2 /* buf */
        start local 2 // java.lang.StringBuilder buf
         1: .line 103
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 4
      StackMap locals: java.lang.StringBuilder int
      StackMap stack:
         3: aload 2 /* buf */
            aload 0 /* string */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 3 /* i */
            iload 1 /* times */
            if_icmplt 3
        end local 3 // int i
         5: .line 104
            aload 2 /* buf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.StringBuilder buf
        end local 1 // int times
        end local 0 // java.lang.String string
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0  string  Ljava/lang/String;
            0    6     1   times  I
            1    6     2     buf  Ljava/lang/StringBuilder;
            2    5     3       i  I
    MethodParameters:
        Name  Flags
      string  
      times   

  public static java.lang.String repeat(java.lang.String, int, java.lang.String);
    descriptor: (Ljava/lang/String;ILjava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // java.lang.String string
        start local 1 // int times
        start local 2 // java.lang.String deliminator
         0: .line 108
            new java.lang.StringBuilder
            dup
            aload 0 /* string */
            invokevirtual java.lang.String.length:()I
            iload 1 /* times */
            imul
            aload 2 /* deliminator */
            invokevirtual java.lang.String.length:()I
            iload 1 /* times */
            iconst_1
            isub
            imul
            iadd
            invokespecial java.lang.StringBuilder.<init>:(I)V
         1: .line 109
            aload 0 /* string */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         2: .line 108
            astore 3 /* buf */
        start local 3 // java.lang.StringBuilder buf
         3: .line 110
            iconst_1
            istore 4 /* i */
        start local 4 // int i
         4: goto 7
         5: .line 111
      StackMap locals: java.lang.StringBuilder int
      StackMap stack:
            aload 3 /* buf */
            aload 2 /* deliminator */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* string */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         6: .line 110
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 4 /* i */
            iload 1 /* times */
            if_icmplt 5
        end local 4 // int i
         8: .line 113
            aload 3 /* buf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 3 // java.lang.StringBuilder buf
        end local 2 // java.lang.String deliminator
        end local 1 // int times
        end local 0 // java.lang.String string
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0       string  Ljava/lang/String;
            0    9     1        times  I
            0    9     2  deliminator  Ljava/lang/String;
            3    9     3          buf  Ljava/lang/StringBuilder;
            4    8     4            i  I
    MethodParameters:
             Name  Flags
      string       
      times        
      deliminator  

  public static java.lang.String repeat(char, int);
    descriptor: (CI)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // char character
        start local 1 // int times
         0: .line 117
            iload 1 /* times */
            newarray 5
            astore 2 /* buffer */
        start local 2 // char[] buffer
         1: .line 118
            aload 2 /* buffer */
            iload 0 /* character */
            invokestatic java.util.Arrays.fill:([CC)V
         2: .line 119
            new java.lang.String
            dup
            aload 2 /* buffer */
            invokespecial java.lang.String.<init>:([C)V
            areturn
        end local 2 // char[] buffer
        end local 1 // int times
        end local 0 // char character
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0  character  C
            0    3     1      times  I
            1    3     2     buffer  [C
    MethodParameters:
           Name  Flags
      character  
      times      

  public static java.lang.String replace(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // java.lang.String template
        start local 1 // java.lang.String placeholder
        start local 2 // java.lang.String replacement
         0: .line 124
            aload 0 /* template */
            aload 1 /* placeholder */
            aload 2 /* replacement */
            iconst_0
            invokestatic org.hibernate.internal.util.StringHelper.replace:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Ljava/lang/String;
            areturn
        end local 2 // java.lang.String replacement
        end local 1 // java.lang.String placeholder
        end local 0 // java.lang.String template
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0     template  Ljava/lang/String;
            0    1     1  placeholder  Ljava/lang/String;
            0    1     2  replacement  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      template     
      placeholder  
      replacement  

  public static java.lang.String[] replace(java.lang.String[], java.lang.String, java.lang.String);
    descriptor: ([Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // java.lang.String[] templates
        start local 1 // java.lang.String placeholder
        start local 2 // java.lang.String replacement
         0: .line 128
            aload 0 /* templates */
            arraylength
            anewarray java.lang.String
            astore 3 /* result */
        start local 3 // java.lang.String[] result
         1: .line 129
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: goto 5
         3: .line 130
      StackMap locals: java.lang.String[] int
      StackMap stack:
            aload 3 /* result */
            iload 4 /* i */
            aload 0 /* templates */
            iload 4 /* i */
            aaload
            aload 1 /* placeholder */
            aload 2 /* replacement */
            invokestatic org.hibernate.internal.util.StringHelper.replace:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            aastore
         4: .line 129
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 4 /* i */
            aload 0 /* templates */
            arraylength
            if_icmplt 3
        end local 4 // int i
         6: .line 132
            aload 3 /* result */
            areturn
        end local 3 // java.lang.String[] result
        end local 2 // java.lang.String replacement
        end local 1 // java.lang.String placeholder
        end local 0 // java.lang.String[] templates
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0    templates  [Ljava/lang/String;
            0    7     1  placeholder  Ljava/lang/String;
            0    7     2  replacement  Ljava/lang/String;
            1    7     3       result  [Ljava/lang/String;
            2    6     4            i  I
    MethodParameters:
             Name  Flags
      templates    
      placeholder  
      replacement  

  public static java.lang.String replace(java.lang.String, java.lang.String, java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // java.lang.String template
        start local 1 // java.lang.String placeholder
        start local 2 // java.lang.String replacement
        start local 3 // boolean wholeWords
         0: .line 136
            aload 0 /* template */
            aload 1 /* placeholder */
            aload 2 /* replacement */
            iload 3 /* wholeWords */
            iconst_0
            invokestatic org.hibernate.internal.util.StringHelper.replace:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZZ)Ljava/lang/String;
            areturn
        end local 3 // boolean wholeWords
        end local 2 // java.lang.String replacement
        end local 1 // java.lang.String placeholder
        end local 0 // java.lang.String template
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0     template  Ljava/lang/String;
            0    1     1  placeholder  Ljava/lang/String;
            0    1     2  replacement  Ljava/lang/String;
            0    1     3   wholeWords  Z
    MethodParameters:
             Name  Flags
      template     
      placeholder  
      replacement  
      wholeWords   

  public static java.lang.String replace(java.lang.String, java.lang.String, java.lang.String, boolean, boolean);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZZ)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=8, args_size=5
        start local 0 // java.lang.String template
        start local 1 // java.lang.String placeholder
        start local 2 // java.lang.String replacement
        start local 3 // boolean wholeWords
        start local 4 // boolean encloseInParensIfNecessary
         0: .line 144
            aload 0 /* template */
            ifnonnull 2
         1: .line 145
            aload 0 /* template */
            areturn
         2: .line 147
      StackMap locals:
      StackMap stack:
            aload 0 /* template */
            aload 1 /* placeholder */
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            istore 5 /* loc */
        start local 5 // int loc
         3: .line 148
            iload 5 /* loc */
            ifge 5
         4: .line 149
            aload 0 /* template */
            areturn
         5: .line 152
      StackMap locals: int
      StackMap stack:
            aload 0 /* template */
            iconst_0
            iload 5 /* loc */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 6 /* beforePlaceholder */
        start local 6 // java.lang.String beforePlaceholder
         6: .line 153
            aload 0 /* template */
            iload 5 /* loc */
            aload 1 /* placeholder */
            invokevirtual java.lang.String.length:()I
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 7 /* afterPlaceholder */
        start local 7 // java.lang.String afterPlaceholder
         7: .line 154
            aload 6 /* beforePlaceholder */
            aload 7 /* afterPlaceholder */
            aload 1 /* placeholder */
            aload 2 /* replacement */
            iload 3 /* wholeWords */
            iload 4 /* encloseInParensIfNecessary */
            invokestatic org.hibernate.internal.util.StringHelper.replace:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZZ)Ljava/lang/String;
            areturn
        end local 7 // java.lang.String afterPlaceholder
        end local 6 // java.lang.String beforePlaceholder
        end local 5 // int loc
        end local 4 // boolean encloseInParensIfNecessary
        end local 3 // boolean wholeWords
        end local 2 // java.lang.String replacement
        end local 1 // java.lang.String placeholder
        end local 0 // java.lang.String template
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0    8     0                    template  Ljava/lang/String;
            0    8     1                 placeholder  Ljava/lang/String;
            0    8     2                 replacement  Ljava/lang/String;
            0    8     3                  wholeWords  Z
            0    8     4  encloseInParensIfNecessary  Z
            3    8     5                         loc  I
            6    8     6           beforePlaceholder  Ljava/lang/String;
            7    8     7            afterPlaceholder  Ljava/lang/String;
    MethodParameters:
                            Name  Flags
      template                    
      placeholder                 
      replacement                 
      wholeWords                  
      encloseInParensIfNecessary  

  public static java.lang.String replace(java.lang.String, java.lang.String, java.lang.String, java.lang.String, boolean, boolean);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZZ)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=9, args_size=6
        start local 0 // java.lang.String beforePlaceholder
        start local 1 // java.lang.String afterPlaceholder
        start local 2 // java.lang.String placeholder
        start local 3 // java.lang.String replacement
        start local 4 // boolean wholeWords
        start local 5 // boolean encloseInParensIfNecessary
         0: .line 166
            iload 4 /* wholeWords */
            ifeq 4
         1: .line 167
            aload 1 /* afterPlaceholder */
            invokevirtual java.lang.String.length:()I
            ifeq 4
         2: .line 168
            aload 1 /* afterPlaceholder */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.isJavaIdentifierPart:(C)Z
            ifeq 4
         3: .line 165
            iconst_0
            goto 5
      StackMap locals:
      StackMap stack:
         4: iconst_1
      StackMap locals:
      StackMap stack: int
         5: istore 6 /* actuallyReplace */
        start local 6 // boolean actuallyReplace
         6: .line 170
            iload 6 /* actuallyReplace */
            ifeq 11
         7: .line 171
            iload 5 /* encloseInParensIfNecessary */
            ifeq 11
         8: .line 172
            aload 0 /* beforePlaceholder */
            invokestatic org.hibernate.internal.util.StringHelper.getLastNonWhitespaceCharacter:(Ljava/lang/String;)C
            bipush 40
            if_icmpeq 11
         9: .line 173
            aload 1 /* afterPlaceholder */
            invokestatic org.hibernate.internal.util.StringHelper.getFirstNonWhitespaceCharacter:(Ljava/lang/String;)C
            bipush 41
            if_icmpeq 11
        10: .line 169
            iconst_1
            goto 12
      StackMap locals: int
      StackMap stack:
        11: iconst_0
      StackMap locals:
      StackMap stack: int
        12: istore 7 /* encloseInParens */
        start local 7 // boolean encloseInParens
        13: .line 174
            new java.lang.StringBuilder
            dup
            aload 0 /* beforePlaceholder */
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 8 /* buf */
        start local 8 // java.lang.StringBuilder buf
        14: .line 175
            iload 7 /* encloseInParens */
            ifeq 16
        15: .line 176
            aload 8 /* buf */
            bipush 40
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        16: .line 178
      StackMap locals: int java.lang.StringBuilder
      StackMap stack:
            aload 8 /* buf */
            iload 6 /* actuallyReplace */
            ifeq 17
            aload 3 /* replacement */
            goto 18
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
        17: aload 2 /* placeholder */
      StackMap locals: java.lang.String java.lang.String java.lang.String java.lang.String int int int int java.lang.StringBuilder
      StackMap stack: java.lang.StringBuilder java.lang.String
        18: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        19: .line 179
            iload 7 /* encloseInParens */
            ifeq 21
        20: .line 180
            aload 8 /* buf */
            bipush 41
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        21: .line 182
      StackMap locals:
      StackMap stack:
            aload 8 /* buf */
        22: .line 184
            aload 1 /* afterPlaceholder */
        23: .line 185
            aload 2 /* placeholder */
        24: .line 186
            aload 3 /* replacement */
        25: .line 187
            iload 4 /* wholeWords */
        26: .line 188
            iload 5 /* encloseInParensIfNecessary */
        27: .line 183
            invokestatic org.hibernate.internal.util.StringHelper.replace:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZZ)Ljava/lang/String;
        28: .line 182
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        29: .line 191
            aload 8 /* buf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 8 // java.lang.StringBuilder buf
        end local 7 // boolean encloseInParens
        end local 6 // boolean actuallyReplace
        end local 5 // boolean encloseInParensIfNecessary
        end local 4 // boolean wholeWords
        end local 3 // java.lang.String replacement
        end local 2 // java.lang.String placeholder
        end local 1 // java.lang.String afterPlaceholder
        end local 0 // java.lang.String beforePlaceholder
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0   30     0           beforePlaceholder  Ljava/lang/String;
            0   30     1            afterPlaceholder  Ljava/lang/String;
            0   30     2                 placeholder  Ljava/lang/String;
            0   30     3                 replacement  Ljava/lang/String;
            0   30     4                  wholeWords  Z
            0   30     5  encloseInParensIfNecessary  Z
            6   30     6             actuallyReplace  Z
           13   30     7             encloseInParens  Z
           14   30     8                         buf  Ljava/lang/StringBuilder;
    MethodParameters:
                            Name  Flags
      beforePlaceholder           
      afterPlaceholder            
      placeholder                 
      replacement                 
      wholeWords                  
      encloseInParensIfNecessary  

  public static char getLastNonWhitespaceCharacter(java.lang.String);
    descriptor: (Ljava/lang/String;)C
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // java.lang.String str
         0: .line 195
            aload 0 /* str */
            ifnull 8
            aload 0 /* str */
            invokevirtual java.lang.String.length:()I
            ifle 8
         1: .line 196
            aload 0 /* str */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            istore 1 /* i */
        start local 1 // int i
         2: goto 7
         3: .line 197
      StackMap locals: int
      StackMap stack:
            aload 0 /* str */
            iload 1 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 2 /* ch */
        start local 2 // char ch
         4: .line 198
            iload 2 /* ch */
            invokestatic java.lang.Character.isWhitespace:(C)Z
            ifne 6
         5: .line 199
            iload 2 /* ch */
            ireturn
        end local 2 // char ch
         6: .line 196
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ -1
      StackMap locals:
      StackMap stack:
         7: iload 1 /* i */
            ifge 3
        end local 1 // int i
         8: .line 203
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // java.lang.String str
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0   str  Ljava/lang/String;
            2    8     1     i  I
            4    6     2    ch  C
    MethodParameters:
      Name  Flags
      str   

  public static char getFirstNonWhitespaceCharacter(java.lang.String);
    descriptor: (Ljava/lang/String;)C
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // java.lang.String str
         0: .line 207
            aload 0 /* str */
            ifnull 8
            aload 0 /* str */
            invokevirtual java.lang.String.length:()I
            ifle 8
         1: .line 208
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         2: goto 7
         3: .line 209
      StackMap locals: int
      StackMap stack:
            aload 0 /* str */
            iload 1 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 2 /* ch */
        start local 2 // char ch
         4: .line 210
            iload 2 /* ch */
            invokestatic java.lang.Character.isWhitespace:(C)Z
            ifne 6
         5: .line 211
            iload 2 /* ch */
            ireturn
        end local 2 // char ch
         6: .line 208
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 1 /* i */
            aload 0 /* str */
            invokevirtual java.lang.String.length:()I
            if_icmplt 3
        end local 1 // int i
         8: .line 215
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // java.lang.String str
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0   str  Ljava/lang/String;
            2    8     1     i  I
            4    6     2    ch  C
    MethodParameters:
      Name  Flags
      str   

  public static java.lang.String replaceOnce(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // java.lang.String template
        start local 1 // java.lang.String placeholder
        start local 2 // java.lang.String replacement
         0: .line 219
            aload 0 /* template */
            ifnonnull 2
         1: .line 220
            aload 0 /* template */
            areturn
         2: .line 222
      StackMap locals:
      StackMap stack:
            aload 0 /* template */
            aload 1 /* placeholder */
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            istore 3 /* loc */
        start local 3 // int loc
         3: .line 223
            iload 3 /* loc */
            ifge 5
         4: .line 224
            aload 0 /* template */
            areturn
         5: .line 227
      StackMap locals: int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 0 /* template */
            iconst_0
            iload 3 /* loc */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         6: .line 228
            aload 2 /* replacement */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 229
            aload 0 /* template */
            iload 3 /* loc */
            aload 1 /* placeholder */
            invokevirtual java.lang.String.length:()I
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         8: .line 230
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         9: .line 227
            areturn
        end local 3 // int loc
        end local 2 // java.lang.String replacement
        end local 1 // java.lang.String placeholder
        end local 0 // java.lang.String template
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0     template  Ljava/lang/String;
            0   10     1  placeholder  Ljava/lang/String;
            0   10     2  replacement  Ljava/lang/String;
            3   10     3          loc  I
    MethodParameters:
             Name  Flags
      template     
      placeholder  
      replacement  

  public static java.lang.String[] split(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.String seperators
        start local 1 // java.lang.String list
         0: .line 236
            aload 0 /* seperators */
            aload 1 /* list */
            iconst_0
            invokestatic org.hibernate.internal.util.StringHelper.split:(Ljava/lang/String;Ljava/lang/String;Z)[Ljava/lang/String;
            areturn
        end local 1 // java.lang.String list
        end local 0 // java.lang.String seperators
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0  seperators  Ljava/lang/String;
            0    1     1        list  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      seperators  
      list        

  public static java.lang.String[] split(java.lang.String, java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Z)[Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // java.lang.String seperators
        start local 1 // java.lang.String list
        start local 2 // boolean include
         0: .line 240
            new java.util.StringTokenizer
            dup
            aload 1 /* list */
            aload 0 /* seperators */
            iload 2 /* include */
            invokespecial java.util.StringTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;Z)V
            astore 3 /* tokens */
        start local 3 // java.util.StringTokenizer tokens
         1: .line 241
            aload 3 /* tokens */
            invokevirtual java.util.StringTokenizer.countTokens:()I
            anewarray java.lang.String
            astore 4 /* result */
        start local 4 // java.lang.String[] result
         2: .line 242
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         3: .line 243
            goto 5
         4: .line 244
      StackMap locals: java.util.StringTokenizer java.lang.String[] int
      StackMap stack:
            aload 4 /* result */
            iload 5 /* i */
            iinc 5 /* i */ 1
            aload 3 /* tokens */
            invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
            aastore
         5: .line 243
      StackMap locals:
      StackMap stack:
            aload 3 /* tokens */
            invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
            ifne 4
         6: .line 246
            aload 4 /* result */
            areturn
        end local 5 // int i
        end local 4 // java.lang.String[] result
        end local 3 // java.util.StringTokenizer tokens
        end local 2 // boolean include
        end local 1 // java.lang.String list
        end local 0 // java.lang.String seperators
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0  seperators  Ljava/lang/String;
            0    7     1        list  Ljava/lang/String;
            0    7     2     include  Z
            1    7     3      tokens  Ljava/util/StringTokenizer;
            2    7     4      result  [Ljava/lang/String;
            3    7     5           i  I
    MethodParameters:
            Name  Flags
      seperators  
      list        
      include     

  public static java.lang.String unqualify(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.lang.String qualifiedName
         0: .line 250
            aload 0 /* qualifiedName */
            ldc "."
            invokevirtual java.lang.String.lastIndexOf:(Ljava/lang/String;)I
            istore 1 /* loc */
        start local 1 // int loc
         1: .line 251
            iload 1 /* loc */
            ifge 2
            aload 0 /* qualifiedName */
            goto 3
      StackMap locals: int
      StackMap stack:
         2: aload 0 /* qualifiedName */
            iload 1 /* loc */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         3: areturn
        end local 1 // int loc
        end local 0 // java.lang.String qualifiedName
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0  qualifiedName  Ljava/lang/String;
            1    4     1            loc  I
    MethodParameters:
               Name  Flags
      qualifiedName  

  public static java.lang.String qualifier(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.lang.String qualifiedName
         0: .line 255
            aload 0 /* qualifiedName */
            ldc "."
            invokevirtual java.lang.String.lastIndexOf:(Ljava/lang/String;)I
            istore 1 /* loc */
        start local 1 // int loc
         1: .line 256
            iload 1 /* loc */
            ifge 2
            ldc ""
            goto 3
      StackMap locals: int
      StackMap stack:
         2: aload 0 /* qualifiedName */
            iconst_0
            iload 1 /* loc */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         3: areturn
        end local 1 // int loc
        end local 0 // java.lang.String qualifiedName
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0  qualifiedName  Ljava/lang/String;
            1    4     1            loc  I
    MethodParameters:
               Name  Flags
      qualifiedName  

  public static java.lang.String collapse(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // java.lang.String name
         0: .line 268
            aload 0 /* name */
            ifnonnull 2
         1: .line 269
            aconst_null
            areturn
         2: .line 271
      StackMap locals:
      StackMap stack:
            aload 0 /* name */
            bipush 46
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 1 /* breakPoint */
        start local 1 // int breakPoint
         3: .line 272
            iload 1 /* breakPoint */
            ifge 5
         4: .line 273
            aload 0 /* name */
            areturn
         5: .line 275
      StackMap locals: int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 0 /* name */
            iconst_0
            iload 1 /* breakPoint */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            iconst_1
            invokestatic org.hibernate.internal.util.StringHelper.collapseQualifier:(Ljava/lang/String;Z)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* name */
            iload 1 /* breakPoint */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // int breakPoint
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        name  Ljava/lang/String;
            3    6     1  breakPoint  I
    MethodParameters:
      Name  Flags
      name  

  public static java.lang.String collapseQualifier(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // java.lang.String qualifier
        start local 1 // boolean includeDots
         0: .line 287
            new java.util.StringTokenizer
            dup
            aload 0 /* qualifier */
            ldc "."
            invokespecial java.util.StringTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 2 /* tokenizer */
        start local 2 // java.util.StringTokenizer tokenizer
         1: .line 288
            aload 2 /* tokenizer */
            invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.toString:(C)Ljava/lang/String;
            astore 3 /* collapsed */
        start local 3 // java.lang.String collapsed
         2: .line 289
            goto 6
         3: .line 290
      StackMap locals: java.util.StringTokenizer java.lang.String
      StackMap stack:
            iload 1 /* includeDots */
            ifeq 5
         4: .line 291
            new java.lang.StringBuilder
            dup
            aload 3 /* collapsed */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 46
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* collapsed */
         5: .line 293
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 3 /* collapsed */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* tokenizer */
            invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* collapsed */
         6: .line 289
      StackMap locals:
      StackMap stack:
            aload 2 /* tokenizer */
            invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
            ifne 3
         7: .line 295
            aload 3 /* collapsed */
            areturn
        end local 3 // java.lang.String collapsed
        end local 2 // java.util.StringTokenizer tokenizer
        end local 1 // boolean includeDots
        end local 0 // java.lang.String qualifier
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0    qualifier  Ljava/lang/String;
            0    8     1  includeDots  Z
            1    8     2    tokenizer  Ljava/util/StringTokenizer;
            2    8     3    collapsed  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      qualifier    
      includeDots  

  public static java.lang.String partiallyUnqualify(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.String name
        start local 1 // java.lang.String qualifierBase
         0: .line 308
            aload 0 /* name */
            ifnull 1
            aload 0 /* name */
            aload 1 /* qualifierBase */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 2
         1: .line 309
      StackMap locals:
      StackMap stack:
            aload 0 /* name */
            areturn
         2: .line 311
      StackMap locals:
      StackMap stack:
            aload 0 /* name */
            aload 1 /* qualifierBase */
            invokevirtual java.lang.String.length:()I
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            areturn
        end local 1 // java.lang.String qualifierBase
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           name  Ljava/lang/String;
            0    3     1  qualifierBase  Ljava/lang/String;
    MethodParameters:
               Name  Flags
      name           
      qualifierBase  

  public static java.lang.String collapseQualifierBase(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.String name
        start local 1 // java.lang.String qualifierBase
         0: .line 325
            aload 0 /* name */
            ifnull 1
            aload 0 /* name */
            aload 1 /* qualifierBase */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 2
         1: .line 326
      StackMap locals:
      StackMap stack:
            aload 0 /* name */
            invokestatic org.hibernate.internal.util.StringHelper.collapse:(Ljava/lang/String;)Ljava/lang/String;
            areturn
         2: .line 328
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 1 /* qualifierBase */
            iconst_1
            invokestatic org.hibernate.internal.util.StringHelper.collapseQualifier:(Ljava/lang/String;Z)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* name */
            aload 1 /* qualifierBase */
            invokevirtual java.lang.String.length:()I
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.String qualifierBase
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           name  Ljava/lang/String;
            0    3     1  qualifierBase  Ljava/lang/String;
    MethodParameters:
               Name  Flags
      name           
      qualifierBase  

  public static java.lang.String[] suffix(java.lang.String[], java.lang.String);
    descriptor: ([Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // java.lang.String[] columns
        start local 1 // java.lang.String suffix
         0: .line 332
            aload 1 /* suffix */
            ifnonnull 1
            aload 0 /* columns */
            areturn
         1: .line 333
      StackMap locals:
      StackMap stack:
            aload 0 /* columns */
            arraylength
            anewarray java.lang.String
            astore 2 /* qualified */
        start local 2 // java.lang.String[] qualified
         2: .line 334
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 6
         4: .line 335
      StackMap locals: java.lang.String[] int
      StackMap stack:
            aload 2 /* qualified */
            iload 3 /* i */
            aload 0 /* columns */
            iload 3 /* i */
            aaload
            aload 1 /* suffix */
            invokestatic org.hibernate.internal.util.StringHelper.suffix:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            aastore
         5: .line 334
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 3 /* i */
            aload 0 /* columns */
            arraylength
            if_icmplt 4
        end local 3 // int i
         7: .line 337
            aload 2 /* qualified */
            areturn
        end local 2 // java.lang.String[] qualified
        end local 1 // java.lang.String suffix
        end local 0 // java.lang.String[] columns
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0    columns  [Ljava/lang/String;
            0    8     1     suffix  Ljava/lang/String;
            2    8     2  qualified  [Ljava/lang/String;
            3    7     3          i  I
    MethodParameters:
         Name  Flags
      columns  
      suffix   

  private static java.lang.String suffix(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.String name
        start local 1 // java.lang.String suffix
         0: .line 341
            aload 1 /* suffix */
            ifnonnull 1
            aload 0 /* name */
            goto 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.StringBuilder
            dup
            aload 0 /* name */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* suffix */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         2: areturn
        end local 1 // java.lang.String suffix
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    name  Ljava/lang/String;
            0    3     1  suffix  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      name    
      suffix  

  public static java.lang.String root(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.lang.String qualifiedName
         0: .line 345
            aload 0 /* qualifiedName */
            ldc "."
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            istore 1 /* loc */
        start local 1 // int loc
         1: .line 346
            iload 1 /* loc */
            ifge 2
            aload 0 /* qualifiedName */
            goto 3
      StackMap locals: int
      StackMap stack:
         2: aload 0 /* qualifiedName */
            iconst_0
            iload 1 /* loc */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         3: areturn
        end local 1 // int loc
        end local 0 // java.lang.String qualifiedName
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0  qualifiedName  Ljava/lang/String;
            1    4     1            loc  I
    MethodParameters:
               Name  Flags
      qualifiedName  

  public static java.lang.String unroot(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.lang.String qualifiedName
         0: .line 350
            aload 0 /* qualifiedName */
            ldc "."
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            istore 1 /* loc */
        start local 1 // int loc
         1: .line 351
            iload 1 /* loc */
            ifge 2
            aload 0 /* qualifiedName */
            goto 3
      StackMap locals: int
      StackMap stack:
         2: aload 0 /* qualifiedName */
            iload 1 /* loc */
            iconst_1
            iadd
            aload 0 /* qualifiedName */
            invokevirtual java.lang.String.length:()I
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         3: areturn
        end local 1 // int loc
        end local 0 // java.lang.String qualifiedName
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0  qualifiedName  Ljava/lang/String;
            1    4     1            loc  I
    MethodParameters:
               Name  Flags
      qualifiedName  

  public static boolean booleanValue(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.String tfString
         0: .line 355
            aload 0 /* tfString */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            getstatic java.util.Locale.ROOT:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            astore 1 /* trimmed */
        start local 1 // java.lang.String trimmed
         1: .line 356
            aload 1 /* trimmed */
            ldc "true"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 2
            aload 1 /* trimmed */
            ldc "t"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 2
            iconst_0
            ireturn
      StackMap locals: java.lang.String
      StackMap stack:
         2: iconst_1
            ireturn
        end local 1 // java.lang.String trimmed
        end local 0 // java.lang.String tfString
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0  tfString  Ljava/lang/String;
            1    3     1   trimmed  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      tfString  

  public static java.lang.String toString(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // java.lang.Object[] array
         0: .line 360
            aload 0 /* array */
            arraylength
            istore 1 /* len */
        start local 1 // int len
         1: .line 361
            iload 1 /* len */
            ifne 2
            ldc ""
            areturn
         2: .line 362
      StackMap locals: int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            iload 1 /* len */
            bipush 12
            imul
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 2 /* buf */
        start local 2 // java.lang.StringBuilder buf
         3: .line 363
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         4: goto 7
         5: .line 364
      StackMap locals: java.lang.StringBuilder int
      StackMap stack:
            aload 2 /* buf */
            aload 0 /* array */
            iload 3 /* i */
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         6: .line 363
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 3 /* i */
            iload 1 /* len */
            iconst_1
            isub
            if_icmplt 5
        end local 3 // int i
         8: .line 366
            aload 2 /* buf */
            aload 0 /* array */
            iload 1 /* len */
            iconst_1
            isub
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.StringBuilder buf
        end local 1 // int len
        end local 0 // java.lang.Object[] array
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0  array  [Ljava/lang/Object;
            1    9     1    len  I
            3    9     2    buf  Ljava/lang/StringBuilder;
            4    8     3      i  I
    MethodParameters:
       Name  Flags
      array  

  public static java.lang.String[] multiply(java.lang.String, java.util.Iterator, java.util.Iterator);
    descriptor: (Ljava/lang/String;Ljava/util/Iterator;Ljava/util/Iterator;)[Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // java.lang.String string
        start local 1 // java.util.Iterator placeholders
        start local 2 // java.util.Iterator replacements
         0: .line 370
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 0 /* string */
            aastore
            astore 3 /* result */
        start local 3 // java.lang.String[] result
         1: .line 371
            goto 3
         2: .line 372
      StackMap locals: java.lang.String[]
      StackMap stack:
            aload 3 /* result */
            aload 1 /* placeholders */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            aload 2 /* replacements */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String[]
            invokestatic org.hibernate.internal.util.StringHelper.multiply:([Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)[Ljava/lang/String;
            astore 3 /* result */
         3: .line 371
      StackMap locals:
      StackMap stack:
            aload 1 /* placeholders */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         4: .line 374
            aload 3 /* result */
            areturn
        end local 3 // java.lang.String[] result
        end local 2 // java.util.Iterator replacements
        end local 1 // java.util.Iterator placeholders
        end local 0 // java.lang.String string
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0        string  Ljava/lang/String;
            0    5     1  placeholders  Ljava/util/Iterator;
            0    5     2  replacements  Ljava/util/Iterator;
            1    5     3        result  [Ljava/lang/String;
    MethodParameters:
              Name  Flags
      string        
      placeholders  
      replacements  

  private static java.lang.String[] multiply(java.lang.String[], java.lang.String, java.lang.String[]);
    descriptor: ([Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)[Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=7, args_size=3
        start local 0 // java.lang.String[] strings
        start local 1 // java.lang.String placeholder
        start local 2 // java.lang.String[] replacements
         0: .line 378
            aload 2 /* replacements */
            arraylength
            aload 0 /* strings */
            arraylength
            imul
            anewarray java.lang.String
            astore 3 /* results */
        start local 3 // java.lang.String[] results
         1: .line 379
            iconst_0
            istore 4 /* n */
        start local 4 // int n
         2: .line 380
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         3: goto 10
         4: .line 381
      StackMap locals: java.lang.String[] int int
      StackMap stack:
            iconst_0
            istore 6 /* j */
        start local 6 // int j
         5: goto 8
         6: .line 382
      StackMap locals: int
      StackMap stack:
            aload 3 /* results */
            iload 4 /* n */
            iinc 4 /* n */ 1
            aload 0 /* strings */
            iload 6 /* j */
            aaload
            aload 1 /* placeholder */
            aload 2 /* replacements */
            iload 5 /* i */
            aaload
            invokestatic org.hibernate.internal.util.StringHelper.replaceOnce:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            aastore
         7: .line 381
            iinc 6 /* j */ 1
      StackMap locals:
      StackMap stack:
         8: iload 6 /* j */
            aload 0 /* strings */
            arraylength
            if_icmplt 6
        end local 6 // int j
         9: .line 380
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 5 /* i */
            aload 2 /* replacements */
            arraylength
            if_icmplt 4
        end local 5 // int i
        11: .line 385
            aload 3 /* results */
            areturn
        end local 4 // int n
        end local 3 // java.lang.String[] results
        end local 2 // java.lang.String[] replacements
        end local 1 // java.lang.String placeholder
        end local 0 // java.lang.String[] strings
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   12     0       strings  [Ljava/lang/String;
            0   12     1   placeholder  Ljava/lang/String;
            0   12     2  replacements  [Ljava/lang/String;
            1   12     3       results  [Ljava/lang/String;
            2   12     4             n  I
            3   11     5             i  I
            5    9     6             j  I
    MethodParameters:
              Name  Flags
      strings       
      placeholder   
      replacements  

  public static int countUnquoted(java.lang.String, char);
    descriptor: (Ljava/lang/String;C)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // java.lang.String string
        start local 1 // char character
         0: .line 389
            bipush 39
            iload 1 /* character */
            if_icmpne 2
         1: .line 390
            new java.lang.IllegalArgumentException
            dup
            ldc "Unquoted count of quotes is invalid"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 392
      StackMap locals:
      StackMap stack:
            aload 0 /* string */
            ifnonnull 4
         3: .line 393
            iconst_0
            ireturn
         4: .line 397
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* count */
        start local 2 // int count
         5: .line 398
            aload 0 /* string */
            invokevirtual java.lang.String.length:()I
            istore 3 /* stringLength */
        start local 3 // int stringLength
         6: .line 399
            iconst_0
            istore 4 /* inQuote */
        start local 4 // boolean inQuote
         7: .line 400
            iconst_0
            istore 5 /* indx */
        start local 5 // int indx
         8: goto 20
         9: .line 401
      StackMap locals: java.lang.String int int int int int
      StackMap stack:
            aload 0 /* string */
            iload 5 /* indx */
            invokevirtual java.lang.String.charAt:(I)C
            istore 6 /* c */
        start local 6 // char c
        10: .line 402
            iload 4 /* inQuote */
            ifeq 14
        11: .line 403
            bipush 39
            iload 6 /* c */
            if_icmpne 19
        12: .line 404
            iconst_0
            istore 4 /* inQuote */
        13: .line 406
            goto 19
        14: .line 407
      StackMap locals: int
      StackMap stack:
            bipush 39
            iload 6 /* c */
            if_icmpne 17
        15: .line 408
            iconst_1
            istore 4 /* inQuote */
        16: .line 409
            goto 19
        17: .line 410
      StackMap locals:
      StackMap stack:
            iload 6 /* c */
            iload 1 /* character */
            if_icmpne 19
        18: .line 411
            iinc 2 /* count */ 1
        end local 6 // char c
        19: .line 400
      StackMap locals:
      StackMap stack:
            iinc 5 /* indx */ 1
      StackMap locals:
      StackMap stack:
        20: iload 5 /* indx */
            iload 3 /* stringLength */
            if_icmplt 9
        end local 5 // int indx
        21: .line 414
            iload 2 /* count */
            ireturn
        end local 4 // boolean inQuote
        end local 3 // int stringLength
        end local 2 // int count
        end local 1 // char character
        end local 0 // java.lang.String string
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   22     0        string  Ljava/lang/String;
            0   22     1     character  C
            5   22     2         count  I
            6   22     3  stringLength  I
            7   22     4       inQuote  Z
            8   21     5          indx  I
           10   19     6             c  C
    MethodParameters:
           Name  Flags
      string     
      character  

  public static int[] locateUnquoted(java.lang.String, char);
    descriptor: (Ljava/lang/String;C)[I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // java.lang.String string
        start local 1 // char character
         0: .line 418
            bipush 39
            iload 1 /* character */
            if_icmpne 2
         1: .line 419
            new java.lang.IllegalArgumentException
            dup
            ldc "Unquoted count of quotes is invalid"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 421
      StackMap locals:
      StackMap stack:
            aload 0 /* string */
            ifnonnull 4
         3: .line 422
            iconst_0
            newarray 10
            areturn
         4: .line 425
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            bipush 20
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 2 /* locations */
        start local 2 // java.util.ArrayList locations
         5: .line 430
            aload 0 /* string */
            invokevirtual java.lang.String.length:()I
            istore 3 /* stringLength */
        start local 3 // int stringLength
         6: .line 431
            iconst_0
            istore 4 /* inQuote */
        start local 4 // boolean inQuote
         7: .line 432
            iconst_0
            istore 5 /* indx */
        start local 5 // int indx
         8: goto 20
         9: .line 433
      StackMap locals: java.lang.String int java.util.ArrayList int int int
      StackMap stack:
            aload 0 /* string */
            iload 5 /* indx */
            invokevirtual java.lang.String.charAt:(I)C
            istore 6 /* c */
        start local 6 // char c
        10: .line 434
            iload 4 /* inQuote */
            ifeq 14
        11: .line 435
            bipush 39
            iload 6 /* c */
            if_icmpne 19
        12: .line 436
            iconst_0
            istore 4 /* inQuote */
        13: .line 438
            goto 19
        14: .line 439
      StackMap locals: int
      StackMap stack:
            bipush 39
            iload 6 /* c */
            if_icmpne 17
        15: .line 440
            iconst_1
            istore 4 /* inQuote */
        16: .line 441
            goto 19
        17: .line 442
      StackMap locals:
      StackMap stack:
            iload 6 /* c */
            iload 1 /* character */
            if_icmpne 19
        18: .line 443
            aload 2 /* locations */
            iload 5 /* indx */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 6 // char c
        19: .line 432
      StackMap locals:
      StackMap stack:
            iinc 5 /* indx */ 1
      StackMap locals:
      StackMap stack:
        20: iload 5 /* indx */
            iload 3 /* stringLength */
            if_icmplt 9
        end local 5 // int indx
        21: .line 446
            aload 2 /* locations */
            invokestatic org.hibernate.internal.util.collections.ArrayHelper.toIntArray:(Ljava/util/Collection;)[I
            areturn
        end local 4 // boolean inQuote
        end local 3 // int stringLength
        end local 2 // java.util.ArrayList locations
        end local 1 // char character
        end local 0 // java.lang.String string
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   22     0        string  Ljava/lang/String;
            0   22     1     character  C
            5   22     2     locations  Ljava/util/ArrayList;
            6   22     3  stringLength  I
            7   22     4       inQuote  Z
            8   21     5          indx  I
           10   19     6             c  C
    MethodParameters:
           Name  Flags
      string     
      character  

  public static boolean isNotEmpty(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String string
         0: .line 450
            aload 0 /* string */
            ifnull 1
            aload 0 /* string */
            invokevirtual java.lang.String.length:()I
            ifle 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // java.lang.String string
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0  string  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      string  

  public static boolean isEmpty(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String string
         0: .line 454
            aload 0 /* string */
            ifnull 1
            aload 0 /* string */
            invokevirtual java.lang.String.length:()I
            ifeq 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // java.lang.String string
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0  string  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      string  

  public static java.lang.String qualify(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.String prefix
        start local 1 // java.lang.String name
         0: .line 458
            aload 1 /* name */
            ifnull 1
            aload 0 /* prefix */
            ifnonnull 2
         1: .line 459
      StackMap locals:
      StackMap stack:
            new java.lang.NullPointerException
            dup
            ldc "prefix or name were null attempting to build qualified name"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 461
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 0 /* prefix */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 46
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.String name
        end local 0 // java.lang.String prefix
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0  prefix  Ljava/lang/String;
            0    3     1    name  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      prefix  
      name    

  public static java.lang.String[] qualify(java.lang.String, java.lang.String[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/String;)[Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // java.lang.String prefix
        start local 1 // java.lang.String[] names
         0: .line 465
            aload 0 /* prefix */
            ifnonnull 2
         1: .line 466
            aload 1 /* names */
            areturn
         2: .line 468
      StackMap locals:
      StackMap stack:
            aload 1 /* names */
            arraylength
            istore 2 /* len */
        start local 2 // int len
         3: .line 469
            iload 2 /* len */
            anewarray java.lang.String
            astore 3 /* qualified */
        start local 3 // java.lang.String[] qualified
         4: .line 470
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         5: goto 8
         6: .line 471
      StackMap locals: int java.lang.String[] int
      StackMap stack:
            aload 3 /* qualified */
            iload 4 /* i */
            aload 0 /* prefix */
            aload 1 /* names */
            iload 4 /* i */
            aaload
            invokestatic org.hibernate.internal.util.StringHelper.qualify:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            aastore
         7: .line 470
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 4 /* i */
            iload 2 /* len */
            if_icmplt 6
        end local 4 // int i
         9: .line 473
            aload 3 /* qualified */
            areturn
        end local 3 // java.lang.String[] qualified
        end local 2 // int len
        end local 1 // java.lang.String[] names
        end local 0 // java.lang.String prefix
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0     prefix  Ljava/lang/String;
            0   10     1      names  [Ljava/lang/String;
            3   10     2        len  I
            4   10     3  qualified  [Ljava/lang/String;
            5    9     4          i  I
    MethodParameters:
        Name  Flags
      prefix  
      names   

  public static java.lang.String[] qualifyIfNot(java.lang.String, java.lang.String[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/String;)[Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // java.lang.String prefix
        start local 1 // java.lang.String[] names
         0: .line 477
            aload 0 /* prefix */
            ifnonnull 2
         1: .line 478
            aload 1 /* names */
            areturn
         2: .line 480
      StackMap locals:
      StackMap stack:
            aload 1 /* names */
            arraylength
            istore 2 /* len */
        start local 2 // int len
         3: .line 481
            iload 2 /* len */
            anewarray java.lang.String
            astore 3 /* qualified */
        start local 3 // java.lang.String[] qualified
         4: .line 482
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         5: goto 11
         6: .line 483
      StackMap locals: int java.lang.String[] int
      StackMap stack:
            aload 1 /* names */
            iload 4 /* i */
            aaload
            bipush 46
            invokevirtual java.lang.String.indexOf:(I)I
            ifge 9
         7: .line 484
            aload 3 /* qualified */
            iload 4 /* i */
            aload 0 /* prefix */
            aload 1 /* names */
            iload 4 /* i */
            aaload
            invokestatic org.hibernate.internal.util.StringHelper.qualify:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            aastore
         8: .line 485
            goto 10
         9: .line 487
      StackMap locals:
      StackMap stack:
            aload 3 /* qualified */
            iload 4 /* i */
            aload 1 /* names */
            iload 4 /* i */
            aaload
            aastore
        10: .line 482
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 4 /* i */
            iload 2 /* len */
            if_icmplt 6
        end local 4 // int i
        12: .line 490
            aload 3 /* qualified */
            areturn
        end local 3 // java.lang.String[] qualified
        end local 2 // int len
        end local 1 // java.lang.String[] names
        end local 0 // java.lang.String prefix
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   13     0     prefix  Ljava/lang/String;
            0   13     1      names  [Ljava/lang/String;
            3   13     2        len  I
            4   13     3  qualified  [Ljava/lang/String;
            5   12     4          i  I
    MethodParameters:
        Name  Flags
      prefix  
      names   

  public static int firstIndexOfChar(java.lang.String, java.util.BitSet, int);
    descriptor: (Ljava/lang/String;Ljava/util/BitSet;I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // java.lang.String sqlString
        start local 1 // java.util.BitSet keys
        start local 2 // int startindex
         0: .line 494
            iload 2 /* startindex */
            istore 3 /* i */
        start local 3 // int i
         1: aload 0 /* sqlString */
            invokevirtual java.lang.String.length:()I
            istore 4 /* size */
        start local 4 // int size
         2: goto 6
         3: .line 495
      StackMap locals: int int
      StackMap stack:
            aload 1 /* keys */
            aload 0 /* sqlString */
            iload 3 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            invokevirtual java.util.BitSet.get:(I)Z
            ifeq 5
         4: .line 496
            iload 3 /* i */
            ireturn
         5: .line 494
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 3 /* i */
            iload 4 /* size */
            if_icmplt 3
        end local 4 // int size
        end local 3 // int i
         7: .line 499
            iconst_m1
            ireturn
        end local 2 // int startindex
        end local 1 // java.util.BitSet keys
        end local 0 // java.lang.String sqlString
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0   sqlString  Ljava/lang/String;
            0    8     1        keys  Ljava/util/BitSet;
            0    8     2  startindex  I
            1    7     3           i  I
            2    7     4        size  I
    MethodParameters:
            Name  Flags
      sqlString   
      keys        
      startindex  

  public static int firstIndexOfChar(java.lang.String, java.lang.String, int);
    descriptor: (Ljava/lang/String;Ljava/lang/String;I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // java.lang.String sqlString
        start local 1 // java.lang.String string
        start local 2 // int startindex
         0: .line 504
            new java.util.BitSet
            dup
            invokespecial java.util.BitSet.<init>:()V
            astore 3 /* keys */
        start local 3 // java.util.BitSet keys
         1: .line 505
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: aload 1 /* string */
            invokevirtual java.lang.String.length:()I
            istore 5 /* size */
        start local 5 // int size
         3: goto 6
         4: .line 506
      StackMap locals: java.util.BitSet int int
      StackMap stack:
            aload 3 /* keys */
            aload 1 /* string */
            iload 4 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            invokevirtual java.util.BitSet.set:(I)V
         5: .line 505
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 4 /* i */
            iload 5 /* size */
            if_icmplt 4
        end local 5 // int size
        end local 4 // int i
         7: .line 508
            aload 0 /* sqlString */
            aload 3 /* keys */
            iload 2 /* startindex */
            invokestatic org.hibernate.internal.util.StringHelper.firstIndexOfChar:(Ljava/lang/String;Ljava/util/BitSet;I)I
            ireturn
        end local 3 // java.util.BitSet keys
        end local 2 // int startindex
        end local 1 // java.lang.String string
        end local 0 // java.lang.String sqlString
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0   sqlString  Ljava/lang/String;
            0    8     1      string  Ljava/lang/String;
            0    8     2  startindex  I
            1    8     3        keys  Ljava/util/BitSet;
            2    7     4           i  I
            3    7     5        size  I
    MethodParameters:
            Name  Flags
      sqlString   
      string      
      startindex  

  public static java.lang.String truncate(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.String string
        start local 1 // int length
         0: .line 513
            aload 0 /* string */
            invokevirtual java.lang.String.length:()I
            iload 1 /* length */
            if_icmpgt 2
         1: .line 514
            aload 0 /* string */
            areturn
         2: .line 517
      StackMap locals:
      StackMap stack:
            aload 0 /* string */
            iconst_0
            iload 1 /* length */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            areturn
        end local 1 // int length
        end local 0 // java.lang.String string
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0  string  Ljava/lang/String;
            0    3     1  length  I
    MethodParameters:
        Name  Flags
      string  
      length  

  public static java.lang.String generateAlias(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.String description
         0: .line 522
            new java.lang.StringBuilder
            dup
            aload 0 /* description */
            invokestatic org.hibernate.internal.util.StringHelper.generateAliasRoot:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 95
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // java.lang.String description
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0  description  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      description  

  public static java.lang.String generateAlias(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.String description
        start local 1 // int unique
         0: .line 535
            new java.lang.StringBuilder
            dup
            aload 0 /* description */
            invokestatic org.hibernate.internal.util.StringHelper.generateAliasRoot:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         1: .line 536
            iload 1 /* unique */
            invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         2: .line 537
            bipush 95
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
         3: .line 535
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // int unique
        end local 0 // java.lang.String description
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0  description  Ljava/lang/String;
            0    4     1       unique  I
    MethodParameters:
             Name  Flags
      description  
      unique       

  private static java.lang.String generateAliasRoot(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.lang.String description
         0: .line 549
            aload 0 /* description */
            invokestatic org.hibernate.internal.util.StringHelper.unqualifyEntityName:(Ljava/lang/String;)Ljava/lang/String;
            bipush 10
            invokestatic org.hibernate.internal.util.StringHelper.truncate:(Ljava/lang/String;I)Ljava/lang/String;
         1: .line 550
            getstatic java.util.Locale.ROOT:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
         2: .line 551
            bipush 47
            bipush 95
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
         3: .line 552
            bipush 36
            bipush 95
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
         4: .line 549
            astore 1 /* result */
        start local 1 // java.lang.String result
         5: .line 553
            aload 1 /* result */
            invokestatic org.hibernate.internal.util.StringHelper.cleanAlias:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* result */
         6: .line 554
            aload 1 /* result */
            aload 1 /* result */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.isDigit:(C)Z
            ifeq 8
         7: .line 555
            new java.lang.StringBuilder
            dup
            aload 1 /* result */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "x"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
         8: .line 558
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* result */
            areturn
        end local 1 // java.lang.String result
        end local 0 // java.lang.String description
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0  description  Ljava/lang/String;
            5    9     1       result  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      description  

  private static java.lang.String cleanAlias(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // java.lang.String alias
         0: .line 570
            aload 0 /* alias */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 1 /* chars */
        start local 1 // char[] chars
         1: .line 572
            aload 1 /* chars */
            iconst_0
            caload
            invokestatic java.lang.Character.isLetter:(C)Z
            ifne 8
         2: .line 573
            iconst_1
            istore 2 /* i */
        start local 2 // int i
         3: goto 7
         4: .line 576
      StackMap locals: char[] int
      StackMap stack:
            aload 1 /* chars */
            iload 2 /* i */
            caload
            invokestatic java.lang.Character.isLetter:(C)Z
            ifeq 6
         5: .line 577
            aload 0 /* alias */
            iload 2 /* i */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            areturn
         6: .line 573
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 2 /* i */
            aload 1 /* chars */
            arraylength
            if_icmplt 4
        end local 2 // int i
         8: .line 581
      StackMap locals:
      StackMap stack:
            aload 0 /* alias */
            areturn
        end local 1 // char[] chars
        end local 0 // java.lang.String alias
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0  alias  Ljava/lang/String;
            1    9     1  chars  [C
            3    8     2      i  I
    MethodParameters:
       Name  Flags
      alias  

  public static java.lang.String unqualifyEntityName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // java.lang.String entityName
         0: .line 585
            aload 0 /* entityName */
            invokestatic org.hibernate.internal.util.StringHelper.unqualify:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* result */
        start local 1 // java.lang.String result
         1: .line 586
            aload 1 /* result */
            bipush 47
            invokevirtual java.lang.String.indexOf:(I)I
            istore 2 /* slashPos */
        start local 2 // int slashPos
         2: .line 587
            iload 2 /* slashPos */
            ifle 4
         3: .line 588
            aload 1 /* result */
            iconst_0
            iload 2 /* slashPos */
            iconst_1
            isub
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 1 /* result */
         4: .line 590
      StackMap locals: java.lang.String int
      StackMap stack:
            aload 1 /* result */
            areturn
        end local 2 // int slashPos
        end local 1 // java.lang.String result
        end local 0 // java.lang.String entityName
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0  entityName  Ljava/lang/String;
            1    5     1      result  Ljava/lang/String;
            2    5     2    slashPos  I
    MethodParameters:
            Name  Flags
      entityName  

  public static java.lang.String moveAndToBeginning(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.String filter
         0: .line 594
            aload 0 /* filter */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            ifle 3
         1: .line 595
            new java.lang.StringBuilder
            dup
            aload 0 /* filter */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 0 /* filter */
         2: .line 596
            aload 0 /* filter */
            ldc " and "
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 3
            aload 0 /* filter */
            iconst_4
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 0 /* filter */
         3: .line 598
      StackMap locals:
      StackMap stack:
            aload 0 /* filter */
            areturn
        end local 0 // java.lang.String filter
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0  filter  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      filter  

  public static boolean isQuoted(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.String name
         0: .line 608
            aload 0 /* name */
            ifnull 4
            aload 0 /* name */
            invokevirtual java.lang.String.length:()I
            ifeq 4
         1: .line 609
            aload 0 /* name */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 96
            if_icmpne 2
            aload 0 /* name */
            aload 0 /* name */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.charAt:(I)C
            bipush 96
            if_icmpeq 3
         2: .line 610
      StackMap locals:
      StackMap stack:
            aload 0 /* name */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 34
            if_icmpne 4
            aload 0 /* name */
            aload 0 /* name */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.charAt:(I)C
            bipush 34
            if_icmpne 4
         3: .line 608
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         4: iconst_0
            ireturn
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public static java.lang.String quote(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // java.lang.String name
         0: .line 621
            aload 0 /* name */
            invokestatic org.hibernate.internal.util.StringHelper.isEmpty:(Ljava/lang/String;)Z
            ifne 1
            aload 0 /* name */
            invokestatic org.hibernate.internal.util.StringHelper.isQuoted:(Ljava/lang/String;)Z
            ifeq 2
         1: .line 622
      StackMap locals:
      StackMap stack:
            aload 0 /* name */
            areturn
         2: .line 625
      StackMap locals:
      StackMap stack:
            aload 0 /* name */
            ldc "\""
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 4
            aload 0 /* name */
            ldc "\""
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 4
         3: .line 626
            aload 0 /* name */
            iconst_1
            aload 0 /* name */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 0 /* name */
         4: .line 629
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 0 /* name */
            invokevirtual java.lang.String.length:()I
            iconst_2
            iadd
            invokespecial java.lang.StringBuilder.<init>:(I)V
            bipush 96
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 0 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 96
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public static java.lang.String unquote(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // java.lang.String name
         0: .line 639
            aload 0 /* name */
            invokestatic org.hibernate.internal.util.StringHelper.isQuoted:(Ljava/lang/String;)Z
            ifeq 1
            aload 0 /* name */
            iconst_1
            aload 0 /* name */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* name */
      StackMap locals:
      StackMap stack: java.lang.String
         2: areturn
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public static boolean isQuoted(java.lang.String, org.hibernate.dialect.Dialect);
    descriptor: (Ljava/lang/String;Lorg/hibernate/dialect/Dialect;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.String name
        start local 1 // org.hibernate.dialect.Dialect dialect
         0: .line 656
            aload 0 /* name */
            ifnull 6
            aload 0 /* name */
            invokevirtual java.lang.String.length:()I
            ifeq 6
         1: .line 657
            aload 0 /* name */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 96
            if_icmpne 2
            aload 0 /* name */
            aload 0 /* name */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.charAt:(I)C
            bipush 96
            if_icmpeq 5
         2: .line 658
      StackMap locals:
      StackMap stack:
            aload 0 /* name */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 34
            if_icmpne 3
            aload 0 /* name */
            aload 0 /* name */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.charAt:(I)C
            bipush 34
            if_icmpeq 5
         3: .line 659
      StackMap locals:
      StackMap stack:
            aload 0 /* name */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            aload 1 /* dialect */
            invokevirtual org.hibernate.dialect.Dialect.openQuote:()C
            if_icmpne 6
         4: .line 660
            aload 0 /* name */
            aload 0 /* name */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.charAt:(I)C
            aload 1 /* dialect */
            invokevirtual org.hibernate.dialect.Dialect.closeQuote:()C
            if_icmpne 6
         5: .line 656
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         6: iconst_0
            ireturn
        end local 1 // org.hibernate.dialect.Dialect dialect
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     name  Ljava/lang/String;
            0    7     1  dialect  Lorg/hibernate/dialect/Dialect;
    MethodParameters:
         Name  Flags
      name     
      dialect  

  public static java.lang.String unquote(java.lang.String, org.hibernate.dialect.Dialect);
    descriptor: (Ljava/lang/String;Lorg/hibernate/dialect/Dialect;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.String name
        start local 1 // org.hibernate.dialect.Dialect dialect
         0: .line 672
            aload 0 /* name */
            aload 1 /* dialect */
            invokestatic org.hibernate.internal.util.StringHelper.isQuoted:(Ljava/lang/String;Lorg/hibernate/dialect/Dialect;)Z
            ifeq 1
            aload 0 /* name */
            iconst_1
            aload 0 /* name */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* name */
      StackMap locals:
      StackMap stack: java.lang.String
         2: areturn
        end local 1 // org.hibernate.dialect.Dialect dialect
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     name  Ljava/lang/String;
            0    3     1  dialect  Lorg/hibernate/dialect/Dialect;
    MethodParameters:
         Name  Flags
      name     
      dialect  

  public static java.lang.String[] unquote(java.lang.String[], org.hibernate.dialect.Dialect);
    descriptor: ([Ljava/lang/String;Lorg/hibernate/dialect/Dialect;)[Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // java.lang.String[] names
        start local 1 // org.hibernate.dialect.Dialect dialect
         0: .line 684
            aload 0 /* names */
            ifnonnull 2
         1: .line 685
            aconst_null
            areturn
         2: .line 687
      StackMap locals:
      StackMap stack:
            aload 0 /* names */
            arraylength
            anewarray java.lang.String
            astore 2 /* unquoted */
        start local 2 // java.lang.String[] unquoted
         3: .line 688
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         4: goto 7
         5: .line 689
      StackMap locals: java.lang.String[] int
      StackMap stack:
            aload 2 /* unquoted */
            iload 3 /* i */
            aload 0 /* names */
            iload 3 /* i */
            aaload
            aload 1 /* dialect */
            invokestatic org.hibernate.internal.util.StringHelper.unquote:(Ljava/lang/String;Lorg/hibernate/dialect/Dialect;)Ljava/lang/String;
            aastore
         6: .line 688
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 3 /* i */
            aload 0 /* names */
            arraylength
            if_icmplt 5
        end local 3 // int i
         8: .line 691
            aload 2 /* unquoted */
            areturn
        end local 2 // java.lang.String[] unquoted
        end local 1 // org.hibernate.dialect.Dialect dialect
        end local 0 // java.lang.String[] names
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0     names  [Ljava/lang/String;
            0    9     1   dialect  Lorg/hibernate/dialect/Dialect;
            3    9     2  unquoted  [Ljava/lang/String;
            4    8     3         i  I
    MethodParameters:
         Name  Flags
      names    
      dialect  

  public static java.lang.StringBuilder buildBatchFetchRestrictionFragment(java.lang.String, java.lang.String[], org.hibernate.dialect.Dialect);
    descriptor: (Ljava/lang/String;[Ljava/lang/String;Lorg/hibernate/dialect/Dialect;)Ljava/lang/StringBuilder;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=10, args_size=3
        start local 0 // java.lang.String alias
        start local 1 // java.lang.String[] columnNames
        start local 2 // org.hibernate.dialect.Dialect dialect
         0: .line 702
            aload 1 /* columnNames */
            arraylength
            iconst_1
            if_icmpne 4
         1: .line 704
            new java.lang.StringBuilder
            dup
            aload 0 /* alias */
            aload 1 /* columnNames */
            iconst_0
            aaload
            invokestatic org.hibernate.internal.util.StringHelper.qualify:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         2: .line 705
            ldc " in ("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "$$BATCH_ID_PLACEHOLDER$$"
            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 704
            areturn
         4: .line 709
      StackMap locals:
      StackMap stack:
            aload 2 /* dialect */
            invokevirtual org.hibernate.dialect.Dialect.supportsRowValueConstructorSyntaxInInList:()Z
            ifeq 21
         5: .line 711
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 3 /* builder */
        start local 3 // java.lang.StringBuilder builder
         6: .line 712
            aload 3 /* builder */
            ldc "("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         7: .line 713
            iconst_1
            istore 4 /* firstPass */
        start local 4 // boolean firstPass
         8: .line 714
            ldc ""
            astore 5 /* deliminator */
        start local 5 // java.lang.String deliminator
         9: .line 715
            aload 1 /* columnNames */
            dup
            astore 9
            arraylength
            istore 8
            iconst_0
            istore 7
            goto 16
      StackMap locals: java.lang.String java.lang.String[] org.hibernate.dialect.Dialect java.lang.StringBuilder int java.lang.String top int int java.lang.String[]
      StackMap stack:
        10: aload 9
            iload 7
            aaload
            astore 6 /* columnName */
        start local 6 // java.lang.String columnName
        11: .line 716
            aload 3 /* builder */
            aload 5 /* deliminator */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* alias */
            aload 6 /* columnName */
            invokestatic org.hibernate.internal.util.StringHelper.qualify:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        12: .line 717
            iload 4 /* firstPass */
            ifeq 15
        13: .line 718
            iconst_0
            istore 4 /* firstPass */
        14: .line 719
            ldc ","
            astore 5 /* deliminator */
        end local 6 // java.lang.String columnName
        15: .line 715
      StackMap locals:
      StackMap stack:
            iinc 7 1
      StackMap locals:
      StackMap stack:
        16: iload 7
            iload 8
            if_icmplt 10
        17: .line 722
            aload 3 /* builder */
            ldc ") in ("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        18: .line 723
            aload 3 /* builder */
            ldc "$$BATCH_ID_PLACEHOLDER$$"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        19: .line 724
            aload 3 /* builder */
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        20: .line 725
            aload 3 /* builder */
            areturn
        end local 5 // java.lang.String deliminator
        end local 4 // boolean firstPass
        end local 3 // java.lang.StringBuilder builder
        21: .line 731
      StackMap locals: java.lang.String java.lang.String[] org.hibernate.dialect.Dialect
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "$$BATCH_ID_PLACEHOLDER$$"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            areturn
        end local 2 // org.hibernate.dialect.Dialect dialect
        end local 1 // java.lang.String[] columnNames
        end local 0 // java.lang.String alias
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   22     0        alias  Ljava/lang/String;
            0   22     1  columnNames  [Ljava/lang/String;
            0   22     2      dialect  Lorg/hibernate/dialect/Dialect;
            6   21     3      builder  Ljava/lang/StringBuilder;
            8   21     4    firstPass  Z
            9   21     5  deliminator  Ljava/lang/String;
           11   15     6   columnName  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      alias        
      columnNames  
      dialect      

  public static java.lang.String expandBatchIdPlaceholder(java.lang.String, java.io.Serializable[], java.lang.String, java.lang.String[], org.hibernate.dialect.Dialect);
    descriptor: (Ljava/lang/String;[Ljava/io/Serializable;Ljava/lang/String;[Ljava/lang/String;Lorg/hibernate/dialect/Dialect;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // java.lang.String sql
        start local 1 // java.io.Serializable[] ids
        start local 2 // java.lang.String alias
        start local 3 // java.lang.String[] keyColumnNames
        start local 4 // org.hibernate.dialect.Dialect dialect
         0: .line 742
            aload 3 /* keyColumnNames */
            arraylength
            iconst_1
            if_icmpne 2
         1: .line 744
            aload 0 /* sql */
            ldc "$$BATCH_ID_PLACEHOLDER$$"
            ldc "?"
            aload 1 /* ids */
            arraylength
            ldc ","
            invokestatic org.hibernate.internal.util.StringHelper.repeat:(Ljava/lang/String;ILjava/lang/String;)Ljava/lang/String;
            invokestatic org.hibernate.internal.util.StringHelper.replace:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            areturn
         2: .line 748
      StackMap locals:
      StackMap stack:
            aload 4 /* dialect */
            invokevirtual org.hibernate.dialect.Dialect.supportsRowValueConstructorSyntaxInInList:()Z
            ifeq 5
         3: .line 749
            new java.lang.StringBuilder
            dup
            ldc "("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "?"
            aload 3 /* keyColumnNames */
            arraylength
            ldc ","
            invokestatic org.hibernate.internal.util.StringHelper.repeat:(Ljava/lang/String;ILjava/lang/String;)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;
            astore 5 /* tuple */
        start local 5 // java.lang.String tuple
         4: .line 750
            aload 0 /* sql */
            ldc "$$BATCH_ID_PLACEHOLDER$$"
            aload 5 /* tuple */
            aload 1 /* ids */
            arraylength
            ldc ","
            invokestatic org.hibernate.internal.util.StringHelper.repeat:(Ljava/lang/String;ILjava/lang/String;)Ljava/lang/String;
            invokestatic org.hibernate.internal.util.StringHelper.replace:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 5 // java.lang.String tuple
         5: .line 753
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* keyColumnNames */
            aload 2 /* alias */
            ldc " = ?"
            ldc " and "
            invokestatic org.hibernate.internal.util.StringHelper.joinWithQualifierAndSuffix:([Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)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;
            astore 5 /* keyCheck */
        start local 5 // java.lang.String keyCheck
         6: .line 754
            aload 0 /* sql */
            ldc "$$BATCH_ID_PLACEHOLDER$$"
            aload 5 /* keyCheck */
            aload 1 /* ids */
            arraylength
            ldc " or "
            invokestatic org.hibernate.internal.util.StringHelper.repeat:(Ljava/lang/String;ILjava/lang/String;)Ljava/lang/String;
            invokestatic org.hibernate.internal.util.StringHelper.replace:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 5 // java.lang.String keyCheck
        end local 4 // org.hibernate.dialect.Dialect dialect
        end local 3 // java.lang.String[] keyColumnNames
        end local 2 // java.lang.String alias
        end local 1 // java.io.Serializable[] ids
        end local 0 // java.lang.String sql
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    7     0             sql  Ljava/lang/String;
            0    7     1             ids  [Ljava/io/Serializable;
            0    7     2           alias  Ljava/lang/String;
            0    7     3  keyColumnNames  [Ljava/lang/String;
            0    7     4         dialect  Lorg/hibernate/dialect/Dialect;
            4    5     5           tuple  Ljava/lang/String;
            6    7     5        keyCheck  Ljava/lang/String;
    MethodParameters:
                Name  Flags
      sql             
      ids             
      alias           
      keyColumnNames  
      dialect         

  public static java.lang.String[] toArrayElement(java.lang.String);
    descriptor: (Ljava/lang/String;)[Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 767
            aload 0 /* s */
            ifnull 1
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            ifne 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
            anewarray java.lang.String
            goto 3
      StackMap locals:
      StackMap stack:
         2: iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 0 /* s */
            aastore
      StackMap locals:
      StackMap stack: java.lang.String[]
         3: areturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     
}
SourceFile: "StringHelper.java"