public final class sun.net.idn.Punycode
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: sun.net.idn.Punycode
  super_class: java.lang.Object
{
  private static final int BASE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 36

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  private static final int UINT_MAGIC;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -2147483648

  private static final long ULONG_MAGIC;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -9223372036854775808

  static final int[] basicToDigit;
    descriptor: [I
    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 102
            sipush 256
            newarray 10
            dup
            iconst_0
         1: .line 103
            iconst_m1
            iastore
            dup
            iconst_1
            iconst_m1
            iastore
            dup
            iconst_2
            iconst_m1
            iastore
            dup
            iconst_3
            iconst_m1
            iastore
            dup
            iconst_4
            iconst_m1
            iastore
            dup
            iconst_5
            iconst_m1
            iastore
            dup
            bipush 6
            iconst_m1
            iastore
            dup
            bipush 7
            iconst_m1
            iastore
            dup
            bipush 8
            iconst_m1
            iastore
            dup
            bipush 9
            iconst_m1
            iastore
            dup
            bipush 10
            iconst_m1
            iastore
            dup
            bipush 11
            iconst_m1
            iastore
            dup
            bipush 12
            iconst_m1
            iastore
            dup
            bipush 13
            iconst_m1
            iastore
            dup
            bipush 14
            iconst_m1
            iastore
            dup
            bipush 15
            iconst_m1
            iastore
            dup
            bipush 16
         2: .line 104
            iconst_m1
            iastore
            dup
            bipush 17
            iconst_m1
            iastore
            dup
            bipush 18
            iconst_m1
            iastore
            dup
            bipush 19
            iconst_m1
            iastore
            dup
            bipush 20
            iconst_m1
            iastore
            dup
            bipush 21
            iconst_m1
            iastore
            dup
            bipush 22
            iconst_m1
            iastore
            dup
            bipush 23
            iconst_m1
            iastore
            dup
            bipush 24
            iconst_m1
            iastore
            dup
            bipush 25
            iconst_m1
            iastore
            dup
            bipush 26
            iconst_m1
            iastore
            dup
            bipush 27
            iconst_m1
            iastore
            dup
            bipush 28
            iconst_m1
            iastore
            dup
            bipush 29
            iconst_m1
            iastore
            dup
            bipush 30
            iconst_m1
            iastore
            dup
            bipush 31
            iconst_m1
            iastore
            dup
            bipush 32
         3: .line 106
            iconst_m1
            iastore
            dup
            bipush 33
            iconst_m1
            iastore
            dup
            bipush 34
            iconst_m1
            iastore
            dup
            bipush 35
            iconst_m1
            iastore
            dup
            bipush 36
            iconst_m1
            iastore
            dup
            bipush 37
            iconst_m1
            iastore
            dup
            bipush 38
            iconst_m1
            iastore
            dup
            bipush 39
            iconst_m1
            iastore
            dup
            bipush 40
            iconst_m1
            iastore
            dup
            bipush 41
            iconst_m1
            iastore
            dup
            bipush 42
            iconst_m1
            iastore
            dup
            bipush 43
            iconst_m1
            iastore
            dup
            bipush 44
            iconst_m1
            iastore
            dup
            bipush 45
            iconst_m1
            iastore
            dup
            bipush 46
            iconst_m1
            iastore
            dup
            bipush 47
            iconst_m1
            iastore
            dup
            bipush 48
         4: .line 107
            bipush 26
            iastore
            dup
            bipush 49
            bipush 27
            iastore
            dup
            bipush 50
            bipush 28
            iastore
            dup
            bipush 51
            bipush 29
            iastore
            dup
            bipush 52
            bipush 30
            iastore
            dup
            bipush 53
            bipush 31
            iastore
            dup
            bipush 54
            bipush 32
            iastore
            dup
            bipush 55
            bipush 33
            iastore
            dup
            bipush 56
            bipush 34
            iastore
            dup
            bipush 57
            bipush 35
            iastore
            dup
            bipush 58
            iconst_m1
            iastore
            dup
            bipush 59
            iconst_m1
            iastore
            dup
            bipush 60
            iconst_m1
            iastore
            dup
            bipush 61
            iconst_m1
            iastore
            dup
            bipush 62
            iconst_m1
            iastore
            dup
            bipush 63
            iconst_m1
            iastore
            dup
            bipush 64
         5: .line 109
            iconst_m1
            iastore
            dup
            bipush 66
            iconst_1
            iastore
            dup
            bipush 67
            iconst_2
            iastore
            dup
            bipush 68
            iconst_3
            iastore
            dup
            bipush 69
            iconst_4
            iastore
            dup
            bipush 70
            iconst_5
            iastore
            dup
            bipush 71
            bipush 6
            iastore
            dup
            bipush 72
            bipush 7
            iastore
            dup
            bipush 73
            bipush 8
            iastore
            dup
            bipush 74
            bipush 9
            iastore
            dup
            bipush 75
            bipush 10
            iastore
            dup
            bipush 76
            bipush 11
            iastore
            dup
            bipush 77
            bipush 12
            iastore
            dup
            bipush 78
            bipush 13
            iastore
            dup
            bipush 79
            bipush 14
            iastore
            dup
            bipush 80
         6: .line 110
            bipush 15
            iastore
            dup
            bipush 81
            bipush 16
            iastore
            dup
            bipush 82
            bipush 17
            iastore
            dup
            bipush 83
            bipush 18
            iastore
            dup
            bipush 84
            bipush 19
            iastore
            dup
            bipush 85
            bipush 20
            iastore
            dup
            bipush 86
            bipush 21
            iastore
            dup
            bipush 87
            bipush 22
            iastore
            dup
            bipush 88
            bipush 23
            iastore
            dup
            bipush 89
            bipush 24
            iastore
            dup
            bipush 90
            bipush 25
            iastore
            dup
            bipush 91
            iconst_m1
            iastore
            dup
            bipush 92
            iconst_m1
            iastore
            dup
            bipush 93
            iconst_m1
            iastore
            dup
            bipush 94
            iconst_m1
            iastore
            dup
            bipush 95
            iconst_m1
            iastore
            dup
            bipush 96
         7: .line 112
            iconst_m1
            iastore
            dup
            bipush 98
            iconst_1
            iastore
            dup
            bipush 99
            iconst_2
            iastore
            dup
            bipush 100
            iconst_3
            iastore
            dup
            bipush 101
            iconst_4
            iastore
            dup
            bipush 102
            iconst_5
            iastore
            dup
            bipush 103
            bipush 6
            iastore
            dup
            bipush 104
            bipush 7
            iastore
            dup
            bipush 105
            bipush 8
            iastore
            dup
            bipush 106
            bipush 9
            iastore
            dup
            bipush 107
            bipush 10
            iastore
            dup
            bipush 108
            bipush 11
            iastore
            dup
            bipush 109
            bipush 12
            iastore
            dup
            bipush 110
            bipush 13
            iastore
            dup
            bipush 111
            bipush 14
            iastore
            dup
            bipush 112
         8: .line 113
            bipush 15
            iastore
            dup
            bipush 113
            bipush 16
            iastore
            dup
            bipush 114
            bipush 17
            iastore
            dup
            bipush 115
            bipush 18
            iastore
            dup
            bipush 116
            bipush 19
            iastore
            dup
            bipush 117
            bipush 20
            iastore
            dup
            bipush 118
            bipush 21
            iastore
            dup
            bipush 119
            bipush 22
            iastore
            dup
            bipush 120
            bipush 23
            iastore
            dup
            bipush 121
            bipush 24
            iastore
            dup
            bipush 122
            bipush 25
            iastore
            dup
            bipush 123
            iconst_m1
            iastore
            dup
            bipush 124
            iconst_m1
            iastore
            dup
            bipush 125
            iconst_m1
            iastore
            dup
            bipush 126
            iconst_m1
            iastore
            dup
            bipush 127
            iconst_m1
            iastore
            dup
            sipush 128
         9: .line 115
            iconst_m1
            iastore
            dup
            sipush 129
            iconst_m1
            iastore
            dup
            sipush 130
            iconst_m1
            iastore
            dup
            sipush 131
            iconst_m1
            iastore
            dup
            sipush 132
            iconst_m1
            iastore
            dup
            sipush 133
            iconst_m1
            iastore
            dup
            sipush 134
            iconst_m1
            iastore
            dup
            sipush 135
            iconst_m1
            iastore
            dup
            sipush 136
            iconst_m1
            iastore
            dup
            sipush 137
            iconst_m1
            iastore
            dup
            sipush 138
            iconst_m1
            iastore
            dup
            sipush 139
            iconst_m1
            iastore
            dup
            sipush 140
            iconst_m1
            iastore
            dup
            sipush 141
            iconst_m1
            iastore
            dup
            sipush 142
            iconst_m1
            iastore
            dup
            sipush 143
            iconst_m1
            iastore
            dup
            sipush 144
        10: .line 116
            iconst_m1
            iastore
            dup
            sipush 145
            iconst_m1
            iastore
            dup
            sipush 146
            iconst_m1
            iastore
            dup
            sipush 147
            iconst_m1
            iastore
            dup
            sipush 148
            iconst_m1
            iastore
            dup
            sipush 149
            iconst_m1
            iastore
            dup
            sipush 150
            iconst_m1
            iastore
            dup
            sipush 151
            iconst_m1
            iastore
            dup
            sipush 152
            iconst_m1
            iastore
            dup
            sipush 153
            iconst_m1
            iastore
            dup
            sipush 154
            iconst_m1
            iastore
            dup
            sipush 155
            iconst_m1
            iastore
            dup
            sipush 156
            iconst_m1
            iastore
            dup
            sipush 157
            iconst_m1
            iastore
            dup
            sipush 158
            iconst_m1
            iastore
            dup
            sipush 159
            iconst_m1
            iastore
            dup
            sipush 160
        11: .line 118
            iconst_m1
            iastore
            dup
            sipush 161
            iconst_m1
            iastore
            dup
            sipush 162
            iconst_m1
            iastore
            dup
            sipush 163
            iconst_m1
            iastore
            dup
            sipush 164
            iconst_m1
            iastore
            dup
            sipush 165
            iconst_m1
            iastore
            dup
            sipush 166
            iconst_m1
            iastore
            dup
            sipush 167
            iconst_m1
            iastore
            dup
            sipush 168
            iconst_m1
            iastore
            dup
            sipush 169
            iconst_m1
            iastore
            dup
            sipush 170
            iconst_m1
            iastore
            dup
            sipush 171
            iconst_m1
            iastore
            dup
            sipush 172
            iconst_m1
            iastore
            dup
            sipush 173
            iconst_m1
            iastore
            dup
            sipush 174
            iconst_m1
            iastore
            dup
            sipush 175
            iconst_m1
            iastore
            dup
            sipush 176
        12: .line 119
            iconst_m1
            iastore
            dup
            sipush 177
            iconst_m1
            iastore
            dup
            sipush 178
            iconst_m1
            iastore
            dup
            sipush 179
            iconst_m1
            iastore
            dup
            sipush 180
            iconst_m1
            iastore
            dup
            sipush 181
            iconst_m1
            iastore
            dup
            sipush 182
            iconst_m1
            iastore
            dup
            sipush 183
            iconst_m1
            iastore
            dup
            sipush 184
            iconst_m1
            iastore
            dup
            sipush 185
            iconst_m1
            iastore
            dup
            sipush 186
            iconst_m1
            iastore
            dup
            sipush 187
            iconst_m1
            iastore
            dup
            sipush 188
            iconst_m1
            iastore
            dup
            sipush 189
            iconst_m1
            iastore
            dup
            sipush 190
            iconst_m1
            iastore
            dup
            sipush 191
            iconst_m1
            iastore
            dup
            sipush 192
        13: .line 121
            iconst_m1
            iastore
            dup
            sipush 193
            iconst_m1
            iastore
            dup
            sipush 194
            iconst_m1
            iastore
            dup
            sipush 195
            iconst_m1
            iastore
            dup
            sipush 196
            iconst_m1
            iastore
            dup
            sipush 197
            iconst_m1
            iastore
            dup
            sipush 198
            iconst_m1
            iastore
            dup
            sipush 199
            iconst_m1
            iastore
            dup
            sipush 200
            iconst_m1
            iastore
            dup
            sipush 201
            iconst_m1
            iastore
            dup
            sipush 202
            iconst_m1
            iastore
            dup
            sipush 203
            iconst_m1
            iastore
            dup
            sipush 204
            iconst_m1
            iastore
            dup
            sipush 205
            iconst_m1
            iastore
            dup
            sipush 206
            iconst_m1
            iastore
            dup
            sipush 207
            iconst_m1
            iastore
            dup
            sipush 208
        14: .line 122
            iconst_m1
            iastore
            dup
            sipush 209
            iconst_m1
            iastore
            dup
            sipush 210
            iconst_m1
            iastore
            dup
            sipush 211
            iconst_m1
            iastore
            dup
            sipush 212
            iconst_m1
            iastore
            dup
            sipush 213
            iconst_m1
            iastore
            dup
            sipush 214
            iconst_m1
            iastore
            dup
            sipush 215
            iconst_m1
            iastore
            dup
            sipush 216
            iconst_m1
            iastore
            dup
            sipush 217
            iconst_m1
            iastore
            dup
            sipush 218
            iconst_m1
            iastore
            dup
            sipush 219
            iconst_m1
            iastore
            dup
            sipush 220
            iconst_m1
            iastore
            dup
            sipush 221
            iconst_m1
            iastore
            dup
            sipush 222
            iconst_m1
            iastore
            dup
            sipush 223
            iconst_m1
            iastore
            dup
            sipush 224
        15: .line 124
            iconst_m1
            iastore
            dup
            sipush 225
            iconst_m1
            iastore
            dup
            sipush 226
            iconst_m1
            iastore
            dup
            sipush 227
            iconst_m1
            iastore
            dup
            sipush 228
            iconst_m1
            iastore
            dup
            sipush 229
            iconst_m1
            iastore
            dup
            sipush 230
            iconst_m1
            iastore
            dup
            sipush 231
            iconst_m1
            iastore
            dup
            sipush 232
            iconst_m1
            iastore
            dup
            sipush 233
            iconst_m1
            iastore
            dup
            sipush 234
            iconst_m1
            iastore
            dup
            sipush 235
            iconst_m1
            iastore
            dup
            sipush 236
            iconst_m1
            iastore
            dup
            sipush 237
            iconst_m1
            iastore
            dup
            sipush 238
            iconst_m1
            iastore
            dup
            sipush 239
            iconst_m1
            iastore
            dup
            sipush 240
        16: .line 125
            iconst_m1
            iastore
            dup
            sipush 241
            iconst_m1
            iastore
            dup
            sipush 242
            iconst_m1
            iastore
            dup
            sipush 243
            iconst_m1
            iastore
            dup
            sipush 244
            iconst_m1
            iastore
            dup
            sipush 245
            iconst_m1
            iastore
            dup
            sipush 246
            iconst_m1
            iastore
            dup
            sipush 247
            iconst_m1
            iastore
            dup
            sipush 248
            iconst_m1
            iastore
            dup
            sipush 249
            iconst_m1
            iastore
            dup
            sipush 250
            iconst_m1
            iastore
            dup
            sipush 251
            iconst_m1
            iastore
            dup
            sipush 252
            iconst_m1
            iastore
            dup
            sipush 253
            iconst_m1
            iastore
            dup
            sipush 254
            iconst_m1
            iastore
            dup
            sipush 255
            iconst_m1
            iastore
        17: .line 102
            putstatic sun.net.idn.Punycode.basicToDigit:[I
        18: .line 126
            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.net.idn.Punycode this
         0: .line 51
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // sun.net.idn.Punycode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/net/idn/Punycode;

  private static int adaptBias(int, int, boolean);
    descriptor: (IIZ)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // int delta
        start local 1 // int length
        start local 2 // boolean firstTime
         0: .line 82
            iload 2 /* firstTime */
            ifeq 3
         1: .line 83
            iload 0 /* delta */
            sipush 700
            idiv
            istore 0 /* delta */
         2: .line 84
            goto 4
         3: .line 85
      StackMap locals:
      StackMap stack:
            iload 0 /* delta */
            iconst_2
            idiv
            istore 0 /* delta */
         4: .line 87
      StackMap locals:
      StackMap stack:
            iload 0 /* delta */
            iload 0 /* delta */
            iload 1 /* length */
            idiv
            iadd
            istore 0 /* delta */
         5: .line 89
            iconst_0
            istore 3 /* count */
        start local 3 // int count
         6: .line 90
            goto 9
         7: .line 91
      StackMap locals: int
      StackMap stack:
            iload 0 /* delta */
            bipush 35
            idiv
            istore 0 /* delta */
         8: .line 90
            iinc 3 /* count */ 36
      StackMap locals:
      StackMap stack:
         9: iload 0 /* delta */
            sipush 455
            if_icmpgt 7
        10: .line 94
            iload 3 /* count */
            bipush 36
            iload 0 /* delta */
            imul
            iload 0 /* delta */
            bipush 38
            iadd
            idiv
            iadd
            ireturn
        end local 3 // int count
        end local 2 // boolean firstTime
        end local 1 // int length
        end local 0 // int delta
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0      delta  I
            0   11     1     length  I
            0   11     2  firstTime  Z
            6   11     3      count  I
    MethodParameters:
           Name  Flags
      delta      
      length     
      firstTime  

  private static char asciiCaseMap(char, boolean);
    descriptor: (CZ)C
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // char b
        start local 1 // boolean uppercase
         0: .line 129
            iload 1 /* uppercase */
            ifeq 4
         1: .line 130
            bipush 97
            iload 0 /* b */
            if_icmpgt 6
            iload 0 /* b */
            bipush 122
            if_icmpgt 6
         2: .line 131
            iload 0 /* b */
            bipush 32
            isub
            i2c
            istore 0 /* b */
         3: .line 133
            goto 6
         4: .line 134
      StackMap locals:
      StackMap stack:
            bipush 65
            iload 0 /* b */
            if_icmpgt 6
            iload 0 /* b */
            bipush 90
            if_icmpgt 6
         5: .line 135
            iload 0 /* b */
            bipush 32
            iadd
            i2c
            istore 0 /* b */
         6: .line 138
      StackMap locals:
      StackMap stack:
            iload 0 /* b */
            ireturn
        end local 1 // boolean uppercase
        end local 0 // char b
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0          b  C
            0    7     1  uppercase  Z
    MethodParameters:
           Name  Flags
      b          
      uppercase  

  private static char digitToBasic(int, boolean);
    descriptor: (IZ)C
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // int digit
        start local 1 // boolean uppercase
         0: .line 150
            iload 0 /* digit */
            bipush 26
            if_icmpge 4
         1: .line 151
            iload 1 /* uppercase */
            ifeq 3
         2: .line 152
            bipush 65
            iload 0 /* digit */
            iadd
            i2c
            ireturn
         3: .line 154
      StackMap locals:
      StackMap stack:
            bipush 97
            iload 0 /* digit */
            iadd
            i2c
            ireturn
         4: .line 157
      StackMap locals:
      StackMap stack:
            bipush 22
            iload 0 /* digit */
            iadd
            i2c
            ireturn
        end local 1 // boolean uppercase
        end local 0 // int digit
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0      digit  I
            0    5     1  uppercase  Z
    MethodParameters:
           Name  Flags
      digit      
      uppercase  

  public static java.lang.StringBuffer encode(java.lang.StringBuffer, boolean[]);
    descriptor: (Ljava/lang/StringBuffer;[Z)Ljava/lang/StringBuffer;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=21, args_size=2
        start local 0 // java.lang.StringBuffer src
        start local 1 // boolean[] caseFlags
         0: .line 172
            sipush 256
            newarray 10
            astore 2 /* cpBuffer */
        start local 2 // int[] cpBuffer
         1: .line 175
            aload 0 /* src */
            invokevirtual java.lang.StringBuffer.length:()I
            istore 17 /* srcLength */
        start local 17 // int srcLength
         2: .line 176
            sipush 256
            istore 18 /* destCapacity */
        start local 18 // int destCapacity
         3: .line 177
            iload 18 /* destCapacity */
            newarray 5
            astore 19 /* dest */
        start local 19 // char[] dest
         4: .line 178
            new java.lang.StringBuffer
            dup
            invokespecial java.lang.StringBuffer.<init>:()V
            astore 20 /* result */
        start local 20 // java.lang.StringBuffer result
         5: .line 183
            iconst_0
            dup
            istore 7 /* destLength */
        start local 7 // int destLength
         6: istore 14 /* srcCPCount */
        start local 14 // int srcCPCount
         7: .line 185
            iconst_0
            istore 9 /* j */
        start local 9 // int j
         8: goto 36
         9: .line 186
      StackMap locals: java.lang.StringBuffer boolean[] int[] top top top top int top int top top top top int top top int int char[] java.lang.StringBuffer
      StackMap stack:
            iload 14 /* srcCPCount */
            sipush 256
            if_icmpne 11
        10: .line 188
            new java.lang.IndexOutOfBoundsException
            dup
            invokespecial java.lang.IndexOutOfBoundsException.<init>:()V
            athrow
        11: .line 190
      StackMap locals:
      StackMap stack:
            aload 0 /* src */
            iload 9 /* j */
            invokevirtual java.lang.StringBuffer.charAt:(I)C
            istore 15 /* c */
        start local 15 // char c
        12: .line 191
            iload 15 /* c */
            invokestatic sun.net.idn.Punycode.isBasic:(I)Z
            ifeq 22
        13: .line 192
            iload 7 /* destLength */
            iload 18 /* destCapacity */
            if_icmpge 20
        14: .line 193
            aload 2 /* cpBuffer */
            iload 14 /* srcCPCount */
            iinc 14 /* srcCPCount */ 1
            iconst_0
            iastore
        15: .line 194
            aload 19 /* dest */
            iload 7 /* destLength */
        16: .line 195
            aload 1 /* caseFlags */
            ifnull 18
        17: .line 196
            iload 15 /* c */
            aload 1 /* caseFlags */
            iload 9 /* j */
            baload
            invokestatic sun.net.idn.Punycode.asciiCaseMap:(CZ)C
            goto 19
        18: .line 197
      StackMap locals: java.lang.StringBuffer boolean[] int[] top top top top int top int top top top top int int top int int char[] java.lang.StringBuffer
      StackMap stack: char[] int
            iload 15 /* c */
        19: .line 194
      StackMap locals: java.lang.StringBuffer boolean[] int[] top top top top int top int top top top top int int top int int char[] java.lang.StringBuffer
      StackMap stack: char[] int int
            castore
        20: .line 199
      StackMap locals:
      StackMap stack:
            iinc 7 /* destLength */ 1
        21: .line 200
            goto 35
        22: .line 201
      StackMap locals:
      StackMap stack:
            aload 1 /* caseFlags */
            ifnull 23
            aload 1 /* caseFlags */
            iload 9 /* j */
            baload
            ifeq 23
            iconst_1
            goto 24
      StackMap locals:
      StackMap stack:
        23: iconst_0
      StackMap locals:
      StackMap stack: int
        24: bipush 31
            ishl
            istore 3 /* n */
        start local 3 // int n
        25: .line 202
            iload 15 /* c */
            invokestatic sun.text.normalizer.UTF16.isSurrogate:(C)Z
            ifne 28
        26: .line 203
            iload 3 /* n */
            iload 15 /* c */
            ior
            istore 3 /* n */
        27: .line 204
            goto 34
      StackMap locals: java.lang.StringBuffer boolean[] int[] int top top top int top int top top top top int int top int int char[] java.lang.StringBuffer
      StackMap stack:
        28: iload 15 /* c */
            invokestatic sun.text.normalizer.UTF16.isLeadSurrogate:(C)Z
            ifeq 33
            iload 9 /* j */
            iconst_1
            iadd
            iload 17 /* srcLength */
            if_icmpge 33
            aload 0 /* src */
            iload 9 /* j */
            iconst_1
            iadd
            invokevirtual java.lang.StringBuffer.charAt:(I)C
            dup
            istore 16 /* c2 */
        start local 16 // char c2
        29: invokestatic sun.text.normalizer.UTF16.isTrailSurrogate:(C)Z
            ifeq 33
        30: .line 205
            iinc 9 /* j */ 1
        31: .line 207
            iload 3 /* n */
            iload 15 /* c */
            iload 16 /* c2 */
            invokestatic sun.text.normalizer.UCharacter.getCodePoint:(CC)I
            ior
            istore 3 /* n */
        32: .line 208
            goto 34
        end local 16 // char c2
        33: .line 210
      StackMap locals:
      StackMap stack:
            new java.text.ParseException
            dup
            ldc "Illegal char found"
            iconst_m1
            invokespecial java.text.ParseException.<init>:(Ljava/lang/String;I)V
            athrow
        34: .line 212
      StackMap locals:
      StackMap stack:
            aload 2 /* cpBuffer */
            iload 14 /* srcCPCount */
            iinc 14 /* srcCPCount */ 1
            iload 3 /* n */
            iastore
        end local 3 // int n
        35: .line 185
      StackMap locals: java.lang.StringBuffer boolean[] int[] top top top top int top int top top top top int int top int int char[] java.lang.StringBuffer
      StackMap stack:
            iinc 9 /* j */ 1
        end local 15 // char c
      StackMap locals: java.lang.StringBuffer boolean[] int[] top top top top int top int top top top top int top top int int char[] java.lang.StringBuffer
      StackMap stack:
        36: iload 9 /* j */
            iload 17 /* srcLength */
            if_icmplt 9
        37: .line 217
            iload 7 /* destLength */
            istore 6 /* basicLength */
        start local 6 // int basicLength
        38: .line 218
            iload 6 /* basicLength */
            ifle 42
        39: .line 219
            iload 7 /* destLength */
            iload 18 /* destCapacity */
            if_icmpge 41
        40: .line 220
            aload 19 /* dest */
            iload 7 /* destLength */
            bipush 45
            castore
        41: .line 222
      StackMap locals: java.lang.StringBuffer boolean[] int[] top top top int int top int top top top top int top top int int char[] java.lang.StringBuffer
      StackMap stack:
            iinc 7 /* destLength */ 1
        42: .line 232
      StackMap locals:
      StackMap stack:
            sipush 128
            istore 3 /* n */
        start local 3 // int n
        43: .line 233
            iconst_0
            istore 4 /* delta */
        start local 4 // int delta
        44: .line 234
            bipush 72
            istore 8 /* bias */
        start local 8 // int bias
        45: .line 237
            iload 6 /* basicLength */
            istore 5 /* handledCPCount */
        start local 5 // int handledCPCount
        46: goto 91
        47: .line 242
      StackMap locals: java.lang.StringBuffer boolean[] int[] int int int int int int int top top top top int top top int int char[] java.lang.StringBuffer
      StackMap stack:
            ldc 2147483647
            istore 10 /* m */
        start local 10 // int m
        48: iconst_0
            istore 9 /* j */
            goto 53
        49: .line 243
      StackMap locals: java.lang.StringBuffer boolean[] int[] int int int int int int int int top top top int top top int int char[] java.lang.StringBuffer
      StackMap stack:
            aload 2 /* cpBuffer */
            iload 9 /* j */
            iaload
            ldc 2147483647
            iand
            istore 11 /* q */
        start local 11 // int q
        50: .line 244
            iload 3 /* n */
            iload 11 /* q */
            if_icmpgt 52
            iload 11 /* q */
            iload 10 /* m */
            if_icmpge 52
        51: .line 245
            iload 11 /* q */
            istore 10 /* m */
        52: .line 242
      StackMap locals: java.lang.StringBuffer boolean[] int[] int int int int int int int int int top top int top top int int char[] java.lang.StringBuffer
      StackMap stack:
            iinc 9 /* j */ 1
        end local 11 // int q
      StackMap locals: java.lang.StringBuffer boolean[] int[] int int int int int int int int top top top int top top int int char[] java.lang.StringBuffer
      StackMap stack:
        53: iload 9 /* j */
            iload 14 /* srcCPCount */
            if_icmplt 49
        54: .line 253
            iload 10 /* m */
            iload 3 /* n */
            isub
            ldc 2147483391
            iload 4 /* delta */
            isub
            iload 5 /* handledCPCount */
            iconst_1
            iadd
            idiv
            if_icmple 56
        55: .line 254
            new java.lang.RuntimeException
            dup
            ldc "Internal program error"
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        56: .line 256
      StackMap locals:
      StackMap stack:
            iload 4 /* delta */
            iload 10 /* m */
            iload 3 /* n */
            isub
            iload 5 /* handledCPCount */
            iconst_1
            iadd
            imul
            iadd
            istore 4 /* delta */
        57: .line 257
            iload 10 /* m */
            istore 3 /* n */
        58: .line 260
            iconst_0
            istore 9 /* j */
            goto 88
        59: .line 261
      StackMap locals:
      StackMap stack:
            aload 2 /* cpBuffer */
            iload 9 /* j */
            iaload
            ldc 2147483647
            iand
            istore 11 /* q */
        start local 11 // int q
        60: .line 262
            iload 11 /* q */
            iload 3 /* n */
            if_icmpge 63
        61: .line 263
            iinc 4 /* delta */ 1
        62: .line 264
            goto 87
      StackMap locals: java.lang.StringBuffer boolean[] int[] int int int int int int int int int top top int top top int int char[] java.lang.StringBuffer
      StackMap stack:
        63: iload 11 /* q */
            iload 3 /* n */
            if_icmpne 87
        64: .line 266
            iload 4 /* delta */
            istore 11 /* q */
            bipush 36
            istore 12 /* k */
        start local 12 // int k
        65: .line 278
      StackMap locals: java.lang.StringBuffer boolean[] int[] int int int int int int int int int int top int top top int int char[] java.lang.StringBuffer
      StackMap stack:
            iload 12 /* k */
            iload 8 /* bias */
            isub
            istore 13 /* t */
        start local 13 // int t
        66: .line 279
            iload 13 /* t */
            iconst_1
            if_icmpge 69
        67: .line 280
            iconst_1
            istore 13 /* t */
        68: .line 281
            goto 71
      StackMap locals: java.lang.StringBuffer boolean[] int[] int int int int int int int int int int int int top top int int char[] java.lang.StringBuffer
      StackMap stack:
        69: iload 12 /* k */
            iload 8 /* bias */
            bipush 26
            iadd
            if_icmplt 71
        70: .line 282
            bipush 26
            istore 13 /* t */
        71: .line 285
      StackMap locals:
      StackMap stack:
            iload 11 /* q */
            iload 13 /* t */
            if_icmpge 73
        72: .line 286
            goto 78
        73: .line 289
      StackMap locals:
      StackMap stack:
            iload 7 /* destLength */
            iload 18 /* destCapacity */
            if_icmpge 75
        74: .line 290
            aload 19 /* dest */
            iload 7 /* destLength */
            iinc 7 /* destLength */ 1
            iload 13 /* t */
            iload 11 /* q */
            iload 13 /* t */
            isub
            bipush 36
            iload 13 /* t */
            isub
            irem
            iadd
            iconst_0
            invokestatic sun.net.idn.Punycode.digitToBasic:(IZ)C
            castore
        75: .line 292
      StackMap locals:
      StackMap stack:
            iload 11 /* q */
            iload 13 /* t */
            isub
            bipush 36
            iload 13 /* t */
            isub
            idiv
            istore 11 /* q */
        76: .line 266
            iinc 12 /* k */ 36
        end local 13 // int t
        77: goto 65
        start local 13 // int t
        78: .line 295
      StackMap locals:
      StackMap stack:
            iload 7 /* destLength */
            iload 18 /* destCapacity */
            if_icmpge 82
        79: .line 296
            aload 19 /* dest */
            iload 7 /* destLength */
            iinc 7 /* destLength */ 1
            iload 11 /* q */
            aload 2 /* cpBuffer */
            iload 9 /* j */
            iaload
            ifge 80
            iconst_1
            goto 81
      StackMap locals: java.lang.StringBuffer boolean[] int[] int int int int int int int int int int int int top top int int char[] java.lang.StringBuffer
      StackMap stack: char[] int int
        80: iconst_0
      StackMap locals: java.lang.StringBuffer boolean[] int[] int int int int int int int int int int int int top top int int char[] java.lang.StringBuffer
      StackMap stack: char[] int int int
        81: invokestatic sun.net.idn.Punycode.digitToBasic:(IZ)C
            castore
        82: .line 298
      StackMap locals:
      StackMap stack:
            iload 4 /* delta */
            iload 5 /* handledCPCount */
            iconst_1
            iadd
            iload 5 /* handledCPCount */
            iload 6 /* basicLength */
            if_icmpne 83
            iconst_1
            goto 84
      StackMap locals: java.lang.StringBuffer boolean[] int[] int int int int int int int int int int int int top top int int char[] java.lang.StringBuffer
      StackMap stack: int int
        83: iconst_0
      StackMap locals: java.lang.StringBuffer boolean[] int[] int int int int int int int int int int int int top top int int char[] java.lang.StringBuffer
      StackMap stack: int int int
        84: invokestatic sun.net.idn.Punycode.adaptBias:(IIZ)I
            istore 8 /* bias */
        85: .line 299
            iconst_0
            istore 4 /* delta */
        86: .line 300
            iinc 5 /* handledCPCount */ 1
        end local 13 // int t
        end local 12 // int k
        87: .line 260
      StackMap locals: java.lang.StringBuffer boolean[] int[] int int int int int int int int int top top int top top int int char[] java.lang.StringBuffer
      StackMap stack:
            iinc 9 /* j */ 1
        end local 11 // int q
      StackMap locals: java.lang.StringBuffer boolean[] int[] int int int int int int int int top top top int top top int int char[] java.lang.StringBuffer
      StackMap stack:
        88: iload 9 /* j */
            iload 14 /* srcCPCount */
            if_icmplt 59
        89: .line 304
            iinc 4 /* delta */ 1
        90: .line 305
            iinc 3 /* n */ 1
        end local 10 // int m
        91: .line 237
      StackMap locals: java.lang.StringBuffer boolean[] int[] int int int int int int int top top top top int top top int int char[] java.lang.StringBuffer
      StackMap stack:
            iload 5 /* handledCPCount */
            iload 14 /* srcCPCount */
            if_icmplt 47
        92: .line 308
            aload 20 /* result */
            aload 19 /* dest */
            iconst_0
            iload 7 /* destLength */
            invokevirtual java.lang.StringBuffer.append:([CII)Ljava/lang/StringBuffer;
            areturn
        end local 20 // java.lang.StringBuffer result
        end local 19 // char[] dest
        end local 18 // int destCapacity
        end local 17 // int srcLength
        end local 14 // int srcCPCount
        end local 9 // int j
        end local 8 // int bias
        end local 7 // int destLength
        end local 6 // int basicLength
        end local 5 // int handledCPCount
        end local 4 // int delta
        end local 3 // int n
        end local 2 // int[] cpBuffer
        end local 1 // boolean[] caseFlags
        end local 0 // java.lang.StringBuffer src
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   93     0             src  Ljava/lang/StringBuffer;
            0   93     1       caseFlags  [Z
            1   93     2        cpBuffer  [I
           25   35     3               n  I
           43   93     3               n  I
           44   93     4           delta  I
           46   93     5  handledCPCount  I
           38   93     6     basicLength  I
            6   93     7      destLength  I
           45   93     8            bias  I
            8   93     9               j  I
           48   91    10               m  I
           50   53    11               q  I
           60   88    11               q  I
           65   87    12               k  I
           66   77    13               t  I
           78   87    13               t  I
            7   93    14      srcCPCount  I
           12   36    15               c  C
           29   33    16              c2  C
            2   93    17       srcLength  I
            3   93    18    destCapacity  I
            4   93    19            dest  [C
            5   93    20          result  Ljava/lang/StringBuffer;
    Exceptions:
      throws java.text.ParseException
    MethodParameters:
           Name  Flags
      src        
      caseFlags  

  private static boolean isBasic(int);
    descriptor: (I)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int ch
         0: .line 312
            iload 0 /* ch */
            sipush 128
            if_icmpge 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // int ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0    ch  I
    MethodParameters:
      Name  Flags
      ch    

  private static boolean isBasicUpperCase(int);
    descriptor: (I)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int ch
         0: .line 316
            bipush 65
            iload 0 /* ch */
            if_icmpgt 1
            iload 0 /* ch */
            bipush 90
            if_icmpgt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // int ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0    ch  I
    MethodParameters:
      Name  Flags
      ch    

  private static boolean isSurrogate(int);
    descriptor: (I)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int ch
         0: .line 320
            iload 0 /* ch */
            sipush -2048
            iand
            ldc 55296
            if_icmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // int ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0    ch  I
    MethodParameters:
      Name  Flags
      ch    

  public static java.lang.StringBuffer decode(java.lang.StringBuffer, boolean[]);
    descriptor: (Ljava/lang/StringBuffer;[Z)Ljava/lang/StringBuffer;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=23, args_size=2
        start local 0 // java.lang.StringBuffer src
        start local 1 // boolean[] caseFlags
         0: .line 333
            aload 0 /* src */
            invokevirtual java.lang.StringBuffer.length:()I
            istore 2 /* srcLength */
        start local 2 // int srcLength
         1: .line 334
            new java.lang.StringBuffer
            dup
            invokespecial java.lang.StringBuffer.<init>:()V
            astore 3 /* result */
        start local 3 // java.lang.StringBuffer result
         2: .line 338
            sipush 256
            istore 20 /* destCapacity */
        start local 20 // int destCapacity
         3: .line 339
            iload 20 /* destCapacity */
            newarray 5
            astore 21 /* dest */
        start local 21 // char[] dest
         4: .line 349
            iload 2 /* srcLength */
            istore 9 /* j */
        start local 9 // int j
         5: goto 8
         6: .line 350
      StackMap locals: java.lang.StringBuffer boolean[] int java.lang.StringBuffer top top top top top int top top top top top top top top top top int char[]
      StackMap stack:
            aload 0 /* src */
            iinc 9 /* j */ -1
            iload 9 /* j */
            invokevirtual java.lang.StringBuffer.charAt:(I)C
            bipush 45
            if_icmpne 8
         7: .line 351
            goto 9
         8: .line 349
      StackMap locals:
      StackMap stack:
            iload 9 /* j */
            ifgt 6
         9: .line 354
      StackMap locals:
      StackMap stack:
            iload 9 /* j */
            dup
            istore 16 /* destCPCount */
        start local 16 // int destCPCount
        10: dup
            istore 8 /* basicLength */
        start local 8 // int basicLength
        11: istore 5 /* destLength */
        start local 5 // int destLength
        12: .line 356
            goto 20
        13: .line 357
      StackMap locals: java.lang.StringBuffer boolean[] int java.lang.StringBuffer top int top top int int top top top top top top int top top top int char[]
      StackMap stack:
            aload 0 /* src */
            iinc 9 /* j */ -1
            iload 9 /* j */
            invokevirtual java.lang.StringBuffer.charAt:(I)C
            istore 19 /* b */
        start local 19 // char b
        14: .line 358
            iload 19 /* b */
            invokestatic sun.net.idn.Punycode.isBasic:(I)Z
            ifne 16
        15: .line 359
            new java.text.ParseException
            dup
            ldc "Illegal char found"
            iconst_m1
            invokespecial java.text.ParseException.<init>:(Ljava/lang/String;I)V
            athrow
        16: .line 362
      StackMap locals: java.lang.StringBuffer boolean[] int java.lang.StringBuffer top int top top int int top top top top top top int top top int int char[]
      StackMap stack:
            iload 9 /* j */
            iload 20 /* destCapacity */
            if_icmpge 20
        17: .line 363
            aload 21 /* dest */
            iload 9 /* j */
            iload 19 /* b */
            castore
        18: .line 365
            aload 1 /* caseFlags */
            ifnull 20
        19: .line 366
            aload 1 /* caseFlags */
            iload 9 /* j */
            iload 19 /* b */
            invokestatic sun.net.idn.Punycode.isBasicUpperCase:(I)Z
            bastore
        end local 19 // char b
        20: .line 356
      StackMap locals: java.lang.StringBuffer boolean[] int java.lang.StringBuffer top int top top int int top top top top top top int top top top int char[]
      StackMap stack:
            iload 9 /* j */
            ifgt 13
        21: .line 372
            sipush 128
            istore 4 /* n */
        start local 4 // int n
        22: .line 373
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        23: .line 374
            bipush 72
            istore 7 /* bias */
        start local 7 // int bias
        24: .line 375
            ldc 1000000000
            istore 17 /* firstSupplementaryIndex */
        start local 17 // int firstSupplementaryIndex
        25: .line 382
            iload 8 /* basicLength */
            ifle 26
            iload 8 /* basicLength */
            iconst_1
            iadd
            goto 27
      StackMap locals: java.lang.StringBuffer boolean[] int java.lang.StringBuffer int int int int int int top top top top top top int int top top int char[]
      StackMap stack:
        26: iconst_0
      StackMap locals:
      StackMap stack: int
        27: istore 10 /* in */
        start local 10 // int in
        28: goto 95
        29: .line 392
      StackMap locals: java.lang.StringBuffer boolean[] int java.lang.StringBuffer int int int int int int int top top top top top int int top top int char[]
      StackMap stack:
            iload 6 /* i */
            istore 11 /* oldi */
        start local 11 // int oldi
        30: iconst_1
            istore 12 /* w */
        start local 12 // int w
        31: bipush 36
            istore 13 /* k */
        start local 13 // int k
        32: .line 393
      StackMap locals: java.lang.StringBuffer boolean[] int java.lang.StringBuffer int int int int int int int int int int top top int int top top int char[]
      StackMap stack:
            iload 10 /* in */
            iload 2 /* srcLength */
            if_icmplt 34
        33: .line 394
            new java.text.ParseException
            dup
            ldc "Illegal char found"
            iconst_m1
            invokespecial java.text.ParseException.<init>:(Ljava/lang/String;I)V
            athrow
        34: .line 397
      StackMap locals:
      StackMap stack:
            getstatic sun.net.idn.Punycode.basicToDigit:[I
            aload 0 /* src */
            iload 10 /* in */
            iinc 10 /* in */ 1
            invokevirtual java.lang.StringBuffer.charAt:(I)C
            i2b
            iaload
            istore 14 /* digit */
        start local 14 // int digit
        35: .line 398
            iload 14 /* digit */
            ifge 37
        36: .line 399
            new java.text.ParseException
            dup
            ldc "Invalid char found"
            iconst_m1
            invokespecial java.text.ParseException.<init>:(Ljava/lang/String;I)V
            athrow
        37: .line 401
      StackMap locals: java.lang.StringBuffer boolean[] int java.lang.StringBuffer int int int int int int int int int int int top int int top top int char[]
      StackMap stack:
            iload 14 /* digit */
            ldc 2147483647
            iload 6 /* i */
            isub
            iload 12 /* w */
            idiv
            if_icmple 39
        38: .line 403
            new java.text.ParseException
            dup
            ldc "Illegal char found"
            iconst_m1
            invokespecial java.text.ParseException.<init>:(Ljava/lang/String;I)V
            athrow
        39: .line 406
      StackMap locals:
      StackMap stack:
            iload 6 /* i */
            iload 14 /* digit */
            iload 12 /* w */
            imul
            iadd
            istore 6 /* i */
        40: .line 407
            iload 13 /* k */
            iload 7 /* bias */
            isub
            istore 15 /* t */
        start local 15 // int t
        41: .line 408
            iload 15 /* t */
            iconst_1
            if_icmpge 44
        42: .line 409
            iconst_1
            istore 15 /* t */
        43: .line 410
            goto 46
      StackMap locals: java.lang.StringBuffer boolean[] int java.lang.StringBuffer int int int int int int int int int int int int int int top top int char[]
      StackMap stack:
        44: iload 13 /* k */
            iload 7 /* bias */
            bipush 26
            iadd
            if_icmplt 46
        45: .line 411
            bipush 26
            istore 15 /* t */
        46: .line 413
      StackMap locals:
      StackMap stack:
            iload 14 /* digit */
            iload 15 /* t */
            if_icmpge 48
        47: .line 414
            goto 53
        48: .line 417
      StackMap locals:
      StackMap stack:
            iload 12 /* w */
            ldc 2147483647
            bipush 36
            iload 15 /* t */
            isub
            idiv
            if_icmple 50
        49: .line 419
            new java.text.ParseException
            dup
            ldc "Illegal char found"
            iconst_m1
            invokespecial java.text.ParseException.<init>:(Ljava/lang/String;I)V
            athrow
        50: .line 421
      StackMap locals:
      StackMap stack:
            iload 12 /* w */
            bipush 36
            iload 15 /* t */
            isub
            imul
            istore 12 /* w */
        51: .line 392
            iinc 13 /* k */ 36
        end local 15 // int t
        end local 14 // int digit
        52: goto 32
        start local 14 // int digit
        start local 15 // int t
        53: .line 429
      StackMap locals:
      StackMap stack:
            iinc 16 /* destCPCount */ 1
        54: .line 430
            iload 6 /* i */
            iload 11 /* oldi */
            isub
            iload 16 /* destCPCount */
            iload 11 /* oldi */
            ifne 55
            iconst_1
            goto 56
      StackMap locals: java.lang.StringBuffer boolean[] int java.lang.StringBuffer int int int int int int int int int int int int int int top top int char[]
      StackMap stack: int int
        55: iconst_0
      StackMap locals: java.lang.StringBuffer boolean[] int java.lang.StringBuffer int int int int int int int int int int int int int int top top int char[]
      StackMap stack: int int int
        56: invokestatic sun.net.idn.Punycode.adaptBias:(IIZ)I
            istore 7 /* bias */
        57: .line 436
            iload 6 /* i */
            iload 16 /* destCPCount */
            idiv
            ldc 2147483647
            iload 4 /* n */
            isub
            if_icmple 59
        58: .line 438
            new java.text.ParseException
            dup
            ldc "Illegal char found"
            iconst_m1
            invokespecial java.text.ParseException.<init>:(Ljava/lang/String;I)V
            athrow
        59: .line 441
      StackMap locals:
      StackMap stack:
            iload 4 /* n */
            iload 6 /* i */
            iload 16 /* destCPCount */
            idiv
            iadd
            istore 4 /* n */
        60: .line 442
            iload 6 /* i */
            iload 16 /* destCPCount */
            irem
            istore 6 /* i */
        61: .line 446
            iload 4 /* n */
            ldc 1114111
            if_icmpgt 62
            iload 4 /* n */
            invokestatic sun.net.idn.Punycode.isSurrogate:(I)Z
            ifeq 63
        62: .line 448
      StackMap locals:
      StackMap stack:
            new java.text.ParseException
            dup
            ldc "Illegal char found"
            iconst_m1
            invokespecial java.text.ParseException.<init>:(Ljava/lang/String;I)V
            athrow
        63: .line 452
      StackMap locals:
      StackMap stack:
            iload 4 /* n */
            invokestatic sun.text.normalizer.UTF16.getCharCount:(I)I
            istore 18 /* cpLength */
        start local 18 // int cpLength
        64: .line 453
            iload 5 /* destLength */
            iload 18 /* cpLength */
            iadd
            iload 20 /* destCapacity */
            if_icmpge 93
        65: .line 466
            iload 6 /* i */
            iload 17 /* firstSupplementaryIndex */
            if_icmpgt 72
        66: .line 467
            iload 6 /* i */
            istore 22 /* codeUnitIndex */
        start local 22 // int codeUnitIndex
        67: .line 468
            iload 18 /* cpLength */
            iconst_1
            if_icmple 70
        68: .line 469
            iload 22 /* codeUnitIndex */
            istore 17 /* firstSupplementaryIndex */
        69: .line 470
            goto 74
        70: .line 471
      StackMap locals: java.lang.StringBuffer boolean[] int java.lang.StringBuffer int int int int int int int int int int int int int int int top int char[] int
      StackMap stack:
            iinc 17 /* firstSupplementaryIndex */ 1
        71: .line 473
            goto 74
        end local 22 // int codeUnitIndex
        72: .line 474
      StackMap locals:
      StackMap stack:
            iload 17 /* firstSupplementaryIndex */
            istore 22 /* codeUnitIndex */
        start local 22 // int codeUnitIndex
        73: .line 475
            aload 21 /* dest */
            iconst_0
            iload 5 /* destLength */
            iload 22 /* codeUnitIndex */
            iload 6 /* i */
            iload 22 /* codeUnitIndex */
            isub
            invokestatic sun.text.normalizer.UTF16.moveCodePointOffset:([CIIII)I
            istore 22 /* codeUnitIndex */
        74: .line 479
      StackMap locals: int
      StackMap stack:
            iload 22 /* codeUnitIndex */
            iload 5 /* destLength */
            if_icmpge 84
        75: .line 480
            aload 21 /* dest */
            iload 22 /* codeUnitIndex */
        76: .line 481
            aload 21 /* dest */
            iload 22 /* codeUnitIndex */
            iload 18 /* cpLength */
            iadd
        77: .line 482
            iload 5 /* destLength */
            iload 22 /* codeUnitIndex */
            isub
        78: .line 480
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        79: .line 483
            aload 1 /* caseFlags */
            ifnull 84
        80: .line 484
            aload 1 /* caseFlags */
            iload 22 /* codeUnitIndex */
        81: .line 485
            aload 1 /* caseFlags */
            iload 22 /* codeUnitIndex */
            iload 18 /* cpLength */
            iadd
        82: .line 486
            iload 5 /* destLength */
            iload 22 /* codeUnitIndex */
            isub
        83: .line 484
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        84: .line 489
      StackMap locals:
      StackMap stack:
            iload 18 /* cpLength */
            iconst_1
            if_icmpne 87
        85: .line 491
            aload 21 /* dest */
            iload 22 /* codeUnitIndex */
            iload 4 /* n */
            i2c
            castore
        86: .line 492
            goto 89
        87: .line 494
      StackMap locals:
      StackMap stack:
            aload 21 /* dest */
            iload 22 /* codeUnitIndex */
            iload 4 /* n */
            invokestatic sun.text.normalizer.UTF16.getLeadSurrogate:(I)C
            castore
        88: .line 495
            aload 21 /* dest */
            iload 22 /* codeUnitIndex */
            iconst_1
            iadd
            iload 4 /* n */
            invokestatic sun.text.normalizer.UTF16.getTrailSurrogate:(I)C
            castore
        89: .line 497
      StackMap locals:
      StackMap stack:
            aload 1 /* caseFlags */
            ifnull 93
        90: .line 499
            aload 1 /* caseFlags */
            iload 22 /* codeUnitIndex */
            aload 0 /* src */
            iload 10 /* in */
            iconst_1
            isub
            invokevirtual java.lang.StringBuffer.charAt:(I)C
            invokestatic sun.net.idn.Punycode.isBasicUpperCase:(I)Z
            bastore
        91: .line 500
            iload 18 /* cpLength */
            iconst_2
            if_icmpne 93
        92: .line 501
            aload 1 /* caseFlags */
            iload 22 /* codeUnitIndex */
            iconst_1
            iadd
            iconst_0
            bastore
        end local 22 // int codeUnitIndex
        93: .line 505
      StackMap locals:
      StackMap stack:
            iload 5 /* destLength */
            iload 18 /* cpLength */
            iadd
            istore 5 /* destLength */
        94: .line 506
            iinc 6 /* i */ 1
        end local 18 // int cpLength
        end local 15 // int t
        end local 14 // int digit
        end local 13 // int k
        end local 12 // int w
        end local 11 // int oldi
        95: .line 382
      StackMap locals: java.lang.StringBuffer boolean[] int java.lang.StringBuffer int int int int int int int top top top top top int int top top int char[]
      StackMap stack:
            iload 10 /* in */
            iload 2 /* srcLength */
            if_icmplt 29
        96: .line 508
            aload 3 /* result */
            aload 21 /* dest */
            iconst_0
            iload 5 /* destLength */
            invokevirtual java.lang.StringBuffer.append:([CII)Ljava/lang/StringBuffer;
            pop
        97: .line 509
            aload 3 /* result */
            areturn
        end local 21 // char[] dest
        end local 20 // int destCapacity
        end local 17 // int firstSupplementaryIndex
        end local 16 // int destCPCount
        end local 10 // int in
        end local 9 // int j
        end local 8 // int basicLength
        end local 7 // int bias
        end local 6 // int i
        end local 5 // int destLength
        end local 4 // int n
        end local 3 // java.lang.StringBuffer result
        end local 2 // int srcLength
        end local 1 // boolean[] caseFlags
        end local 0 // java.lang.StringBuffer src
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   98     0                      src  Ljava/lang/StringBuffer;
            0   98     1                caseFlags  [Z
            1   98     2                srcLength  I
            2   98     3                   result  Ljava/lang/StringBuffer;
           22   98     4                        n  I
           12   98     5               destLength  I
           23   98     6                        i  I
           24   98     7                     bias  I
           11   98     8              basicLength  I
            5   98     9                        j  I
           28   98    10                       in  I
           30   95    11                     oldi  I
           31   95    12                        w  I
           32   95    13                        k  I
           35   52    14                    digit  I
           53   95    14                    digit  I
           41   52    15                        t  I
           53   95    15                        t  I
           10   98    16              destCPCount  I
           25   98    17  firstSupplementaryIndex  I
           64   95    18                 cpLength  I
           14   20    19                        b  C
            3   98    20             destCapacity  I
            4   98    21                     dest  [C
           67   72    22            codeUnitIndex  I
           73   93    22            codeUnitIndex  I
    Exceptions:
      throws java.text.ParseException
    MethodParameters:
           Name  Flags
      src        
      caseFlags  
}
SourceFile: "Punycode.java"