final class java.text.RBTableBuilder
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: java.text.RBTableBuilder
  super_class: java.lang.Object
{
  static final int CHARINDEX;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 1879048192

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

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

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

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

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

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

  private java.text.RBCollationTables$BuildAPI tables;
    descriptor: Ljava/text/RBCollationTables$BuildAPI;
    flags: (0x0002) ACC_PRIVATE

  private java.text.MergeCollation mPattern;
    descriptor: Ljava/text/MergeCollation;
    flags: (0x0002) ACC_PRIVATE

  private boolean isOverIgnore;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private char[] keyBuf;
    descriptor: [C
    flags: (0x0002) ACC_PRIVATE

  private sun.text.IntHashtable contractFlags;
    descriptor: Lsun/text/IntHashtable;
    flags: (0x0002) ACC_PRIVATE

  private boolean frenchSec;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean seAsianSwapping;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private sun.text.UCompactIntArray mapping;
    descriptor: Lsun/text/UCompactIntArray;
    flags: (0x0002) ACC_PRIVATE

  private java.util.Vector<java.util.Vector<java.text.EntryPair>> contractTable;
    descriptor: Ljava/util/Vector;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Vector<Ljava/util/Vector<Ljava/text/EntryPair;>;>;

  private java.util.Vector<int[]> expandTable;
    descriptor: Ljava/util/Vector;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Vector<[I>;

  private short maxSecOrder;
    descriptor: S
    flags: (0x0002) ACC_PRIVATE

  private short maxTerOrder;
    descriptor: S
    flags: (0x0002) ACC_PRIVATE

  public void <init>(java.text.RBCollationTables$BuildAPI);
    descriptor: (Ljava/text/RBCollationTables$BuildAPI;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.text.RBTableBuilder this
        start local 1 // java.text.RBCollationTables$BuildAPI tables
         0: .line 65
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 596
            aload 0 /* this */
            aconst_null
            putfield java.text.RBTableBuilder.tables:Ljava/text/RBCollationTables$BuildAPI;
         2: .line 597
            aload 0 /* this */
            aconst_null
            putfield java.text.RBTableBuilder.mPattern:Ljava/text/MergeCollation;
         3: .line 598
            aload 0 /* this */
            iconst_0
            putfield java.text.RBTableBuilder.isOverIgnore:Z
         4: .line 599
            aload 0 /* this */
            iconst_5
            newarray 5
            putfield java.text.RBTableBuilder.keyBuf:[C
         5: .line 600
            aload 0 /* this */
            new sun.text.IntHashtable
            dup
            bipush 100
            invokespecial sun.text.IntHashtable.<init>:(I)V
            putfield java.text.RBTableBuilder.contractFlags:Lsun/text/IntHashtable;
         6: .line 605
            aload 0 /* this */
            iconst_0
            putfield java.text.RBTableBuilder.frenchSec:Z
         7: .line 606
            aload 0 /* this */
            iconst_0
            putfield java.text.RBTableBuilder.seAsianSwapping:Z
         8: .line 608
            aload 0 /* this */
            aconst_null
            putfield java.text.RBTableBuilder.mapping:Lsun/text/UCompactIntArray;
         9: .line 609
            aload 0 /* this */
            aconst_null
            putfield java.text.RBTableBuilder.contractTable:Ljava/util/Vector;
        10: .line 610
            aload 0 /* this */
            aconst_null
            putfield java.text.RBTableBuilder.expandTable:Ljava/util/Vector;
        11: .line 612
            aload 0 /* this */
            iconst_0
            putfield java.text.RBTableBuilder.maxSecOrder:S
        12: .line 613
            aload 0 /* this */
            iconst_0
            putfield java.text.RBTableBuilder.maxTerOrder:S
        13: .line 66
            aload 0 /* this */
            aload 1 /* tables */
            putfield java.text.RBTableBuilder.tables:Ljava/text/RBCollationTables$BuildAPI;
        14: .line 67
            return
        end local 1 // java.text.RBCollationTables$BuildAPI tables
        end local 0 // java.text.RBTableBuilder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   15     0    this  Ljava/text/RBTableBuilder;
            0   15     1  tables  Ljava/text/RBCollationTables$BuildAPI;
    MethodParameters:
        Name  Flags
      tables  

  public void build(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=9, args_size=3
        start local 0 // java.text.RBTableBuilder this
        start local 1 // java.lang.String pattern
        start local 2 // int decmp
         0: .line 81
            aload 1 /* pattern */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 2
         1: .line 82
            new java.text.ParseException
            dup
            ldc "Build rules empty."
            iconst_0
            invokespecial java.text.ParseException.<init>:(Ljava/lang/String;I)V
            athrow
         2: .line 85
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new sun.text.UCompactIntArray
            dup
            iconst_m1
            invokespecial sun.text.UCompactIntArray.<init>:(I)V
            putfield java.text.RBTableBuilder.mapping:Lsun/text/UCompactIntArray;
         3: .line 104
            aload 1 /* pattern */
            invokestatic sun.text.normalizer.NormalizerImpl.canonicalDecomposeWithSingleQuotation:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* pattern */
         4: .line 114
            aload 0 /* this */
            new java.text.MergeCollation
            dup
            aload 1 /* pattern */
            invokespecial java.text.MergeCollation.<init>:(Ljava/lang/String;)V
            putfield java.text.RBTableBuilder.mPattern:Ljava/text/MergeCollation;
         5: .line 116
            iconst_0
            istore 5 /* order */
        start local 5 // int order
         6: .line 119
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         7: goto 33
         8: .line 120
      StackMap locals: java.text.RBTableBuilder java.lang.String int top top int int
      StackMap stack:
            aload 0 /* this */
            getfield java.text.RBTableBuilder.mPattern:Ljava/text/MergeCollation;
            iload 6 /* i */
            invokevirtual java.text.MergeCollation.getItemAt:(I)Ljava/text/PatternEntry;
            astore 7 /* entry */
        start local 7 // java.text.PatternEntry entry
         9: .line 121
            aload 7 /* entry */
            ifnull 32
        10: .line 122
            aload 7 /* entry */
            invokevirtual java.text.PatternEntry.getChars:()Ljava/lang/String;
            astore 4 /* groupChars */
        start local 4 // java.lang.String groupChars
        11: .line 123
            aload 4 /* groupChars */
            invokevirtual java.lang.String.length:()I
            iconst_1
            if_icmple 18
        12: .line 124
            aload 4 /* groupChars */
            aload 4 /* groupChars */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.charAt:(I)C
            lookupswitch { // 2
                   33: 16
                   64: 13
              default: 18
          }
        13: .line 126
      StackMap locals: java.text.RBTableBuilder java.lang.String int top java.lang.String int int java.text.PatternEntry
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield java.text.RBTableBuilder.frenchSec:Z
        14: .line 127
            aload 4 /* groupChars */
            iconst_0
            aload 4 /* groupChars */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 4 /* groupChars */
        15: .line 128
            goto 18
        16: .line 130
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield java.text.RBTableBuilder.seAsianSwapping:Z
        17: .line 131
            aload 4 /* groupChars */
            iconst_0
            aload 4 /* groupChars */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 4 /* groupChars */
        18: .line 136
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* entry */
            invokevirtual java.text.PatternEntry.getStrength:()I
            iload 5 /* order */
            invokevirtual java.text.RBTableBuilder.increment:(II)I
            istore 5 /* order */
        19: .line 137
            aload 7 /* entry */
            invokevirtual java.text.PatternEntry.getExtension:()Ljava/lang/String;
            astore 3 /* expChars */
        start local 3 // java.lang.String expChars
        20: .line 139
            aload 3 /* expChars */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 23
        21: .line 140
            aload 0 /* this */
            aload 4 /* groupChars */
            aload 3 /* expChars */
            iload 5 /* order */
            invokevirtual java.text.RBTableBuilder.addExpandOrder:(Ljava/lang/String;Ljava/lang/String;I)V
        22: .line 141
            goto 32
      StackMap locals: java.text.RBTableBuilder java.lang.String int java.lang.String java.lang.String int int java.text.PatternEntry
      StackMap stack:
        23: aload 4 /* groupChars */
            invokevirtual java.lang.String.length:()I
            iconst_1
            if_icmple 30
        24: .line 142
            aload 4 /* groupChars */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            istore 8 /* ch */
        start local 8 // char ch
        25: .line 143
            iload 8 /* ch */
            invokestatic java.lang.Character.isHighSurrogate:(C)Z
            ifeq 28
            aload 4 /* groupChars */
            invokevirtual java.lang.String.length:()I
            iconst_2
            if_icmpne 28
        26: .line 144
            aload 0 /* this */
            iload 8 /* ch */
            aload 4 /* groupChars */
            iconst_1
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.toCodePoint:(CC)I
            iload 5 /* order */
            invokevirtual java.text.RBTableBuilder.addOrder:(II)V
        27: .line 145
            goto 32
        28: .line 146
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 4 /* groupChars */
            iload 5 /* order */
            invokevirtual java.text.RBTableBuilder.addContractOrder:(Ljava/lang/String;I)V
        end local 8 // char ch
        29: .line 148
            goto 32
        30: .line 149
      StackMap locals:
      StackMap stack:
            aload 4 /* groupChars */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            istore 8 /* ch */
        start local 8 // char ch
        31: .line 150
            aload 0 /* this */
            iload 8 /* ch */
            iload 5 /* order */
            invokevirtual java.text.RBTableBuilder.addOrder:(II)V
        end local 8 // char ch
        end local 7 // java.text.PatternEntry entry
        end local 4 // java.lang.String groupChars
        end local 3 // java.lang.String expChars
        32: .line 119
      StackMap locals: java.text.RBTableBuilder java.lang.String int top top int int
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        33: iload 6 /* i */
            aload 0 /* this */
            getfield java.text.RBTableBuilder.mPattern:Ljava/text/MergeCollation;
            invokevirtual java.text.MergeCollation.getCount:()I
            if_icmplt 8
        end local 6 // int i
        34: .line 154
            aload 0 /* this */
            invokevirtual java.text.RBTableBuilder.addComposedChars:()V
        35: .line 156
            aload 0 /* this */
            invokevirtual java.text.RBTableBuilder.commit:()V
        36: .line 157
            aload 0 /* this */
            getfield java.text.RBTableBuilder.mapping:Lsun/text/UCompactIntArray;
            invokevirtual sun.text.UCompactIntArray.compact:()V
        37: .line 167
            aload 0 /* this */
            getfield java.text.RBTableBuilder.tables:Ljava/text/RBCollationTables$BuildAPI;
            aload 0 /* this */
            getfield java.text.RBTableBuilder.frenchSec:Z
            aload 0 /* this */
            getfield java.text.RBTableBuilder.seAsianSwapping:Z
            aload 0 /* this */
            getfield java.text.RBTableBuilder.mapping:Lsun/text/UCompactIntArray;
            aload 0 /* this */
            getfield java.text.RBTableBuilder.contractTable:Ljava/util/Vector;
            aload 0 /* this */
            getfield java.text.RBTableBuilder.expandTable:Ljava/util/Vector;
        38: .line 168
            aload 0 /* this */
            getfield java.text.RBTableBuilder.contractFlags:Lsun/text/IntHashtable;
            aload 0 /* this */
            getfield java.text.RBTableBuilder.maxSecOrder:S
            aload 0 /* this */
            getfield java.text.RBTableBuilder.maxTerOrder:S
        39: .line 167
            invokevirtual java.text.RBCollationTables$BuildAPI.fillInTables:(ZZLsun/text/UCompactIntArray;Ljava/util/Vector;Ljava/util/Vector;Lsun/text/IntHashtable;SS)V
        40: .line 169
            return
        end local 5 // int order
        end local 2 // int decmp
        end local 1 // java.lang.String pattern
        end local 0 // java.text.RBTableBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   41     0        this  Ljava/text/RBTableBuilder;
            0   41     1     pattern  Ljava/lang/String;
            0   41     2       decmp  I
           20   32     3    expChars  Ljava/lang/String;
           11   32     4  groupChars  Ljava/lang/String;
            6   41     5       order  I
            7   34     6           i  I
            9   32     7       entry  Ljava/text/PatternEntry;
           25   29     8          ch  C
           31   32     8          ch  C
    Exceptions:
      throws java.text.ParseException
    MethodParameters:
         Name  Flags
      pattern  
      decmp    

  private void addComposedChars();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // java.text.RBTableBuilder this
         0: .line 176
            new sun.text.ComposedCharIter
            dup
            invokespecial sun.text.ComposedCharIter.<init>:()V
            astore 1 /* iter */
        start local 1 // sun.text.ComposedCharIter iter
         1: .line 178
            goto 30
        start local 2 // int c
         2: .line 179
      StackMap locals: sun.text.ComposedCharIter int
      StackMap stack:
            aload 0 /* this */
            iload 2 /* c */
            invokevirtual java.text.RBTableBuilder.getCharOrder:(I)I
            iconst_m1
            if_icmpne 30
         3: .line 196
            aload 1 /* iter */
            invokevirtual sun.text.ComposedCharIter.decomposition:()Ljava/lang/String;
            astore 3 /* s */
        start local 3 // java.lang.String s
         4: .line 205
            aload 3 /* s */
            invokevirtual java.lang.String.length:()I
            iconst_1
            if_icmpne 9
         5: .line 206
            aload 0 /* this */
            aload 3 /* s */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            invokevirtual java.text.RBTableBuilder.getCharOrder:(I)I
            istore 4 /* order */
        start local 4 // int order
         6: .line 207
            iload 4 /* order */
            iconst_m1
            if_icmpeq 30
         7: .line 208
            aload 0 /* this */
            iload 2 /* c */
            iload 4 /* order */
            invokevirtual java.text.RBTableBuilder.addOrder:(II)V
         8: .line 210
            goto 30
        end local 4 // int order
         9: .line 211
      StackMap locals: java.lang.String
      StackMap stack:
            aload 3 /* s */
            invokevirtual java.lang.String.length:()I
            iconst_2
            if_icmpne 16
        10: .line 212
            aload 3 /* s */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            istore 4 /* ch0 */
        start local 4 // char ch0
        11: .line 213
            iload 4 /* ch0 */
            invokestatic java.lang.Character.isHighSurrogate:(C)Z
            ifeq 16
        12: .line 214
            aload 0 /* this */
            aload 3 /* s */
            iconst_0
            invokevirtual java.lang.String.codePointAt:(I)I
            invokevirtual java.text.RBTableBuilder.getCharOrder:(I)I
            istore 5 /* order */
        start local 5 // int order
        13: .line 215
            iload 5 /* order */
            iconst_m1
            if_icmpeq 30
        14: .line 216
            aload 0 /* this */
            iload 2 /* c */
            iload 5 /* order */
            invokevirtual java.text.RBTableBuilder.addOrder:(II)V
        15: .line 218
            goto 30
        end local 5 // int order
        end local 4 // char ch0
        16: .line 221
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* s */
            invokevirtual java.text.RBTableBuilder.getContractOrder:(Ljava/lang/String;)I
            istore 4 /* contractOrder */
        start local 4 // int contractOrder
        17: .line 222
            iload 4 /* contractOrder */
            iconst_m1
            if_icmpeq 20
        18: .line 223
            aload 0 /* this */
            iload 2 /* c */
            iload 4 /* contractOrder */
            invokevirtual java.text.RBTableBuilder.addOrder:(II)V
        19: .line 224
            goto 30
        20: .line 231
      StackMap locals: int
      StackMap stack:
            iconst_1
            istore 5 /* allThere */
        start local 5 // boolean allThere
        21: .line 232
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        22: goto 27
        23: .line 233
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            aload 3 /* s */
            iload 6 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            invokevirtual java.text.RBTableBuilder.getCharOrder:(I)I
            iconst_m1
            if_icmpne 26
        24: .line 234
            iconst_0
            istore 5 /* allThere */
        25: .line 235
            goto 28
        26: .line 232
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        27: iload 6 /* i */
            aload 3 /* s */
            invokevirtual java.lang.String.length:()I
            if_icmplt 23
        end local 6 // int i
        28: .line 238
      StackMap locals:
      StackMap stack:
            iload 5 /* allThere */
            ifeq 30
        29: .line 239
            aload 0 /* this */
            iload 2 /* c */
            aload 3 /* s */
            iconst_m1
            invokevirtual java.text.RBTableBuilder.addExpandOrder:(ILjava/lang/String;I)V
        end local 5 // boolean allThere
        end local 4 // int contractOrder
        end local 3 // java.lang.String s
        end local 2 // int c
        30: .line 178
      StackMap locals: java.text.RBTableBuilder sun.text.ComposedCharIter
      StackMap stack:
            aload 1 /* iter */
            invokevirtual sun.text.ComposedCharIter.next:()I
            dup
            istore 2 /* c */
        start local 2 // int c
        31: iconst_m1
            if_icmpne 2
        32: .line 244
            return
        end local 2 // int c
        end local 1 // sun.text.ComposedCharIter iter
        end local 0 // java.text.RBTableBuilder this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   33     0           this  Ljava/text/RBTableBuilder;
            1   33     1           iter  Lsun/text/ComposedCharIter;
            2   30     2              c  I
           31   33     2              c  I
            4   30     3              s  Ljava/lang/String;
            6    9     4          order  I
           11   16     4            ch0  C
           13   16     5          order  I
           17   30     4  contractOrder  I
           21   30     5       allThere  Z
           22   28     6              i  I
    Exceptions:
      throws java.text.ParseException

  private final void commit();
    descriptor: ()V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // java.text.RBTableBuilder this
         0: .line 260
            aload 0 /* this */
            getfield java.text.RBTableBuilder.expandTable:Ljava/util/Vector;
            ifnull 18
         1: .line 261
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         2: goto 17
         3: .line 262
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield java.text.RBTableBuilder.expandTable:Ljava/util/Vector;
            iload 1 /* i */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            checkcast int[]
            astore 2 /* valueList */
        start local 2 // int[] valueList
         4: .line 263
            iconst_0
            istore 3 /* j */
        start local 3 // int j
         5: goto 15
         6: .line 264
      StackMap locals: int[] int
      StackMap stack:
            aload 2 /* valueList */
            iload 3 /* j */
            iaload
            istore 4 /* order */
        start local 4 // int order
         7: .line 265
            iload 4 /* order */
            ldc 2113929216
            if_icmpge 14
            iload 4 /* order */
            ldc 1879048192
            if_icmple 14
         8: .line 267
            iload 4 /* order */
            ldc 1879048192
            isub
            istore 5 /* ch */
        start local 5 // int ch
         9: .line 270
            aload 0 /* this */
            iload 5 /* ch */
            invokevirtual java.text.RBTableBuilder.getCharOrder:(I)I
            istore 6 /* realValue */
        start local 6 // int realValue
        10: .line 272
            iload 6 /* realValue */
            iconst_m1
            if_icmpne 13
        11: .line 274
            aload 2 /* valueList */
            iload 3 /* j */
            ldc 65535
            iload 5 /* ch */
            iand
            iastore
        12: .line 275
            goto 14
        13: .line 277
      StackMap locals: int int int
      StackMap stack:
            aload 2 /* valueList */
            iload 3 /* j */
            iload 6 /* realValue */
            iastore
        end local 6 // int realValue
        end local 5 // int ch
        end local 4 // int order
        14: .line 263
      StackMap locals:
      StackMap stack:
            iinc 3 /* j */ 1
      StackMap locals:
      StackMap stack:
        15: iload 3 /* j */
            aload 2 /* valueList */
            arraylength
            if_icmplt 6
        end local 3 // int j
        end local 2 // int[] valueList
        16: .line 261
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
        17: iload 1 /* i */
            aload 0 /* this */
            getfield java.text.RBTableBuilder.expandTable:Ljava/util/Vector;
            invokevirtual java.util.Vector.size:()I
            if_icmplt 3
        end local 1 // int i
        18: .line 283
      StackMap locals:
      StackMap stack:
            return
        end local 0 // java.text.RBTableBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   19     0       this  Ljava/text/RBTableBuilder;
            2   18     1          i  I
            4   16     2  valueList  [I
            5   16     3          j  I
            7   14     4      order  I
            9   14     5         ch  I
           10   14     6  realValue  I

  private final int increment(int, int);
    descriptor: (II)I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.text.RBTableBuilder this
        start local 1 // int aStrength
        start local 2 // int lastValue
         0: .line 289
            iload 1 /* aStrength */
            tableswitch { // 0 - 2
                    0: 1
                    1: 5
                    2: 10
              default: 13
          }
         1: .line 293
      StackMap locals:
      StackMap stack:
            iload 2 /* lastValue */
            ldc 65536
            iadd
            istore 2 /* lastValue */
         2: .line 294
            iload 2 /* lastValue */
            ldc -65536
            iand
            istore 2 /* lastValue */
         3: .line 295
            aload 0 /* this */
            iconst_1
            putfield java.text.RBTableBuilder.isOverIgnore:Z
         4: .line 296
            goto 13
         5: .line 299
      StackMap locals:
      StackMap stack:
            iinc 2 /* lastValue */ 256
         6: .line 300
            iload 2 /* lastValue */
            sipush -256
            iand
            istore 2 /* lastValue */
         7: .line 302
            aload 0 /* this */
            getfield java.text.RBTableBuilder.isOverIgnore:Z
            ifne 13
         8: .line 303
            aload 0 /* this */
            dup
            getfield java.text.RBTableBuilder.maxSecOrder:S
            iconst_1
            iadd
            i2s
            putfield java.text.RBTableBuilder.maxSecOrder:S
         9: .line 304
            goto 13
        10: .line 307
      StackMap locals:
      StackMap stack:
            iinc 2 /* lastValue */ 1
        11: .line 309
            aload 0 /* this */
            getfield java.text.RBTableBuilder.isOverIgnore:Z
            ifne 13
        12: .line 310
            aload 0 /* this */
            dup
            getfield java.text.RBTableBuilder.maxTerOrder:S
            iconst_1
            iadd
            i2s
            putfield java.text.RBTableBuilder.maxTerOrder:S
        13: .line 313
      StackMap locals:
      StackMap stack:
            iload 2 /* lastValue */
            ireturn
        end local 2 // int lastValue
        end local 1 // int aStrength
        end local 0 // java.text.RBTableBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   14     0       this  Ljava/text/RBTableBuilder;
            0   14     1  aStrength  I
            0   14     2  lastValue  I
    MethodParameters:
           Name  Flags
      aStrength  
      lastValue  

  private final void addOrder(int, int);
    descriptor: (II)V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // java.text.RBTableBuilder this
        start local 1 // int ch
        start local 2 // int anOrder
         0: .line 322
            aload 0 /* this */
            getfield java.text.RBTableBuilder.mapping:Lsun/text/UCompactIntArray;
            iload 1 /* ch */
            invokevirtual sun.text.UCompactIntArray.elementAt:(I)I
            istore 3 /* order */
        start local 3 // int order
         1: .line 324
            iload 3 /* order */
            ldc 2130706432
            if_icmplt 9
         2: .line 328
            iconst_1
            istore 4 /* length */
        start local 4 // int length
         3: .line 329
            iload 1 /* ch */
            invokestatic java.lang.Character.isSupplementaryCodePoint:(I)Z
            ifeq 6
         4: .line 330
            iload 1 /* ch */
            aload 0 /* this */
            getfield java.text.RBTableBuilder.keyBuf:[C
            iconst_0
            invokestatic java.lang.Character.toChars:(I[CI)I
            istore 4 /* length */
         5: .line 331
            goto 7
         6: .line 332
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield java.text.RBTableBuilder.keyBuf:[C
            iconst_0
            iload 1 /* ch */
            i2c
            castore
         7: .line 334
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.String
            dup
            aload 0 /* this */
            getfield java.text.RBTableBuilder.keyBuf:[C
            iconst_0
            iload 4 /* length */
            invokespecial java.lang.String.<init>:([CII)V
            iload 2 /* anOrder */
            invokevirtual java.text.RBTableBuilder.addContractOrder:(Ljava/lang/String;I)V
        end local 4 // int length
         8: .line 335
            goto 10
         9: .line 338
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.text.RBTableBuilder.mapping:Lsun/text/UCompactIntArray;
            iload 1 /* ch */
            iload 2 /* anOrder */
            invokevirtual sun.text.UCompactIntArray.setElementAt:(II)V
        10: .line 340
      StackMap locals:
      StackMap stack:
            return
        end local 3 // int order
        end local 2 // int anOrder
        end local 1 // int ch
        end local 0 // java.text.RBTableBuilder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0     this  Ljava/text/RBTableBuilder;
            0   11     1       ch  I
            0   11     2  anOrder  I
            1   11     3    order  I
            3    8     4   length  I
    MethodParameters:
         Name  Flags
      ch       
      anOrder  

  private final void addContractOrder(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // java.text.RBTableBuilder this
        start local 1 // java.lang.String groupChars
        start local 2 // int anOrder
         0: .line 343
            aload 0 /* this */
            aload 1 /* groupChars */
            iload 2 /* anOrder */
            iconst_1
            invokevirtual java.text.RBTableBuilder.addContractOrder:(Ljava/lang/String;IZ)V
         1: .line 344
            return
        end local 2 // int anOrder
        end local 1 // java.lang.String groupChars
        end local 0 // java.text.RBTableBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Ljava/text/RBTableBuilder;
            0    2     1  groupChars  Ljava/lang/String;
            0    2     2     anOrder  I
    MethodParameters:
            Name  Flags
      groupChars  
      anOrder     

  private final void addContractOrder(java.lang.String, int, boolean);
    descriptor: (Ljava/lang/String;IZ)V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=6, locals=9, args_size=4
        start local 0 // java.text.RBTableBuilder this
        start local 1 // java.lang.String groupChars
        start local 2 // int anOrder
        start local 3 // boolean fwd
         0: .line 352
            aload 0 /* this */
            getfield java.text.RBTableBuilder.contractTable:Ljava/util/Vector;
            ifnonnull 2
         1: .line 353
            aload 0 /* this */
            new java.util.Vector
            dup
            bipush 20
            invokespecial java.util.Vector.<init>:(I)V
            putfield java.text.RBTableBuilder.contractTable:Ljava/util/Vector;
         2: .line 357
      StackMap locals:
      StackMap stack:
            aload 1 /* groupChars */
            iconst_0
            invokevirtual java.lang.String.codePointAt:(I)I
            istore 4 /* ch */
        start local 4 // int ch
         3: .line 364
            aload 0 /* this */
            getfield java.text.RBTableBuilder.mapping:Lsun/text/UCompactIntArray;
            iload 4 /* ch */
            invokevirtual sun.text.UCompactIntArray.elementAt:(I)I
            istore 5 /* entry */
        start local 5 // int entry
         4: .line 365
            aload 0 /* this */
            iload 5 /* entry */
            ldc 2130706432
            isub
            invokevirtual java.text.RBTableBuilder.getContractValuesImpl:(I)Ljava/util/Vector;
            astore 6 /* entryTable */
        start local 6 // java.util.Vector entryTable
         5: .line 367
            aload 6 /* entryTable */
            ifnonnull 11
         6: .line 369
            ldc 2130706432
            aload 0 /* this */
            getfield java.text.RBTableBuilder.contractTable:Ljava/util/Vector;
            invokevirtual java.util.Vector.size:()I
            iadd
            istore 7 /* tableIndex */
        start local 7 // int tableIndex
         7: .line 370
            new java.util.Vector
            dup
            bipush 20
            invokespecial java.util.Vector.<init>:(I)V
            astore 6 /* entryTable */
         8: .line 371
            aload 0 /* this */
            getfield java.text.RBTableBuilder.contractTable:Ljava/util/Vector;
            aload 6 /* entryTable */
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
         9: .line 375
            aload 6 /* entryTable */
            new java.text.EntryPair
            dup
            aload 1 /* groupChars */
            iconst_0
            iload 4 /* ch */
            invokestatic java.lang.Character.charCount:(I)I
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            iload 5 /* entry */
            invokespecial java.text.EntryPair.<init>:(Ljava/lang/String;I)V
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
        10: .line 376
            aload 0 /* this */
            getfield java.text.RBTableBuilder.mapping:Lsun/text/UCompactIntArray;
            iload 4 /* ch */
            iload 7 /* tableIndex */
            invokevirtual sun.text.UCompactIntArray.setElementAt:(II)V
        end local 7 // int tableIndex
        11: .line 380
      StackMap locals: int int java.util.Vector
      StackMap stack:
            aload 6 /* entryTable */
            aload 1 /* groupChars */
            iload 3 /* fwd */
            invokestatic java.text.RBCollationTables.getEntry:(Ljava/util/Vector;Ljava/lang/String;Z)I
            istore 7 /* index */
        start local 7 // int index
        12: .line 381
            iload 7 /* index */
            iconst_m1
            if_icmpeq 16
        13: .line 382
            aload 6 /* entryTable */
            iload 7 /* index */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            checkcast java.text.EntryPair
            astore 8 /* pair */
        start local 8 // java.text.EntryPair pair
        14: .line 383
            aload 8 /* pair */
            iload 2 /* anOrder */
            putfield java.text.EntryPair.value:I
        end local 8 // java.text.EntryPair pair
        15: .line 384
            goto 23
        16: .line 385
      StackMap locals: int
      StackMap stack:
            aload 6 /* entryTable */
            invokevirtual java.util.Vector.lastElement:()Ljava/lang/Object;
            checkcast java.text.EntryPair
            astore 8 /* pair */
        start local 8 // java.text.EntryPair pair
        17: .line 392
            aload 1 /* groupChars */
            invokevirtual java.lang.String.length:()I
            aload 8 /* pair */
            getfield java.text.EntryPair.entryName:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            if_icmple 20
        18: .line 393
            aload 6 /* entryTable */
            new java.text.EntryPair
            dup
            aload 1 /* groupChars */
            iload 2 /* anOrder */
            iload 3 /* fwd */
            invokespecial java.text.EntryPair.<init>:(Ljava/lang/String;IZ)V
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
        19: .line 394
            goto 23
        20: .line 395
      StackMap locals: java.text.EntryPair
      StackMap stack:
            aload 6 /* entryTable */
            new java.text.EntryPair
            dup
            aload 1 /* groupChars */
            iload 2 /* anOrder */
        21: .line 396
            iload 3 /* fwd */
            invokespecial java.text.EntryPair.<init>:(Ljava/lang/String;IZ)V
            aload 6 /* entryTable */
            invokevirtual java.util.Vector.size:()I
            iconst_1
            isub
        22: .line 395
            invokevirtual java.util.Vector.insertElementAt:(Ljava/lang/Object;I)V
        end local 8 // java.text.EntryPair pair
        23: .line 403
      StackMap locals:
      StackMap stack:
            iload 3 /* fwd */
            ifeq 28
            aload 1 /* groupChars */
            invokevirtual java.lang.String.length:()I
            iconst_1
            if_icmple 28
        24: .line 404
            aload 0 /* this */
            aload 1 /* groupChars */
            invokevirtual java.text.RBTableBuilder.addContractFlags:(Ljava/lang/String;)V
        25: .line 405
            aload 0 /* this */
            new java.lang.StringBuffer
            dup
            aload 1 /* groupChars */
            invokespecial java.lang.StringBuffer.<init>:(Ljava/lang/String;)V
            invokevirtual java.lang.StringBuffer.reverse:()Ljava/lang/StringBuffer;
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
        26: .line 406
            iload 2 /* anOrder */
            iconst_0
        27: .line 405
            invokevirtual java.text.RBTableBuilder.addContractOrder:(Ljava/lang/String;IZ)V
        28: .line 408
      StackMap locals:
      StackMap stack:
            return
        end local 7 // int index
        end local 6 // java.util.Vector entryTable
        end local 5 // int entry
        end local 4 // int ch
        end local 3 // boolean fwd
        end local 2 // int anOrder
        end local 1 // java.lang.String groupChars
        end local 0 // java.text.RBTableBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   29     0        this  Ljava/text/RBTableBuilder;
            0   29     1  groupChars  Ljava/lang/String;
            0   29     2     anOrder  I
            0   29     3         fwd  Z
            3   29     4          ch  I
            4   29     5       entry  I
            5   29     6  entryTable  Ljava/util/Vector<Ljava/text/EntryPair;>;
            7   11     7  tableIndex  I
           12   29     7       index  I
           14   15     8        pair  Ljava/text/EntryPair;
           17   23     8        pair  Ljava/text/EntryPair;
    MethodParameters:
            Name  Flags
      groupChars  
      anOrder     
      fwd         

  private int getContractOrder(java.lang.String);
    descriptor: (Ljava/lang/String;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // java.text.RBTableBuilder this
        start local 1 // java.lang.String groupChars
         0: .line 417
            iconst_m1
            istore 2 /* result */
        start local 2 // int result
         1: .line 418
            aload 0 /* this */
            getfield java.text.RBTableBuilder.contractTable:Ljava/util/Vector;
            ifnull 9
         2: .line 419
            aload 1 /* groupChars */
            iconst_0
            invokevirtual java.lang.String.codePointAt:(I)I
            istore 3 /* ch */
        start local 3 // int ch
         3: .line 425
            aload 0 /* this */
            iload 3 /* ch */
            invokevirtual java.text.RBTableBuilder.getContractValues:(I)Ljava/util/Vector;
            astore 4 /* entryTable */
        start local 4 // java.util.Vector entryTable
         4: .line 426
            aload 4 /* entryTable */
            ifnull 9
         5: .line 427
            aload 4 /* entryTable */
            aload 1 /* groupChars */
            iconst_1
            invokestatic java.text.RBCollationTables.getEntry:(Ljava/util/Vector;Ljava/lang/String;Z)I
            istore 5 /* index */
        start local 5 // int index
         6: .line 428
            iload 5 /* index */
            iconst_m1
            if_icmpeq 9
         7: .line 429
            aload 4 /* entryTable */
            iload 5 /* index */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            checkcast java.text.EntryPair
            astore 6 /* pair */
        start local 6 // java.text.EntryPair pair
         8: .line 430
            aload 6 /* pair */
            getfield java.text.EntryPair.value:I
            istore 2 /* result */
        end local 6 // java.text.EntryPair pair
        end local 5 // int index
        end local 4 // java.util.Vector entryTable
        end local 3 // int ch
         9: .line 434
      StackMap locals: int
      StackMap stack:
            iload 2 /* result */
            ireturn
        end local 2 // int result
        end local 1 // java.lang.String groupChars
        end local 0 // java.text.RBTableBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Ljava/text/RBTableBuilder;
            0   10     1  groupChars  Ljava/lang/String;
            1   10     2      result  I
            3    9     3          ch  I
            4    9     4  entryTable  Ljava/util/Vector<Ljava/text/EntryPair;>;
            6    9     5       index  I
            8    9     6        pair  Ljava/text/EntryPair;
    MethodParameters:
            Name  Flags
      groupChars  

  private final int getCharOrder(int);
    descriptor: (I)I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // java.text.RBTableBuilder this
        start local 1 // int ch
         0: .line 438
            aload 0 /* this */
            getfield java.text.RBTableBuilder.mapping:Lsun/text/UCompactIntArray;
            iload 1 /* ch */
            invokevirtual sun.text.UCompactIntArray.elementAt:(I)I
            istore 2 /* order */
        start local 2 // int order
         1: .line 440
            iload 2 /* order */
            ldc 2130706432
            if_icmplt 5
         2: .line 441
            aload 0 /* this */
            iload 2 /* order */
            ldc 2130706432
            isub
            invokevirtual java.text.RBTableBuilder.getContractValuesImpl:(I)Ljava/util/Vector;
            astore 3 /* groupList */
        start local 3 // java.util.Vector groupList
         3: .line 442
            aload 3 /* groupList */
            invokevirtual java.util.Vector.firstElement:()Ljava/lang/Object;
            checkcast java.text.EntryPair
            astore 4 /* pair */
        start local 4 // java.text.EntryPair pair
         4: .line 443
            aload 4 /* pair */
            getfield java.text.EntryPair.value:I
            istore 2 /* order */
        end local 4 // java.text.EntryPair pair
        end local 3 // java.util.Vector groupList
         5: .line 445
      StackMap locals: int
      StackMap stack:
            iload 2 /* order */
            ireturn
        end local 2 // int order
        end local 1 // int ch
        end local 0 // java.text.RBTableBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Ljava/text/RBTableBuilder;
            0    6     1         ch  I
            1    6     2      order  I
            3    5     3  groupList  Ljava/util/Vector<Ljava/text/EntryPair;>;
            4    5     4       pair  Ljava/text/EntryPair;
    MethodParameters:
      Name  Flags
      ch    

  private java.util.Vector<java.text.EntryPair> getContractValues(int);
    descriptor: (I)Ljava/util/Vector;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.text.RBTableBuilder this
        start local 1 // int ch
         0: .line 455
            aload 0 /* this */
            getfield java.text.RBTableBuilder.mapping:Lsun/text/UCompactIntArray;
            iload 1 /* ch */
            invokevirtual sun.text.UCompactIntArray.elementAt:(I)I
            istore 2 /* index */
        start local 2 // int index
         1: .line 456
            aload 0 /* this */
            iload 2 /* index */
            ldc 2130706432
            isub
            invokevirtual java.text.RBTableBuilder.getContractValuesImpl:(I)Ljava/util/Vector;
            areturn
        end local 2 // int index
        end local 1 // int ch
        end local 0 // java.text.RBTableBuilder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljava/text/RBTableBuilder;
            0    2     1     ch  I
            1    2     2  index  I
    Signature: (I)Ljava/util/Vector<Ljava/text/EntryPair;>;
    MethodParameters:
      Name  Flags
      ch    

  private java.util.Vector<java.text.EntryPair> getContractValuesImpl(int);
    descriptor: (I)Ljava/util/Vector;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.text.RBTableBuilder this
        start local 1 // int index
         0: .line 461
            iload 1 /* index */
            iflt 2
         1: .line 463
            aload 0 /* this */
            getfield java.text.RBTableBuilder.contractTable:Ljava/util/Vector;
            iload 1 /* index */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            checkcast java.util.Vector
            areturn
         2: .line 467
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // int index
        end local 0 // java.text.RBTableBuilder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljava/text/RBTableBuilder;
            0    3     1  index  I
    Signature: (I)Ljava/util/Vector<Ljava/text/EntryPair;>;
    MethodParameters:
       Name  Flags
      index  

  private final void addExpandOrder(java.lang.String, java.lang.String, int);
    descriptor: (Ljava/lang/String;Ljava/lang/String;I)V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=3, locals=7, args_size=4
        start local 0 // java.text.RBTableBuilder this
        start local 1 // java.lang.String contractChars
        start local 2 // java.lang.String expandChars
        start local 3 // int anOrder
         0: .line 479
            aload 0 /* this */
            iload 3 /* anOrder */
            aload 2 /* expandChars */
            invokevirtual java.text.RBTableBuilder.addExpansion:(ILjava/lang/String;)I
            istore 4 /* tableIndex */
        start local 4 // int tableIndex
         1: .line 482
            aload 1 /* contractChars */
            invokevirtual java.lang.String.length:()I
            iconst_1
            if_icmple 10
         2: .line 483
            aload 1 /* contractChars */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            istore 5 /* ch */
        start local 5 // char ch
         3: .line 484
            iload 5 /* ch */
            invokestatic java.lang.Character.isHighSurrogate:(C)Z
            ifeq 8
            aload 1 /* contractChars */
            invokevirtual java.lang.String.length:()I
            iconst_2
            if_icmpne 8
         4: .line 485
            aload 1 /* contractChars */
            iconst_1
            invokevirtual java.lang.String.charAt:(I)C
            istore 6 /* ch2 */
        start local 6 // char ch2
         5: .line 486
            iload 6 /* ch2 */
            invokestatic java.lang.Character.isLowSurrogate:(C)Z
            ifeq 11
         6: .line 488
            aload 0 /* this */
            iload 5 /* ch */
            iload 6 /* ch2 */
            invokestatic java.lang.Character.toCodePoint:(CC)I
            iload 4 /* tableIndex */
            invokevirtual java.text.RBTableBuilder.addOrder:(II)V
        end local 6 // char ch2
         7: .line 490
            goto 11
         8: .line 491
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* contractChars */
            iload 4 /* tableIndex */
            invokevirtual java.text.RBTableBuilder.addContractOrder:(Ljava/lang/String;I)V
        end local 5 // char ch
         9: .line 493
            goto 11
        10: .line 494
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* contractChars */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            iload 4 /* tableIndex */
            invokevirtual java.text.RBTableBuilder.addOrder:(II)V
        11: .line 496
      StackMap locals:
      StackMap stack:
            return
        end local 4 // int tableIndex
        end local 3 // int anOrder
        end local 2 // java.lang.String expandChars
        end local 1 // java.lang.String contractChars
        end local 0 // java.text.RBTableBuilder this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   12     0           this  Ljava/text/RBTableBuilder;
            0   12     1  contractChars  Ljava/lang/String;
            0   12     2    expandChars  Ljava/lang/String;
            0   12     3        anOrder  I
            1   12     4     tableIndex  I
            3    9     5             ch  C
            5    7     6            ch2  C
    Exceptions:
      throws java.text.ParseException
    MethodParameters:
               Name  Flags
      contractChars  
      expandChars    
      anOrder        

  private final void addExpandOrder(int, java.lang.String, int);
    descriptor: (ILjava/lang/String;I)V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // java.text.RBTableBuilder this
        start local 1 // int ch
        start local 2 // java.lang.String expandChars
        start local 3 // int anOrder
         0: .line 501
            aload 0 /* this */
            iload 3 /* anOrder */
            aload 2 /* expandChars */
            invokevirtual java.text.RBTableBuilder.addExpansion:(ILjava/lang/String;)I
            istore 4 /* tableIndex */
        start local 4 // int tableIndex
         1: .line 502
            aload 0 /* this */
            iload 1 /* ch */
            iload 4 /* tableIndex */
            invokevirtual java.text.RBTableBuilder.addOrder:(II)V
         2: .line 503
            return
        end local 4 // int tableIndex
        end local 3 // int anOrder
        end local 2 // java.lang.String expandChars
        end local 1 // int ch
        end local 0 // java.text.RBTableBuilder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Ljava/text/RBTableBuilder;
            0    3     1           ch  I
            0    3     2  expandChars  Ljava/lang/String;
            0    3     3      anOrder  I
            1    3     4   tableIndex  I
    Exceptions:
      throws java.text.ParseException
    MethodParameters:
             Name  Flags
      ch           
      expandChars  
      anOrder      

  private int addExpansion(int, java.lang.String);
    descriptor: (ILjava/lang/String;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=11, args_size=3
        start local 0 // java.text.RBTableBuilder this
        start local 1 // int anOrder
        start local 2 // java.lang.String expandChars
         0: .line 511
            aload 0 /* this */
            getfield java.text.RBTableBuilder.expandTable:Ljava/util/Vector;
            ifnonnull 2
         1: .line 512
            aload 0 /* this */
            new java.util.Vector
            dup
            bipush 20
            invokespecial java.util.Vector.<init>:(I)V
            putfield java.text.RBTableBuilder.expandTable:Ljava/util/Vector;
         2: .line 516
      StackMap locals:
      StackMap stack:
            iload 1 /* anOrder */
            iconst_m1
            if_icmpne 3
            iconst_0
            goto 4
      StackMap locals:
      StackMap stack:
         3: iconst_1
      StackMap locals:
      StackMap stack: int
         4: istore 3 /* offset */
        start local 3 // int offset
         5: .line 518
            aload 2 /* expandChars */
            invokevirtual java.lang.String.length:()I
            iload 3 /* offset */
            iadd
            newarray 10
            astore 4 /* valueList */
        start local 4 // int[] valueList
         6: .line 519
            iload 3 /* offset */
            iconst_1
            if_icmpne 8
         7: .line 520
            aload 4 /* valueList */
            iconst_0
            iload 1 /* anOrder */
            iastore
         8: .line 523
      StackMap locals: int int[]
      StackMap stack:
            iload 3 /* offset */
            istore 5 /* j */
        start local 5 // int j
         9: .line 524
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        10: goto 26
        11: .line 525
      StackMap locals: int int
      StackMap stack:
            aload 2 /* expandChars */
            iload 6 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 7 /* ch0 */
        start local 7 // char ch0
        12: .line 528
            iload 7 /* ch0 */
            invokestatic java.lang.Character.isHighSurrogate:(C)Z
            ifeq 19
        13: .line 529
            iinc 6 /* i */ 1
            iload 6 /* i */
            aload 2 /* expandChars */
            invokevirtual java.lang.String.length:()I
            if_icmpeq 27
        14: .line 530
            aload 2 /* expandChars */
            iload 6 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            dup
            istore 8 /* ch1 */
        start local 8 // char ch1
        15: invokestatic java.lang.Character.isLowSurrogate:(C)Z
            ifne 17
        end local 8 // char ch1
        16: .line 533
            goto 27
        start local 8 // char ch1
        17: .line 535
      StackMap locals: int int
      StackMap stack:
            iload 7 /* ch0 */
            iload 8 /* ch1 */
            invokestatic java.lang.Character.toCodePoint:(CC)I
            istore 9 /* ch */
        start local 9 // int ch
        18: .line 537
            goto 20
        end local 9 // int ch
        end local 8 // char ch1
        19: .line 538
      StackMap locals:
      StackMap stack:
            iload 7 /* ch0 */
            istore 9 /* ch */
        start local 9 // int ch
        20: .line 541
      StackMap locals: java.text.RBTableBuilder int java.lang.String int int[] int int int top int
      StackMap stack:
            aload 0 /* this */
            iload 9 /* ch */
            invokevirtual java.text.RBTableBuilder.getCharOrder:(I)I
            istore 10 /* mapValue */
        start local 10 // int mapValue
        21: .line 543
            iload 10 /* mapValue */
            iconst_m1
            if_icmpeq 24
        22: .line 544
            aload 4 /* valueList */
            iload 5 /* j */
            iinc 5 /* j */ 1
            iload 10 /* mapValue */
            iastore
        23: .line 545
            goto 25
        24: .line 547
      StackMap locals: int
      StackMap stack:
            aload 4 /* valueList */
            iload 5 /* j */
            iinc 5 /* j */ 1
            ldc 1879048192
            iload 9 /* ch */
            iadd
            iastore
        end local 10 // int mapValue
        end local 9 // int ch
        end local 7 // char ch0
        25: .line 524
      StackMap locals: java.text.RBTableBuilder int java.lang.String int int[] int int
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        26: iload 6 /* i */
            aload 2 /* expandChars */
            invokevirtual java.lang.String.length:()I
            if_icmplt 11
        end local 6 // int i
        27: .line 550
      StackMap locals:
      StackMap stack:
            iload 5 /* j */
            aload 4 /* valueList */
            arraylength
            if_icmpge 33
        28: .line 553
            iload 5 /* j */
            newarray 10
            astore 6 /* tmpBuf */
        start local 6 // int[] tmpBuf
        29: .line 554
            goto 31
        30: .line 555
      StackMap locals: int[]
      StackMap stack:
            aload 6 /* tmpBuf */
            iload 5 /* j */
            aload 4 /* valueList */
            iload 5 /* j */
            iaload
            iastore
        31: .line 554
      StackMap locals:
      StackMap stack:
            iinc 5 /* j */ -1
            iload 5 /* j */
            ifge 30
        32: .line 557
            aload 6 /* tmpBuf */
            astore 4 /* valueList */
        end local 6 // int[] tmpBuf
        33: .line 560
      StackMap locals:
      StackMap stack:
            ldc 2113929216
            aload 0 /* this */
            getfield java.text.RBTableBuilder.expandTable:Ljava/util/Vector;
            invokevirtual java.util.Vector.size:()I
            iadd
            istore 6 /* tableIndex */
        start local 6 // int tableIndex
        34: .line 561
            aload 0 /* this */
            getfield java.text.RBTableBuilder.expandTable:Ljava/util/Vector;
            aload 4 /* valueList */
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
        35: .line 563
            iload 6 /* tableIndex */
            ireturn
        end local 6 // int tableIndex
        end local 5 // int j
        end local 4 // int[] valueList
        end local 3 // int offset
        end local 2 // java.lang.String expandChars
        end local 1 // int anOrder
        end local 0 // java.text.RBTableBuilder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   36     0         this  Ljava/text/RBTableBuilder;
            0   36     1      anOrder  I
            0   36     2  expandChars  Ljava/lang/String;
            5   36     3       offset  I
            6   36     4    valueList  [I
            9   36     5            j  I
           10   27     6            i  I
           12   25     7          ch0  C
           15   16     8          ch1  C
           17   19     8          ch1  C
           18   19     9           ch  I
           20   25     9           ch  I
           21   25    10     mapValue  I
           29   33     6       tmpBuf  [I
           34   36     6   tableIndex  I
    MethodParameters:
             Name  Flags
      anOrder      
      expandChars  

  private void addContractFlags(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // java.text.RBTableBuilder this
        start local 1 // java.lang.String chars
         0: .line 569
            aload 1 /* chars */
            invokevirtual java.lang.String.length:()I
            istore 4 /* len */
        start local 4 // int len
         1: .line 570
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         2: goto 10
         3: .line 571
      StackMap locals: java.text.RBTableBuilder java.lang.String top top int int
      StackMap stack:
            aload 1 /* chars */
            iload 5 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 2 /* c0 */
        start local 2 // char c0
         4: .line 572
            iload 2 /* c0 */
            invokestatic java.lang.Character.isHighSurrogate:(C)Z
            ifeq 6
         5: .line 573
            iload 2 /* c0 */
            aload 1 /* chars */
            iinc 5 /* i */ 1
            iload 5 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.toCodePoint:(CC)I
            goto 7
         6: .line 574
      StackMap locals: java.text.RBTableBuilder java.lang.String int top int int
      StackMap stack:
            iload 2 /* c0 */
         7: .line 572
      StackMap locals:
      StackMap stack: int
            istore 3 /* c */
        start local 3 // int c
         8: .line 575
            aload 0 /* this */
            getfield java.text.RBTableBuilder.contractFlags:Lsun/text/IntHashtable;
            iload 3 /* c */
            iconst_1
            invokevirtual sun.text.IntHashtable.put:(II)V
         9: .line 570
            iinc 5 /* i */ 1
        end local 3 // int c
        end local 2 // char c0
      StackMap locals: java.text.RBTableBuilder java.lang.String top top int int
      StackMap stack:
        10: iload 5 /* i */
            iload 4 /* len */
            if_icmplt 3
        end local 5 // int i
        11: .line 577
            return
        end local 4 // int len
        end local 1 // java.lang.String chars
        end local 0 // java.text.RBTableBuilder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   12     0   this  Ljava/text/RBTableBuilder;
            0   12     1  chars  Ljava/lang/String;
            4   10     2     c0  C
            8   10     3      c  I
            1   12     4    len  I
            2   11     5      i  I
    MethodParameters:
       Name  Flags
      chars  
}
SourceFile: "RBTableBuilder.java"
InnerClasses:
  final BuildAPI = java.text.RBCollationTables$BuildAPI of java.text.RBCollationTables