public final class sun.text.normalizer.Utility
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: sun.text.normalizer.Utility
  super_class: java.lang.Object
{
  private static final char[] UNESCAPE_MAP;
    descriptor: [C
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static final char[] DIGITS;
    descriptor: [C
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 68
            bipush 16
            newarray 5
            dup
            iconst_0
         1: .line 73
            bipush 97
            castore
            dup
            iconst_1
            bipush 7
            castore
            dup
            iconst_2
         2: .line 74
            bipush 98
            castore
            dup
            iconst_3
            bipush 8
            castore
            dup
            iconst_4
         3: .line 75
            bipush 101
            castore
            dup
            iconst_5
            bipush 27
            castore
            dup
            bipush 6
         4: .line 76
            bipush 102
            castore
            dup
            bipush 7
            bipush 12
            castore
            dup
            bipush 8
         5: .line 77
            bipush 110
            castore
            dup
            bipush 9
            bipush 10
            castore
            dup
            bipush 10
         6: .line 78
            bipush 114
            castore
            dup
            bipush 11
            bipush 13
            castore
            dup
            bipush 12
         7: .line 79
            bipush 116
            castore
            dup
            bipush 13
            bipush 9
            castore
            dup
            bipush 14
         8: .line 80
            bipush 118
            castore
            dup
            bipush 15
            bipush 11
            castore
         9: .line 68
            putstatic sun.text.normalizer.Utility.UNESCAPE_MAP:[C
        10: .line 247
            bipush 36
            newarray 5
            dup
            iconst_0
        11: .line 248
            bipush 48
            castore
            dup
            iconst_1
            bipush 49
            castore
            dup
            iconst_2
            bipush 50
            castore
            dup
            iconst_3
            bipush 51
            castore
            dup
            iconst_4
            bipush 52
            castore
            dup
            iconst_5
            bipush 53
            castore
            dup
            bipush 6
            bipush 54
            castore
            dup
            bipush 7
            bipush 55
            castore
            dup
            bipush 8
            bipush 56
            castore
            dup
            bipush 9
            bipush 57
            castore
            dup
            bipush 10
        12: .line 249
            bipush 65
            castore
            dup
            bipush 11
            bipush 66
            castore
            dup
            bipush 12
            bipush 67
            castore
            dup
            bipush 13
            bipush 68
            castore
            dup
            bipush 14
            bipush 69
            castore
            dup
            bipush 15
            bipush 70
            castore
            dup
            bipush 16
            bipush 71
            castore
            dup
            bipush 17
            bipush 72
            castore
            dup
            bipush 18
            bipush 73
            castore
            dup
            bipush 19
            bipush 74
            castore
            dup
            bipush 20
        13: .line 250
            bipush 75
            castore
            dup
            bipush 21
            bipush 76
            castore
            dup
            bipush 22
            bipush 77
            castore
            dup
            bipush 23
            bipush 78
            castore
            dup
            bipush 24
            bipush 79
            castore
            dup
            bipush 25
            bipush 80
            castore
            dup
            bipush 26
            bipush 81
            castore
            dup
            bipush 27
            bipush 82
            castore
            dup
            bipush 28
            bipush 83
            castore
            dup
            bipush 29
            bipush 84
            castore
            dup
            bipush 30
        14: .line 251
            bipush 85
            castore
            dup
            bipush 31
            bipush 86
            castore
            dup
            bipush 32
            bipush 87
            castore
            dup
            bipush 33
            bipush 88
            castore
            dup
            bipush 34
            bipush 89
            castore
            dup
            bipush 35
            bipush 90
            castore
        15: .line 247
            putstatic sun.text.normalizer.Utility.DIGITS:[C
        16: .line 252
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.text.normalizer.Utility this
         0: .line 41
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // sun.text.normalizer.Utility this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/text/normalizer/Utility;

  public static final java.lang.String escape(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // java.lang.String s
         0: .line 48
            new java.lang.StringBuffer
            dup
            invokespecial java.lang.StringBuffer.<init>:()V
            astore 1 /* buf */
        start local 1 // java.lang.StringBuffer buf
         1: .line 49
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 20
         3: .line 50
      StackMap locals: java.lang.StringBuffer int
      StackMap stack:
            aload 0 /* s */
            iload 2 /* i */
            invokestatic sun.text.normalizer.UTF16.charAt:(Ljava/lang/String;I)I
            istore 3 /* c */
        start local 3 // int c
         4: .line 51
            iload 2 /* i */
            iload 3 /* c */
            invokestatic sun.text.normalizer.UTF16.getCharCount:(I)I
            iadd
            istore 2 /* i */
         5: .line 52
            iload 3 /* c */
            bipush 32
            if_icmplt 11
            iload 3 /* c */
            bipush 127
            if_icmpgt 11
         6: .line 53
            iload 3 /* c */
            bipush 92
            if_icmpne 9
         7: .line 54
            aload 1 /* buf */
            ldc "\\\\"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         8: .line 55
            goto 20
         9: .line 56
      StackMap locals: int
      StackMap stack:
            aload 1 /* buf */
            iload 3 /* c */
            i2c
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        10: .line 58
            goto 20
        11: .line 59
      StackMap locals:
      StackMap stack:
            iload 3 /* c */
            ldc 65535
            if_icmpgt 12
            iconst_1
            goto 13
      StackMap locals:
      StackMap stack:
        12: iconst_0
      StackMap locals:
      StackMap stack: int
        13: istore 4 /* four */
        start local 4 // boolean four
        14: .line 60
            aload 1 /* buf */
            iload 4 /* four */
            ifeq 15
            ldc "\\u"
            goto 16
      StackMap locals: java.lang.String java.lang.StringBuffer int int int
      StackMap stack: java.lang.StringBuffer
        15: ldc "\\U"
      StackMap locals: java.lang.String java.lang.StringBuffer int int int
      StackMap stack: java.lang.StringBuffer java.lang.String
        16: invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        17: .line 61
            iload 3 /* c */
            iload 4 /* four */
            ifeq 18
            iconst_4
            goto 19
      StackMap locals:
      StackMap stack: int
        18: bipush 8
      StackMap locals: java.lang.String java.lang.StringBuffer int int int
      StackMap stack: int int
        19: aload 1 /* buf */
            invokestatic sun.text.normalizer.Utility.hex:(IILjava/lang/StringBuffer;)Ljava/lang/StringBuffer;
            pop
        end local 4 // boolean four
        end local 3 // int c
        20: .line 49
      StackMap locals:
      StackMap stack:
            iload 2 /* i */
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            if_icmplt 3
        end local 2 // int i
        21: .line 64
            aload 1 /* buf */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuffer buf
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   22     0     s  Ljava/lang/String;
            1   22     1   buf  Ljava/lang/StringBuffer;
            2   21     2     i  I
            4   20     3     c  I
           14   20     4  four  Z
    MethodParameters:
      Name  Flags
      s     

  public static int unescapeAt(java.lang.String, int[]);
    descriptor: (Ljava/lang/String;[I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=15, args_size=2
        start local 0 // java.lang.String s
        start local 1 // int[] offset16
         0: .line 93
            iconst_0
            istore 3 /* result */
        start local 3 // int result
         1: .line 94
            iconst_0
            istore 4 /* n */
        start local 4 // int n
         2: .line 95
            iconst_0
            istore 5 /* minDig */
        start local 5 // int minDig
         3: .line 96
            iconst_0
            istore 6 /* maxDig */
        start local 6 // int maxDig
         4: .line 97
            iconst_4
            istore 7 /* bitsPerDigit */
        start local 7 // int bitsPerDigit
         5: .line 100
            iconst_0
            istore 10 /* braces */
        start local 10 // boolean braces
         6: .line 103
            aload 1 /* offset16 */
            iconst_0
            iaload
            istore 11 /* offset */
        start local 11 // int offset
         7: .line 104
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            istore 12 /* length */
        start local 12 // int length
         8: .line 105
            iload 11 /* offset */
            iflt 9
            iload 11 /* offset */
            iload 12 /* length */
            if_icmplt 10
         9: .line 106
      StackMap locals: java.lang.String int[] top int int int int int top top int int int
      StackMap stack:
            iconst_m1
            ireturn
        10: .line 110
      StackMap locals:
      StackMap stack:
            aload 0 /* s */
            iload 11 /* offset */
            invokestatic sun.text.normalizer.UTF16.charAt:(Ljava/lang/String;I)I
            istore 2 /* c */
        start local 2 // int c
        11: .line 111
            iload 11 /* offset */
            iload 2 /* c */
            invokestatic sun.text.normalizer.UTF16.getCharCount:(I)I
            iadd
            istore 11 /* offset */
        12: .line 114
            iload 2 /* c */
            lookupswitch { // 3
                   85: 15
                  117: 13
                  120: 17
              default: 25
          }
        13: .line 116
      StackMap locals: java.lang.String int[] int int int int int int top top int int int
      StackMap stack:
            iconst_4
            dup
            istore 6 /* maxDig */
            istore 5 /* minDig */
        14: .line 117
            goto 32
        15: .line 119
      StackMap locals:
      StackMap stack:
            bipush 8
            dup
            istore 6 /* maxDig */
            istore 5 /* minDig */
        16: .line 120
            goto 32
        17: .line 122
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 5 /* minDig */
        18: .line 123
            iload 11 /* offset */
            iload 12 /* length */
            if_icmpge 23
            aload 0 /* s */
            iload 11 /* offset */
            invokestatic sun.text.normalizer.UTF16.charAt:(Ljava/lang/String;I)I
            bipush 123
            if_icmpne 23
        19: .line 124
            iinc 11 /* offset */ 1
        20: .line 125
            iconst_1
            istore 10 /* braces */
        21: .line 126
            bipush 8
            istore 6 /* maxDig */
        22: .line 127
            goto 32
        23: .line 128
      StackMap locals:
      StackMap stack:
            iconst_2
            istore 6 /* maxDig */
        24: .line 130
            goto 32
        25: .line 132
      StackMap locals:
      StackMap stack:
            iload 2 /* c */
            bipush 8
            invokestatic sun.text.normalizer.UCharacter.digit:(II)I
            istore 8 /* dig */
        start local 8 // int dig
        26: .line 133
            iload 8 /* dig */
            iflt 32
        27: .line 134
            iconst_1
            istore 5 /* minDig */
        28: .line 135
            iconst_3
            istore 6 /* maxDig */
        29: .line 136
            iconst_1
            istore 4 /* n */
        30: .line 137
            iconst_3
            istore 7 /* bitsPerDigit */
        31: .line 138
            iload 8 /* dig */
            istore 3 /* result */
        end local 8 // int dig
        32: .line 142
      StackMap locals:
      StackMap stack:
            iload 5 /* minDig */
            ifeq 66
        33: .line 143
            goto 43
        34: .line 144
      StackMap locals:
      StackMap stack:
            aload 0 /* s */
            iload 11 /* offset */
            invokestatic sun.text.normalizer.UTF16.charAt:(Ljava/lang/String;I)I
            istore 2 /* c */
        35: .line 145
            iload 2 /* c */
            iload 7 /* bitsPerDigit */
            iconst_3
            if_icmpne 36
            bipush 8
            goto 37
      StackMap locals:
      StackMap stack: int
        36: bipush 16
      StackMap locals: java.lang.String int[] int int int int int int top top int int int
      StackMap stack: int int
        37: invokestatic sun.text.normalizer.UCharacter.digit:(II)I
            istore 8 /* dig */
        start local 8 // int dig
        38: .line 146
            iload 8 /* dig */
            ifge 40
        39: .line 147
            goto 44
        40: .line 149
      StackMap locals: java.lang.String int[] int int int int int int int top int int int
      StackMap stack:
            iload 3 /* result */
            iload 7 /* bitsPerDigit */
            ishl
            iload 8 /* dig */
            ior
            istore 3 /* result */
        41: .line 150
            iload 11 /* offset */
            iload 2 /* c */
            invokestatic sun.text.normalizer.UTF16.getCharCount:(I)I
            iadd
            istore 11 /* offset */
        42: .line 151
            iinc 4 /* n */ 1
        end local 8 // int dig
        43: .line 143
      StackMap locals: java.lang.String int[] int int int int int int top top int int int
      StackMap stack:
            iload 11 /* offset */
            iload 12 /* length */
            if_icmpge 44
            iload 4 /* n */
            iload 6 /* maxDig */
            if_icmplt 34
        44: .line 153
      StackMap locals:
      StackMap stack:
            iload 4 /* n */
            iload 5 /* minDig */
            if_icmpge 46
        45: .line 154
            iconst_m1
            ireturn
        46: .line 156
      StackMap locals:
      StackMap stack:
            iload 10 /* braces */
            ifeq 50
        47: .line 157
            iload 2 /* c */
            bipush 125
            if_icmpeq 49
        48: .line 158
            iconst_m1
            ireturn
        49: .line 160
      StackMap locals:
      StackMap stack:
            iinc 11 /* offset */ 1
        50: .line 162
      StackMap locals:
      StackMap stack:
            iload 3 /* result */
            iflt 51
            iload 3 /* result */
            ldc 1114112
            if_icmplt 52
        51: .line 163
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
        52: .line 169
      StackMap locals:
      StackMap stack:
            iload 11 /* offset */
            iload 12 /* length */
            if_icmpge 64
        53: .line 170
            iload 3 /* result */
            i2c
            invokestatic sun.text.normalizer.UTF16.isLeadSurrogate:(C)Z
            ifeq 64
        54: .line 171
            iload 11 /* offset */
            iconst_1
            iadd
            istore 13 /* ahead */
        start local 13 // int ahead
        55: .line 172
            aload 0 /* s */
            iload 11 /* offset */
            invokevirtual java.lang.String.charAt:(I)C
            istore 2 /* c */
        56: .line 173
            iload 2 /* c */
            bipush 92
            if_icmpne 60
            iload 13 /* ahead */
            iload 12 /* length */
            if_icmpge 60
        57: .line 174
            iconst_1
            newarray 10
            dup
            iconst_0
            iload 13 /* ahead */
            iastore
            astore 14 /* o */
        start local 14 // int[] o
        58: .line 175
            aload 0 /* s */
            aload 14 /* o */
            invokestatic sun.text.normalizer.Utility.unescapeAt:(Ljava/lang/String;[I)I
            istore 2 /* c */
        59: .line 176
            aload 14 /* o */
            iconst_0
            iaload
            istore 13 /* ahead */
        end local 14 // int[] o
        60: .line 178
      StackMap locals: int
      StackMap stack:
            iload 2 /* c */
            i2c
            invokestatic sun.text.normalizer.UTF16.isTrailSurrogate:(C)Z
            ifeq 64
        61: .line 179
            iload 13 /* ahead */
            istore 11 /* offset */
        62: .line 181
            iload 3 /* result */
            i2c
            iload 2 /* c */
            i2c
        63: .line 180
            invokestatic sun.text.normalizer.UCharacterProperty.getRawSupplementary:(CC)I
            istore 3 /* result */
        end local 13 // int ahead
        64: .line 184
      StackMap locals:
      StackMap stack:
            aload 1 /* offset16 */
            iconst_0
            iload 11 /* offset */
            iastore
        65: .line 185
            iload 3 /* result */
            ireturn
        66: .line 189
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        67: goto 74
        68: .line 190
      StackMap locals: java.lang.String int[] int int int int int int top int int int int
      StackMap stack:
            iload 2 /* c */
            getstatic sun.text.normalizer.Utility.UNESCAPE_MAP:[C
            iload 9 /* i */
            caload
            if_icmpne 71
        69: .line 191
            aload 1 /* offset16 */
            iconst_0
            iload 11 /* offset */
            iastore
        70: .line 192
            getstatic sun.text.normalizer.Utility.UNESCAPE_MAP:[C
            iload 9 /* i */
            iconst_1
            iadd
            caload
            ireturn
        71: .line 193
      StackMap locals:
      StackMap stack:
            iload 2 /* c */
            getstatic sun.text.normalizer.Utility.UNESCAPE_MAP:[C
            iload 9 /* i */
            caload
            if_icmpge 73
        72: .line 194
            goto 75
        73: .line 189
      StackMap locals:
      StackMap stack:
            iinc 9 /* i */ 2
      StackMap locals:
      StackMap stack:
        74: iload 9 /* i */
            getstatic sun.text.normalizer.Utility.UNESCAPE_MAP:[C
            arraylength
            if_icmplt 68
        75: .line 199
      StackMap locals:
      StackMap stack:
            iload 2 /* c */
            bipush 99
            if_icmpne 79
            iload 11 /* offset */
            iload 12 /* length */
            if_icmpge 79
        76: .line 200
            aload 0 /* s */
            iload 11 /* offset */
            invokestatic sun.text.normalizer.UTF16.charAt:(Ljava/lang/String;I)I
            istore 2 /* c */
        77: .line 201
            aload 1 /* offset16 */
            iconst_0
            iload 11 /* offset */
            iload 2 /* c */
            invokestatic sun.text.normalizer.UTF16.getCharCount:(I)I
            iadd
            iastore
        78: .line 202
            bipush 31
            iload 2 /* c */
            iand
            ireturn
        79: .line 207
      StackMap locals:
      StackMap stack:
            aload 1 /* offset16 */
            iconst_0
            iload 11 /* offset */
            iastore
        80: .line 208
            iload 2 /* c */
            ireturn
        end local 12 // int length
        end local 11 // int offset
        end local 10 // boolean braces
        end local 9 // int i
        end local 7 // int bitsPerDigit
        end local 6 // int maxDig
        end local 5 // int minDig
        end local 4 // int n
        end local 3 // int result
        end local 2 // int c
        end local 1 // int[] offset16
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   81     0             s  Ljava/lang/String;
            0   81     1      offset16  [I
           11   81     2             c  I
            1   81     3        result  I
            2   81     4             n  I
            3   81     5        minDig  I
            4   81     6        maxDig  I
            5   81     7  bitsPerDigit  I
           26   32     8           dig  I
           38   43     8           dig  I
           67   81     9             i  I
            6   81    10        braces  Z
            7   81    11        offset  I
            8   81    12        length  I
           55   64    13         ahead  I
           58   60    14             o  [I
    MethodParameters:
          Name  Flags
      s         
      offset16  

  public static java.lang.StringBuffer hex(int, int, java.lang.StringBuffer);
    descriptor: (IILjava/lang/StringBuffer;)Ljava/lang/StringBuffer;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // int ch
        start local 1 // int width
        start local 2 // java.lang.StringBuffer output
         0: .line 218
            aload 2 /* output */
            iload 0 /* ch */
            bipush 16
            iload 1 /* width */
            invokestatic sun.text.normalizer.Utility.appendNumber:(Ljava/lang/StringBuffer;III)Ljava/lang/StringBuffer;
            areturn
        end local 2 // java.lang.StringBuffer output
        end local 1 // int width
        end local 0 // int ch
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0      ch  I
            0    1     1   width  I
            0    1     2  output  Ljava/lang/StringBuffer;
    MethodParameters:
        Name  Flags
      ch      
      width   
      output  

  public static java.lang.String hex(int, int);
    descriptor: (II)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // int ch
        start local 1 // int width
         0: .line 227
            new java.lang.StringBuffer
            dup
            invokespecial java.lang.StringBuffer.<init>:()V
            astore 2 /* buf */
        start local 2 // java.lang.StringBuffer buf
         1: .line 228
            aload 2 /* buf */
            iload 0 /* ch */
            bipush 16
            iload 1 /* width */
            invokestatic sun.text.normalizer.Utility.appendNumber:(Ljava/lang/StringBuffer;III)Ljava/lang/StringBuffer;
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.StringBuffer buf
        end local 1 // int width
        end local 0 // int ch
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0     ch  I
            0    2     1  width  I
            1    2     2    buf  Ljava/lang/StringBuffer;
    MethodParameters:
       Name  Flags
      ch     
      width  

  public static int skipWhitespace(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.lang.String str
        start local 1 // int pos
         0: .line 237
            goto 5
         1: .line 238
      StackMap locals:
      StackMap stack:
            aload 0 /* str */
            iload 1 /* pos */
            invokestatic sun.text.normalizer.UTF16.charAt:(Ljava/lang/String;I)I
            istore 2 /* c */
        start local 2 // int c
         2: .line 239
            iload 2 /* c */
            invokestatic sun.text.normalizer.UCharacterProperty.isRuleWhiteSpace:(I)Z
            ifne 4
         3: .line 240
            goto 6
         4: .line 242
      StackMap locals: int
      StackMap stack:
            iload 1 /* pos */
            iload 2 /* c */
            invokestatic sun.text.normalizer.UTF16.getCharCount:(I)I
            iadd
            istore 1 /* pos */
        end local 2 // int c
         5: .line 237
      StackMap locals:
      StackMap stack:
            iload 1 /* pos */
            aload 0 /* str */
            invokevirtual java.lang.String.length:()I
            if_icmplt 1
         6: .line 244
      StackMap locals:
      StackMap stack:
            iload 1 /* pos */
            ireturn
        end local 1 // int pos
        end local 0 // java.lang.String str
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0   str  Ljava/lang/String;
            0    7     1   pos  I
            2    5     2     c  I
    MethodParameters:
      Name  Flags
      str   
      pos   

  private static void recursiveAppendNumber(java.lang.StringBuffer, int, int, int);
    descriptor: (Ljava/lang/StringBuffer;III)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // java.lang.StringBuffer result
        start local 1 // int n
        start local 2 // int radix
        start local 3 // int minDigits
         0: .line 268
            iload 1 /* n */
            iload 2 /* radix */
            irem
            istore 4 /* digit */
        start local 4 // int digit
         1: .line 270
            iload 1 /* n */
            iload 2 /* radix */
            if_icmpge 2
            iload 3 /* minDigits */
            iconst_1
            if_icmple 3
         2: .line 271
      StackMap locals: int
      StackMap stack:
            aload 0 /* result */
            iload 1 /* n */
            iload 2 /* radix */
            idiv
            iload 2 /* radix */
            iload 3 /* minDigits */
            iconst_1
            isub
            invokestatic sun.text.normalizer.Utility.recursiveAppendNumber:(Ljava/lang/StringBuffer;III)V
         3: .line 274
      StackMap locals:
      StackMap stack:
            aload 0 /* result */
            getstatic sun.text.normalizer.Utility.DIGITS:[C
            iload 4 /* digit */
            caload
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
         4: .line 275
            return
        end local 4 // int digit
        end local 3 // int minDigits
        end local 2 // int radix
        end local 1 // int n
        end local 0 // java.lang.StringBuffer result
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0     result  Ljava/lang/StringBuffer;
            0    5     1          n  I
            0    5     2      radix  I
            0    5     3  minDigits  I
            1    5     4      digit  I
    MethodParameters:
           Name  Flags
      result     
      n          
      radix      
      minDigits  

  public static java.lang.StringBuffer appendNumber(java.lang.StringBuffer, int, int, int);
    descriptor: (Ljava/lang/StringBuffer;III)Ljava/lang/StringBuffer;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // java.lang.StringBuffer result
        start local 1 // int n
        start local 2 // int radix
        start local 3 // int minDigits
         0: .line 294
            iload 2 /* radix */
            iconst_2
            if_icmplt 1
            iload 2 /* radix */
            bipush 36
            if_icmple 2
         1: .line 295
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Illegal radix "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* radix */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 299
      StackMap locals:
      StackMap stack:
            iload 1 /* n */
            istore 4 /* abs */
        start local 4 // int abs
         3: .line 301
            iload 1 /* n */
            ifge 6
         4: .line 302
            iload 1 /* n */
            ineg
            istore 4 /* abs */
         5: .line 303
            aload 0 /* result */
            ldc "-"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         6: .line 306
      StackMap locals: int
      StackMap stack:
            aload 0 /* result */
            iload 4 /* abs */
            iload 2 /* radix */
            iload 3 /* minDigits */
            invokestatic sun.text.normalizer.Utility.recursiveAppendNumber:(Ljava/lang/StringBuffer;III)V
         7: .line 308
            aload 0 /* result */
            areturn
        end local 4 // int abs
        end local 3 // int minDigits
        end local 2 // int radix
        end local 1 // int n
        end local 0 // java.lang.StringBuffer result
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0     result  Ljava/lang/StringBuffer;
            0    8     1          n  I
            0    8     2      radix  I
            0    8     3  minDigits  I
            3    8     4        abs  I
    Exceptions:
      throws java.lang.IllegalArgumentException
    MethodParameters:
           Name  Flags
      result     
      n          
      radix      
      minDigits  

  public static boolean isUnprintable(int);
    descriptor: (I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int c
         0: .line 316
            iload 0 /* c */
            bipush 32
            if_icmplt 1
            iload 0 /* c */
            bipush 126
            if_icmpgt 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // int c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     c  I
    MethodParameters:
      Name  Flags
      c     

  public static boolean escapeUnprintable(java.lang.StringBuffer, int);
    descriptor: (Ljava/lang/StringBuffer;I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.lang.StringBuffer result
        start local 1 // int c
         0: .line 327
            iload 1 /* c */
            invokestatic sun.text.normalizer.Utility.isUnprintable:(I)Z
            ifeq 15
         1: .line 328
            aload 0 /* result */
            bipush 92
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
         2: .line 329
            iload 1 /* c */
            ldc -65536
            iand
            ifeq 9
         3: .line 330
            aload 0 /* result */
            bipush 85
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
         4: .line 331
            aload 0 /* result */
            getstatic sun.text.normalizer.Utility.DIGITS:[C
            bipush 15
            iload 1 /* c */
            bipush 28
            ishr
            iand
            caload
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
         5: .line 332
            aload 0 /* result */
            getstatic sun.text.normalizer.Utility.DIGITS:[C
            bipush 15
            iload 1 /* c */
            bipush 24
            ishr
            iand
            caload
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
         6: .line 333
            aload 0 /* result */
            getstatic sun.text.normalizer.Utility.DIGITS:[C
            bipush 15
            iload 1 /* c */
            bipush 20
            ishr
            iand
            caload
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
         7: .line 334
            aload 0 /* result */
            getstatic sun.text.normalizer.Utility.DIGITS:[C
            bipush 15
            iload 1 /* c */
            bipush 16
            ishr
            iand
            caload
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
         8: .line 335
            goto 10
         9: .line 336
      StackMap locals:
      StackMap stack:
            aload 0 /* result */
            bipush 117
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        10: .line 338
      StackMap locals:
      StackMap stack:
            aload 0 /* result */
            getstatic sun.text.normalizer.Utility.DIGITS:[C
            bipush 15
            iload 1 /* c */
            bipush 12
            ishr
            iand
            caload
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        11: .line 339
            aload 0 /* result */
            getstatic sun.text.normalizer.Utility.DIGITS:[C
            bipush 15
            iload 1 /* c */
            bipush 8
            ishr
            iand
            caload
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        12: .line 340
            aload 0 /* result */
            getstatic sun.text.normalizer.Utility.DIGITS:[C
            bipush 15
            iload 1 /* c */
            iconst_4
            ishr
            iand
            caload
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        13: .line 341
            aload 0 /* result */
            getstatic sun.text.normalizer.Utility.DIGITS:[C
            bipush 15
            iload 1 /* c */
            iand
            caload
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        14: .line 342
            iconst_1
            ireturn
        15: .line 344
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // int c
        end local 0 // java.lang.StringBuffer result
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   16     0  result  Ljava/lang/StringBuffer;
            0   16     1       c  I
    MethodParameters:
        Name  Flags
      result  
      c       

  public static void getChars(java.lang.StringBuffer, int, int, char[], int);
    descriptor: (Ljava/lang/StringBuffer;II[CI)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // java.lang.StringBuffer src
        start local 1 // int srcBegin
        start local 2 // int srcEnd
        start local 3 // char[] dst
        start local 4 // int dstBegin
         0: .line 364
            iload 1 /* srcBegin */
            iload 2 /* srcEnd */
            if_icmpne 2
         1: .line 365
            return
         2: .line 367
      StackMap locals:
      StackMap stack:
            aload 0 /* src */
            iload 1 /* srcBegin */
            iload 2 /* srcEnd */
            aload 3 /* dst */
            iload 4 /* dstBegin */
            invokevirtual java.lang.StringBuffer.getChars:(II[CI)V
         3: .line 368
            return
        end local 4 // int dstBegin
        end local 3 // char[] dst
        end local 2 // int srcEnd
        end local 1 // int srcBegin
        end local 0 // java.lang.StringBuffer src
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0       src  Ljava/lang/StringBuffer;
            0    4     1  srcBegin  I
            0    4     2    srcEnd  I
            0    4     3       dst  [C
            0    4     4  dstBegin  I
    MethodParameters:
          Name  Flags
      src       
      srcBegin  
      srcEnd    
      dst       
      dstBegin  

  public static final boolean arrayRegionMatches(char[], int, char[], int, int);
    descriptor: ([CI[CII)Z
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=4, locals=8, args_size=5
        start local 0 // char[] source
        start local 1 // int sourceStart
        start local 2 // char[] target
        start local 3 // int targetStart
        start local 4 // int len
         0: .line 379
            iload 1 /* sourceStart */
            iload 4 /* len */
            iadd
            istore 5 /* sourceEnd */
        start local 5 // int sourceEnd
         1: .line 380
            iload 3 /* targetStart */
            iload 1 /* sourceStart */
            isub
            istore 6 /* delta */
        start local 6 // int delta
         2: .line 381
            iload 1 /* sourceStart */
            istore 7 /* i */
        start local 7 // int i
         3: goto 7
         4: .line 382
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* source */
            iload 7 /* i */
            caload
            aload 2 /* target */
            iload 7 /* i */
            iload 6 /* delta */
            iadd
            caload
            if_icmpeq 6
         5: .line 383
            iconst_0
            ireturn
         6: .line 381
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 7 /* i */
            iload 5 /* sourceEnd */
            if_icmplt 4
        end local 7 // int i
         8: .line 385
            iconst_1
            ireturn
        end local 6 // int delta
        end local 5 // int sourceEnd
        end local 4 // int len
        end local 3 // int targetStart
        end local 2 // char[] target
        end local 1 // int sourceStart
        end local 0 // char[] source
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0       source  [C
            0    9     1  sourceStart  I
            0    9     2       target  [C
            0    9     3  targetStart  I
            0    9     4          len  I
            1    9     5    sourceEnd  I
            2    9     6        delta  I
            3    8     7            i  I
    MethodParameters:
             Name  Flags
      source       
      sourceStart  
      target       
      targetStart  
      len          
}
SourceFile: "Utility.java"