class java.time.format.DateTimeFormatterBuilder$PrefixTree
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: java.time.format.DateTimeFormatterBuilder$PrefixTree
  super_class: java.lang.Object
{
  protected java.lang.String key;
    descriptor: Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED

  protected java.lang.String value;
    descriptor: Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED

  protected char c0;
    descriptor: C
    flags: (0x0004) ACC_PROTECTED

  protected java.time.format.DateTimeFormatterBuilder$PrefixTree child;
    descriptor: Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
    flags: (0x0004) ACC_PROTECTED

  protected java.time.format.DateTimeFormatterBuilder$PrefixTree sibling;
    descriptor: Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
    flags: (0x0004) ACC_PROTECTED

  private void <init>(java.lang.String, java.lang.String, java.time.format.DateTimeFormatterBuilder$PrefixTree);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // java.time.format.DateTimeFormatterBuilder$PrefixTree this
        start local 1 // java.lang.String k
        start local 2 // java.lang.String v
        start local 3 // java.time.format.DateTimeFormatterBuilder$PrefixTree child
         0: .line 4332
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 4333
            aload 0 /* this */
            aload 1 /* k */
            putfield java.time.format.DateTimeFormatterBuilder$PrefixTree.key:Ljava/lang/String;
         2: .line 4334
            aload 0 /* this */
            aload 2 /* v */
            putfield java.time.format.DateTimeFormatterBuilder$PrefixTree.value:Ljava/lang/String;
         3: .line 4335
            aload 0 /* this */
            aload 3 /* child */
            putfield java.time.format.DateTimeFormatterBuilder$PrefixTree.child:Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
         4: .line 4336
            aload 1 /* k */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 7
         5: .line 4337
            aload 0 /* this */
            ldc 65535
            putfield java.time.format.DateTimeFormatterBuilder$PrefixTree.c0:C
         6: .line 4338
            goto 8
         7: .line 4339
      StackMap locals: java.time.format.DateTimeFormatterBuilder$PrefixTree java.lang.String java.lang.String java.time.format.DateTimeFormatterBuilder$PrefixTree
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.key:Ljava/lang/String;
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            putfield java.time.format.DateTimeFormatterBuilder$PrefixTree.c0:C
         8: .line 4341
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.time.format.DateTimeFormatterBuilder$PrefixTree child
        end local 2 // java.lang.String v
        end local 1 // java.lang.String k
        end local 0 // java.time.format.DateTimeFormatterBuilder$PrefixTree this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0   this  Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            0    9     1      k  Ljava/lang/String;
            0    9     2      v  Ljava/lang/String;
            0    9     3  child  Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
    MethodParameters:
       Name  Flags
      k      
      v      
      child  

  public static java.time.format.DateTimeFormatterBuilder$PrefixTree newTree(java.time.format.DateTimeParseContext);
    descriptor: (Ljava/time/format/DateTimeParseContext;)Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // java.time.format.DateTimeParseContext context
         0: .line 4353
            aload 0 /* context */
            invokevirtual java.time.format.DateTimeParseContext.isCaseSensitive:()Z
            ifeq 2
         1: .line 4354
            new java.time.format.DateTimeFormatterBuilder$PrefixTree
            dup
            ldc ""
            aconst_null
            aconst_null
            invokespecial java.time.format.DateTimeFormatterBuilder$PrefixTree.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;)V
            areturn
         2: .line 4356
      StackMap locals:
      StackMap stack:
            new java.time.format.DateTimeFormatterBuilder$PrefixTree$CI
            dup
            ldc ""
            aconst_null
            aconst_null
            invokespecial java.time.format.DateTimeFormatterBuilder$PrefixTree$CI.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;)V
            areturn
        end local 0 // java.time.format.DateTimeParseContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  context  Ljava/time/format/DateTimeParseContext;
    MethodParameters:
         Name  Flags
      context  

  public static java.time.format.DateTimeFormatterBuilder$PrefixTree newTree(java.util.Set<java.lang.String>, java.time.format.DateTimeParseContext);
    descriptor: (Ljava/util/Set;Ljava/time/format/DateTimeParseContext;)Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // java.util.Set keys
        start local 1 // java.time.format.DateTimeParseContext context
         0: .line 4367
            aload 1 /* context */
            invokestatic java.time.format.DateTimeFormatterBuilder$PrefixTree.newTree:(Ljava/time/format/DateTimeParseContext;)Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            astore 2 /* tree */
        start local 2 // java.time.format.DateTimeFormatterBuilder$PrefixTree tree
         1: .line 4368
            aload 0 /* keys */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 4
            goto 4
      StackMap locals: java.util.Set java.time.format.DateTimeParseContext java.time.format.DateTimeFormatterBuilder$PrefixTree top java.util.Iterator
      StackMap stack:
         2: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* k */
        start local 3 // java.lang.String k
         3: .line 4369
            aload 2 /* tree */
            aload 3 /* k */
            aload 3 /* k */
            invokevirtual java.time.format.DateTimeFormatterBuilder$PrefixTree.add0:(Ljava/lang/String;Ljava/lang/String;)Z
            pop
        end local 3 // java.lang.String k
         4: .line 4368
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 4371
            aload 2 /* tree */
            areturn
        end local 2 // java.time.format.DateTimeFormatterBuilder$PrefixTree tree
        end local 1 // java.time.format.DateTimeParseContext context
        end local 0 // java.util.Set keys
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     keys  Ljava/util/Set<Ljava/lang/String;>;
            0    6     1  context  Ljava/time/format/DateTimeParseContext;
            1    6     2     tree  Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            3    4     3        k  Ljava/lang/String;
    Signature: (Ljava/util/Set<Ljava/lang/String;>;Ljava/time/format/DateTimeParseContext;)Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
    MethodParameters:
         Name  Flags
      keys     
      context  

  public java.time.format.DateTimeFormatterBuilder$PrefixTree copyTree();
    descriptor: ()Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // java.time.format.DateTimeFormatterBuilder$PrefixTree this
         0: .line 4378
            new java.time.format.DateTimeFormatterBuilder$PrefixTree
            dup
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.key:Ljava/lang/String;
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.value:Ljava/lang/String;
            aconst_null
            invokespecial java.time.format.DateTimeFormatterBuilder$PrefixTree.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;)V
            astore 1 /* copy */
        start local 1 // java.time.format.DateTimeFormatterBuilder$PrefixTree copy
         1: .line 4379
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.child:Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            ifnull 3
         2: .line 4380
            aload 1 /* copy */
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.child:Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            invokevirtual java.time.format.DateTimeFormatterBuilder$PrefixTree.copyTree:()Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            putfield java.time.format.DateTimeFormatterBuilder$PrefixTree.child:Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
         3: .line 4382
      StackMap locals: java.time.format.DateTimeFormatterBuilder$PrefixTree
      StackMap stack:
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.sibling:Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            ifnull 5
         4: .line 4383
            aload 1 /* copy */
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.sibling:Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            invokevirtual java.time.format.DateTimeFormatterBuilder$PrefixTree.copyTree:()Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            putfield java.time.format.DateTimeFormatterBuilder$PrefixTree.sibling:Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
         5: .line 4385
      StackMap locals:
      StackMap stack:
            aload 1 /* copy */
            areturn
        end local 1 // java.time.format.DateTimeFormatterBuilder$PrefixTree copy
        end local 0 // java.time.format.DateTimeFormatterBuilder$PrefixTree this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            1    6     1  copy  Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;

  public boolean add(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.time.format.DateTimeFormatterBuilder$PrefixTree this
        start local 1 // java.lang.String k
        start local 2 // java.lang.String v
         0: .line 4397
            aload 0 /* this */
            aload 1 /* k */
            aload 2 /* v */
            invokevirtual java.time.format.DateTimeFormatterBuilder$PrefixTree.add0:(Ljava/lang/String;Ljava/lang/String;)Z
            ireturn
        end local 2 // java.lang.String v
        end local 1 // java.lang.String k
        end local 0 // java.time.format.DateTimeFormatterBuilder$PrefixTree this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            0    1     1     k  Ljava/lang/String;
            0    1     2     v  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      k     
      v     

  private boolean add0(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // java.time.format.DateTimeFormatterBuilder$PrefixTree this
        start local 1 // java.lang.String k
        start local 2 // java.lang.String v
         0: .line 4401
            aload 0 /* this */
            aload 1 /* k */
            invokevirtual java.time.format.DateTimeFormatterBuilder$PrefixTree.toKey:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* k */
         1: .line 4402
            aload 0 /* this */
            aload 1 /* k */
            invokevirtual java.time.format.DateTimeFormatterBuilder$PrefixTree.prefixLength:(Ljava/lang/String;)I
            istore 3 /* prefixLen */
        start local 3 // int prefixLen
         2: .line 4403
            iload 3 /* prefixLen */
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.key:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            if_icmpne 17
         3: .line 4404
            iload 3 /* prefixLen */
            aload 1 /* k */
            invokevirtual java.lang.String.length:()I
            if_icmpge 15
         4: .line 4405
            aload 1 /* k */
            iload 3 /* prefixLen */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 4 /* subKey */
        start local 4 // java.lang.String subKey
         5: .line 4406
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.child:Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            astore 5 /* c */
        start local 5 // java.time.format.DateTimeFormatterBuilder$PrefixTree c
         6: .line 4407
            goto 10
         7: .line 4408
      StackMap locals: int java.lang.String java.time.format.DateTimeFormatterBuilder$PrefixTree
      StackMap stack:
            aload 0 /* this */
            aload 5 /* c */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.c0:C
            aload 4 /* subKey */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            invokevirtual java.time.format.DateTimeFormatterBuilder$PrefixTree.isEqual:(CC)Z
            ifeq 9
         8: .line 4409
            aload 5 /* c */
            aload 4 /* subKey */
            aload 2 /* v */
            invokevirtual java.time.format.DateTimeFormatterBuilder$PrefixTree.add0:(Ljava/lang/String;Ljava/lang/String;)Z
            ireturn
         9: .line 4411
      StackMap locals:
      StackMap stack:
            aload 5 /* c */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.sibling:Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            astore 5 /* c */
        10: .line 4407
      StackMap locals:
      StackMap stack:
            aload 5 /* c */
            ifnonnull 7
        11: .line 4414
            aload 0 /* this */
            aload 4 /* subKey */
            aload 2 /* v */
            aconst_null
            invokevirtual java.time.format.DateTimeFormatterBuilder$PrefixTree.newNode:(Ljava/lang/String;Ljava/lang/String;Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;)Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            astore 5 /* c */
        12: .line 4415
            aload 5 /* c */
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.child:Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            putfield java.time.format.DateTimeFormatterBuilder$PrefixTree.sibling:Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
        13: .line 4416
            aload 0 /* this */
            aload 5 /* c */
            putfield java.time.format.DateTimeFormatterBuilder$PrefixTree.child:Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
        14: .line 4417
            iconst_1
            ireturn
        end local 5 // java.time.format.DateTimeFormatterBuilder$PrefixTree c
        end local 4 // java.lang.String subKey
        15: .line 4423
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* v */
            putfield java.time.format.DateTimeFormatterBuilder$PrefixTree.value:Ljava/lang/String;
        16: .line 4424
            iconst_1
            ireturn
        17: .line 4427
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.key:Ljava/lang/String;
            iload 3 /* prefixLen */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.value:Ljava/lang/String;
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.child:Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            invokevirtual java.time.format.DateTimeFormatterBuilder$PrefixTree.newNode:(Ljava/lang/String;Ljava/lang/String;Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;)Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            astore 4 /* n1 */
        start local 4 // java.time.format.DateTimeFormatterBuilder$PrefixTree n1
        18: .line 4428
            aload 0 /* this */
            aload 1 /* k */
            iconst_0
            iload 3 /* prefixLen */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            putfield java.time.format.DateTimeFormatterBuilder$PrefixTree.key:Ljava/lang/String;
        19: .line 4429
            aload 0 /* this */
            aload 4 /* n1 */
            putfield java.time.format.DateTimeFormatterBuilder$PrefixTree.child:Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
        20: .line 4430
            iload 3 /* prefixLen */
            aload 1 /* k */
            invokevirtual java.lang.String.length:()I
            if_icmpge 25
        21: .line 4431
            aload 0 /* this */
            aload 1 /* k */
            iload 3 /* prefixLen */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            aload 2 /* v */
            aconst_null
            invokevirtual java.time.format.DateTimeFormatterBuilder$PrefixTree.newNode:(Ljava/lang/String;Ljava/lang/String;Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;)Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            astore 5 /* n2 */
        start local 5 // java.time.format.DateTimeFormatterBuilder$PrefixTree n2
        22: .line 4432
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.child:Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            aload 5 /* n2 */
            putfield java.time.format.DateTimeFormatterBuilder$PrefixTree.sibling:Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
        23: .line 4433
            aload 0 /* this */
            aconst_null
            putfield java.time.format.DateTimeFormatterBuilder$PrefixTree.value:Ljava/lang/String;
        end local 5 // java.time.format.DateTimeFormatterBuilder$PrefixTree n2
        24: .line 4434
            goto 26
        25: .line 4435
      StackMap locals: java.time.format.DateTimeFormatterBuilder$PrefixTree
      StackMap stack:
            aload 0 /* this */
            aload 2 /* v */
            putfield java.time.format.DateTimeFormatterBuilder$PrefixTree.value:Ljava/lang/String;
        26: .line 4437
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 4 // java.time.format.DateTimeFormatterBuilder$PrefixTree n1
        end local 3 // int prefixLen
        end local 2 // java.lang.String v
        end local 1 // java.lang.String k
        end local 0 // java.time.format.DateTimeFormatterBuilder$PrefixTree this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   27     0       this  Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            0   27     1          k  Ljava/lang/String;
            0   27     2          v  Ljava/lang/String;
            2   27     3  prefixLen  I
            5   15     4     subKey  Ljava/lang/String;
            6   15     5          c  Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
           18   27     4         n1  Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
           22   24     5         n2  Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
    MethodParameters:
      Name  Flags
      k     
      v     

  public java.lang.String match(java.lang.CharSequence, int, int);
    descriptor: (Ljava/lang/CharSequence;II)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // java.time.format.DateTimeFormatterBuilder$PrefixTree this
        start local 1 // java.lang.CharSequence text
        start local 2 // int off
        start local 3 // int end
         0: .line 4449
            aload 0 /* this */
            aload 1 /* text */
            iload 2 /* off */
            iload 3 /* end */
            invokevirtual java.time.format.DateTimeFormatterBuilder$PrefixTree.prefixOf:(Ljava/lang/CharSequence;II)Z
            ifne 2
         1: .line 4450
            aconst_null
            areturn
         2: .line 4452
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.child:Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            ifnull 11
            iload 2 /* off */
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.key:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iadd
            dup
            istore 2 /* off */
            iload 3 /* end */
            if_icmpeq 11
         3: .line 4453
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.child:Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            astore 4 /* c */
        start local 4 // java.time.format.DateTimeFormatterBuilder$PrefixTree c
         4: .line 4455
      StackMap locals: java.time.format.DateTimeFormatterBuilder$PrefixTree
      StackMap stack:
            aload 0 /* this */
            aload 4 /* c */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.c0:C
            aload 1 /* text */
            iload 2 /* off */
            invokeinterface java.lang.CharSequence.charAt:(I)C
            invokevirtual java.time.format.DateTimeFormatterBuilder$PrefixTree.isEqual:(CC)Z
            ifeq 9
         5: .line 4456
            aload 4 /* c */
            aload 1 /* text */
            iload 2 /* off */
            iload 3 /* end */
            invokevirtual java.time.format.DateTimeFormatterBuilder$PrefixTree.match:(Ljava/lang/CharSequence;II)Ljava/lang/String;
            astore 5 /* found */
        start local 5 // java.lang.String found
         6: .line 4457
            aload 5 /* found */
            ifnull 8
         7: .line 4458
            aload 5 /* found */
            areturn
         8: .line 4460
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.value:Ljava/lang/String;
            areturn
        end local 5 // java.lang.String found
         9: .line 4462
      StackMap locals:
      StackMap stack:
            aload 4 /* c */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.sibling:Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            astore 4 /* c */
        10: .line 4463
            aload 4 /* c */
            ifnonnull 4
        end local 4 // java.time.format.DateTimeFormatterBuilder$PrefixTree c
        11: .line 4465
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.value:Ljava/lang/String;
            areturn
        end local 3 // int end
        end local 2 // int off
        end local 1 // java.lang.CharSequence text
        end local 0 // java.time.format.DateTimeFormatterBuilder$PrefixTree this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   12     0   this  Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            0   12     1   text  Ljava/lang/CharSequence;
            0   12     2    off  I
            0   12     3    end  I
            4   11     4      c  Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            6    9     5  found  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      text  
      off   
      end   

  public java.lang.String match(java.lang.CharSequence, java.text.ParsePosition);
    descriptor: (Ljava/lang/CharSequence;Ljava/text/ParsePosition;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // java.time.format.DateTimeFormatterBuilder$PrefixTree this
        start local 1 // java.lang.CharSequence text
        start local 2 // java.text.ParsePosition pos
         0: .line 4478
            aload 2 /* pos */
            invokevirtual java.text.ParsePosition.getIndex:()I
            istore 3 /* off */
        start local 3 // int off
         1: .line 4479
            aload 1 /* text */
            invokeinterface java.lang.CharSequence.length:()I
            istore 4 /* end */
        start local 4 // int end
         2: .line 4480
            aload 0 /* this */
            aload 1 /* text */
            iload 3 /* off */
            iload 4 /* end */
            invokevirtual java.time.format.DateTimeFormatterBuilder$PrefixTree.prefixOf:(Ljava/lang/CharSequence;II)Z
            ifne 4
         3: .line 4481
            aconst_null
            areturn
         4: .line 4483
      StackMap locals: int int
      StackMap stack:
            iload 3 /* off */
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.key:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iadd
            istore 3 /* off */
         5: .line 4484
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.child:Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            ifnull 14
            iload 3 /* off */
            iload 4 /* end */
            if_icmpeq 14
         6: .line 4485
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.child:Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            astore 5 /* c */
        start local 5 // java.time.format.DateTimeFormatterBuilder$PrefixTree c
         7: .line 4487
      StackMap locals: java.time.format.DateTimeFormatterBuilder$PrefixTree
      StackMap stack:
            aload 0 /* this */
            aload 5 /* c */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.c0:C
            aload 1 /* text */
            iload 3 /* off */
            invokeinterface java.lang.CharSequence.charAt:(I)C
            invokevirtual java.time.format.DateTimeFormatterBuilder$PrefixTree.isEqual:(CC)Z
            ifeq 12
         8: .line 4488
            aload 2 /* pos */
            iload 3 /* off */
            invokevirtual java.text.ParsePosition.setIndex:(I)V
         9: .line 4489
            aload 5 /* c */
            aload 1 /* text */
            aload 2 /* pos */
            invokevirtual java.time.format.DateTimeFormatterBuilder$PrefixTree.match:(Ljava/lang/CharSequence;Ljava/text/ParsePosition;)Ljava/lang/String;
            astore 6 /* found */
        start local 6 // java.lang.String found
        10: .line 4490
            aload 6 /* found */
            ifnull 14
        11: .line 4491
            aload 6 /* found */
            areturn
        end local 6 // java.lang.String found
        12: .line 4495
      StackMap locals:
      StackMap stack:
            aload 5 /* c */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.sibling:Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            astore 5 /* c */
        13: .line 4496
            aload 5 /* c */
            ifnonnull 7
        end local 5 // java.time.format.DateTimeFormatterBuilder$PrefixTree c
        14: .line 4498
      StackMap locals:
      StackMap stack:
            aload 2 /* pos */
            iload 3 /* off */
            invokevirtual java.text.ParsePosition.setIndex:(I)V
        15: .line 4499
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.value:Ljava/lang/String;
            areturn
        end local 4 // int end
        end local 3 // int off
        end local 2 // java.text.ParsePosition pos
        end local 1 // java.lang.CharSequence text
        end local 0 // java.time.format.DateTimeFormatterBuilder$PrefixTree this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   16     0   this  Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            0   16     1   text  Ljava/lang/CharSequence;
            0   16     2    pos  Ljava/text/ParsePosition;
            1   16     3    off  I
            2   16     4    end  I
            7   14     5      c  Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
           10   12     6  found  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      text  
      pos   

  protected java.lang.String toKey(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // java.time.format.DateTimeFormatterBuilder$PrefixTree this
        start local 1 // java.lang.String k
         0: .line 4503
            aload 1 /* k */
            areturn
        end local 1 // java.lang.String k
        end local 0 // java.time.format.DateTimeFormatterBuilder$PrefixTree this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            0    1     1     k  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      k     

  protected java.time.format.DateTimeFormatterBuilder$PrefixTree newNode(java.lang.String, java.lang.String, java.time.format.DateTimeFormatterBuilder$PrefixTree);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;)Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // java.time.format.DateTimeFormatterBuilder$PrefixTree this
        start local 1 // java.lang.String k
        start local 2 // java.lang.String v
        start local 3 // java.time.format.DateTimeFormatterBuilder$PrefixTree child
         0: .line 4507
            new java.time.format.DateTimeFormatterBuilder$PrefixTree
            dup
            aload 1 /* k */
            aload 2 /* v */
            aload 3 /* child */
            invokespecial java.time.format.DateTimeFormatterBuilder$PrefixTree.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;)V
            areturn
        end local 3 // java.time.format.DateTimeFormatterBuilder$PrefixTree child
        end local 2 // java.lang.String v
        end local 1 // java.lang.String k
        end local 0 // java.time.format.DateTimeFormatterBuilder$PrefixTree this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            0    1     1      k  Ljava/lang/String;
            0    1     2      v  Ljava/lang/String;
            0    1     3  child  Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
    MethodParameters:
       Name  Flags
      k      
      v      
      child  

  protected boolean isEqual(char, char);
    descriptor: (CC)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // java.time.format.DateTimeFormatterBuilder$PrefixTree this
        start local 1 // char c1
        start local 2 // char c2
         0: .line 4511
            iload 1 /* c1 */
            iload 2 /* c2 */
            if_icmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 2 // char c2
        end local 1 // char c1
        end local 0 // java.time.format.DateTimeFormatterBuilder$PrefixTree this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            0    2     1    c1  C
            0    2     2    c2  C
    MethodParameters:
      Name  Flags
      c1    
      c2    

  protected boolean prefixOf(java.lang.CharSequence, int, int);
    descriptor: (Ljava/lang/CharSequence;II)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // java.time.format.DateTimeFormatterBuilder$PrefixTree this
        start local 1 // java.lang.CharSequence text
        start local 2 // int off
        start local 3 // int end
         0: .line 4515
            aload 1 /* text */
            instanceof java.lang.String
            ifeq 2
         1: .line 4516
            aload 1 /* text */
            checkcast java.lang.String
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.key:Ljava/lang/String;
            iload 2 /* off */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;I)Z
            ireturn
         2: .line 4518
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.key:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            istore 4 /* len */
        start local 4 // int len
         3: .line 4519
            iload 4 /* len */
            iload 3 /* end */
            iload 2 /* off */
            isub
            if_icmple 5
         4: .line 4520
            iconst_0
            ireturn
         5: .line 4522
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 5 /* off0 */
        start local 5 // int off0
         6: .line 4523
            goto 9
         7: .line 4524
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.key:Ljava/lang/String;
            iload 5 /* off0 */
            iinc 5 /* off0 */ 1
            invokevirtual java.lang.String.charAt:(I)C
            aload 1 /* text */
            iload 2 /* off */
            iinc 2 /* off */ 1
            invokeinterface java.lang.CharSequence.charAt:(I)C
            invokevirtual java.time.format.DateTimeFormatterBuilder$PrefixTree.isEqual:(CC)Z
            ifne 9
         8: .line 4525
            iconst_0
            ireturn
         9: .line 4523
      StackMap locals:
      StackMap stack:
            iload 4 /* len */
            iinc 4 /* len */ -1
            ifgt 7
        10: .line 4528
            iconst_1
            ireturn
        end local 5 // int off0
        end local 4 // int len
        end local 3 // int end
        end local 2 // int off
        end local 1 // java.lang.CharSequence text
        end local 0 // java.time.format.DateTimeFormatterBuilder$PrefixTree this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            0   11     1  text  Ljava/lang/CharSequence;
            0   11     2   off  I
            0   11     3   end  I
            3   11     4   len  I
            6   11     5  off0  I
    MethodParameters:
      Name  Flags
      text  
      off   
      end   

  private int prefixLength(java.lang.String);
    descriptor: (Ljava/lang/String;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // java.time.format.DateTimeFormatterBuilder$PrefixTree this
        start local 1 // java.lang.String k
         0: .line 4532
            iconst_0
            istore 2 /* off */
        start local 2 // int off
         1: .line 4533
            goto 5
         2: .line 4534
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* k */
            iload 2 /* off */
            invokevirtual java.lang.String.charAt:(I)C
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.key:Ljava/lang/String;
            iload 2 /* off */
            invokevirtual java.lang.String.charAt:(I)C
            invokevirtual java.time.format.DateTimeFormatterBuilder$PrefixTree.isEqual:(CC)Z
            ifne 4
         3: .line 4535
            iload 2 /* off */
            ireturn
         4: .line 4537
      StackMap locals:
      StackMap stack:
            iinc 2 /* off */ 1
         5: .line 4533
      StackMap locals:
      StackMap stack:
            iload 2 /* off */
            aload 1 /* k */
            invokevirtual java.lang.String.length:()I
            if_icmpge 6
            iload 2 /* off */
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$PrefixTree.key:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            if_icmplt 2
         6: .line 4539
      StackMap locals:
      StackMap stack:
            iload 2 /* off */
            ireturn
        end local 2 // int off
        end local 1 // java.lang.String k
        end local 0 // java.time.format.DateTimeFormatterBuilder$PrefixTree this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljava/time/format/DateTimeFormatterBuilder$PrefixTree;
            0    7     1     k  Ljava/lang/String;
            1    7     2   off  I
    MethodParameters:
      Name  Flags
      k     
}
SourceFile: "DateTimeFormatterBuilder.java"
NestHost: java.time.format.DateTimeFormatterBuilder
InnerClasses:
  PrefixTree = java.time.format.DateTimeFormatterBuilder$PrefixTree of java.time.format.DateTimeFormatterBuilder
  private CI = java.time.format.DateTimeFormatterBuilder$PrefixTree$CI of java.time.format.DateTimeFormatterBuilder$PrefixTree
  private LENIENT = java.time.format.DateTimeFormatterBuilder$PrefixTree$LENIENT of java.time.format.DateTimeFormatterBuilder$PrefixTree