public class sun.util.locale.LanguageTag
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.util.locale.LanguageTag
  super_class: java.lang.Object
{
  public static final java.lang.String SEP;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "-"

  public static final java.lang.String PRIVATEUSE;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "x"

  public static final java.lang.String UNDETERMINED;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "und"

  public static final java.lang.String PRIVUSE_VARIANT_PREFIX;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "lvariant"

  private java.lang.String language;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String script;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String region;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String privateuse;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.util.List<java.lang.String> extlangs;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Ljava/lang/String;>;

  private java.util.List<java.lang.String> variants;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Ljava/lang/String;>;

  private java.util.List<java.lang.String> extensions;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Ljava/lang/String;>;

  private static final java.util.Map<java.lang.String, java.lang.String[]> GRANDFATHERED;
    descriptor: Ljava/util/Map;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;[Ljava/lang/String;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=5, args_size=0
         0: .line 66
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putstatic sun.util.locale.LanguageTag.GRANDFATHERED:Ljava/util/Map;
         1: .line 100
            bipush 26
            anewarray java.lang.String[]
            dup
            iconst_0
         2: .line 102
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "art-lojban"
            aastore
            dup
            iconst_1
            ldc "jbo"
            aastore
            aastore
            dup
            iconst_1
         3: .line 103
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "cel-gaulish"
            aastore
            dup
            iconst_1
            ldc "xtg-x-cel-gaulish"
            aastore
            aastore
            dup
            iconst_2
         4: .line 104
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "en-GB-oed"
            aastore
            dup
            iconst_1
            ldc "en-GB-x-oed"
            aastore
            aastore
            dup
            iconst_3
         5: .line 105
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "i-ami"
            aastore
            dup
            iconst_1
            ldc "ami"
            aastore
            aastore
            dup
            iconst_4
         6: .line 106
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "i-bnn"
            aastore
            dup
            iconst_1
            ldc "bnn"
            aastore
            aastore
            dup
            iconst_5
         7: .line 107
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "i-default"
            aastore
            dup
            iconst_1
            ldc "en-x-i-default"
            aastore
            aastore
            dup
            bipush 6
         8: .line 108
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "i-enochian"
            aastore
            dup
            iconst_1
            ldc "und-x-i-enochian"
            aastore
            aastore
            dup
            bipush 7
         9: .line 109
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "i-hak"
            aastore
            dup
            iconst_1
            ldc "hak"
            aastore
            aastore
            dup
            bipush 8
        10: .line 110
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "i-klingon"
            aastore
            dup
            iconst_1
            ldc "tlh"
            aastore
            aastore
            dup
            bipush 9
        11: .line 111
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "i-lux"
            aastore
            dup
            iconst_1
            ldc "lb"
            aastore
            aastore
            dup
            bipush 10
        12: .line 112
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "i-mingo"
            aastore
            dup
            iconst_1
            ldc "see-x-i-mingo"
            aastore
            aastore
            dup
            bipush 11
        13: .line 113
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "i-navajo"
            aastore
            dup
            iconst_1
            ldc "nv"
            aastore
            aastore
            dup
            bipush 12
        14: .line 114
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "i-pwn"
            aastore
            dup
            iconst_1
            ldc "pwn"
            aastore
            aastore
            dup
            bipush 13
        15: .line 115
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "i-tao"
            aastore
            dup
            iconst_1
            ldc "tao"
            aastore
            aastore
            dup
            bipush 14
        16: .line 116
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "i-tay"
            aastore
            dup
            iconst_1
            ldc "tay"
            aastore
            aastore
            dup
            bipush 15
        17: .line 117
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "i-tsu"
            aastore
            dup
            iconst_1
            ldc "tsu"
            aastore
            aastore
            dup
            bipush 16
        18: .line 118
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "no-bok"
            aastore
            dup
            iconst_1
            ldc "nb"
            aastore
            aastore
            dup
            bipush 17
        19: .line 119
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "no-nyn"
            aastore
            dup
            iconst_1
            ldc "nn"
            aastore
            aastore
            dup
            bipush 18
        20: .line 120
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "sgn-BE-FR"
            aastore
            dup
            iconst_1
            ldc "sfb"
            aastore
            aastore
            dup
            bipush 19
        21: .line 121
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "sgn-BE-NL"
            aastore
            dup
            iconst_1
            ldc "vgt"
            aastore
            aastore
            dup
            bipush 20
        22: .line 122
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "sgn-CH-DE"
            aastore
            dup
            iconst_1
            ldc "sgg"
            aastore
            aastore
            dup
            bipush 21
        23: .line 123
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "zh-guoyu"
            aastore
            dup
            iconst_1
            ldc "cmn"
            aastore
            aastore
            dup
            bipush 22
        24: .line 124
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "zh-hakka"
            aastore
            dup
            iconst_1
            ldc "hak"
            aastore
            aastore
            dup
            bipush 23
        25: .line 125
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "zh-min"
            aastore
            dup
            iconst_1
            ldc "nan-x-zh-min"
            aastore
            aastore
            dup
            bipush 24
        26: .line 126
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "zh-min-nan"
            aastore
            dup
            iconst_1
            ldc "nan"
            aastore
            aastore
            dup
            bipush 25
        27: .line 127
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "zh-xiang"
            aastore
            dup
            iconst_1
            ldc "hsn"
            aastore
            aastore
        28: .line 100
            astore 0 /* entries */
        start local 0 // java.lang.String[][] entries
        29: .line 129
            aload 0 /* entries */
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 33
      StackMap locals: java.lang.String[][] top int int java.lang.String[][]
      StackMap stack:
        30: aload 4
            iload 2
            aaload
            astore 1 /* e */
        start local 1 // java.lang.String[] e
        31: .line 130
            getstatic sun.util.locale.LanguageTag.GRANDFATHERED:Ljava/util/Map;
            aload 1 /* e */
            iconst_0
            aaload
            invokestatic sun.util.locale.LocaleUtils.toLowerString:(Ljava/lang/String;)Ljava/lang/String;
            aload 1 /* e */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 1 // java.lang.String[] e
        32: .line 129
            iinc 2 1
      StackMap locals:
      StackMap stack:
        33: iload 2
            iload 3
            if_icmplt 30
        end local 0 // java.lang.String[][] entries
        34: .line 132
            return
      LocalVariableTable:
        Start  End  Slot     Name  Signature
           29   34     0  entries  [[Ljava/lang/String;
           31   32     1        e  [Ljava/lang/String;

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.util.locale.LanguageTag this
         0: .line 134
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 54
            aload 0 /* this */
            ldc ""
            putfield sun.util.locale.LanguageTag.language:Ljava/lang/String;
         2: .line 55
            aload 0 /* this */
            ldc ""
            putfield sun.util.locale.LanguageTag.script:Ljava/lang/String;
         3: .line 56
            aload 0 /* this */
            ldc ""
            putfield sun.util.locale.LanguageTag.region:Ljava/lang/String;
         4: .line 57
            aload 0 /* this */
            ldc ""
            putfield sun.util.locale.LanguageTag.privateuse:Ljava/lang/String;
         5: .line 59
            aload 0 /* this */
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            putfield sun.util.locale.LanguageTag.extlangs:Ljava/util/List;
         6: .line 60
            aload 0 /* this */
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            putfield sun.util.locale.LanguageTag.variants:Ljava/util/List;
         7: .line 61
            aload 0 /* this */
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            putfield sun.util.locale.LanguageTag.extensions:Ljava/util/List;
         8: .line 135
            return
        end local 0 // sun.util.locale.LanguageTag this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lsun/util/locale/LanguageTag;

  public static sun.util.locale.LanguageTag parse(java.lang.String, sun.util.locale.ParseStatus);
    descriptor: (Ljava/lang/String;Lsun/util/locale/ParseStatus;)Lsun/util/locale/LanguageTag;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // java.lang.String languageTag
        start local 1 // sun.util.locale.ParseStatus sts
         0: .line 183
            aload 1 /* sts */
            ifnonnull 3
         1: .line 184
            new sun.util.locale.ParseStatus
            dup
            invokespecial sun.util.locale.ParseStatus.<init>:()V
            astore 1 /* sts */
         2: .line 185
            goto 4
         3: .line 186
      StackMap locals:
      StackMap stack:
            aload 1 /* sts */
            invokevirtual sun.util.locale.ParseStatus.reset:()V
         4: .line 192
      StackMap locals:
      StackMap stack:
            getstatic sun.util.locale.LanguageTag.GRANDFATHERED:Ljava/util/Map;
            aload 0 /* languageTag */
            invokestatic sun.util.locale.LocaleUtils.toLowerString:(Ljava/lang/String;)Ljava/lang/String;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String[]
            astore 3 /* gfmap */
        start local 3 // java.lang.String[] gfmap
         5: .line 193
            aload 3 /* gfmap */
            ifnull 8
         6: .line 195
            new sun.util.locale.StringTokenIterator
            dup
            aload 3 /* gfmap */
            iconst_1
            aaload
            ldc "-"
            invokespecial sun.util.locale.StringTokenIterator.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 2 /* itr */
        start local 2 // sun.util.locale.StringTokenIterator itr
         7: .line 196
            goto 9
        end local 2 // sun.util.locale.StringTokenIterator itr
         8: .line 197
      StackMap locals: java.lang.String sun.util.locale.ParseStatus top java.lang.String[]
      StackMap stack:
            new sun.util.locale.StringTokenIterator
            dup
            aload 0 /* languageTag */
            ldc "-"
            invokespecial sun.util.locale.StringTokenIterator.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 2 /* itr */
        start local 2 // sun.util.locale.StringTokenIterator itr
         9: .line 200
      StackMap locals: java.lang.String sun.util.locale.ParseStatus sun.util.locale.StringTokenIterator java.lang.String[]
      StackMap stack:
            new sun.util.locale.LanguageTag
            dup
            invokespecial sun.util.locale.LanguageTag.<init>:()V
            astore 4 /* tag */
        start local 4 // sun.util.locale.LanguageTag tag
        10: .line 203
            aload 4 /* tag */
            aload 2 /* itr */
            aload 1 /* sts */
            invokevirtual sun.util.locale.LanguageTag.parseLanguage:(Lsun/util/locale/StringTokenIterator;Lsun/util/locale/ParseStatus;)Z
            ifeq 16
        11: .line 204
            aload 4 /* tag */
            aload 2 /* itr */
            aload 1 /* sts */
            invokevirtual sun.util.locale.LanguageTag.parseExtlangs:(Lsun/util/locale/StringTokenIterator;Lsun/util/locale/ParseStatus;)Z
            pop
        12: .line 205
            aload 4 /* tag */
            aload 2 /* itr */
            aload 1 /* sts */
            invokevirtual sun.util.locale.LanguageTag.parseScript:(Lsun/util/locale/StringTokenIterator;Lsun/util/locale/ParseStatus;)Z
            pop
        13: .line 206
            aload 4 /* tag */
            aload 2 /* itr */
            aload 1 /* sts */
            invokevirtual sun.util.locale.LanguageTag.parseRegion:(Lsun/util/locale/StringTokenIterator;Lsun/util/locale/ParseStatus;)Z
            pop
        14: .line 207
            aload 4 /* tag */
            aload 2 /* itr */
            aload 1 /* sts */
            invokevirtual sun.util.locale.LanguageTag.parseVariants:(Lsun/util/locale/StringTokenIterator;Lsun/util/locale/ParseStatus;)Z
            pop
        15: .line 208
            aload 4 /* tag */
            aload 2 /* itr */
            aload 1 /* sts */
            invokevirtual sun.util.locale.LanguageTag.parseExtensions:(Lsun/util/locale/StringTokenIterator;Lsun/util/locale/ParseStatus;)Z
            pop
        16: .line 210
      StackMap locals: sun.util.locale.LanguageTag
      StackMap stack:
            aload 4 /* tag */
            aload 2 /* itr */
            aload 1 /* sts */
            invokevirtual sun.util.locale.LanguageTag.parsePrivateuse:(Lsun/util/locale/StringTokenIterator;Lsun/util/locale/ParseStatus;)Z
            pop
        17: .line 212
            aload 2 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.isDone:()Z
            ifne 24
            aload 1 /* sts */
            invokevirtual sun.util.locale.ParseStatus.isError:()Z
            ifne 24
        18: .line 213
            aload 2 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.current:()Ljava/lang/String;
            astore 5 /* s */
        start local 5 // java.lang.String s
        19: .line 214
            aload 1 /* sts */
            aload 2 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.currentStart:()I
            putfield sun.util.locale.ParseStatus.errorIndex:I
        20: .line 215
            aload 5 /* s */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 23
        21: .line 216
            aload 1 /* sts */
            ldc "Empty subtag"
            putfield sun.util.locale.ParseStatus.errorMsg:Ljava/lang/String;
        22: .line 217
            goto 24
        23: .line 218
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* sts */
            new java.lang.StringBuilder
            dup
            ldc "Invalid subtag: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* s */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield sun.util.locale.ParseStatus.errorMsg:Ljava/lang/String;
        end local 5 // java.lang.String s
        24: .line 222
      StackMap locals:
      StackMap stack:
            aload 4 /* tag */
            areturn
        end local 4 // sun.util.locale.LanguageTag tag
        end local 3 // java.lang.String[] gfmap
        end local 2 // sun.util.locale.StringTokenIterator itr
        end local 1 // sun.util.locale.ParseStatus sts
        end local 0 // java.lang.String languageTag
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   25     0  languageTag  Ljava/lang/String;
            0   25     1          sts  Lsun/util/locale/ParseStatus;
            7    8     2          itr  Lsun/util/locale/StringTokenIterator;
            9   25     2          itr  Lsun/util/locale/StringTokenIterator;
            5   25     3        gfmap  [Ljava/lang/String;
           10   25     4          tag  Lsun/util/locale/LanguageTag;
           19   24     5            s  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      languageTag  
      sts          

  private boolean parseLanguage(sun.util.locale.StringTokenIterator, sun.util.locale.ParseStatus);
    descriptor: (Lsun/util/locale/StringTokenIterator;Lsun/util/locale/ParseStatus;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // sun.util.locale.LanguageTag this
        start local 1 // sun.util.locale.StringTokenIterator itr
        start local 2 // sun.util.locale.ParseStatus sts
         0: .line 230
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.isDone:()Z
            ifne 1
            aload 2 /* sts */
            invokevirtual sun.util.locale.ParseStatus.isError:()Z
            ifeq 2
         1: .line 231
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 234
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* found */
        start local 3 // boolean found
         3: .line 236
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.current:()Ljava/lang/String;
            astore 4 /* s */
        start local 4 // java.lang.String s
         4: .line 237
            aload 4 /* s */
            invokestatic sun.util.locale.LanguageTag.isLanguage:(Ljava/lang/String;)Z
            ifeq 9
         5: .line 238
            iconst_1
            istore 3 /* found */
         6: .line 239
            aload 0 /* this */
            aload 4 /* s */
            putfield sun.util.locale.LanguageTag.language:Ljava/lang/String;
         7: .line 240
            aload 2 /* sts */
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.currentEnd:()I
            putfield sun.util.locale.ParseStatus.parseLength:I
         8: .line 241
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.next:()Ljava/lang/String;
            pop
         9: .line 244
      StackMap locals: int java.lang.String
      StackMap stack:
            iload 3 /* found */
            ireturn
        end local 4 // java.lang.String s
        end local 3 // boolean found
        end local 2 // sun.util.locale.ParseStatus sts
        end local 1 // sun.util.locale.StringTokenIterator itr
        end local 0 // sun.util.locale.LanguageTag this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0   this  Lsun/util/locale/LanguageTag;
            0   10     1    itr  Lsun/util/locale/StringTokenIterator;
            0   10     2    sts  Lsun/util/locale/ParseStatus;
            3   10     3  found  Z
            4   10     4      s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      itr   
      sts   

  private boolean parseExtlangs(sun.util.locale.StringTokenIterator, sun.util.locale.ParseStatus);
    descriptor: (Lsun/util/locale/StringTokenIterator;Lsun/util/locale/ParseStatus;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // sun.util.locale.LanguageTag this
        start local 1 // sun.util.locale.StringTokenIterator itr
        start local 2 // sun.util.locale.ParseStatus sts
         0: .line 248
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.isDone:()Z
            ifne 1
            aload 2 /* sts */
            invokevirtual sun.util.locale.ParseStatus.isError:()Z
            ifeq 2
         1: .line 249
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 252
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* found */
        start local 3 // boolean found
         3: .line 254
            goto 15
         4: .line 255
      StackMap locals: int
      StackMap stack:
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.current:()Ljava/lang/String;
            astore 4 /* s */
        start local 4 // java.lang.String s
         5: .line 256
            aload 4 /* s */
            invokestatic sun.util.locale.LanguageTag.isExtlang:(Ljava/lang/String;)Z
            ifne 7
         6: .line 257
            goto 16
         7: .line 259
      StackMap locals: java.lang.String
      StackMap stack:
            iconst_1
            istore 3 /* found */
         8: .line 260
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.extlangs:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 10
         9: .line 261
            aload 0 /* this */
            new java.util.ArrayList
            dup
            iconst_3
            invokespecial java.util.ArrayList.<init>:(I)V
            putfield sun.util.locale.LanguageTag.extlangs:Ljava/util/List;
        10: .line 263
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.extlangs:Ljava/util/List;
            aload 4 /* s */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        11: .line 264
            aload 2 /* sts */
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.currentEnd:()I
            putfield sun.util.locale.ParseStatus.parseLength:I
        12: .line 265
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.next:()Ljava/lang/String;
            pop
        13: .line 267
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.extlangs:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_3
            if_icmpne 15
        14: .line 269
            goto 16
        end local 4 // java.lang.String s
        15: .line 254
      StackMap locals:
      StackMap stack:
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.isDone:()Z
            ifeq 4
        16: .line 273
      StackMap locals:
      StackMap stack:
            iload 3 /* found */
            ireturn
        end local 3 // boolean found
        end local 2 // sun.util.locale.ParseStatus sts
        end local 1 // sun.util.locale.StringTokenIterator itr
        end local 0 // sun.util.locale.LanguageTag this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   17     0   this  Lsun/util/locale/LanguageTag;
            0   17     1    itr  Lsun/util/locale/StringTokenIterator;
            0   17     2    sts  Lsun/util/locale/ParseStatus;
            3   17     3  found  Z
            5   15     4      s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      itr   
      sts   

  private boolean parseScript(sun.util.locale.StringTokenIterator, sun.util.locale.ParseStatus);
    descriptor: (Lsun/util/locale/StringTokenIterator;Lsun/util/locale/ParseStatus;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // sun.util.locale.LanguageTag this
        start local 1 // sun.util.locale.StringTokenIterator itr
        start local 2 // sun.util.locale.ParseStatus sts
         0: .line 277
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.isDone:()Z
            ifne 1
            aload 2 /* sts */
            invokevirtual sun.util.locale.ParseStatus.isError:()Z
            ifeq 2
         1: .line 278
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 281
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* found */
        start local 3 // boolean found
         3: .line 283
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.current:()Ljava/lang/String;
            astore 4 /* s */
        start local 4 // java.lang.String s
         4: .line 284
            aload 4 /* s */
            invokestatic sun.util.locale.LanguageTag.isScript:(Ljava/lang/String;)Z
            ifeq 9
         5: .line 285
            iconst_1
            istore 3 /* found */
         6: .line 286
            aload 0 /* this */
            aload 4 /* s */
            putfield sun.util.locale.LanguageTag.script:Ljava/lang/String;
         7: .line 287
            aload 2 /* sts */
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.currentEnd:()I
            putfield sun.util.locale.ParseStatus.parseLength:I
         8: .line 288
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.next:()Ljava/lang/String;
            pop
         9: .line 291
      StackMap locals: int java.lang.String
      StackMap stack:
            iload 3 /* found */
            ireturn
        end local 4 // java.lang.String s
        end local 3 // boolean found
        end local 2 // sun.util.locale.ParseStatus sts
        end local 1 // sun.util.locale.StringTokenIterator itr
        end local 0 // sun.util.locale.LanguageTag this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0   this  Lsun/util/locale/LanguageTag;
            0   10     1    itr  Lsun/util/locale/StringTokenIterator;
            0   10     2    sts  Lsun/util/locale/ParseStatus;
            3   10     3  found  Z
            4   10     4      s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      itr   
      sts   

  private boolean parseRegion(sun.util.locale.StringTokenIterator, sun.util.locale.ParseStatus);
    descriptor: (Lsun/util/locale/StringTokenIterator;Lsun/util/locale/ParseStatus;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // sun.util.locale.LanguageTag this
        start local 1 // sun.util.locale.StringTokenIterator itr
        start local 2 // sun.util.locale.ParseStatus sts
         0: .line 295
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.isDone:()Z
            ifne 1
            aload 2 /* sts */
            invokevirtual sun.util.locale.ParseStatus.isError:()Z
            ifeq 2
         1: .line 296
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 299
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* found */
        start local 3 // boolean found
         3: .line 301
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.current:()Ljava/lang/String;
            astore 4 /* s */
        start local 4 // java.lang.String s
         4: .line 302
            aload 4 /* s */
            invokestatic sun.util.locale.LanguageTag.isRegion:(Ljava/lang/String;)Z
            ifeq 9
         5: .line 303
            iconst_1
            istore 3 /* found */
         6: .line 304
            aload 0 /* this */
            aload 4 /* s */
            putfield sun.util.locale.LanguageTag.region:Ljava/lang/String;
         7: .line 305
            aload 2 /* sts */
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.currentEnd:()I
            putfield sun.util.locale.ParseStatus.parseLength:I
         8: .line 306
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.next:()Ljava/lang/String;
            pop
         9: .line 309
      StackMap locals: int java.lang.String
      StackMap stack:
            iload 3 /* found */
            ireturn
        end local 4 // java.lang.String s
        end local 3 // boolean found
        end local 2 // sun.util.locale.ParseStatus sts
        end local 1 // sun.util.locale.StringTokenIterator itr
        end local 0 // sun.util.locale.LanguageTag this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0   this  Lsun/util/locale/LanguageTag;
            0   10     1    itr  Lsun/util/locale/StringTokenIterator;
            0   10     2    sts  Lsun/util/locale/ParseStatus;
            3   10     3  found  Z
            4   10     4      s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      itr   
      sts   

  private boolean parseVariants(sun.util.locale.StringTokenIterator, sun.util.locale.ParseStatus);
    descriptor: (Lsun/util/locale/StringTokenIterator;Lsun/util/locale/ParseStatus;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // sun.util.locale.LanguageTag this
        start local 1 // sun.util.locale.StringTokenIterator itr
        start local 2 // sun.util.locale.ParseStatus sts
         0: .line 313
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.isDone:()Z
            ifne 1
            aload 2 /* sts */
            invokevirtual sun.util.locale.ParseStatus.isError:()Z
            ifeq 2
         1: .line 314
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 317
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* found */
        start local 3 // boolean found
         3: .line 319
            goto 13
         4: .line 320
      StackMap locals: int
      StackMap stack:
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.current:()Ljava/lang/String;
            astore 4 /* s */
        start local 4 // java.lang.String s
         5: .line 321
            aload 4 /* s */
            invokestatic sun.util.locale.LanguageTag.isVariant:(Ljava/lang/String;)Z
            ifne 7
         6: .line 322
            goto 14
         7: .line 324
      StackMap locals: java.lang.String
      StackMap stack:
            iconst_1
            istore 3 /* found */
         8: .line 325
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.variants:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 10
         9: .line 326
            aload 0 /* this */
            new java.util.ArrayList
            dup
            iconst_3
            invokespecial java.util.ArrayList.<init>:(I)V
            putfield sun.util.locale.LanguageTag.variants:Ljava/util/List;
        10: .line 328
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.variants:Ljava/util/List;
            aload 4 /* s */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        11: .line 329
            aload 2 /* sts */
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.currentEnd:()I
            putfield sun.util.locale.ParseStatus.parseLength:I
        12: .line 330
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.next:()Ljava/lang/String;
            pop
        end local 4 // java.lang.String s
        13: .line 319
      StackMap locals:
      StackMap stack:
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.isDone:()Z
            ifeq 4
        14: .line 333
      StackMap locals:
      StackMap stack:
            iload 3 /* found */
            ireturn
        end local 3 // boolean found
        end local 2 // sun.util.locale.ParseStatus sts
        end local 1 // sun.util.locale.StringTokenIterator itr
        end local 0 // sun.util.locale.LanguageTag this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   15     0   this  Lsun/util/locale/LanguageTag;
            0   15     1    itr  Lsun/util/locale/StringTokenIterator;
            0   15     2    sts  Lsun/util/locale/ParseStatus;
            3   15     3  found  Z
            5   13     4      s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      itr   
      sts   

  private boolean parseExtensions(sun.util.locale.StringTokenIterator, sun.util.locale.ParseStatus);
    descriptor: (Lsun/util/locale/StringTokenIterator;Lsun/util/locale/ParseStatus;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=8, args_size=3
        start local 0 // sun.util.locale.LanguageTag this
        start local 1 // sun.util.locale.StringTokenIterator itr
        start local 2 // sun.util.locale.ParseStatus sts
         0: .line 337
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.isDone:()Z
            ifne 1
            aload 2 /* sts */
            invokevirtual sun.util.locale.ParseStatus.isError:()Z
            ifeq 2
         1: .line 338
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 341
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* found */
        start local 3 // boolean found
         3: .line 343
            goto 25
         4: .line 344
      StackMap locals: int
      StackMap stack:
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.current:()Ljava/lang/String;
            astore 4 /* s */
        start local 4 // java.lang.String s
         5: .line 345
            aload 4 /* s */
            invokestatic sun.util.locale.LanguageTag.isExtensionSingleton:(Ljava/lang/String;)Z
            ifeq 26
         6: .line 346
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.currentStart:()I
            istore 5 /* start */
        start local 5 // int start
         7: .line 347
            aload 4 /* s */
            astore 6 /* singleton */
        start local 6 // java.lang.String singleton
         8: .line 348
            new java.lang.StringBuilder
            dup
            aload 6 /* singleton */
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 7 /* sb */
        start local 7 // java.lang.StringBuilder sb
         9: .line 350
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.next:()Ljava/lang/String;
            pop
        10: .line 351
            goto 16
        11: .line 352
      StackMap locals: sun.util.locale.LanguageTag sun.util.locale.StringTokenIterator sun.util.locale.ParseStatus int java.lang.String int java.lang.String java.lang.StringBuilder
      StackMap stack:
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.current:()Ljava/lang/String;
            astore 4 /* s */
        12: .line 353
            aload 4 /* s */
            invokestatic sun.util.locale.LanguageTag.isExtensionSubtag:(Ljava/lang/String;)Z
            ifeq 17
        13: .line 354
            aload 7 /* sb */
            ldc "-"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* s */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        14: .line 355
            aload 2 /* sts */
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.currentEnd:()I
            putfield sun.util.locale.ParseStatus.parseLength:I
        15: .line 359
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.next:()Ljava/lang/String;
            pop
        16: .line 351
      StackMap locals:
      StackMap stack:
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.isDone:()Z
            ifeq 11
        17: .line 362
      StackMap locals:
      StackMap stack:
            aload 2 /* sts */
            getfield sun.util.locale.ParseStatus.parseLength:I
            iload 5 /* start */
            if_icmpgt 21
        18: .line 363
            aload 2 /* sts */
            iload 5 /* start */
            putfield sun.util.locale.ParseStatus.errorIndex:I
        19: .line 364
            aload 2 /* sts */
            new java.lang.StringBuilder
            dup
            ldc "Incomplete extension '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* singleton */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield sun.util.locale.ParseStatus.errorMsg:Ljava/lang/String;
        20: .line 365
            goto 26
        21: .line 368
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.extensions:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 23
        22: .line 369
            aload 0 /* this */
            new java.util.ArrayList
            dup
            iconst_4
            invokespecial java.util.ArrayList.<init>:(I)V
            putfield sun.util.locale.LanguageTag.extensions:Ljava/util/List;
        23: .line 371
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.extensions:Ljava/util/List;
            aload 7 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        24: .line 372
            iconst_1
            istore 3 /* found */
        end local 7 // java.lang.StringBuilder sb
        end local 6 // java.lang.String singleton
        end local 5 // int start
        end local 4 // java.lang.String s
        25: .line 343
      StackMap locals: sun.util.locale.LanguageTag sun.util.locale.StringTokenIterator sun.util.locale.ParseStatus int
      StackMap stack:
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.isDone:()Z
            ifeq 4
        26: .line 377
      StackMap locals:
      StackMap stack:
            iload 3 /* found */
            ireturn
        end local 3 // boolean found
        end local 2 // sun.util.locale.ParseStatus sts
        end local 1 // sun.util.locale.StringTokenIterator itr
        end local 0 // sun.util.locale.LanguageTag this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   27     0       this  Lsun/util/locale/LanguageTag;
            0   27     1        itr  Lsun/util/locale/StringTokenIterator;
            0   27     2        sts  Lsun/util/locale/ParseStatus;
            3   27     3      found  Z
            5   25     4          s  Ljava/lang/String;
            7   25     5      start  I
            8   25     6  singleton  Ljava/lang/String;
            9   25     7         sb  Ljava/lang/StringBuilder;
    MethodParameters:
      Name  Flags
      itr   
      sts   

  private boolean parsePrivateuse(sun.util.locale.StringTokenIterator, sun.util.locale.ParseStatus);
    descriptor: (Lsun/util/locale/StringTokenIterator;Lsun/util/locale/ParseStatus;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=3
        start local 0 // sun.util.locale.LanguageTag this
        start local 1 // sun.util.locale.StringTokenIterator itr
        start local 2 // sun.util.locale.ParseStatus sts
         0: .line 381
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.isDone:()Z
            ifne 1
            aload 2 /* sts */
            invokevirtual sun.util.locale.ParseStatus.isError:()Z
            ifeq 2
         1: .line 382
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 385
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* found */
        start local 3 // boolean found
         3: .line 387
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.current:()Ljava/lang/String;
            astore 4 /* s */
        start local 4 // java.lang.String s
         4: .line 388
            aload 4 /* s */
            invokestatic sun.util.locale.LanguageTag.isPrivateusePrefix:(Ljava/lang/String;)Z
            ifeq 22
         5: .line 389
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.currentStart:()I
            istore 5 /* start */
        start local 5 // int start
         6: .line 390
            new java.lang.StringBuilder
            dup
            aload 4 /* s */
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 6 /* sb */
        start local 6 // java.lang.StringBuilder sb
         7: .line 392
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.next:()Ljava/lang/String;
            pop
         8: .line 393
            goto 15
         9: .line 394
      StackMap locals: sun.util.locale.LanguageTag sun.util.locale.StringTokenIterator sun.util.locale.ParseStatus int java.lang.String int java.lang.StringBuilder
      StackMap stack:
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.current:()Ljava/lang/String;
            astore 4 /* s */
        10: .line 395
            aload 4 /* s */
            invokestatic sun.util.locale.LanguageTag.isPrivateuseSubtag:(Ljava/lang/String;)Z
            ifne 12
        11: .line 396
            goto 16
        12: .line 398
      StackMap locals:
      StackMap stack:
            aload 6 /* sb */
            ldc "-"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* s */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        13: .line 399
            aload 2 /* sts */
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.currentEnd:()I
            putfield sun.util.locale.ParseStatus.parseLength:I
        14: .line 401
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.next:()Ljava/lang/String;
            pop
        15: .line 393
      StackMap locals:
      StackMap stack:
            aload 1 /* itr */
            invokevirtual sun.util.locale.StringTokenIterator.isDone:()Z
            ifeq 9
        16: .line 404
      StackMap locals:
      StackMap stack:
            aload 2 /* sts */
            getfield sun.util.locale.ParseStatus.parseLength:I
            iload 5 /* start */
            if_icmpgt 20
        17: .line 406
            aload 2 /* sts */
            iload 5 /* start */
            putfield sun.util.locale.ParseStatus.errorIndex:I
        18: .line 407
            aload 2 /* sts */
            ldc "Incomplete privateuse"
            putfield sun.util.locale.ParseStatus.errorMsg:Ljava/lang/String;
        19: .line 408
            goto 22
        20: .line 409
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield sun.util.locale.LanguageTag.privateuse:Ljava/lang/String;
        21: .line 410
            iconst_1
            istore 3 /* found */
        end local 6 // java.lang.StringBuilder sb
        end local 5 // int start
        22: .line 414
      StackMap locals:
      StackMap stack:
            iload 3 /* found */
            ireturn
        end local 4 // java.lang.String s
        end local 3 // boolean found
        end local 2 // sun.util.locale.ParseStatus sts
        end local 1 // sun.util.locale.StringTokenIterator itr
        end local 0 // sun.util.locale.LanguageTag this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   23     0   this  Lsun/util/locale/LanguageTag;
            0   23     1    itr  Lsun/util/locale/StringTokenIterator;
            0   23     2    sts  Lsun/util/locale/ParseStatus;
            3   23     3  found  Z
            4   23     4      s  Ljava/lang/String;
            6   22     5  start  I
            7   22     6     sb  Ljava/lang/StringBuilder;
    MethodParameters:
      Name  Flags
      itr   
      sts   

  public static sun.util.locale.LanguageTag parseLocale(sun.util.locale.BaseLocale, sun.util.locale.LocaleExtensions);
    descriptor: (Lsun/util/locale/BaseLocale;Lsun/util/locale/LocaleExtensions;)Lsun/util/locale/LanguageTag;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=15, args_size=2
        start local 0 // sun.util.locale.BaseLocale baseLocale
        start local 1 // sun.util.locale.LocaleExtensions localeExtensions
         0: .line 418
            new sun.util.locale.LanguageTag
            dup
            invokespecial sun.util.locale.LanguageTag.<init>:()V
            astore 2 /* tag */
        start local 2 // sun.util.locale.LanguageTag tag
         1: .line 420
            aload 0 /* baseLocale */
            invokevirtual sun.util.locale.BaseLocale.getLanguage:()Ljava/lang/String;
            astore 3 /* language */
        start local 3 // java.lang.String language
         2: .line 421
            aload 0 /* baseLocale */
            invokevirtual sun.util.locale.BaseLocale.getScript:()Ljava/lang/String;
            astore 4 /* script */
        start local 4 // java.lang.String script
         3: .line 422
            aload 0 /* baseLocale */
            invokevirtual sun.util.locale.BaseLocale.getRegion:()Ljava/lang/String;
            astore 5 /* region */
        start local 5 // java.lang.String region
         4: .line 423
            aload 0 /* baseLocale */
            invokevirtual sun.util.locale.BaseLocale.getVariant:()Ljava/lang/String;
            astore 6 /* variant */
        start local 6 // java.lang.String variant
         5: .line 425
            iconst_0
            istore 7 /* hasSubtag */
        start local 7 // boolean hasSubtag
         6: .line 427
            aconst_null
            astore 8 /* privuseVar */
        start local 8 // java.lang.String privuseVar
         7: .line 429
            aload 3 /* language */
            invokestatic sun.util.locale.LanguageTag.isLanguage:(Ljava/lang/String;)Z
            ifeq 17
         8: .line 431
            aload 3 /* language */
            ldc "iw"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 11
         9: .line 432
            ldc "he"
            astore 3 /* language */
        10: .line 433
            goto 16
      StackMap locals: sun.util.locale.BaseLocale sun.util.locale.LocaleExtensions sun.util.locale.LanguageTag java.lang.String java.lang.String java.lang.String java.lang.String int java.lang.String
      StackMap stack:
        11: aload 3 /* language */
            ldc "ji"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 14
        12: .line 434
            ldc "yi"
            astore 3 /* language */
        13: .line 435
            goto 16
      StackMap locals:
      StackMap stack:
        14: aload 3 /* language */
            ldc "in"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 16
        15: .line 436
            ldc "id"
            astore 3 /* language */
        16: .line 438
      StackMap locals:
      StackMap stack:
            aload 2 /* tag */
            aload 3 /* language */
            putfield sun.util.locale.LanguageTag.language:Ljava/lang/String;
        17: .line 441
      StackMap locals:
      StackMap stack:
            aload 4 /* script */
            invokestatic sun.util.locale.LanguageTag.isScript:(Ljava/lang/String;)Z
            ifeq 20
        18: .line 442
            aload 2 /* tag */
            aload 4 /* script */
            invokestatic sun.util.locale.LanguageTag.canonicalizeScript:(Ljava/lang/String;)Ljava/lang/String;
            putfield sun.util.locale.LanguageTag.script:Ljava/lang/String;
        19: .line 443
            iconst_1
            istore 7 /* hasSubtag */
        20: .line 446
      StackMap locals:
      StackMap stack:
            aload 5 /* region */
            invokestatic sun.util.locale.LanguageTag.isRegion:(Ljava/lang/String;)Z
            ifeq 23
        21: .line 447
            aload 2 /* tag */
            aload 5 /* region */
            invokestatic sun.util.locale.LanguageTag.canonicalizeRegion:(Ljava/lang/String;)Ljava/lang/String;
            putfield sun.util.locale.LanguageTag.region:Ljava/lang/String;
        22: .line 448
            iconst_1
            istore 7 /* hasSubtag */
        23: .line 452
      StackMap locals:
      StackMap stack:
            aload 2 /* tag */
            getfield sun.util.locale.LanguageTag.language:Ljava/lang/String;
            ldc "no"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 26
            aload 2 /* tag */
            getfield sun.util.locale.LanguageTag.region:Ljava/lang/String;
            ldc "NO"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 26
            aload 6 /* variant */
            ldc "NY"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 26
        24: .line 453
            aload 2 /* tag */
            ldc "nn"
            putfield sun.util.locale.LanguageTag.language:Ljava/lang/String;
        25: .line 454
            ldc ""
            astore 6 /* variant */
        26: .line 457
      StackMap locals:
      StackMap stack:
            aload 6 /* variant */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 52
        27: .line 458
            aconst_null
            astore 9 /* variants */
        start local 9 // java.util.List variants
        28: .line 459
            new sun.util.locale.StringTokenIterator
            dup
            aload 6 /* variant */
            ldc "_"
            invokespecial sun.util.locale.StringTokenIterator.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 10 /* varitr */
        start local 10 // sun.util.locale.StringTokenIterator varitr
        29: .line 460
            goto 37
        30: .line 461
      StackMap locals: java.util.List sun.util.locale.StringTokenIterator
      StackMap stack:
            aload 10 /* varitr */
            invokevirtual sun.util.locale.StringTokenIterator.current:()Ljava/lang/String;
            astore 11 /* var */
        start local 11 // java.lang.String var
        31: .line 462
            aload 11 /* var */
            invokestatic sun.util.locale.LanguageTag.isVariant:(Ljava/lang/String;)Z
            ifne 33
        32: .line 463
            goto 38
        33: .line 465
      StackMap locals: java.lang.String
      StackMap stack:
            aload 9 /* variants */
            ifnonnull 35
        34: .line 466
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 9 /* variants */
        35: .line 468
      StackMap locals:
      StackMap stack:
            aload 9 /* variants */
            aload 11 /* var */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        36: .line 469
            aload 10 /* varitr */
            invokevirtual sun.util.locale.StringTokenIterator.next:()Ljava/lang/String;
            pop
        end local 11 // java.lang.String var
        37: .line 460
      StackMap locals:
      StackMap stack:
            aload 10 /* varitr */
            invokevirtual sun.util.locale.StringTokenIterator.isDone:()Z
            ifeq 30
        38: .line 471
      StackMap locals:
      StackMap stack:
            aload 9 /* variants */
            ifnull 41
        39: .line 472
            aload 2 /* tag */
            aload 9 /* variants */
            putfield sun.util.locale.LanguageTag.variants:Ljava/util/List;
        40: .line 473
            iconst_1
            istore 7 /* hasSubtag */
        41: .line 475
      StackMap locals:
      StackMap stack:
            aload 10 /* varitr */
            invokevirtual sun.util.locale.StringTokenIterator.isDone:()Z
            ifne 52
        42: .line 477
            new java.util.StringJoiner
            dup
            ldc "-"
            invokespecial java.util.StringJoiner.<init>:(Ljava/lang/CharSequence;)V
            astore 11 /* sj */
        start local 11 // java.util.StringJoiner sj
        43: .line 478
            goto 49
        44: .line 479
      StackMap locals: java.util.StringJoiner
      StackMap stack:
            aload 10 /* varitr */
            invokevirtual sun.util.locale.StringTokenIterator.current:()Ljava/lang/String;
            astore 12 /* prvv */
        start local 12 // java.lang.String prvv
        45: .line 480
            aload 12 /* prvv */
            invokestatic sun.util.locale.LanguageTag.isPrivateuseSubtag:(Ljava/lang/String;)Z
            ifne 47
        46: .line 482
            goto 50
        47: .line 484
      StackMap locals: java.lang.String
      StackMap stack:
            aload 11 /* sj */
            aload 12 /* prvv */
            invokevirtual java.util.StringJoiner.add:(Ljava/lang/CharSequence;)Ljava/util/StringJoiner;
            pop
        48: .line 485
            aload 10 /* varitr */
            invokevirtual sun.util.locale.StringTokenIterator.next:()Ljava/lang/String;
            pop
        end local 12 // java.lang.String prvv
        49: .line 478
      StackMap locals:
      StackMap stack:
            aload 10 /* varitr */
            invokevirtual sun.util.locale.StringTokenIterator.isDone:()Z
            ifeq 44
        50: .line 487
      StackMap locals:
      StackMap stack:
            aload 11 /* sj */
            invokevirtual java.util.StringJoiner.length:()I
            ifle 52
        51: .line 488
            aload 11 /* sj */
            invokevirtual java.util.StringJoiner.toString:()Ljava/lang/String;
            astore 8 /* privuseVar */
        end local 11 // java.util.StringJoiner sj
        end local 10 // sun.util.locale.StringTokenIterator varitr
        end local 9 // java.util.List variants
        52: .line 493
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 9 /* extensions */
        start local 9 // java.util.List extensions
        53: .line 494
            aconst_null
            astore 10 /* privateuse */
        start local 10 // java.lang.String privateuse
        54: .line 496
            aload 1 /* localeExtensions */
            ifnull 66
        55: .line 497
            aload 1 /* localeExtensions */
            invokevirtual sun.util.locale.LocaleExtensions.getKeys:()Ljava/util/Set;
            astore 11 /* locextKeys */
        start local 11 // java.util.Set locextKeys
        56: .line 498
            aload 11 /* locextKeys */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 13
            goto 65
      StackMap locals: sun.util.locale.BaseLocale sun.util.locale.LocaleExtensions sun.util.locale.LanguageTag java.lang.String java.lang.String java.lang.String java.lang.String int java.lang.String java.util.List java.lang.String java.util.Set top java.util.Iterator
      StackMap stack:
        57: aload 13
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Character
            astore 12 /* locextKey */
        start local 12 // java.lang.Character locextKey
        58: .line 499
            aload 1 /* localeExtensions */
            aload 12 /* locextKey */
            invokevirtual sun.util.locale.LocaleExtensions.getExtension:(Ljava/lang/Character;)Lsun/util/locale/Extension;
            astore 14 /* ext */
        start local 14 // sun.util.locale.Extension ext
        59: .line 500
            aload 12 /* locextKey */
            invokevirtual java.lang.Character.charValue:()C
            invokestatic sun.util.locale.LanguageTag.isPrivateusePrefixChar:(C)Z
            ifeq 62
        60: .line 501
            aload 14 /* ext */
            invokevirtual sun.util.locale.Extension.getValue:()Ljava/lang/String;
            astore 10 /* privateuse */
        61: .line 502
            goto 65
        62: .line 503
      StackMap locals: sun.util.locale.BaseLocale sun.util.locale.LocaleExtensions sun.util.locale.LanguageTag java.lang.String java.lang.String java.lang.String java.lang.String int java.lang.String java.util.List java.lang.String java.util.Set java.lang.Character java.util.Iterator sun.util.locale.Extension
      StackMap stack:
            aload 9 /* extensions */
            ifnonnull 64
        63: .line 504
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 9 /* extensions */
        64: .line 506
      StackMap locals:
      StackMap stack:
            aload 9 /* extensions */
            new java.lang.StringBuilder
            dup
            aload 12 /* locextKey */
            invokevirtual java.lang.Character.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "-"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 14 /* ext */
            invokevirtual sun.util.locale.Extension.getValue:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 14 // sun.util.locale.Extension ext
        end local 12 // java.lang.Character locextKey
        65: .line 498
      StackMap locals: sun.util.locale.BaseLocale sun.util.locale.LocaleExtensions sun.util.locale.LanguageTag java.lang.String java.lang.String java.lang.String java.lang.String int java.lang.String java.util.List java.lang.String java.util.Set top java.util.Iterator
      StackMap stack:
            aload 13
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 57
        end local 11 // java.util.Set locextKeys
        66: .line 511
      StackMap locals: sun.util.locale.BaseLocale sun.util.locale.LocaleExtensions sun.util.locale.LanguageTag java.lang.String java.lang.String java.lang.String java.lang.String int java.lang.String java.util.List java.lang.String
      StackMap stack:
            aload 9 /* extensions */
            ifnull 69
        67: .line 512
            aload 2 /* tag */
            aload 9 /* extensions */
            putfield sun.util.locale.LanguageTag.extensions:Ljava/util/List;
        68: .line 513
            iconst_1
            istore 7 /* hasSubtag */
        69: .line 517
      StackMap locals:
      StackMap stack:
            aload 8 /* privuseVar */
            ifnull 76
        70: .line 518
            aload 10 /* privateuse */
            ifnonnull 73
        71: .line 519
            new java.lang.StringBuilder
            dup
            ldc "lvariant-"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 8 /* privuseVar */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 10 /* privateuse */
        72: .line 520
            goto 76
        73: .line 521
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 10 /* privateuse */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "-"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "lvariant"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        74: .line 522
            ldc "-"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 8 /* privuseVar */
            ldc "_"
            ldc "-"
            invokevirtual java.lang.String.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        75: .line 521
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 10 /* privateuse */
        76: .line 526
      StackMap locals:
      StackMap stack:
            aload 10 /* privateuse */
            ifnull 78
        77: .line 527
            aload 2 /* tag */
            aload 10 /* privateuse */
            putfield sun.util.locale.LanguageTag.privateuse:Ljava/lang/String;
        78: .line 530
      StackMap locals:
      StackMap stack:
            aload 2 /* tag */
            getfield sun.util.locale.LanguageTag.language:Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 80
            iload 7 /* hasSubtag */
            ifne 79
            aload 10 /* privateuse */
            ifnonnull 80
        79: .line 534
      StackMap locals:
      StackMap stack:
            aload 2 /* tag */
            ldc "und"
            putfield sun.util.locale.LanguageTag.language:Ljava/lang/String;
        80: .line 537
      StackMap locals:
      StackMap stack:
            aload 2 /* tag */
            areturn
        end local 10 // java.lang.String privateuse
        end local 9 // java.util.List extensions
        end local 8 // java.lang.String privuseVar
        end local 7 // boolean hasSubtag
        end local 6 // java.lang.String variant
        end local 5 // java.lang.String region
        end local 4 // java.lang.String script
        end local 3 // java.lang.String language
        end local 2 // sun.util.locale.LanguageTag tag
        end local 1 // sun.util.locale.LocaleExtensions localeExtensions
        end local 0 // sun.util.locale.BaseLocale baseLocale
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   81     0        baseLocale  Lsun/util/locale/BaseLocale;
            0   81     1  localeExtensions  Lsun/util/locale/LocaleExtensions;
            1   81     2               tag  Lsun/util/locale/LanguageTag;
            2   81     3          language  Ljava/lang/String;
            3   81     4            script  Ljava/lang/String;
            4   81     5            region  Ljava/lang/String;
            5   81     6           variant  Ljava/lang/String;
            6   81     7         hasSubtag  Z
            7   81     8        privuseVar  Ljava/lang/String;
           28   52     9          variants  Ljava/util/List<Ljava/lang/String;>;
           29   52    10            varitr  Lsun/util/locale/StringTokenIterator;
           31   37    11               var  Ljava/lang/String;
           43   52    11                sj  Ljava/util/StringJoiner;
           45   49    12              prvv  Ljava/lang/String;
           53   81     9        extensions  Ljava/util/List<Ljava/lang/String;>;
           54   81    10        privateuse  Ljava/lang/String;
           56   66    11        locextKeys  Ljava/util/Set<Ljava/lang/Character;>;
           58   65    12         locextKey  Ljava/lang/Character;
           59   65    14               ext  Lsun/util/locale/Extension;
    MethodParameters:
                  Name  Flags
      baseLocale        
      localeExtensions  

  public java.lang.String getLanguage();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.util.locale.LanguageTag this
         0: .line 545
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.language:Ljava/lang/String;
            areturn
        end local 0 // sun.util.locale.LanguageTag this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/util/locale/LanguageTag;

  public java.util.List<java.lang.String> getExtlangs();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.util.locale.LanguageTag this
         0: .line 549
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.extlangs:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 2
         1: .line 550
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            areturn
         2: .line 552
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.extlangs:Ljava/util/List;
            invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
            areturn
        end local 0 // sun.util.locale.LanguageTag this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/util/locale/LanguageTag;
    Signature: ()Ljava/util/List<Ljava/lang/String;>;

  public java.lang.String getScript();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.util.locale.LanguageTag this
         0: .line 556
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.script:Ljava/lang/String;
            areturn
        end local 0 // sun.util.locale.LanguageTag this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/util/locale/LanguageTag;

  public java.lang.String getRegion();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.util.locale.LanguageTag this
         0: .line 560
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.region:Ljava/lang/String;
            areturn
        end local 0 // sun.util.locale.LanguageTag this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/util/locale/LanguageTag;

  public java.util.List<java.lang.String> getVariants();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.util.locale.LanguageTag this
         0: .line 564
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.variants:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 2
         1: .line 565
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            areturn
         2: .line 567
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.variants:Ljava/util/List;
            invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
            areturn
        end local 0 // sun.util.locale.LanguageTag this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/util/locale/LanguageTag;
    Signature: ()Ljava/util/List<Ljava/lang/String;>;

  public java.util.List<java.lang.String> getExtensions();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.util.locale.LanguageTag this
         0: .line 571
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.extensions:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 2
         1: .line 572
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            areturn
         2: .line 574
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.extensions:Ljava/util/List;
            invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
            areturn
        end local 0 // sun.util.locale.LanguageTag this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/util/locale/LanguageTag;
    Signature: ()Ljava/util/List<Ljava/lang/String;>;

  public java.lang.String getPrivateuse();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.util.locale.LanguageTag this
         0: .line 578
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.privateuse:Ljava/lang/String;
            areturn
        end local 0 // sun.util.locale.LanguageTag this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/util/locale/LanguageTag;

  public static boolean isLanguage(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.String s
         0: .line 591
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            istore 1 /* len */
        start local 1 // int len
         1: .line 592
            iload 1 /* len */
            iconst_2
            if_icmplt 2
            iload 1 /* len */
            bipush 8
            if_icmpgt 2
            aload 0 /* s */
            invokestatic sun.util.locale.LocaleUtils.isAlphaString:(Ljava/lang/String;)Z
            ifeq 2
            iconst_1
            ireturn
      StackMap locals: int
      StackMap stack:
         2: iconst_0
            ireturn
        end local 1 // int len
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     s  Ljava/lang/String;
            1    3     1   len  I
    MethodParameters:
      Name  Flags
      s     

  public static boolean isExtlang(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 598
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            iconst_3
            if_icmpne 1
            aload 0 /* s */
            invokestatic sun.util.locale.LocaleUtils.isAlphaString:(Ljava/lang/String;)Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  public static boolean isScript(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 603
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            iconst_4
            if_icmpne 1
            aload 0 /* s */
            invokestatic sun.util.locale.LocaleUtils.isAlphaString:(Ljava/lang/String;)Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  public static boolean isRegion(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 609
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            iconst_2
            if_icmpne 1
            aload 0 /* s */
            invokestatic sun.util.locale.LocaleUtils.isAlphaString:(Ljava/lang/String;)Z
            ifne 3
         1: .line 610
      StackMap locals:
      StackMap stack:
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            iconst_3
            if_icmpne 2
            aload 0 /* s */
            invokestatic sun.util.locale.LocaleUtils.isNumericString:(Ljava/lang/String;)Z
            ifne 3
         2: .line 609
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_1
            ireturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  public static boolean isVariant(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.String s
         0: .line 616
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            istore 1 /* len */
        start local 1 // int len
         1: .line 617
            iload 1 /* len */
            iconst_5
            if_icmplt 3
            iload 1 /* len */
            bipush 8
            if_icmpgt 3
         2: .line 618
            aload 0 /* s */
            invokestatic sun.util.locale.LocaleUtils.isAlphaNumericString:(Ljava/lang/String;)Z
            ireturn
         3: .line 620
      StackMap locals: int
      StackMap stack:
            iload 1 /* len */
            iconst_4
            if_icmpne 10
         4: .line 621
            aload 0 /* s */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic sun.util.locale.LocaleUtils.isNumeric:(C)Z
            ifeq 9
         5: .line 622
            aload 0 /* s */
            iconst_1
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic sun.util.locale.LocaleUtils.isAlphaNumeric:(C)Z
            ifeq 9
         6: .line 623
            aload 0 /* s */
            iconst_2
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic sun.util.locale.LocaleUtils.isAlphaNumeric:(C)Z
            ifeq 9
         7: .line 624
            aload 0 /* s */
            iconst_3
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic sun.util.locale.LocaleUtils.isAlphaNumeric:(C)Z
            ifeq 9
         8: .line 621
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         9: iconst_0
            ireturn
        10: .line 626
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // int len
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0     s  Ljava/lang/String;
            1   11     1   len  I
    MethodParameters:
      Name  Flags
      s     

  public static boolean isExtensionSingleton(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 636
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            iconst_1
            if_icmpne 4
         1: .line 637
            aload 0 /* s */
            invokestatic sun.util.locale.LocaleUtils.isAlphaString:(Ljava/lang/String;)Z
            ifeq 4
         2: .line 638
            ldc "x"
            aload 0 /* s */
            invokestatic sun.util.locale.LocaleUtils.caseIgnoreMatch:(Ljava/lang/String;Ljava/lang/String;)Z
            ifne 4
         3: .line 636
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         4: iconst_0
            ireturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  public static boolean isExtensionSingletonChar(char);
    descriptor: (C)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char c
         0: .line 642
            iload 0 /* c */
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            invokestatic sun.util.locale.LanguageTag.isExtensionSingleton:(Ljava/lang/String;)Z
            ireturn
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     c  C
    MethodParameters:
      Name  Flags
      c     

  public static boolean isExtensionSubtag(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.String s
         0: .line 647
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            istore 1 /* len */
        start local 1 // int len
         1: .line 648
            iload 1 /* len */
            iconst_2
            if_icmplt 2
            iload 1 /* len */
            bipush 8
            if_icmpgt 2
            aload 0 /* s */
            invokestatic sun.util.locale.LocaleUtils.isAlphaNumericString:(Ljava/lang/String;)Z
            ifeq 2
            iconst_1
            ireturn
      StackMap locals: int
      StackMap stack:
         2: iconst_0
            ireturn
        end local 1 // int len
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     s  Ljava/lang/String;
            1    3     1   len  I
    MethodParameters:
      Name  Flags
      s     

  public static boolean isPrivateusePrefix(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 653
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            iconst_1
            if_icmpne 3
         1: .line 654
            ldc "x"
            aload 0 /* s */
            invokestatic sun.util.locale.LocaleUtils.caseIgnoreMatch:(Ljava/lang/String;Ljava/lang/String;)Z
            ifeq 3
         2: .line 653
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  public static boolean isPrivateusePrefixChar(char);
    descriptor: (C)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // char c
         0: .line 658
            ldc "x"
            iload 0 /* c */
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            invokestatic sun.util.locale.LocaleUtils.caseIgnoreMatch:(Ljava/lang/String;Ljava/lang/String;)Z
            ireturn
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     c  C
    MethodParameters:
      Name  Flags
      c     

  public static boolean isPrivateuseSubtag(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.String s
         0: .line 663
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            istore 1 /* len */
        start local 1 // int len
         1: .line 664
            iload 1 /* len */
            iconst_1
            if_icmplt 2
            iload 1 /* len */
            bipush 8
            if_icmpgt 2
            aload 0 /* s */
            invokestatic sun.util.locale.LocaleUtils.isAlphaNumericString:(Ljava/lang/String;)Z
            ifeq 2
            iconst_1
            ireturn
      StackMap locals: int
      StackMap stack:
         2: iconst_0
            ireturn
        end local 1 // int len
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     s  Ljava/lang/String;
            1    3     1   len  I
    MethodParameters:
      Name  Flags
      s     

  public static java.lang.String canonicalizeLanguage(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 672
            aload 0 /* s */
            invokestatic sun.util.locale.LocaleUtils.toLowerString:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  public static java.lang.String canonicalizeExtlang(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 676
            aload 0 /* s */
            invokestatic sun.util.locale.LocaleUtils.toLowerString:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  public static java.lang.String canonicalizeScript(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 680
            aload 0 /* s */
            invokestatic sun.util.locale.LocaleUtils.toTitleString:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  public static java.lang.String canonicalizeRegion(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 684
            aload 0 /* s */
            invokestatic sun.util.locale.LocaleUtils.toUpperString:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  public static java.lang.String canonicalizeVariant(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 688
            aload 0 /* s */
            invokestatic sun.util.locale.LocaleUtils.toLowerString:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  public static java.lang.String canonicalizeExtension(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 692
            aload 0 /* s */
            invokestatic sun.util.locale.LocaleUtils.toLowerString:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  public static java.lang.String canonicalizeExtensionSingleton(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 696
            aload 0 /* s */
            invokestatic sun.util.locale.LocaleUtils.toLowerString:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  public static java.lang.String canonicalizeExtensionSubtag(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 700
            aload 0 /* s */
            invokestatic sun.util.locale.LocaleUtils.toLowerString:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  public static java.lang.String canonicalizePrivateuse(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 704
            aload 0 /* s */
            invokestatic sun.util.locale.LocaleUtils.toLowerString:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  public static java.lang.String canonicalizePrivateuseSubtag(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 708
            aload 0 /* s */
            invokestatic sun.util.locale.LocaleUtils.toLowerString:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // sun.util.locale.LanguageTag this
         0: .line 713
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         1: .line 715
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.language:Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 19
         2: .line 716
            aload 1 /* sb */
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.language:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         3: .line 718
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.extlangs:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 6
      StackMap locals: sun.util.locale.LanguageTag java.lang.StringBuilder top java.util.Iterator
      StackMap stack:
         4: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* extlang */
        start local 2 // java.lang.String extlang
         5: .line 719
            aload 1 /* sb */
            ldc "-"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* extlang */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 2 // java.lang.String extlang
         6: .line 718
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         7: .line 722
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.script:Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 9
         8: .line 723
            aload 1 /* sb */
            ldc "-"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.script:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         9: .line 726
      StackMap locals: sun.util.locale.LanguageTag java.lang.StringBuilder
      StackMap stack:
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.region:Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 11
        10: .line 727
            aload 1 /* sb */
            ldc "-"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.region:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 730
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.variants:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 14
      StackMap locals: sun.util.locale.LanguageTag java.lang.StringBuilder top java.util.Iterator
      StackMap stack:
        12: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* variant */
        start local 2 // java.lang.String variant
        13: .line 731
            aload 1 /* sb */
            ldc "-"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* variant */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 2 // java.lang.String variant
        14: .line 730
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 12
        15: .line 734
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.extensions:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 18
      StackMap locals:
      StackMap stack:
        16: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* extension */
        start local 2 // java.lang.String extension
        17: .line 735
            aload 1 /* sb */
            ldc "-"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* extension */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 2 // java.lang.String extension
        18: .line 734
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 16
        19: .line 738
      StackMap locals: sun.util.locale.LanguageTag java.lang.StringBuilder
      StackMap stack:
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.privateuse:Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 23
        20: .line 739
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            ifle 22
        21: .line 740
            aload 1 /* sb */
            ldc "-"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        22: .line 742
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            aload 0 /* this */
            getfield sun.util.locale.LanguageTag.privateuse:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        23: .line 745
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder sb
        end local 0 // sun.util.locale.LanguageTag this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   24     0       this  Lsun/util/locale/LanguageTag;
            1   24     1         sb  Ljava/lang/StringBuilder;
            5    6     2    extlang  Ljava/lang/String;
           13   14     2    variant  Ljava/lang/String;
           17   18     2  extension  Ljava/lang/String;
}
SourceFile: "LanguageTag.java"