public final class java.lang.Character implements java.io.Serializable, java.lang.Comparable<java.lang.Character>
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: java.lang.Character
  super_class: java.lang.Object
{
  public static final int MIN_RADIX;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

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

  public static final char MIN_VALUE;
    descriptor: C
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final char MAX_VALUE;
    descriptor: C
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 65535

  public static final java.lang.Class<java.lang.Character> TYPE;
    descriptor: Ljava/lang/Class;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Ljava/lang/Class<Ljava/lang/Character;>;

  public static final byte UNASSIGNED;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final byte UPPERCASE_LETTER;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final byte LOWERCASE_LETTER;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final byte TITLECASE_LETTER;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  public static final byte MODIFIER_LETTER;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 4

  public static final byte OTHER_LETTER;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 5

  public static final byte NON_SPACING_MARK;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 6

  public static final byte ENCLOSING_MARK;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 7

  public static final byte COMBINING_SPACING_MARK;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 8

  public static final byte DECIMAL_DIGIT_NUMBER;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 9

  public static final byte LETTER_NUMBER;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 10

  public static final byte OTHER_NUMBER;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 11

  public static final byte SPACE_SEPARATOR;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 12

  public static final byte LINE_SEPARATOR;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 13

  public static final byte PARAGRAPH_SEPARATOR;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 14

  public static final byte CONTROL;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 15

  public static final byte FORMAT;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 16

  public static final byte PRIVATE_USE;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 18

  public static final byte SURROGATE;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 19

  public static final byte DASH_PUNCTUATION;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 20

  public static final byte START_PUNCTUATION;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 21

  public static final byte END_PUNCTUATION;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 22

  public static final byte CONNECTOR_PUNCTUATION;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 23

  public static final byte OTHER_PUNCTUATION;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 24

  public static final byte MATH_SYMBOL;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 25

  public static final byte CURRENCY_SYMBOL;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 26

  public static final byte MODIFIER_SYMBOL;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 27

  public static final byte OTHER_SYMBOL;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 28

  public static final byte INITIAL_QUOTE_PUNCTUATION;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 29

  public static final byte FINAL_QUOTE_PUNCTUATION;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 30

  static final int ERROR;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: -1

  public static final byte DIRECTIONALITY_UNDEFINED;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: -1

  public static final byte DIRECTIONALITY_LEFT_TO_RIGHT;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final byte DIRECTIONALITY_RIGHT_TO_LEFT;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final byte DIRECTIONALITY_RIGHT_TO_LEFT_ARABIC;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final byte DIRECTIONALITY_EUROPEAN_NUMBER;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  public static final byte DIRECTIONALITY_EUROPEAN_NUMBER_SEPARATOR;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 4

  public static final byte DIRECTIONALITY_EUROPEAN_NUMBER_TERMINATOR;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 5

  public static final byte DIRECTIONALITY_ARABIC_NUMBER;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 6

  public static final byte DIRECTIONALITY_COMMON_NUMBER_SEPARATOR;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 7

  public static final byte DIRECTIONALITY_NONSPACING_MARK;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 8

  public static final byte DIRECTIONALITY_BOUNDARY_NEUTRAL;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 9

  public static final byte DIRECTIONALITY_PARAGRAPH_SEPARATOR;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 10

  public static final byte DIRECTIONALITY_SEGMENT_SEPARATOR;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 11

  public static final byte DIRECTIONALITY_WHITESPACE;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 12

  public static final byte DIRECTIONALITY_OTHER_NEUTRALS;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 13

  public static final byte DIRECTIONALITY_LEFT_TO_RIGHT_EMBEDDING;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 14

  public static final byte DIRECTIONALITY_LEFT_TO_RIGHT_OVERRIDE;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 15

  public static final byte DIRECTIONALITY_RIGHT_TO_LEFT_EMBEDDING;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 16

  public static final byte DIRECTIONALITY_RIGHT_TO_LEFT_OVERRIDE;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 17

  public static final byte DIRECTIONALITY_POP_DIRECTIONAL_FORMAT;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 18

  public static final char MIN_HIGH_SURROGATE;
    descriptor: C
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 55296

  public static final char MAX_HIGH_SURROGATE;
    descriptor: C
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 56319

  public static final char MIN_LOW_SURROGATE;
    descriptor: C
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 56320

  public static final char MAX_LOW_SURROGATE;
    descriptor: C
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 57343

  public static final char MIN_SURROGATE;
    descriptor: C
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 55296

  public static final char MAX_SURROGATE;
    descriptor: C
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 57343

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

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

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

  private final char value;
    descriptor: C
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3786198910865385080

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

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 120
            ldc Ljava/lang/Character;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic java.lang.Character.$assertionsDisabled:Z
         3: .line 173
            ldc "char"
            invokestatic java.lang.Class.getPrimitiveClass:(Ljava/lang/String;)Ljava/lang/Class;
            putstatic java.lang.Character.TYPE:Ljava/lang/Class;
         4: .line 4489
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(char);
    descriptor: (C)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.Character this
        start local 1 // char value
         0: .line 2074
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 2075
            aload 0 /* this */
            iload 1 /* value */
            putfield java.lang.Character.value:C
         2: .line 2076
            return
        end local 1 // char value
        end local 0 // java.lang.Character this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljava/lang/Character;
            0    3     1  value  C
    MethodParameters:
       Name  Flags
      value  

  public static java.lang.Character valueOf(char);
    descriptor: (C)Ljava/lang/Character;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // char c
         0: .line 2103
            iload 0 /* c */
            bipush 127
            if_icmpgt 2
         1: .line 2104
            getstatic java.lang.Character$CharacterCache.cache:[Ljava/lang/Character;
            iload 0 /* c */
            aaload
            areturn
         2: .line 2106
      StackMap locals:
      StackMap stack:
            new java.lang.Character
            dup
            iload 0 /* c */
            invokespecial java.lang.Character.<init>:(C)V
            areturn
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     c  C
    MethodParameters:
      Name  Flags
      c     

  public char charValue();
    descriptor: ()C
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.Character this
         0: .line 2115
            aload 0 /* this */
            getfield java.lang.Character.value:C
            ireturn
        end local 0 // java.lang.Character this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/Character;

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.Character this
         0: .line 2123
            aload 0 /* this */
            getfield java.lang.Character.value:C
            ireturn
        end local 0 // java.lang.Character this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/Character;

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.Character this
        start local 1 // java.lang.Object obj
         0: .line 2137
            aload 1 /* obj */
            instanceof java.lang.Character
            ifeq 3
         1: .line 2138
            aload 0 /* this */
            getfield java.lang.Character.value:C
            aload 1 /* obj */
            checkcast java.lang.Character
            invokevirtual java.lang.Character.charValue:()C
            if_icmpne 2
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_0
            ireturn
         3: .line 2140
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.Object obj
        end local 0 // java.lang.Character this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/lang/Character;
            0    4     1   obj  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      obj   

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // java.lang.Character this
         0: .line 2153
            iconst_1
            newarray 5
            dup
            iconst_0
            aload 0 /* this */
            getfield java.lang.Character.value:C
            castore
            astore 1 /* buf */
        start local 1 // char[] buf
         1: .line 2154
            aload 1 /* buf */
            invokestatic java.lang.String.valueOf:([C)Ljava/lang/String;
            areturn
        end local 1 // char[] buf
        end local 0 // java.lang.Character this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/lang/Character;
            1    2     1   buf  [C

  public static java.lang.String toString(char);
    descriptor: (C)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char c
         0: .line 2167
            iload 0 /* c */
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            areturn
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     c  C
    MethodParameters:
      Name  Flags
      c     

  public static boolean isValidCodePoint(int);
    descriptor: (I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 2187
            iload 0 /* codePoint */
            iflt 1
            iload 0 /* codePoint */
            ldc 1114111
            if_icmpgt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public static boolean isSupplementaryCodePoint(int);
    descriptor: (I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 2204
            iload 0 /* codePoint */
            ldc 65536
            if_icmplt 3
         1: .line 2205
            iload 0 /* codePoint */
            ldc 1114111
         2: .line 2204
            if_icmpgt 3
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public static boolean isHighSurrogate(char);
    descriptor: (C)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // char ch
         0: .line 2230
            iload 0 /* ch */
            ldc 55296
            if_icmplt 1
            iload 0 /* ch */
            ldc 56319
            if_icmpgt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public static boolean isLowSurrogate(char);
    descriptor: (C)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // char ch
         0: .line 2252
            iload 0 /* ch */
            ldc 56320
            if_icmplt 1
            iload 0 /* ch */
            ldc 57343
            if_icmpgt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public static boolean isSurrogatePair(char, char);
    descriptor: (CC)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // char high
        start local 1 // char low
         0: .line 2271
            iload 0 /* high */
            invokestatic java.lang.Character.isHighSurrogate:(C)Z
            ifeq 1
            iload 1 /* low */
            invokestatic java.lang.Character.isLowSurrogate:(C)Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // char low
        end local 0 // char high
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  high  C
            0    2     1   low  C
    MethodParameters:
      Name  Flags
      high  
      low   

  public static int charCount(int);
    descriptor: (I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 2291
            iload 0 /* codePoint */
            ldc 65536
            if_icmplt 1
            iconst_2
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public static int toCodePoint(char, char);
    descriptor: (CC)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // char high
        start local 1 // char low
         0: .line 2307
            iload 0 /* high */
            ldc 55296
            isub
            bipush 10
            ishl
         1: .line 2308
            iload 1 /* low */
            ldc 56320
            isub
         2: .line 2307
            iadd
         3: .line 2308
            ldc 65536
         4: .line 2307
            iadd
            ireturn
        end local 1 // char low
        end local 0 // char high
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  high  C
            0    5     1   low  C
    MethodParameters:
      Name  Flags
      high  
      low   

  public static int codePointAt(java.lang.CharSequence, int);
    descriptor: (Ljava/lang/CharSequence;I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // java.lang.CharSequence seq
        start local 1 // int index
         0: .line 2334
            aload 0 /* seq */
            iload 1 /* index */
            iinc 1 /* index */ 1
            invokeinterface java.lang.CharSequence.charAt:(I)C
            istore 2 /* c1 */
        start local 2 // char c1
         1: .line 2335
            iload 2 /* c1 */
            invokestatic java.lang.Character.isHighSurrogate:(C)Z
            ifeq 6
         2: .line 2336
            iload 1 /* index */
            aload 0 /* seq */
            invokeinterface java.lang.CharSequence.length:()I
            if_icmpge 6
         3: .line 2337
            aload 0 /* seq */
            iload 1 /* index */
            invokeinterface java.lang.CharSequence.charAt:(I)C
            istore 3 /* c2 */
        start local 3 // char c2
         4: .line 2338
            iload 3 /* c2 */
            invokestatic java.lang.Character.isLowSurrogate:(C)Z
            ifeq 6
         5: .line 2339
            iload 2 /* c1 */
            iload 3 /* c2 */
            invokestatic java.lang.Character.toCodePoint:(CC)I
            ireturn
        end local 3 // char c2
         6: .line 2343
      StackMap locals: int
      StackMap stack:
            iload 2 /* c1 */
            ireturn
        end local 2 // char c1
        end local 1 // int index
        end local 0 // java.lang.CharSequence seq
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0    seq  Ljava/lang/CharSequence;
            0    7     1  index  I
            1    7     2     c1  C
            4    6     3     c2  C
    MethodParameters:
       Name  Flags
      seq    
      index  

  public static int codePointAt(char[], int);
    descriptor: ([CI)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // char[] a
        start local 1 // int index
         0: .line 2368
            aload 0 /* a */
            iload 1 /* index */
            aload 0 /* a */
            arraylength
            invokestatic java.lang.Character.codePointAtImpl:([CII)I
            ireturn
        end local 1 // int index
        end local 0 // char[] a
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0      a  [C
            0    1     1  index  I
    MethodParameters:
       Name  Flags
      a      
      index  

  public static int codePointAt(char[], int, int);
    descriptor: ([CII)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // char[] a
        start local 1 // int index
        start local 2 // int limit
         0: .line 2397
            iload 1 /* index */
            iload 2 /* limit */
            if_icmpge 1
            iload 2 /* limit */
            iflt 1
            iload 2 /* limit */
            aload 0 /* a */
            arraylength
            if_icmple 2
         1: .line 2398
      StackMap locals:
      StackMap stack:
            new java.lang.IndexOutOfBoundsException
            dup
            invokespecial java.lang.IndexOutOfBoundsException.<init>:()V
            athrow
         2: .line 2400
      StackMap locals:
      StackMap stack:
            aload 0 /* a */
            iload 1 /* index */
            iload 2 /* limit */
            invokestatic java.lang.Character.codePointAtImpl:([CII)I
            ireturn
        end local 2 // int limit
        end local 1 // int index
        end local 0 // char[] a
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0      a  [C
            0    3     1  index  I
            0    3     2  limit  I
    MethodParameters:
       Name  Flags
      a      
      index  
      limit  

  static int codePointAtImpl(char[], int, int);
    descriptor: ([CII)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // char[] a
        start local 1 // int index
        start local 2 // int limit
         0: .line 2404
            aload 0 /* a */
            iload 1 /* index */
            iinc 1 /* index */ 1
            caload
            istore 3 /* c1 */
        start local 3 // char c1
         1: .line 2405
            iload 3 /* c1 */
            invokestatic java.lang.Character.isHighSurrogate:(C)Z
            ifeq 6
         2: .line 2406
            iload 1 /* index */
            iload 2 /* limit */
            if_icmpge 6
         3: .line 2407
            aload 0 /* a */
            iload 1 /* index */
            caload
            istore 4 /* c2 */
        start local 4 // char c2
         4: .line 2408
            iload 4 /* c2 */
            invokestatic java.lang.Character.isLowSurrogate:(C)Z
            ifeq 6
         5: .line 2409
            iload 3 /* c1 */
            iload 4 /* c2 */
            invokestatic java.lang.Character.toCodePoint:(CC)I
            ireturn
        end local 4 // char c2
         6: .line 2413
      StackMap locals: int
      StackMap stack:
            iload 3 /* c1 */
            ireturn
        end local 3 // char c1
        end local 2 // int limit
        end local 1 // int index
        end local 0 // char[] a
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0      a  [C
            0    7     1  index  I
            0    7     2  limit  I
            1    7     3     c1  C
            4    6     4     c2  C
    MethodParameters:
       Name  Flags
      a      
      index  
      limit  

  public static int codePointBefore(java.lang.CharSequence, int);
    descriptor: (Ljava/lang/CharSequence;I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // java.lang.CharSequence seq
        start local 1 // int index
         0: .line 2438
            aload 0 /* seq */
            iinc 1 /* index */ -1
            iload 1 /* index */
            invokeinterface java.lang.CharSequence.charAt:(I)C
            istore 2 /* c2 */
        start local 2 // char c2
         1: .line 2439
            iload 2 /* c2 */
            invokestatic java.lang.Character.isLowSurrogate:(C)Z
            ifeq 6
         2: .line 2440
            iload 1 /* index */
            ifle 6
         3: .line 2441
            aload 0 /* seq */
            iinc 1 /* index */ -1
            iload 1 /* index */
            invokeinterface java.lang.CharSequence.charAt:(I)C
            istore 3 /* c1 */
        start local 3 // char c1
         4: .line 2442
            iload 3 /* c1 */
            invokestatic java.lang.Character.isHighSurrogate:(C)Z
            ifeq 6
         5: .line 2443
            iload 3 /* c1 */
            iload 2 /* c2 */
            invokestatic java.lang.Character.toCodePoint:(CC)I
            ireturn
        end local 3 // char c1
         6: .line 2447
      StackMap locals: int
      StackMap stack:
            iload 2 /* c2 */
            ireturn
        end local 2 // char c2
        end local 1 // int index
        end local 0 // java.lang.CharSequence seq
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0    seq  Ljava/lang/CharSequence;
            0    7     1  index  I
            1    7     2     c2  C
            4    6     3     c1  C
    MethodParameters:
       Name  Flags
      seq    
      index  

  public static int codePointBefore(char[], int);
    descriptor: ([CI)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // char[] a
        start local 1 // int index
         0: .line 2472
            aload 0 /* a */
            iload 1 /* index */
            iconst_0
            invokestatic java.lang.Character.codePointBeforeImpl:([CII)I
            ireturn
        end local 1 // int index
        end local 0 // char[] a
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0      a  [C
            0    1     1  index  I
    MethodParameters:
       Name  Flags
      a      
      index  

  public static int codePointBefore(char[], int, int);
    descriptor: ([CII)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // char[] a
        start local 1 // int index
        start local 2 // int start
         0: .line 2503
            iload 1 /* index */
            iload 2 /* start */
            if_icmple 1
            iload 2 /* start */
            iflt 1
            iload 2 /* start */
            aload 0 /* a */
            arraylength
            if_icmplt 2
         1: .line 2504
      StackMap locals:
      StackMap stack:
            new java.lang.IndexOutOfBoundsException
            dup
            invokespecial java.lang.IndexOutOfBoundsException.<init>:()V
            athrow
         2: .line 2506
      StackMap locals:
      StackMap stack:
            aload 0 /* a */
            iload 1 /* index */
            iload 2 /* start */
            invokestatic java.lang.Character.codePointBeforeImpl:([CII)I
            ireturn
        end local 2 // int start
        end local 1 // int index
        end local 0 // char[] a
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0      a  [C
            0    3     1  index  I
            0    3     2  start  I
    MethodParameters:
       Name  Flags
      a      
      index  
      start  

  static int codePointBeforeImpl(char[], int, int);
    descriptor: ([CII)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // char[] a
        start local 1 // int index
        start local 2 // int start
         0: .line 2510
            aload 0 /* a */
            iinc 1 /* index */ -1
            iload 1 /* index */
            caload
            istore 3 /* c2 */
        start local 3 // char c2
         1: .line 2511
            iload 3 /* c2 */
            invokestatic java.lang.Character.isLowSurrogate:(C)Z
            ifeq 6
         2: .line 2512
            iload 1 /* index */
            iload 2 /* start */
            if_icmple 6
         3: .line 2513
            aload 0 /* a */
            iinc 1 /* index */ -1
            iload 1 /* index */
            caload
            istore 4 /* c1 */
        start local 4 // char c1
         4: .line 2514
            iload 4 /* c1 */
            invokestatic java.lang.Character.isHighSurrogate:(C)Z
            ifeq 6
         5: .line 2515
            iload 4 /* c1 */
            iload 3 /* c2 */
            invokestatic java.lang.Character.toCodePoint:(CC)I
            ireturn
        end local 4 // char c1
         6: .line 2519
      StackMap locals: int
      StackMap stack:
            iload 3 /* c2 */
            ireturn
        end local 3 // char c2
        end local 2 // int start
        end local 1 // int index
        end local 0 // char[] a
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0      a  [C
            0    7     1  index  I
            0    7     2  start  I
            1    7     3     c2  C
            4    6     4     c1  C
    MethodParameters:
       Name  Flags
      a      
      index  
      start  

  public static int toChars(int, char[], int);
    descriptor: (I[CI)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // int codePoint
        start local 1 // char[] dst
        start local 2 // int dstIndex
         0: .line 2554
            iload 0 /* codePoint */
            iflt 1
            iload 0 /* codePoint */
            ldc 1114111
            if_icmple 2
         1: .line 2555
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         2: .line 2557
      StackMap locals:
      StackMap stack:
            iload 0 /* codePoint */
            ldc 65536
            if_icmpge 5
         3: .line 2558
            aload 1 /* dst */
            iload 2 /* dstIndex */
            iload 0 /* codePoint */
            i2c
            castore
         4: .line 2559
            iconst_1
            ireturn
         5: .line 2561
      StackMap locals:
      StackMap stack:
            iload 0 /* codePoint */
            aload 1 /* dst */
            iload 2 /* dstIndex */
            invokestatic java.lang.Character.toSurrogates:(I[CI)V
         6: .line 2562
            iconst_2
            ireturn
        end local 2 // int dstIndex
        end local 1 // char[] dst
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0  codePoint  I
            0    7     1        dst  [C
            0    7     2   dstIndex  I
    MethodParameters:
           Name  Flags
      codePoint  
      dst        
      dstIndex   

  public static char[] toChars(int);
    descriptor: (I)[C
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // int codePoint
         0: .line 2582
            iload 0 /* codePoint */
            iflt 1
            iload 0 /* codePoint */
            ldc 1114111
            if_icmple 2
         1: .line 2583
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         2: .line 2585
      StackMap locals:
      StackMap stack:
            iload 0 /* codePoint */
            ldc 65536
            if_icmpge 4
         3: .line 2586
            iconst_1
            newarray 5
            dup
            iconst_0
            iload 0 /* codePoint */
            i2c
            castore
            areturn
         4: .line 2588
      StackMap locals:
      StackMap stack:
            iconst_2
            newarray 5
            astore 1 /* result */
        start local 1 // char[] result
         5: .line 2589
            iload 0 /* codePoint */
            aload 1 /* result */
            iconst_0
            invokestatic java.lang.Character.toSurrogates:(I[CI)V
         6: .line 2590
            aload 1 /* result */
            areturn
        end local 1 // char[] result
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0  codePoint  I
            5    7     1     result  [C
    MethodParameters:
           Name  Flags
      codePoint  

  static void toSurrogates(int, char[], int);
    descriptor: (I[CI)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // int codePoint
        start local 1 // char[] dst
        start local 2 // int index
         0: .line 2594
            iload 0 /* codePoint */
            ldc 65536
            isub
            istore 3 /* offset */
        start local 3 // int offset
         1: .line 2595
            aload 1 /* dst */
            iload 2 /* index */
            iconst_1
            iadd
            iload 3 /* offset */
            sipush 1023
            iand
            ldc 56320
            iadd
            i2c
            castore
         2: .line 2596
            aload 1 /* dst */
            iload 2 /* index */
            iload 3 /* offset */
            bipush 10
            iushr
            ldc 55296
            iadd
            i2c
            castore
         3: .line 2597
            return
        end local 3 // int offset
        end local 2 // int index
        end local 1 // char[] dst
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0  codePoint  I
            0    4     1        dst  [C
            0    4     2      index  I
            1    4     3     offset  I
    MethodParameters:
           Name  Flags
      codePoint  
      dst        
      index      

  public static int codePointCount(java.lang.CharSequence, int, int);
    descriptor: (Ljava/lang/CharSequence;II)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=3
        start local 0 // java.lang.CharSequence seq
        start local 1 // int beginIndex
        start local 2 // int endIndex
         0: .line 2623
            aload 0 /* seq */
            invokeinterface java.lang.CharSequence.length:()I
            istore 3 /* length */
        start local 3 // int length
         1: .line 2624
            iload 1 /* beginIndex */
            iflt 2
            iload 2 /* endIndex */
            iload 3 /* length */
            if_icmpgt 2
            iload 1 /* beginIndex */
            iload 2 /* endIndex */
            if_icmple 3
         2: .line 2625
      StackMap locals: int
      StackMap stack:
            new java.lang.IndexOutOfBoundsException
            dup
            invokespecial java.lang.IndexOutOfBoundsException.<init>:()V
            athrow
         3: .line 2627
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* n */
        start local 4 // int n
         4: .line 2628
            iload 1 /* beginIndex */
            istore 5 /* i */
        start local 5 // int i
         5: goto 10
         6: .line 2629
      StackMap locals: int int
      StackMap stack:
            iinc 4 /* n */ 1
         7: .line 2630
            aload 0 /* seq */
            iload 5 /* i */
            iinc 5 /* i */ 1
            invokeinterface java.lang.CharSequence.charAt:(I)C
            invokestatic java.lang.Character.isHighSurrogate:(C)Z
            ifeq 10
         8: .line 2631
            iload 5 /* i */
            iload 2 /* endIndex */
            if_icmpge 10
            aload 0 /* seq */
            iload 5 /* i */
            invokeinterface java.lang.CharSequence.charAt:(I)C
            invokestatic java.lang.Character.isLowSurrogate:(C)Z
            ifeq 10
         9: .line 2632
            iinc 5 /* i */ 1
        10: .line 2628
      StackMap locals:
      StackMap stack:
            iload 5 /* i */
            iload 2 /* endIndex */
            if_icmplt 6
        end local 5 // int i
        11: .line 2636
            iload 4 /* n */
            ireturn
        end local 4 // int n
        end local 3 // int length
        end local 2 // int endIndex
        end local 1 // int beginIndex
        end local 0 // java.lang.CharSequence seq
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0         seq  Ljava/lang/CharSequence;
            0   12     1  beginIndex  I
            0   12     2    endIndex  I
            1   12     3      length  I
            4   12     4           n  I
            5   11     5           i  I
    MethodParameters:
            Name  Flags
      seq         
      beginIndex  
      endIndex    

  public static int codePointCount(char[], int, int);
    descriptor: ([CII)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // char[] a
        start local 1 // int offset
        start local 2 // int count
         0: .line 2659
            iload 2 /* count */
            aload 0 /* a */
            arraylength
            iload 1 /* offset */
            isub
            if_icmpgt 1
            iload 1 /* offset */
            iflt 1
            iload 2 /* count */
            ifge 2
         1: .line 2660
      StackMap locals:
      StackMap stack:
            new java.lang.IndexOutOfBoundsException
            dup
            invokespecial java.lang.IndexOutOfBoundsException.<init>:()V
            athrow
         2: .line 2662
      StackMap locals:
      StackMap stack:
            aload 0 /* a */
            iload 1 /* offset */
            iload 2 /* count */
            invokestatic java.lang.Character.codePointCountImpl:([CII)I
            ireturn
        end local 2 // int count
        end local 1 // int offset
        end local 0 // char[] a
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0       a  [C
            0    3     1  offset  I
            0    3     2   count  I
    MethodParameters:
        Name  Flags
      a       
      offset  
      count   

  static int codePointCountImpl(char[], int, int);
    descriptor: ([CII)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=6, args_size=3
        start local 0 // char[] a
        start local 1 // int offset
        start local 2 // int count
         0: .line 2666
            iload 1 /* offset */
            iload 2 /* count */
            iadd
            istore 3 /* endIndex */
        start local 3 // int endIndex
         1: .line 2667
            iconst_0
            istore 4 /* n */
        start local 4 // int n
         2: .line 2668
            iload 1 /* offset */
            istore 5 /* i */
        start local 5 // int i
         3: goto 8
         4: .line 2669
      StackMap locals: int int int
      StackMap stack:
            iinc 4 /* n */ 1
         5: .line 2670
            aload 0 /* a */
            iload 5 /* i */
            iinc 5 /* i */ 1
            caload
            invokestatic java.lang.Character.isHighSurrogate:(C)Z
            ifeq 8
         6: .line 2671
            iload 5 /* i */
            iload 3 /* endIndex */
            if_icmpge 8
            aload 0 /* a */
            iload 5 /* i */
            caload
            invokestatic java.lang.Character.isLowSurrogate:(C)Z
            ifeq 8
         7: .line 2672
            iinc 5 /* i */ 1
         8: .line 2668
      StackMap locals:
      StackMap stack:
            iload 5 /* i */
            iload 3 /* endIndex */
            if_icmplt 4
        end local 5 // int i
         9: .line 2676
            iload 4 /* n */
            ireturn
        end local 4 // int n
        end local 3 // int endIndex
        end local 2 // int count
        end local 1 // int offset
        end local 0 // char[] a
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0         a  [C
            0   10     1    offset  I
            0   10     2     count  I
            1   10     3  endIndex  I
            2   10     4         n  I
            3    9     5         i  I
    MethodParameters:
        Name  Flags
      a       
      offset  
      count   

  public static int offsetByCodePoints(java.lang.CharSequence, int, int);
    descriptor: (Ljava/lang/CharSequence;II)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // java.lang.CharSequence seq
        start local 1 // int index
        start local 2 // int codePointOffset
         0: .line 2703
            aload 0 /* seq */
            invokeinterface java.lang.CharSequence.length:()I
            istore 3 /* length */
        start local 3 // int length
         1: .line 2704
            iload 1 /* index */
            iflt 2
            iload 1 /* index */
            iload 3 /* length */
            if_icmple 3
         2: .line 2705
      StackMap locals: int
      StackMap stack:
            new java.lang.IndexOutOfBoundsException
            dup
            invokespecial java.lang.IndexOutOfBoundsException.<init>:()V
            athrow
         3: .line 2708
      StackMap locals:
      StackMap stack:
            iload 1 /* index */
            istore 4 /* x */
        start local 4 // int x
         4: .line 2709
            iload 2 /* codePointOffset */
            iflt 14
         5: .line 2711
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         6: goto 11
         7: .line 2712
      StackMap locals: int int
      StackMap stack:
            aload 0 /* seq */
            iload 4 /* x */
            iinc 4 /* x */ 1
            invokeinterface java.lang.CharSequence.charAt:(I)C
            invokestatic java.lang.Character.isHighSurrogate:(C)Z
            ifeq 10
         8: .line 2713
            iload 4 /* x */
            iload 3 /* length */
            if_icmpge 10
            aload 0 /* seq */
            iload 4 /* x */
            invokeinterface java.lang.CharSequence.charAt:(I)C
            invokestatic java.lang.Character.isLowSurrogate:(C)Z
            ifeq 10
         9: .line 2714
            iinc 4 /* x */ 1
        10: .line 2711
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 4 /* x */
            iload 3 /* length */
            if_icmpge 12
            iload 5 /* i */
            iload 2 /* codePointOffset */
            if_icmplt 7
        12: .line 2718
      StackMap locals:
      StackMap stack:
            iload 5 /* i */
            iload 2 /* codePointOffset */
            if_icmpge 23
        13: .line 2719
            new java.lang.IndexOutOfBoundsException
            dup
            invokespecial java.lang.IndexOutOfBoundsException.<init>:()V
            athrow
        end local 5 // int i
        14: .line 2723
      StackMap locals:
      StackMap stack:
            iload 2 /* codePointOffset */
            istore 5 /* i */
        start local 5 // int i
        15: goto 20
        16: .line 2724
      StackMap locals: int
      StackMap stack:
            aload 0 /* seq */
            iinc 4 /* x */ -1
            iload 4 /* x */
            invokeinterface java.lang.CharSequence.charAt:(I)C
            invokestatic java.lang.Character.isLowSurrogate:(C)Z
            ifeq 19
        17: .line 2725
            iload 4 /* x */
            ifle 19
            aload 0 /* seq */
            iload 4 /* x */
            iconst_1
            isub
            invokeinterface java.lang.CharSequence.charAt:(I)C
            invokestatic java.lang.Character.isHighSurrogate:(C)Z
            ifeq 19
        18: .line 2726
            iinc 4 /* x */ -1
        19: .line 2723
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        20: iload 4 /* x */
            ifle 21
            iload 5 /* i */
            iflt 16
        21: .line 2730
      StackMap locals:
      StackMap stack:
            iload 5 /* i */
            ifge 23
        22: .line 2731
            new java.lang.IndexOutOfBoundsException
            dup
            invokespecial java.lang.IndexOutOfBoundsException.<init>:()V
            athrow
        end local 5 // int i
        23: .line 2734
      StackMap locals:
      StackMap stack:
            iload 4 /* x */
            ireturn
        end local 4 // int x
        end local 3 // int length
        end local 2 // int codePointOffset
        end local 1 // int index
        end local 0 // java.lang.CharSequence seq
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   24     0              seq  Ljava/lang/CharSequence;
            0   24     1            index  I
            0   24     2  codePointOffset  I
            1   24     3           length  I
            4   24     4                x  I
            6   14     5                i  I
           15   23     5                i  I
    MethodParameters:
                 Name  Flags
      seq              
      index            
      codePointOffset  

  public static int offsetByCodePoints(char[], int, int, int, int);
    descriptor: ([CIIII)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // char[] a
        start local 1 // int start
        start local 2 // int count
        start local 3 // int index
        start local 4 // int codePointOffset
         0: .line 2772
            iload 2 /* count */
            aload 0 /* a */
            arraylength
            iload 1 /* start */
            isub
            if_icmpgt 2
            iload 1 /* start */
            iflt 2
            iload 2 /* count */
            iflt 2
         1: .line 2773
            iload 3 /* index */
            iload 1 /* start */
            if_icmplt 2
            iload 3 /* index */
            iload 1 /* start */
            iload 2 /* count */
            iadd
            if_icmple 3
         2: .line 2774
      StackMap locals:
      StackMap stack:
            new java.lang.IndexOutOfBoundsException
            dup
            invokespecial java.lang.IndexOutOfBoundsException.<init>:()V
            athrow
         3: .line 2776
      StackMap locals:
      StackMap stack:
            aload 0 /* a */
            iload 1 /* start */
            iload 2 /* count */
            iload 3 /* index */
            iload 4 /* codePointOffset */
            invokestatic java.lang.Character.offsetByCodePointsImpl:([CIIII)I
            ireturn
        end local 4 // int codePointOffset
        end local 3 // int index
        end local 2 // int count
        end local 1 // int start
        end local 0 // char[] a
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    4     0                a  [C
            0    4     1            start  I
            0    4     2            count  I
            0    4     3            index  I
            0    4     4  codePointOffset  I
    MethodParameters:
                 Name  Flags
      a                
      start            
      count            
      index            
      codePointOffset  

  static int offsetByCodePointsImpl(char[], int, int, int, int);
    descriptor: ([CIIII)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=8, args_size=5
        start local 0 // char[] a
        start local 1 // int start
        start local 2 // int count
        start local 3 // int index
        start local 4 // int codePointOffset
         0: .line 2781
            iload 3 /* index */
            istore 5 /* x */
        start local 5 // int x
         1: .line 2782
            iload 4 /* codePointOffset */
            iflt 12
         2: .line 2783
            iload 1 /* start */
            iload 2 /* count */
            iadd
            istore 6 /* limit */
        start local 6 // int limit
         3: .line 2785
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         4: goto 9
         5: .line 2786
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* a */
            iload 5 /* x */
            iinc 5 /* x */ 1
            caload
            invokestatic java.lang.Character.isHighSurrogate:(C)Z
            ifeq 8
         6: .line 2787
            iload 5 /* x */
            iload 6 /* limit */
            if_icmpge 8
            aload 0 /* a */
            iload 5 /* x */
            caload
            invokestatic java.lang.Character.isLowSurrogate:(C)Z
            ifeq 8
         7: .line 2788
            iinc 5 /* x */ 1
         8: .line 2785
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 5 /* x */
            iload 6 /* limit */
            if_icmpge 10
            iload 7 /* i */
            iload 4 /* codePointOffset */
            if_icmplt 5
        10: .line 2792
      StackMap locals:
      StackMap stack:
            iload 7 /* i */
            iload 4 /* codePointOffset */
            if_icmpge 21
        11: .line 2793
            new java.lang.IndexOutOfBoundsException
            dup
            invokespecial java.lang.IndexOutOfBoundsException.<init>:()V
            athrow
        end local 7 // int i
        end local 6 // int limit
        12: .line 2797
      StackMap locals:
      StackMap stack:
            iload 4 /* codePointOffset */
            istore 6 /* i */
        start local 6 // int i
        13: goto 18
        14: .line 2798
      StackMap locals: int
      StackMap stack:
            aload 0 /* a */
            iinc 5 /* x */ -1
            iload 5 /* x */
            caload
            invokestatic java.lang.Character.isLowSurrogate:(C)Z
            ifeq 17
        15: .line 2799
            iload 5 /* x */
            iload 1 /* start */
            if_icmple 17
            aload 0 /* a */
            iload 5 /* x */
            iconst_1
            isub
            caload
            invokestatic java.lang.Character.isHighSurrogate:(C)Z
            ifeq 17
        16: .line 2800
            iinc 5 /* x */ -1
        17: .line 2797
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        18: iload 5 /* x */
            iload 1 /* start */
            if_icmple 19
            iload 6 /* i */
            iflt 14
        19: .line 2804
      StackMap locals:
      StackMap stack:
            iload 6 /* i */
            ifge 21
        20: .line 2805
            new java.lang.IndexOutOfBoundsException
            dup
            invokespecial java.lang.IndexOutOfBoundsException.<init>:()V
            athrow
        end local 6 // int i
        21: .line 2808
      StackMap locals:
      StackMap stack:
            iload 5 /* x */
            ireturn
        end local 5 // int x
        end local 4 // int codePointOffset
        end local 3 // int index
        end local 2 // int count
        end local 1 // int start
        end local 0 // char[] a
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   22     0                a  [C
            0   22     1            start  I
            0   22     2            count  I
            0   22     3            index  I
            0   22     4  codePointOffset  I
            1   22     5                x  I
            3   12     6            limit  I
            4   12     7                i  I
           13   21     6                i  I
    MethodParameters:
                 Name  Flags
      a                
      start            
      count            
      index            
      codePointOffset  

  public static boolean isLowerCase(char);
    descriptor: (C)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char ch
         0: .line 2842
            iload 0 /* ch */
            invokestatic java.lang.Character.isLowerCase:(I)Z
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public static boolean isLowerCase(int);
    descriptor: (I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 2873
            iload 0 /* codePoint */
            invokestatic java.lang.Character.getType:(I)I
            iconst_2
            if_icmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public static boolean isUpperCase(char);
    descriptor: (C)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char ch
         0: .line 2907
            iload 0 /* ch */
            invokestatic java.lang.Character.isUpperCase:(I)Z
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public static boolean isUpperCase(int);
    descriptor: (I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 2936
            iload 0 /* codePoint */
            invokestatic java.lang.Character.getType:(I)I
            iconst_1
            if_icmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public static boolean isTitleCase(char);
    descriptor: (C)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char ch
         0: .line 2977
            iload 0 /* ch */
            invokestatic java.lang.Character.isTitleCase:(I)Z
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public static boolean isTitleCase(int);
    descriptor: (I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 3013
            iload 0 /* codePoint */
            invokestatic java.lang.Character.getType:(I)I
            iconst_3
            if_icmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public static boolean isDigit(char);
    descriptor: (C)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char ch
         0: .line 3052
            iload 0 /* ch */
            invokestatic java.lang.Character.isDigit:(I)Z
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public static boolean isDigit(int);
    descriptor: (I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 3086
            iload 0 /* codePoint */
            invokestatic java.lang.Character.getType:(I)I
            bipush 9
            if_icmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public static boolean isDefined(char);
    descriptor: (C)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char ch
         0: .line 3115
            iload 0 /* ch */
            invokestatic java.lang.Character.isDefined:(I)Z
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public static boolean isDefined(int);
    descriptor: (I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 3139
            iload 0 /* codePoint */
            invokestatic java.lang.Character.getType:(I)I
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public static boolean isLetter(char);
    descriptor: (C)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char ch
         0: .line 3178
            iload 0 /* ch */
            invokestatic java.lang.Character.isLetter:(I)Z
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public static boolean isLetter(int);
    descriptor: (I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 3211
            bipush 62
         1: .line 3215
            iload 0 /* codePoint */
            invokestatic java.lang.Character.getType:(I)I
         2: .line 3211
            ishr
         3: .line 3215
            iconst_1
         4: .line 3211
            iand
            ifeq 5
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         5: iconst_0
            ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public static boolean isLetterOrDigit(char);
    descriptor: (C)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char ch
         0: .line 3244
            iload 0 /* ch */
            invokestatic java.lang.Character.isLetterOrDigit:(I)Z
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public static boolean isLetterOrDigit(int);
    descriptor: (I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 3265
            sipush 574
         1: .line 3270
            iload 0 /* codePoint */
            invokestatic java.lang.Character.getType:(I)I
         2: .line 3265
            ishr
         3: .line 3270
            iconst_1
         4: .line 3265
            iand
            ifeq 5
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         5: iconst_0
            ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public static boolean isJavaLetter(char);
    descriptor: (C)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char ch
         0: .line 3301
            iload 0 /* ch */
            invokestatic java.lang.Character.isJavaIdentifierStart:(C)Z
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  C
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    RuntimeVisibleTypeAnnotations: 
      METHOD_RETURN
        java.lang.Deprecated()
    MethodParameters:
      Name  Flags
      ch    

  public static boolean isJavaLetterOrDigit(char);
    descriptor: (C)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char ch
         0: .line 3337
            iload 0 /* ch */
            invokestatic java.lang.Character.isJavaIdentifierPart:(C)Z
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  C
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    RuntimeVisibleTypeAnnotations: 
      METHOD_RETURN
        java.lang.Deprecated()
    MethodParameters:
      Name  Flags
      ch    

  public static boolean isJavaIdentifierStart(char);
    descriptor: (C)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char ch
         0: .line 3368
            iload 0 /* ch */
            invokestatic java.lang.Character.isJavaIdentifierStart:(I)Z
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public static boolean isJavaIdentifierStart(int);
    descriptor: (I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 3397
            iload 0 /* codePoint */
            invokestatic java.lang.CharacterData.of:(I)Ljava/lang/CharacterData;
            iload 0 /* codePoint */
            invokevirtual java.lang.CharacterData.isJavaIdentifierStart:(I)Z
            ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public static boolean isJavaIdentifierPart(char);
    descriptor: (C)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char ch
         0: .line 3434
            iload 0 /* ch */
            invokestatic java.lang.Character.isJavaIdentifierPart:(I)Z
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public static boolean isJavaIdentifierPart(int);
    descriptor: (I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 3467
            iload 0 /* codePoint */
            invokestatic java.lang.CharacterData.of:(I)Ljava/lang/CharacterData;
            iload 0 /* codePoint */
            invokevirtual java.lang.CharacterData.isJavaIdentifierPart:(I)Z
            ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public static boolean isUnicodeIdentifierStart(char);
    descriptor: (C)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char ch
         0: .line 3496
            iload 0 /* ch */
            invokestatic java.lang.Character.isUnicodeIdentifierStart:(I)Z
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public static boolean isUnicodeIdentifierStart(int);
    descriptor: (I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 3520
            iload 0 /* codePoint */
            invokestatic java.lang.CharacterData.of:(I)Ljava/lang/CharacterData;
            iload 0 /* codePoint */
            invokevirtual java.lang.CharacterData.isUnicodeIdentifierStart:(I)Z
            ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public static boolean isUnicodeIdentifierPart(char);
    descriptor: (C)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char ch
         0: .line 3555
            iload 0 /* ch */
            invokestatic java.lang.Character.isUnicodeIdentifierPart:(I)Z
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public static boolean isUnicodeIdentifierPart(int);
    descriptor: (I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 3584
            iload 0 /* codePoint */
            invokestatic java.lang.CharacterData.of:(I)Ljava/lang/CharacterData;
            iload 0 /* codePoint */
            invokevirtual java.lang.CharacterData.isUnicodeIdentifierPart:(I)Z
            ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public static boolean isIdentifierIgnorable(char);
    descriptor: (C)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char ch
         0: .line 3619
            iload 0 /* ch */
            invokestatic java.lang.Character.isIdentifierIgnorable:(I)Z
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public static boolean isIdentifierIgnorable(int);
    descriptor: (I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 3649
            iload 0 /* codePoint */
            invokestatic java.lang.CharacterData.of:(I)Ljava/lang/CharacterData;
            iload 0 /* codePoint */
            invokevirtual java.lang.CharacterData.isIdentifierIgnorable:(I)Z
            ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public static char toLowerCase(char);
    descriptor: (C)C
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char ch
         0: .line 3680
            iload 0 /* ch */
            invokestatic java.lang.Character.toLowerCase:(I)I
            i2c
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public static int toLowerCase(int);
    descriptor: (I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 3709
            iload 0 /* codePoint */
            invokestatic java.lang.CharacterData.of:(I)Ljava/lang/CharacterData;
            iload 0 /* codePoint */
            invokevirtual java.lang.CharacterData.toLowerCase:(I)I
            ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public static char toUpperCase(char);
    descriptor: (C)C
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char ch
         0: .line 3740
            iload 0 /* ch */
            invokestatic java.lang.Character.toUpperCase:(I)I
            i2c
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public static int toUpperCase(int);
    descriptor: (I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 3769
            iload 0 /* codePoint */
            invokestatic java.lang.CharacterData.of:(I)Ljava/lang/CharacterData;
            iload 0 /* codePoint */
            invokevirtual java.lang.CharacterData.toUpperCase:(I)I
            ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public static char toTitleCase(char);
    descriptor: (C)C
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char ch
         0: .line 3801
            iload 0 /* ch */
            invokestatic java.lang.Character.toTitleCase:(I)I
            i2c
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public static int toTitleCase(int);
    descriptor: (I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 3828
            iload 0 /* codePoint */
            invokestatic java.lang.CharacterData.of:(I)Ljava/lang/CharacterData;
            iload 0 /* codePoint */
            invokevirtual java.lang.CharacterData.toTitleCase:(I)I
            ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public static int digit(char, int);
    descriptor: (CI)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // char ch
        start local 1 // int radix
         0: .line 3870
            iload 0 /* ch */
            iload 1 /* radix */
            invokestatic java.lang.Character.digit:(II)I
            ireturn
        end local 1 // int radix
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0     ch  C
            0    1     1  radix  I
    MethodParameters:
       Name  Flags
      ch     
      radix  

  public static int digit(int, int);
    descriptor: (II)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // int codePoint
        start local 1 // int radix
         0: .line 3908
            iload 0 /* codePoint */
            invokestatic java.lang.CharacterData.of:(I)Ljava/lang/CharacterData;
            iload 0 /* codePoint */
            iload 1 /* radix */
            invokevirtual java.lang.CharacterData.digit:(II)I
            ireturn
        end local 1 // int radix
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  codePoint  I
            0    1     1      radix  I
    MethodParameters:
           Name  Flags
      codePoint  
      radix      

  public static int getNumericValue(char);
    descriptor: (C)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char ch
         0: .line 3946
            iload 0 /* ch */
            invokestatic java.lang.Character.getNumericValue:(I)I
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public static int getNumericValue(int);
    descriptor: (I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 3979
            iload 0 /* codePoint */
            invokestatic java.lang.CharacterData.of:(I)Ljava/lang/CharacterData;
            iload 0 /* codePoint */
            invokevirtual java.lang.CharacterData.getNumericValue:(I)I
            ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public static boolean isSpace(char);
    descriptor: (C)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // char ch
         0: .line 4008
            iload 0 /* ch */
            bipush 32
            if_icmpgt 9
         1: .line 4009
            ldc 4294981120
         2: .line 4013
            iload 0 /* ch */
         3: .line 4009
            lshr
         4: .line 4013
            lconst_1
         5: .line 4009
            land
         6: .line 4013
            lconst_0
         7: .line 4009
            lcmp
            ifeq 9
         8: .line 4008
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         9: iconst_0
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0    ch  C
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    RuntimeVisibleTypeAnnotations: 
      METHOD_RETURN
        java.lang.Deprecated()
    MethodParameters:
      Name  Flags
      ch    

  public static boolean isSpaceChar(char);
    descriptor: (C)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char ch
         0: .line 4041
            iload 0 /* ch */
            invokestatic java.lang.Character.isSpaceChar:(I)Z
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public static boolean isSpaceChar(int);
    descriptor: (I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 4064
            sipush 28672
         1: .line 4066
            iload 0 /* codePoint */
            invokestatic java.lang.Character.getType:(I)I
         2: .line 4064
            ishr
         3: .line 4066
            iconst_1
         4: .line 4064
            iand
            ifeq 5
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         5: iconst_0
            ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public static boolean isWhitespace(char);
    descriptor: (C)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char ch
         0: .line 4102
            iload 0 /* ch */
            invokestatic java.lang.Character.isWhitespace:(I)Z
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public static boolean isWhitespace(int);
    descriptor: (I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 4134
            iload 0 /* codePoint */
            invokestatic java.lang.CharacterData.of:(I)Ljava/lang/CharacterData;
            iload 0 /* codePoint */
            invokevirtual java.lang.CharacterData.isWhitespace:(I)Z
            ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public static boolean isISOControl(char);
    descriptor: (C)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char ch
         0: .line 4158
            iload 0 /* ch */
            invokestatic java.lang.Character.isISOControl:(I)Z
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public static boolean isISOControl(int);
    descriptor: (I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 4176
            iload 0 /* codePoint */
            iflt 1
            iload 0 /* codePoint */
            bipush 31
            if_icmple 4
         1: .line 4177
      StackMap locals:
      StackMap stack:
            iload 0 /* codePoint */
            bipush 127
            if_icmplt 3
            iload 0 /* codePoint */
            sipush 159
         2: .line 4176
            if_icmple 4
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         4: iconst_1
            ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public static int getType(char);
    descriptor: (C)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char ch
         0: .line 4224
            iload 0 /* ch */
            invokestatic java.lang.Character.getType:(I)I
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public static int getType(int);
    descriptor: (I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 4266
            iload 0 /* codePoint */
            invokestatic java.lang.CharacterData.of:(I)Ljava/lang/CharacterData;
            iload 0 /* codePoint */
            invokevirtual java.lang.CharacterData.getType:(I)I
            ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public static char forDigit(int, int);
    descriptor: (II)C
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // int digit
        start local 1 // int radix
         0: .line 4294
            iload 0 /* digit */
            iload 1 /* radix */
            if_icmpge 1
            iload 0 /* digit */
            ifge 2
         1: .line 4295
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 4297
      StackMap locals:
      StackMap stack:
            iload 1 /* radix */
            iconst_2
            if_icmplt 3
            iload 1 /* radix */
            bipush 36
            if_icmple 4
         3: .line 4298
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         4: .line 4300
      StackMap locals:
      StackMap stack:
            iload 0 /* digit */
            bipush 10
            if_icmpge 6
         5: .line 4301
            bipush 48
            iload 0 /* digit */
            iadd
            i2c
            ireturn
         6: .line 4303
      StackMap locals:
      StackMap stack:
            bipush 87
            iload 0 /* digit */
            iadd
            i2c
            ireturn
        end local 1 // int radix
        end local 0 // int digit
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0  digit  I
            0    7     1  radix  I
    MethodParameters:
       Name  Flags
      digit  
      radix  

  public static byte getDirectionality(char);
    descriptor: (C)B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char ch
         0: .line 4344
            iload 0 /* ch */
            invokestatic java.lang.Character.getDirectionality:(I)B
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public static byte getDirectionality(int);
    descriptor: (I)B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 4381
            iload 0 /* codePoint */
            invokestatic java.lang.CharacterData.of:(I)Ljava/lang/CharacterData;
            iload 0 /* codePoint */
            invokevirtual java.lang.CharacterData.getDirectionality:(I)B
            ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public static boolean isMirrored(char);
    descriptor: (C)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char ch
         0: .line 4404
            iload 0 /* ch */
            invokestatic java.lang.Character.isMirrored:(I)Z
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public static boolean isMirrored(int);
    descriptor: (I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 4423
            iload 0 /* codePoint */
            invokestatic java.lang.CharacterData.of:(I)Ljava/lang/CharacterData;
            iload 0 /* codePoint */
            invokevirtual java.lang.CharacterData.isMirrored:(I)Z
            ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public int compareTo(java.lang.Character);
    descriptor: (Ljava/lang/Character;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.Character this
        start local 1 // java.lang.Character anotherCharacter
         0: .line 4442
            aload 0 /* this */
            getfield java.lang.Character.value:C
            aload 1 /* anotherCharacter */
            getfield java.lang.Character.value:C
            isub
            ireturn
        end local 1 // java.lang.Character anotherCharacter
        end local 0 // java.lang.Character this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    1     0              this  Ljava/lang/Character;
            0    1     1  anotherCharacter  Ljava/lang/Character;
    MethodParameters:
                  Name  Flags
      anotherCharacter  

  static int toUpperCaseEx(int);
    descriptor: (I)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 4461
            getstatic java.lang.Character.$assertionsDisabled:Z
            ifne 1
            iload 0 /* codePoint */
            invokestatic java.lang.Character.isValidCodePoint:(I)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 4462
      StackMap locals:
      StackMap stack:
            iload 0 /* codePoint */
            invokestatic java.lang.CharacterData.of:(I)Ljava/lang/CharacterData;
            iload 0 /* codePoint */
            invokevirtual java.lang.CharacterData.toUpperCaseEx:(I)I
            ireturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  static char[] toUpperCaseCharArray(int);
    descriptor: (I)[C
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int codePoint
         0: .line 4478
            getstatic java.lang.Character.$assertionsDisabled:Z
            ifne 3
            iload 0 /* codePoint */
            invokestatic java.lang.Character.isValidCodePoint:(I)Z
            ifeq 2
         1: .line 4479
            iload 0 /* codePoint */
            invokestatic java.lang.Character.isSupplementaryCodePoint:(I)Z
            ifeq 3
      StackMap locals:
      StackMap stack:
         2: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 4480
      StackMap locals:
      StackMap stack:
            iload 0 /* codePoint */
            invokestatic java.lang.CharacterData.of:(I)Ljava/lang/CharacterData;
            iload 0 /* codePoint */
            invokevirtual java.lang.CharacterData.toUpperCaseCharArray:(I)[C
            areturn
        end local 0 // int codePoint
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public static char reverseBytes(char);
    descriptor: (C)C
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // char ch
         0: .line 4500
            iload 0 /* ch */
            ldc 65280
            iand
            bipush 8
            ishr
            iload 0 /* ch */
            bipush 8
            ishl
            ior
            i2c
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public int compareTo(java.lang.Object);
    descriptor: (Ljava/lang/Object;)I
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            checkcast java.lang.Character
            invokevirtual java.lang.Character.compareTo:(Ljava/lang/Character;)I
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: Ljava/lang/Object;Ljava/io/Serializable;Ljava/lang/Comparable<Ljava/lang/Character;>;
SourceFile: "Character.java"
NestMembers:
  java.lang.Character$CharacterCache  java.lang.Character$Subset  java.lang.Character$UnicodeBlock
InnerClasses:
  private CharacterCache = java.lang.Character$CharacterCache of java.lang.Character
  public Subset = java.lang.Character$Subset of java.lang.Character
  public final UnicodeBlock = java.lang.Character$UnicodeBlock of java.lang.Character