public final class sun.text.normalizer.UCharacter
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: sun.text.normalizer.UCharacter
  super_class: java.lang.Object
{
  public static final int MIN_VALUE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final int MAX_VALUE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1114111

  public static final int SUPPLEMENTARY_MIN_VALUE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 65536

  private static final sun.text.normalizer.UCharacterProperty PROPERTY_;
    descriptor: Lsun/text/normalizer/UCharacterProperty;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final char[] PROPERTY_TRIE_INDEX_;
    descriptor: [C
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final char[] PROPERTY_TRIE_DATA_;
    descriptor: [C
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

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

  private static final sun.text.normalizer.UBiDiProps gBdp;
    descriptor: Lsun/text/normalizer/UBiDiProps;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

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

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=1, args_size=0
         0: .line 317
            invokestatic sun.text.normalizer.UCharacterProperty.getInstance:()Lsun/text/normalizer/UCharacterProperty;
            putstatic sun.text.normalizer.UCharacter.PROPERTY_:Lsun/text/normalizer/UCharacterProperty;
         1: .line 318
            getstatic sun.text.normalizer.UCharacter.PROPERTY_:Lsun/text/normalizer/UCharacterProperty;
            getfield sun.text.normalizer.UCharacterProperty.m_trieIndex_:[C
            putstatic sun.text.normalizer.UCharacter.PROPERTY_TRIE_INDEX_:[C
         2: .line 319
            getstatic sun.text.normalizer.UCharacter.PROPERTY_:Lsun/text/normalizer/UCharacterProperty;
            getfield sun.text.normalizer.UCharacterProperty.m_trieData_:[C
            putstatic sun.text.normalizer.UCharacter.PROPERTY_TRIE_DATA_:[C
         3: .line 320
            getstatic sun.text.normalizer.UCharacter.PROPERTY_:Lsun/text/normalizer/UCharacterProperty;
            getfield sun.text.normalizer.UCharacterProperty.m_trieInitialValue_:I
            putstatic sun.text.normalizer.UCharacter.PROPERTY_INITIAL_VALUE_:I
         4: .line 321
            goto 7
         5: .line 322
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 0 /* e */
        start local 0 // java.lang.Exception e
         6: .line 324
            new java.util.MissingResourceException
            dup
            aload 0 /* e */
            invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
            ldc ""
            ldc ""
            invokespecial java.util.MissingResourceException.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
            athrow
        end local 0 // java.lang.Exception e
         7: .line 329
      StackMap locals:
      StackMap stack:
            invokestatic sun.text.normalizer.UBiDiProps.getSingleton:()Lsun/text/normalizer/UBiDiProps;
            astore 0 /* bdp */
        start local 0 // sun.text.normalizer.UBiDiProps bdp
         8: .line 330
            goto 11
        end local 0 // sun.text.normalizer.UBiDiProps bdp
      StackMap locals:
      StackMap stack: java.io.IOException
         9: pop
        10: .line 331
            invokestatic sun.text.normalizer.UBiDiProps.getDummy:()Lsun/text/normalizer/UBiDiProps;
            astore 0 /* bdp */
        start local 0 // sun.text.normalizer.UBiDiProps bdp
        11: .line 333
      StackMap locals: sun.text.normalizer.UBiDiProps
      StackMap stack:
            aload 0 /* bdp */
            putstatic sun.text.normalizer.UCharacter.gBdp:Lsun/text/normalizer/UBiDiProps;
        end local 0 // sun.text.normalizer.UBiDiProps bdp
        12: .line 343
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            6    7     0     e  Ljava/lang/Exception;
            8    9     0   bdp  Lsun/text/normalizer/UBiDiProps;
           11   12     0   bdp  Lsun/text/normalizer/UBiDiProps;
      Exception table:
        from    to  target  type
           0     4       5  Class java.lang.Exception
           7     8       9  Class java.io.IOException

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

  public static int digit(int, int);
    descriptor: (II)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // int ch
        start local 1 // int radix
         0: .line 235
            iload 0 /* ch */
            invokestatic sun.text.normalizer.UCharacter.getProperty:(I)I
            istore 2 /* props */
        start local 2 // int props
         1: .line 237
            iload 2 /* props */
            invokestatic sun.text.normalizer.UCharacter.getNumericType:(I)I
            iconst_1
            if_icmpne 4
         2: .line 238
            iload 2 /* props */
            invokestatic sun.text.normalizer.UCharacterProperty.getUnsignedValue:(I)I
            istore 3 /* value */
        start local 3 // int value
         3: .line 239
            goto 5
        end local 3 // int value
         4: .line 240
      StackMap locals: int
      StackMap stack:
            iload 0 /* ch */
            invokestatic sun.text.normalizer.UCharacter.getEuropeanDigit:(I)I
            istore 3 /* value */
        start local 3 // int value
         5: .line 242
      StackMap locals: int
      StackMap stack:
            iload 3 /* value */
            iflt 6
            iload 3 /* value */
            iload 1 /* radix */
            if_icmpge 6
            iload 3 /* value */
            goto 7
      StackMap locals:
      StackMap stack:
         6: iconst_m1
      StackMap locals:
      StackMap stack: int
         7: ireturn
        end local 3 // int value
        end local 2 // int props
        end local 1 // int radix
        end local 0 // int ch
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0     ch  I
            0    8     1  radix  I
            1    8     2  props  I
            3    4     3  value  I
            5    8     3  value  I
    MethodParameters:
       Name  Flags
      ch     
      radix  

  public static int getDirection(int);
    descriptor: (I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int ch
         0: .line 257
            getstatic sun.text.normalizer.UCharacter.gBdp:Lsun/text/normalizer/UBiDiProps;
            iload 0 /* ch */
            invokevirtual sun.text.normalizer.UBiDiProps.getClass:(I)I
            ireturn
        end local 0 // int ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  I
    MethodParameters:
      Name  Flags
      ch    

  public static int getCodePoint(char, char);
    descriptor: (CC)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // char lead
        start local 1 // char trail
         0: .line 271
            iload 0 /* lead */
            invokestatic sun.text.normalizer.UTF16.isLeadSurrogate:(C)Z
            ifeq 2
            iload 1 /* trail */
            invokestatic sun.text.normalizer.UTF16.isTrailSurrogate:(C)Z
            ifeq 2
         1: .line 272
            iload 0 /* lead */
            iload 1 /* trail */
            invokestatic sun.text.normalizer.UCharacterProperty.getRawSupplementary:(CC)I
            ireturn
         2: .line 274
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Illegal surrogate characters"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // char trail
        end local 0 // char lead
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   lead  C
            0    3     1  trail  C
    MethodParameters:
       Name  Flags
      lead   
      trail  

  public static sun.text.normalizer.VersionInfo getAge(int);
    descriptor: (I)Lsun/text/normalizer/VersionInfo;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // int ch
         0: .line 291
            iload 0 /* ch */
            iflt 1
            iload 0 /* ch */
            ldc 1114111
            if_icmple 2
         1: .line 292
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Codepoint out of bounds"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 294
      StackMap locals:
      StackMap stack:
            getstatic sun.text.normalizer.UCharacter.PROPERTY_:Lsun/text/normalizer/UCharacterProperty;
            iload 0 /* ch */
            invokevirtual sun.text.normalizer.UCharacterProperty.getAge:(I)Lsun/text/normalizer/VersionInfo;
            areturn
        end local 0 // int ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0    ch  I
    MethodParameters:
      Name  Flags
      ch    

  private static int getEuropeanDigit(int);
    descriptor: (I)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // int ch
         0: .line 356
            iload 0 /* ch */
            bipush 122
            if_icmple 1
            iload 0 /* ch */
            ldc 65313
            if_icmplt 3
         1: .line 357
      StackMap locals:
      StackMap stack:
            iload 0 /* ch */
            bipush 65
            if_icmplt 3
            iload 0 /* ch */
            bipush 90
            if_icmple 2
            iload 0 /* ch */
            bipush 97
            if_icmplt 3
         2: .line 358
      StackMap locals:
      StackMap stack:
            iload 0 /* ch */
            ldc 65370
            if_icmpgt 3
            iload 0 /* ch */
            ldc 65338
            if_icmple 4
            iload 0 /* ch */
            ldc 65345
            if_icmpge 4
         3: .line 359
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
         4: .line 361
      StackMap locals:
      StackMap stack:
            iload 0 /* ch */
            bipush 122
            if_icmpgt 8
         5: .line 363
            iload 0 /* ch */
            bipush 10
            iadd
            iload 0 /* ch */
            bipush 90
            if_icmpgt 6
            bipush 65
            goto 7
      StackMap locals:
      StackMap stack: int
         6: bipush 97
      StackMap locals: int
      StackMap stack: int int
         7: isub
            ireturn
         8: .line 366
      StackMap locals:
      StackMap stack:
            iload 0 /* ch */
            ldc 65338
            if_icmpgt 10
         9: .line 367
            iload 0 /* ch */
            bipush 10
            iadd
            ldc 65313
            isub
            ireturn
        10: .line 370
      StackMap locals:
      StackMap stack:
            iload 0 /* ch */
            bipush 10
            iadd
            ldc 65345
            isub
            ireturn
        end local 0 // int ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0    ch  I
    MethodParameters:
      Name  Flags
      ch    

  private static int getNumericType(int);
    descriptor: (I)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int props
         0: .line 380
            iload 0 /* props */
            sipush 224
            iand
            iconst_5
            ishr
            ireturn
        end local 0 // int props
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  props  I
    MethodParameters:
       Name  Flags
      props  

  private static final int getProperty(int);
    descriptor: (I)I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // int ch
         0: .line 397
            iload 0 /* ch */
            ldc 55296
            if_icmplt 3
         1: .line 398
            iload 0 /* ch */
            ldc 56319
            if_icmple 11
         2: .line 399
            iload 0 /* ch */
            ldc 65536
            if_icmpge 11
         3: .line 402
      StackMap locals:
      StackMap stack:
            getstatic sun.text.normalizer.UCharacter.PROPERTY_TRIE_DATA_:[C
         4: .line 403
            getstatic sun.text.normalizer.UCharacter.PROPERTY_TRIE_INDEX_:[C
            iload 0 /* ch */
            iconst_5
            ishr
            caload
            iconst_2
            ishl
         5: .line 404
            iload 0 /* ch */
            bipush 31
            iand
         6: .line 403
            iadd
         7: .line 402
            caload
         8: ireturn
         9: .line 405
      StackMap locals:
      StackMap stack: java.lang.ArrayIndexOutOfBoundsException
            pop
        10: .line 406
            getstatic sun.text.normalizer.UCharacter.PROPERTY_INITIAL_VALUE_:I
            ireturn
        11: .line 409
      StackMap locals:
      StackMap stack:
            iload 0 /* ch */
            ldc 56319
            if_icmpgt 17
        12: .line 411
            getstatic sun.text.normalizer.UCharacter.PROPERTY_TRIE_DATA_:[C
        13: .line 412
            getstatic sun.text.normalizer.UCharacter.PROPERTY_TRIE_INDEX_:[C
            sipush 320
            iload 0 /* ch */
            iconst_5
            ishr
            iadd
            caload
            iconst_2
            ishl
        14: .line 413
            iload 0 /* ch */
            bipush 31
            iand
        15: .line 412
            iadd
        16: .line 411
            caload
            ireturn
        17: .line 416
      StackMap locals:
      StackMap stack:
            iload 0 /* ch */
            ldc 1114111
            if_icmpgt 22
        18: .line 420
            getstatic sun.text.normalizer.UCharacter.PROPERTY_:Lsun/text/normalizer/UCharacterProperty;
            getfield sun.text.normalizer.UCharacterProperty.m_trie_:Lsun/text/normalizer/CharTrie;
        19: .line 421
            iload 0 /* ch */
            invokestatic sun.text.normalizer.UTF16.getLeadSurrogate:(I)C
        20: .line 422
            iload 0 /* ch */
            sipush 1023
            iand
            i2c
        21: .line 420
            invokevirtual sun.text.normalizer.CharTrie.getSurrogateValue:(CC)C
            ireturn
        22: .line 428
      StackMap locals:
      StackMap stack:
            getstatic sun.text.normalizer.UCharacter.PROPERTY_INITIAL_VALUE_:I
            ireturn
        end local 0 // int ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   23     0    ch  I
      Exception table:
        from    to  target  type
           3     8       9  Class java.lang.ArrayIndexOutOfBoundsException
    MethodParameters:
      Name  Flags
      ch    
}
SourceFile: "UCharacter.java"
NestMembers:
  sun.text.normalizer.UCharacter$NumericType
InnerClasses:
  public abstract NumericType = sun.text.normalizer.UCharacter$NumericType of sun.text.normalizer.UCharacter