public class sun.net.www.ParseUtil
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.net.www.ParseUtil
  super_class: java.lang.Object
{
  static java.util.BitSet encodedInPath;
    descriptor: Ljava/util/BitSet;
    flags: (0x0008) ACC_STATIC

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=1, args_size=0
         0: .line 47
            ldc Lsun/net/www/ParseUtil;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic sun.net.www.ParseUtil.$assertionsDisabled:Z
         3: .line 51
            new java.util.BitSet
            dup
            sipush 128
            invokespecial java.util.BitSet.<init>:(I)V
            putstatic sun.net.www.ParseUtil.encodedInPath:Ljava/util/BitSet;
         4: .line 58
            getstatic sun.net.www.ParseUtil.encodedInPath:Ljava/util/BitSet;
            bipush 61
            invokevirtual java.util.BitSet.set:(I)V
         5: .line 59
            getstatic sun.net.www.ParseUtil.encodedInPath:Ljava/util/BitSet;
            bipush 59
            invokevirtual java.util.BitSet.set:(I)V
         6: .line 60
            getstatic sun.net.www.ParseUtil.encodedInPath:Ljava/util/BitSet;
            bipush 63
            invokevirtual java.util.BitSet.set:(I)V
         7: .line 61
            getstatic sun.net.www.ParseUtil.encodedInPath:Ljava/util/BitSet;
            bipush 47
            invokevirtual java.util.BitSet.set:(I)V
         8: .line 65
            getstatic sun.net.www.ParseUtil.encodedInPath:Ljava/util/BitSet;
            bipush 35
            invokevirtual java.util.BitSet.set:(I)V
         9: .line 66
            getstatic sun.net.www.ParseUtil.encodedInPath:Ljava/util/BitSet;
            bipush 32
            invokevirtual java.util.BitSet.set:(I)V
        10: .line 67
            getstatic sun.net.www.ParseUtil.encodedInPath:Ljava/util/BitSet;
            bipush 60
            invokevirtual java.util.BitSet.set:(I)V
        11: .line 68
            getstatic sun.net.www.ParseUtil.encodedInPath:Ljava/util/BitSet;
            bipush 62
            invokevirtual java.util.BitSet.set:(I)V
        12: .line 69
            getstatic sun.net.www.ParseUtil.encodedInPath:Ljava/util/BitSet;
            bipush 37
            invokevirtual java.util.BitSet.set:(I)V
        13: .line 70
            getstatic sun.net.www.ParseUtil.encodedInPath:Ljava/util/BitSet;
            bipush 34
            invokevirtual java.util.BitSet.set:(I)V
        14: .line 71
            getstatic sun.net.www.ParseUtil.encodedInPath:Ljava/util/BitSet;
            bipush 123
            invokevirtual java.util.BitSet.set:(I)V
        15: .line 72
            getstatic sun.net.www.ParseUtil.encodedInPath:Ljava/util/BitSet;
            bipush 125
            invokevirtual java.util.BitSet.set:(I)V
        16: .line 73
            getstatic sun.net.www.ParseUtil.encodedInPath:Ljava/util/BitSet;
            bipush 124
            invokevirtual java.util.BitSet.set:(I)V
        17: .line 74
            getstatic sun.net.www.ParseUtil.encodedInPath:Ljava/util/BitSet;
            bipush 92
            invokevirtual java.util.BitSet.set:(I)V
        18: .line 75
            getstatic sun.net.www.ParseUtil.encodedInPath:Ljava/util/BitSet;
            bipush 94
            invokevirtual java.util.BitSet.set:(I)V
        19: .line 76
            getstatic sun.net.www.ParseUtil.encodedInPath:Ljava/util/BitSet;
            bipush 91
            invokevirtual java.util.BitSet.set:(I)V
        20: .line 77
            getstatic sun.net.www.ParseUtil.encodedInPath:Ljava/util/BitSet;
            bipush 93
            invokevirtual java.util.BitSet.set:(I)V
        21: .line 78
            getstatic sun.net.www.ParseUtil.encodedInPath:Ljava/util/BitSet;
            bipush 96
            invokevirtual java.util.BitSet.set:(I)V
        22: .line 81
            iconst_0
            istore 0 /* i */
        start local 0 // int i
        23: goto 26
        24: .line 82
      StackMap locals: int
      StackMap stack:
            getstatic sun.net.www.ParseUtil.encodedInPath:Ljava/util/BitSet;
            iload 0 /* i */
            invokevirtual java.util.BitSet.set:(I)V
        25: .line 81
            iinc 0 /* i */ 1
      StackMap locals:
      StackMap stack:
        26: iload 0 /* i */
            bipush 32
            if_icmplt 24
        end local 0 // int i
        27: .line 83
            getstatic sun.net.www.ParseUtil.encodedInPath:Ljava/util/BitSet;
            bipush 127
            invokevirtual java.util.BitSet.set:(I)V
        28: .line 537
            bipush 16
            newarray 5
            dup
            iconst_0
        29: .line 538
            bipush 48
            castore
            dup
            iconst_1
            bipush 49
            castore
            dup
            iconst_2
            bipush 50
            castore
            dup
            iconst_3
            bipush 51
            castore
            dup
            iconst_4
            bipush 52
            castore
            dup
            iconst_5
            bipush 53
            castore
            dup
            bipush 6
            bipush 54
            castore
            dup
            bipush 7
            bipush 55
            castore
            dup
            bipush 8
        30: .line 539
            bipush 56
            castore
            dup
            bipush 9
            bipush 57
            castore
            dup
            bipush 10
            bipush 65
            castore
            dup
            bipush 11
            bipush 66
            castore
            dup
            bipush 12
            bipush 67
            castore
            dup
            bipush 13
            bipush 68
            castore
            dup
            bipush 14
            bipush 69
            castore
            dup
            bipush 15
            bipush 70
            castore
        31: .line 537
            putstatic sun.net.www.ParseUtil.hexDigits:[C
        32: .line 624
            bipush 48
            bipush 57
            invokestatic sun.net.www.ParseUtil.lowMask:(CC)J
            putstatic sun.net.www.ParseUtil.L_DIGIT:J
        33: .line 629
            getstatic sun.net.www.ParseUtil.L_DIGIT:J
            putstatic sun.net.www.ParseUtil.L_HEX:J
        34: .line 630
            bipush 65
            bipush 70
            invokestatic sun.net.www.ParseUtil.highMask:(CC)J
            bipush 97
            bipush 102
            invokestatic sun.net.www.ParseUtil.highMask:(CC)J
            lor
            putstatic sun.net.www.ParseUtil.H_HEX:J
        35: .line 636
            bipush 65
            bipush 90
            invokestatic sun.net.www.ParseUtil.highMask:(CC)J
            putstatic sun.net.www.ParseUtil.H_UPALPHA:J
        36: .line 642
            bipush 97
            bipush 122
            invokestatic sun.net.www.ParseUtil.highMask:(CC)J
            putstatic sun.net.www.ParseUtil.H_LOWALPHA:J
        37: .line 646
            getstatic sun.net.www.ParseUtil.H_LOWALPHA:J
            getstatic sun.net.www.ParseUtil.H_UPALPHA:J
            lor
            putstatic sun.net.www.ParseUtil.H_ALPHA:J
        38: .line 649
            getstatic sun.net.www.ParseUtil.L_DIGIT:J
            putstatic sun.net.www.ParseUtil.L_ALPHANUM:J
        39: .line 650
            getstatic sun.net.www.ParseUtil.H_ALPHA:J
            putstatic sun.net.www.ParseUtil.H_ALPHANUM:J
        40: .line 654
            ldc "-_.!~*'()"
            invokestatic sun.net.www.ParseUtil.lowMask:(Ljava/lang/String;)J
            putstatic sun.net.www.ParseUtil.L_MARK:J
        41: .line 655
            ldc "-_.!~*'()"
            invokestatic sun.net.www.ParseUtil.highMask:(Ljava/lang/String;)J
            putstatic sun.net.www.ParseUtil.H_MARK:J
        42: .line 658
            getstatic sun.net.www.ParseUtil.L_ALPHANUM:J
            getstatic sun.net.www.ParseUtil.L_MARK:J
            lor
            putstatic sun.net.www.ParseUtil.L_UNRESERVED:J
        43: .line 659
            getstatic sun.net.www.ParseUtil.H_ALPHANUM:J
            getstatic sun.net.www.ParseUtil.H_MARK:J
            lor
            putstatic sun.net.www.ParseUtil.H_UNRESERVED:J
        44: .line 664
            ldc ";/?:@&=+$,[]"
            invokestatic sun.net.www.ParseUtil.lowMask:(Ljava/lang/String;)J
            putstatic sun.net.www.ParseUtil.L_RESERVED:J
        45: .line 665
            ldc ";/?:@&=+$,[]"
            invokestatic sun.net.www.ParseUtil.highMask:(Ljava/lang/String;)J
            putstatic sun.net.www.ParseUtil.H_RESERVED:J
        46: .line 673
            ldc "-"
            invokestatic sun.net.www.ParseUtil.lowMask:(Ljava/lang/String;)J
            putstatic sun.net.www.ParseUtil.L_DASH:J
        47: .line 674
            ldc "-"
            invokestatic sun.net.www.ParseUtil.highMask:(Ljava/lang/String;)J
            putstatic sun.net.www.ParseUtil.H_DASH:J
        48: .line 677
            getstatic sun.net.www.ParseUtil.L_RESERVED:J
            getstatic sun.net.www.ParseUtil.L_UNRESERVED:J
            lor
            lconst_1
            lor
            putstatic sun.net.www.ParseUtil.L_URIC:J
        49: .line 678
            getstatic sun.net.www.ParseUtil.H_RESERVED:J
            getstatic sun.net.www.ParseUtil.H_UNRESERVED:J
            lor
            putstatic sun.net.www.ParseUtil.H_URIC:J
        50: .line 683
            getstatic sun.net.www.ParseUtil.L_UNRESERVED:J
            lconst_1
            lor
            ldc ":@&=+$,"
            invokestatic sun.net.www.ParseUtil.lowMask:(Ljava/lang/String;)J
            lor
        51: .line 682
            putstatic sun.net.www.ParseUtil.L_PCHAR:J
        52: .line 685
            getstatic sun.net.www.ParseUtil.H_UNRESERVED:J
            ldc ":@&=+$,"
            invokestatic sun.net.www.ParseUtil.highMask:(Ljava/lang/String;)J
            lor
        53: .line 684
            putstatic sun.net.www.ParseUtil.H_PCHAR:J
        54: .line 688
            getstatic sun.net.www.ParseUtil.L_PCHAR:J
            ldc ";/"
            invokestatic sun.net.www.ParseUtil.lowMask:(Ljava/lang/String;)J
            lor
            putstatic sun.net.www.ParseUtil.L_PATH:J
        55: .line 689
            getstatic sun.net.www.ParseUtil.H_PCHAR:J
            ldc ";/"
            invokestatic sun.net.www.ParseUtil.highMask:(Ljava/lang/String;)J
            lor
            putstatic sun.net.www.ParseUtil.H_PATH:J
        56: .line 694
            getstatic sun.net.www.ParseUtil.L_UNRESERVED:J
            lconst_1
            lor
            ldc ";:&=+$,"
            invokestatic sun.net.www.ParseUtil.lowMask:(Ljava/lang/String;)J
            lor
        57: .line 693
            putstatic sun.net.www.ParseUtil.L_USERINFO:J
        58: .line 696
            getstatic sun.net.www.ParseUtil.H_UNRESERVED:J
            ldc ";:&=+$,"
            invokestatic sun.net.www.ParseUtil.highMask:(Ljava/lang/String;)J
            lor
        59: .line 695
            putstatic sun.net.www.ParseUtil.H_USERINFO:J
        60: .line 701
            getstatic sun.net.www.ParseUtil.L_UNRESERVED:J
            lconst_1
            lor
            ldc "$,;:@&=+"
            invokestatic sun.net.www.ParseUtil.lowMask:(Ljava/lang/String;)J
            lor
        61: .line 700
            putstatic sun.net.www.ParseUtil.L_REG_NAME:J
        62: .line 703
            getstatic sun.net.www.ParseUtil.H_UNRESERVED:J
            ldc "$,;:@&=+"
            invokestatic sun.net.www.ParseUtil.highMask:(Ljava/lang/String;)J
            lor
        63: .line 702
            putstatic sun.net.www.ParseUtil.H_REG_NAME:J
        64: .line 707
            getstatic sun.net.www.ParseUtil.L_USERINFO:J
            getstatic sun.net.www.ParseUtil.L_ALPHANUM:J
            lor
            getstatic sun.net.www.ParseUtil.L_DASH:J
            lor
            ldc ".:@[]"
            invokestatic sun.net.www.ParseUtil.lowMask:(Ljava/lang/String;)J
            lor
        65: .line 706
            putstatic sun.net.www.ParseUtil.L_SERVER:J
        66: .line 709
            getstatic sun.net.www.ParseUtil.H_USERINFO:J
            getstatic sun.net.www.ParseUtil.H_ALPHANUM:J
            lor
            getstatic sun.net.www.ParseUtil.H_DASH:J
            lor
            ldc ".:@[]"
            invokestatic sun.net.www.ParseUtil.highMask:(Ljava/lang/String;)J
            lor
        67: .line 708
            putstatic sun.net.www.ParseUtil.H_SERVER:J
        68: .line 709
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
           23   27     0     i  I

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

  public static java.lang.String encodePath(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String path
         0: .line 96
            aload 0 /* path */
            iconst_1
            invokestatic sun.net.www.ParseUtil.encodePath:(Ljava/lang/String;Z)Ljava/lang/String;
            areturn
        end local 0 // java.lang.String path
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  path  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      path  

  public static java.lang.String encodePath(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.lang.String path
        start local 1 // boolean flag
         0: .line 104
            iload 1 /* flag */
            ifeq 2
            getstatic java.io.File.separatorChar:C
            bipush 47
            if_icmpeq 2
         1: .line 105
            aload 0 /* path */
            iconst_0
            getstatic java.io.File.separatorChar:C
            invokestatic sun.net.www.ParseUtil.encodePath:(Ljava/lang/String;IC)Ljava/lang/String;
            areturn
         2: .line 107
      StackMap locals:
      StackMap stack:
            aload 0 /* path */
            invokestatic sun.net.www.ParseUtil.firstEncodeIndex:(Ljava/lang/String;)I
            istore 2 /* index */
        start local 2 // int index
         3: .line 108
            iload 2 /* index */
            iconst_m1
            if_icmple 5
         4: .line 109
            aload 0 /* path */
            iload 2 /* index */
            bipush 47
            invokestatic sun.net.www.ParseUtil.encodePath:(Ljava/lang/String;IC)Ljava/lang/String;
            areturn
         5: .line 111
      StackMap locals: int
      StackMap stack:
            aload 0 /* path */
            areturn
        end local 2 // int index
        end local 1 // boolean flag
        end local 0 // java.lang.String path
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   path  Ljava/lang/String;
            0    6     1   flag  Z
            3    6     2  index  I
    MethodParameters:
      Name  Flags
      path  
      flag  

  private static int firstEncodeIndex(java.lang.String);
    descriptor: (Ljava/lang/String;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // java.lang.String path
         0: .line 117
            aload 0 /* path */
            invokevirtual java.lang.String.length:()I
            istore 1 /* len */
        start local 1 // int len
         1: .line 118
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 12
         3: .line 119
      StackMap locals: int int
      StackMap stack:
            aload 0 /* path */
            iload 2 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 3 /* c */
        start local 3 // char c
         4: .line 120
            iload 3 /* c */
            bipush 47
            if_icmpeq 11
            iload 3 /* c */
            bipush 46
            if_icmpeq 11
         5: .line 121
            iload 3 /* c */
            bipush 97
            if_icmplt 6
            iload 3 /* c */
            bipush 122
            if_icmple 11
         6: .line 122
      StackMap locals: int
      StackMap stack:
            iload 3 /* c */
            bipush 65
            if_icmplt 7
            iload 3 /* c */
            bipush 90
            if_icmple 11
         7: .line 123
      StackMap locals:
      StackMap stack:
            iload 3 /* c */
            bipush 48
            if_icmplt 9
            iload 3 /* c */
            bipush 57
            if_icmpgt 9
         8: .line 124
            goto 11
         9: .line 125
      StackMap locals:
      StackMap stack:
            iload 3 /* c */
            bipush 127
            if_icmpgt 10
            getstatic sun.net.www.ParseUtil.encodedInPath:Ljava/util/BitSet;
            iload 3 /* c */
            invokevirtual java.util.BitSet.get:(I)Z
            ifeq 11
        10: .line 126
      StackMap locals:
      StackMap stack:
            iload 2 /* i */
            ireturn
        end local 3 // char c
        11: .line 118
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 2 /* i */
            iload 1 /* len */
            if_icmplt 3
        end local 2 // int i
        13: .line 129
            iconst_m1
            ireturn
        end local 1 // int len
        end local 0 // java.lang.String path
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   14     0  path  Ljava/lang/String;
            1   14     1   len  I
            2   13     2     i  I
            4   11     3     c  C
    MethodParameters:
      Name  Flags
      path  

  private static java.lang.String encodePath(java.lang.String, int, char);
    descriptor: (Ljava/lang/String;IC)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=10, args_size=3
        start local 0 // java.lang.String path
        start local 1 // int index
        start local 2 // char sep
         0: .line 133
            aload 0 /* path */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 3 /* pathCC */
        start local 3 // char[] pathCC
         1: .line 134
            aload 3 /* pathCC */
            arraylength
            iconst_2
            imul
            bipush 16
            iadd
            iload 1 /* index */
            isub
            newarray 5
            astore 4 /* retCC */
        start local 4 // char[] retCC
         2: .line 135
            iload 1 /* index */
            ifle 4
         3: .line 136
            aload 3 /* pathCC */
            iconst_0
            aload 4 /* retCC */
            iconst_0
            iload 1 /* index */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         4: .line 138
      StackMap locals: char[] char[]
      StackMap stack:
            iload 1 /* index */
            istore 5 /* retLen */
        start local 5 // int retLen
         5: .line 140
            iload 1 /* index */
            istore 6 /* i */
        start local 6 // int i
         6: goto 36
         7: .line 141
      StackMap locals: int int
      StackMap stack:
            aload 3 /* pathCC */
            iload 6 /* i */
            caload
            istore 7 /* c */
        start local 7 // char c
         8: .line 142
            iload 7 /* c */
            iload 2 /* sep */
            if_icmpne 10
         9: .line 143
            aload 4 /* retCC */
            iload 5 /* retLen */
            iinc 5 /* retLen */ 1
            bipush 47
            castore
            goto 28
        10: .line 145
      StackMap locals: int
      StackMap stack:
            iload 7 /* c */
            bipush 127
            if_icmpgt 21
        11: .line 146
            iload 7 /* c */
            bipush 97
            if_icmplt 12
            iload 7 /* c */
            bipush 122
            if_icmple 14
        12: .line 147
      StackMap locals:
      StackMap stack:
            iload 7 /* c */
            bipush 65
            if_icmplt 13
            iload 7 /* c */
            bipush 90
            if_icmple 14
        13: .line 148
      StackMap locals:
      StackMap stack:
            iload 7 /* c */
            bipush 48
            if_icmplt 16
            iload 7 /* c */
            bipush 57
            if_icmpgt 16
        14: .line 149
      StackMap locals:
      StackMap stack:
            aload 4 /* retCC */
            iload 5 /* retLen */
            iinc 5 /* retLen */ 1
            iload 7 /* c */
            castore
        15: .line 150
            goto 28
      StackMap locals:
      StackMap stack:
        16: getstatic sun.net.www.ParseUtil.encodedInPath:Ljava/util/BitSet;
            iload 7 /* c */
            invokevirtual java.util.BitSet.get:(I)Z
            ifeq 19
        17: .line 151
            aload 4 /* retCC */
            iload 7 /* c */
            iload 5 /* retLen */
            invokestatic sun.net.www.ParseUtil.escape:([CCI)I
            istore 5 /* retLen */
        18: .line 152
            goto 28
        19: .line 153
      StackMap locals:
      StackMap stack:
            aload 4 /* retCC */
            iload 5 /* retLen */
            iinc 5 /* retLen */ 1
            iload 7 /* c */
            castore
        20: .line 155
            goto 28
      StackMap locals:
      StackMap stack:
        21: iload 7 /* c */
            sipush 2047
            if_icmple 26
        22: .line 156
            aload 4 /* retCC */
            sipush 224
            iload 7 /* c */
            bipush 12
            ishr
            bipush 15
            iand
            ior
            i2c
            iload 5 /* retLen */
            invokestatic sun.net.www.ParseUtil.escape:([CCI)I
            istore 5 /* retLen */
        23: .line 157
            aload 4 /* retCC */
            sipush 128
            iload 7 /* c */
            bipush 6
            ishr
            bipush 63
            iand
            ior
            i2c
            iload 5 /* retLen */
            invokestatic sun.net.www.ParseUtil.escape:([CCI)I
            istore 5 /* retLen */
        24: .line 158
            aload 4 /* retCC */
            sipush 128
            iload 7 /* c */
            iconst_0
            ishr
            bipush 63
            iand
            ior
            i2c
            iload 5 /* retLen */
            invokestatic sun.net.www.ParseUtil.escape:([CCI)I
            istore 5 /* retLen */
        25: .line 159
            goto 28
        26: .line 160
      StackMap locals:
      StackMap stack:
            aload 4 /* retCC */
            sipush 192
            iload 7 /* c */
            bipush 6
            ishr
            bipush 31
            iand
            ior
            i2c
            iload 5 /* retLen */
            invokestatic sun.net.www.ParseUtil.escape:([CCI)I
            istore 5 /* retLen */
        27: .line 161
            aload 4 /* retCC */
            sipush 128
            iload 7 /* c */
            iconst_0
            ishr
            bipush 63
            iand
            ior
            i2c
            iload 5 /* retLen */
            invokestatic sun.net.www.ParseUtil.escape:([CCI)I
            istore 5 /* retLen */
        28: .line 166
      StackMap locals:
      StackMap stack:
            iload 5 /* retLen */
            bipush 9
            iadd
            aload 4 /* retCC */
            arraylength
            if_icmple 35
        29: .line 167
            aload 4 /* retCC */
            arraylength
            iconst_2
            imul
            bipush 16
            iadd
            istore 8 /* newLen */
        start local 8 // int newLen
        30: .line 168
            iload 8 /* newLen */
            ifge 32
        31: .line 169
            ldc 2147483647
            istore 8 /* newLen */
        32: .line 171
      StackMap locals: int
      StackMap stack:
            iload 8 /* newLen */
            newarray 5
            astore 9 /* buf */
        start local 9 // char[] buf
        33: .line 172
            aload 4 /* retCC */
            iconst_0
            aload 9 /* buf */
            iconst_0
            iload 5 /* retLen */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        34: .line 173
            aload 9 /* buf */
            astore 4 /* retCC */
        end local 9 // char[] buf
        end local 8 // int newLen
        end local 7 // char c
        35: .line 140
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        36: iload 6 /* i */
            aload 3 /* pathCC */
            arraylength
            if_icmplt 7
        end local 6 // int i
        37: .line 176
            new java.lang.String
            dup
            aload 4 /* retCC */
            iconst_0
            iload 5 /* retLen */
            invokespecial java.lang.String.<init>:([CII)V
            areturn
        end local 5 // int retLen
        end local 4 // char[] retCC
        end local 3 // char[] pathCC
        end local 2 // char sep
        end local 1 // int index
        end local 0 // java.lang.String path
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   38     0    path  Ljava/lang/String;
            0   38     1   index  I
            0   38     2     sep  C
            1   38     3  pathCC  [C
            2   38     4   retCC  [C
            5   38     5  retLen  I
            6   37     6       i  I
            8   35     7       c  C
           30   35     8  newLen  I
           33   35     9     buf  [C
    MethodParameters:
       Name  Flags
      path   
      index  
      sep    

  private static int escape(char[], char, int);
    descriptor: ([CCI)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // char[] cc
        start local 1 // char c
        start local 2 // int index
         0: .line 184
            aload 0 /* cc */
            iload 2 /* index */
            iinc 2 /* index */ 1
            bipush 37
            castore
         1: .line 185
            aload 0 /* cc */
            iload 2 /* index */
            iinc 2 /* index */ 1
            iload 1 /* c */
            iconst_4
            ishr
            bipush 15
            iand
            bipush 16
            invokestatic java.lang.Character.forDigit:(II)C
            castore
         2: .line 186
            aload 0 /* cc */
            iload 2 /* index */
            iinc 2 /* index */ 1
            iload 1 /* c */
            bipush 15
            iand
            bipush 16
            invokestatic java.lang.Character.forDigit:(II)C
            castore
         3: .line 187
            iload 2 /* index */
            ireturn
        end local 2 // int index
        end local 1 // char c
        end local 0 // char[] cc
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0     cc  [C
            0    4     1      c  C
            0    4     2  index  I
    MethodParameters:
       Name  Flags
      cc     
      c      
      index  

  private static byte unescape(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)B
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.String s
        start local 1 // int i
         0: .line 194
            aload 0 /* s */
            iload 1 /* i */
            iconst_1
            iadd
            iload 1 /* i */
            iconst_3
            iadd
            bipush 16
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/CharSequence;III)I
            i2b
            ireturn
        end local 1 // int i
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/lang/String;
            0    1     1     i  I
    MethodParameters:
      Name  Flags
      s     
      i     

  public static java.lang.String decode(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=9, args_size=1
        start local 0 // java.lang.String s
         0: .line 204
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            istore 1 /* n */
        start local 1 // int n
         1: .line 205
            iload 1 /* n */
            ifeq 2
            aload 0 /* s */
            bipush 37
            invokevirtual java.lang.String.indexOf:(I)I
            ifge 3
         2: .line 206
      StackMap locals: int
      StackMap stack:
            aload 0 /* s */
            areturn
         3: .line 208
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            iload 1 /* n */
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 2 /* sb */
        start local 2 // java.lang.StringBuilder sb
         4: .line 209
            iload 1 /* n */
            invokestatic java.nio.ByteBuffer.allocate:(I)Ljava/nio/ByteBuffer;
            astore 3 /* bb */
        start local 3 // java.nio.ByteBuffer bb
         5: .line 210
            iload 1 /* n */
            invokestatic java.nio.CharBuffer.allocate:(I)Ljava/nio/CharBuffer;
            astore 4 /* cb */
        start local 4 // java.nio.CharBuffer cb
         6: .line 211
            ldc "UTF-8"
            invokestatic sun.nio.cs.ThreadLocalCoders.decoderFor:(Ljava/lang/Object;)Ljava/nio/charset/CharsetDecoder;
         7: .line 212
            getstatic java.nio.charset.CodingErrorAction.REPORT:Ljava/nio/charset/CodingErrorAction;
            invokevirtual java.nio.charset.CharsetDecoder.onMalformedInput:(Ljava/nio/charset/CodingErrorAction;)Ljava/nio/charset/CharsetDecoder;
         8: .line 213
            getstatic java.nio.charset.CodingErrorAction.REPORT:Ljava/nio/charset/CodingErrorAction;
            invokevirtual java.nio.charset.CharsetDecoder.onUnmappableCharacter:(Ljava/nio/charset/CodingErrorAction;)Ljava/nio/charset/CharsetDecoder;
         9: .line 211
            astore 5 /* dec */
        start local 5 // java.nio.charset.CharsetDecoder dec
        10: .line 215
            aload 0 /* s */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            istore 6 /* c */
        start local 6 // char c
        11: .line 216
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        12: goto 41
        13: .line 217
      StackMap locals: java.lang.String int java.lang.StringBuilder java.nio.ByteBuffer java.nio.CharBuffer java.nio.charset.CharsetDecoder int int
      StackMap stack:
            getstatic sun.net.www.ParseUtil.$assertionsDisabled:Z
            ifne 14
            iload 6 /* c */
            aload 0 /* s */
            iload 7 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            if_icmpeq 14
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        14: .line 218
      StackMap locals:
      StackMap stack:
            iload 6 /* c */
            bipush 37
            if_icmpeq 20
        15: .line 219
            aload 2 /* sb */
            iload 6 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        16: .line 220
            iinc 7 /* i */ 1
            iload 7 /* i */
            iload 1 /* n */
            if_icmplt 18
        17: .line 221
            goto 42
        18: .line 222
      StackMap locals:
      StackMap stack:
            aload 0 /* s */
            iload 7 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 6 /* c */
        19: .line 223
            goto 41
        20: .line 225
      StackMap locals:
      StackMap stack:
            aload 3 /* bb */
            invokevirtual java.nio.ByteBuffer.clear:()Ljava/nio/ByteBuffer;
            pop
        21: .line 228
      StackMap locals:
      StackMap stack:
            getstatic sun.net.www.ParseUtil.$assertionsDisabled:Z
            ifne 22
            iload 1 /* n */
            iload 7 /* i */
            isub
            iconst_2
            if_icmpge 22
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        22: .line 230
      StackMap locals:
      StackMap stack:
            aload 3 /* bb */
            aload 0 /* s */
            iload 7 /* i */
            invokestatic sun.net.www.ParseUtil.unescape:(Ljava/lang/String;I)B
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
        23: .line 231
            goto 26
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
        24: pop
        25: .line 232
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
        26: .line 234
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 3
        27: .line 235
            iload 7 /* i */
            iload 1 /* n */
            if_icmplt 29
        28: .line 236
            goto 31
        29: .line 237
      StackMap locals:
      StackMap stack:
            aload 0 /* s */
            iload 7 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 6 /* c */
        30: .line 238
            iload 6 /* c */
            bipush 37
            if_icmpeq 21
        31: .line 241
      StackMap locals:
      StackMap stack:
            aload 3 /* bb */
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/ByteBuffer;
            pop
        32: .line 242
            aload 4 /* cb */
            invokevirtual java.nio.CharBuffer.clear:()Ljava/nio/CharBuffer;
            pop
        33: .line 243
            aload 5 /* dec */
            invokevirtual java.nio.charset.CharsetDecoder.reset:()Ljava/nio/charset/CharsetDecoder;
            pop
        34: .line 244
            aload 5 /* dec */
            aload 3 /* bb */
            aload 4 /* cb */
            iconst_1
            invokevirtual java.nio.charset.CharsetDecoder.decode:(Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;Z)Ljava/nio/charset/CoderResult;
            astore 8 /* cr */
        start local 8 // java.nio.charset.CoderResult cr
        35: .line 245
            aload 8 /* cr */
            invokevirtual java.nio.charset.CoderResult.isError:()Z
            ifeq 37
        36: .line 246
            new java.lang.IllegalArgumentException
            dup
            ldc "Error decoding percent encoded characters"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        37: .line 247
      StackMap locals: java.nio.charset.CoderResult
      StackMap stack:
            aload 5 /* dec */
            aload 4 /* cb */
            invokevirtual java.nio.charset.CharsetDecoder.flush:(Ljava/nio/CharBuffer;)Ljava/nio/charset/CoderResult;
            astore 8 /* cr */
        38: .line 248
            aload 8 /* cr */
            invokevirtual java.nio.charset.CoderResult.isError:()Z
            ifeq 40
        39: .line 249
            new java.lang.IllegalArgumentException
            dup
            ldc "Error decoding percent encoded characters"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        40: .line 250
      StackMap locals:
      StackMap stack:
            aload 2 /* sb */
            aload 4 /* cb */
            invokevirtual java.nio.CharBuffer.flip:()Ljava/nio/CharBuffer;
            invokevirtual java.nio.CharBuffer.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 8 // java.nio.charset.CoderResult cr
        41: .line 216
      StackMap locals:
      StackMap stack:
            iload 7 /* i */
            iload 1 /* n */
            if_icmplt 13
        end local 7 // int i
        42: .line 253
      StackMap locals:
      StackMap stack:
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 6 // char c
        end local 5 // java.nio.charset.CharsetDecoder dec
        end local 4 // java.nio.CharBuffer cb
        end local 3 // java.nio.ByteBuffer bb
        end local 2 // java.lang.StringBuilder sb
        end local 1 // int n
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   43     0     s  Ljava/lang/String;
            1   43     1     n  I
            4   43     2    sb  Ljava/lang/StringBuilder;
            5   43     3    bb  Ljava/nio/ByteBuffer;
            6   43     4    cb  Ljava/nio/CharBuffer;
           10   43     5   dec  Ljava/nio/charset/CharsetDecoder;
           11   43     6     c  C
           12   42     7     i  I
           35   41     8    cr  Ljava/nio/charset/CoderResult;
      Exception table:
        from    to  target  type
          22    23      24  Class java.lang.NumberFormatException
    MethodParameters:
      Name  Flags
      s     

  public java.lang.String canonizeString(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // sun.net.www.ParseUtil this
        start local 1 // java.lang.String file
         0: .line 260
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: .line 261
            aload 1 /* file */
            invokevirtual java.lang.String.length:()I
            istore 3 /* lim */
        start local 3 // int lim
         2: .line 264
            goto 7
         3: .line 265
      StackMap locals: int int
      StackMap stack:
            aload 1 /* file */
            bipush 47
            iload 2 /* i */
            iconst_1
            isub
            invokevirtual java.lang.String.lastIndexOf:(II)I
            dup
            istore 3 /* lim */
            iflt 6
         4: .line 266
            new java.lang.StringBuilder
            dup
            aload 1 /* file */
            iconst_0
            iload 3 /* lim */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* file */
            iload 2 /* i */
            iconst_3
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* file */
         5: .line 267
            goto 7
         6: .line 268
      StackMap locals:
      StackMap stack:
            aload 1 /* file */
            iload 2 /* i */
            iconst_3
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 1 /* file */
         7: .line 264
      StackMap locals:
      StackMap stack:
            aload 1 /* file */
            ldc "/../"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            dup
            istore 2 /* i */
            ifge 3
         8: .line 272
            goto 10
         9: .line 273
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 1 /* file */
            iconst_0
            iload 2 /* i */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* file */
            iload 2 /* i */
            iconst_2
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* file */
        10: .line 272
      StackMap locals:
      StackMap stack:
            aload 1 /* file */
            ldc "/./"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            dup
            istore 2 /* i */
            ifge 9
        11: .line 276
            goto 17
        12: .line 277
      StackMap locals:
      StackMap stack:
            aload 1 /* file */
            ldc "/.."
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            istore 2 /* i */
        13: .line 278
            aload 1 /* file */
            bipush 47
            iload 2 /* i */
            iconst_1
            isub
            invokevirtual java.lang.String.lastIndexOf:(II)I
            dup
            istore 3 /* lim */
            iflt 16
        14: .line 279
            aload 1 /* file */
            iconst_0
            iload 3 /* lim */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 1 /* file */
        15: .line 280
            goto 17
        16: .line 281
      StackMap locals:
      StackMap stack:
            aload 1 /* file */
            iconst_0
            iload 2 /* i */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 1 /* file */
        17: .line 276
      StackMap locals:
      StackMap stack:
            aload 1 /* file */
            ldc "/.."
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 12
        18: .line 285
            aload 1 /* file */
            ldc "/."
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 20
        19: .line 286
            aload 1 /* file */
            iconst_0
            aload 1 /* file */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 1 /* file */
        20: .line 288
      StackMap locals:
      StackMap stack:
            aload 1 /* file */
            areturn
        end local 3 // int lim
        end local 2 // int i
        end local 1 // java.lang.String file
        end local 0 // sun.net.www.ParseUtil this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   21     0  this  Lsun/net/www/ParseUtil;
            0   21     1  file  Ljava/lang/String;
            1   21     2     i  I
            2   21     3   lim  I
    MethodParameters:
      Name  Flags
      file  

  public static java.net.URL fileToEncodedURL(java.io.File);
    descriptor: (Ljava/io/File;)Ljava/net/URL;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // java.io.File file
         0: .line 294
            aload 0 /* file */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            astore 1 /* path */
        start local 1 // java.lang.String path
         1: .line 295
            aload 1 /* path */
            invokestatic sun.net.www.ParseUtil.encodePath:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* path */
         2: .line 296
            aload 1 /* path */
            ldc "/"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 4
         3: .line 297
            new java.lang.StringBuilder
            dup
            ldc "/"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* path */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* path */
         4: .line 299
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* path */
            ldc "/"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 6
            aload 0 /* file */
            invokevirtual java.io.File.isDirectory:()Z
            ifeq 6
         5: .line 300
            new java.lang.StringBuilder
            dup
            aload 1 /* path */
            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;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* path */
         6: .line 302
      StackMap locals:
      StackMap stack:
            new java.net.URL
            dup
            ldc "file"
            ldc ""
            aload 1 /* path */
            invokespecial java.net.URL.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
            areturn
        end local 1 // java.lang.String path
        end local 0 // java.io.File file
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  file  Ljava/io/File;
            1    7     1  path  Ljava/lang/String;
    Exceptions:
      throws java.net.MalformedURLException
    MethodParameters:
      Name  Flags
      file  

  public static java.net.URI toURI(java.net.URL);
    descriptor: (Ljava/net/URL;)Ljava/net/URI;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=7, args_size=1
        start local 0 // java.net.URL url
         0: .line 306
            aload 0 /* url */
            invokevirtual java.net.URL.getProtocol:()Ljava/lang/String;
            astore 1 /* protocol */
        start local 1 // java.lang.String protocol
         1: .line 307
            aload 0 /* url */
            invokevirtual java.net.URL.getAuthority:()Ljava/lang/String;
            astore 2 /* auth */
        start local 2 // java.lang.String auth
         2: .line 308
            aload 0 /* url */
            invokevirtual java.net.URL.getPath:()Ljava/lang/String;
            astore 3 /* path */
        start local 3 // java.lang.String path
         3: .line 309
            aload 0 /* url */
            invokevirtual java.net.URL.getQuery:()Ljava/lang/String;
            astore 4 /* query */
        start local 4 // java.lang.String query
         4: .line 310
            aload 0 /* url */
            invokevirtual java.net.URL.getRef:()Ljava/lang/String;
            astore 5 /* ref */
        start local 5 // java.lang.String ref
         5: .line 311
            aload 3 /* path */
            ifnull 7
            aload 3 /* path */
            ldc "/"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 7
         6: .line 312
            new java.lang.StringBuilder
            dup
            ldc "/"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* path */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* path */
         7: .line 318
      StackMap locals: java.net.URL java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String
      StackMap stack:
            aload 2 /* auth */
            ifnull 9
            aload 2 /* auth */
            ldc ":-1"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 9
         8: .line 319
            aload 2 /* auth */
            iconst_0
            aload 2 /* auth */
            invokevirtual java.lang.String.length:()I
            iconst_3
            isub
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 2 /* auth */
         9: .line 323
      StackMap locals:
      StackMap stack:
            aload 1 /* protocol */
            aload 2 /* auth */
            aload 3 /* path */
            aload 4 /* query */
            aload 5 /* ref */
            invokestatic sun.net.www.ParseUtil.createURI:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/net/URI;
            astore 6 /* uri */
        start local 6 // java.net.URI uri
        10: .line 324
            goto 13
        end local 6 // java.net.URI uri
      StackMap locals:
      StackMap stack: java.net.URISyntaxException
        11: pop
        12: .line 325
            aconst_null
            astore 6 /* uri */
        start local 6 // java.net.URI uri
        13: .line 327
      StackMap locals: java.net.URI
      StackMap stack:
            aload 6 /* uri */
            areturn
        end local 6 // java.net.URI uri
        end local 5 // java.lang.String ref
        end local 4 // java.lang.String query
        end local 3 // java.lang.String path
        end local 2 // java.lang.String auth
        end local 1 // java.lang.String protocol
        end local 0 // java.net.URL url
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   14     0       url  Ljava/net/URL;
            1   14     1  protocol  Ljava/lang/String;
            2   14     2      auth  Ljava/lang/String;
            3   14     3      path  Ljava/lang/String;
            4   14     4     query  Ljava/lang/String;
            5   14     5       ref  Ljava/lang/String;
           10   11     6       uri  Ljava/net/URI;
           13   14     6       uri  Ljava/net/URI;
      Exception table:
        from    to  target  type
           9    10      11  Class java.net.URISyntaxException
    MethodParameters:
      Name  Flags
      url   

  private static java.net.URI createURI(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/net/URI;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=9, locals=6, args_size=5
        start local 0 // java.lang.String scheme
        start local 1 // java.lang.String authority
        start local 2 // java.lang.String path
        start local 3 // java.lang.String query
        start local 4 // java.lang.String fragment
         0: .line 346
            aload 0 /* scheme */
            aconst_null
         1: .line 347
            aload 1 /* authority */
            aconst_null
            aconst_null
            iconst_m1
         2: .line 348
            aload 2 /* path */
            aload 3 /* query */
            aload 4 /* fragment */
         3: .line 346
            invokestatic sun.net.www.ParseUtil.toString:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 5 /* s */
        start local 5 // java.lang.String s
         4: .line 349
            aload 5 /* s */
            aload 0 /* scheme */
            aload 2 /* path */
            invokestatic sun.net.www.ParseUtil.checkPath:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         5: .line 350
            new java.net.URI
            dup
            aload 5 /* s */
            invokespecial java.net.URI.<init>:(Ljava/lang/String;)V
            areturn
        end local 5 // java.lang.String s
        end local 4 // java.lang.String fragment
        end local 3 // java.lang.String query
        end local 2 // java.lang.String path
        end local 1 // java.lang.String authority
        end local 0 // java.lang.String scheme
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0     scheme  Ljava/lang/String;
            0    6     1  authority  Ljava/lang/String;
            0    6     2       path  Ljava/lang/String;
            0    6     3      query  Ljava/lang/String;
            0    6     4   fragment  Ljava/lang/String;
            4    6     5          s  Ljava/lang/String;
    Exceptions:
      throws java.net.URISyntaxException
    MethodParameters:
           Name  Flags
      scheme     
      authority  
      path       
      query      
      fragment   

  private static java.lang.String toString(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, int, java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=8, locals=10, args_size=9
        start local 0 // java.lang.String scheme
        start local 1 // java.lang.String opaquePart
        start local 2 // java.lang.String authority
        start local 3 // java.lang.String userInfo
        start local 4 // java.lang.String host
        start local 5 // int port
        start local 6 // java.lang.String path
        start local 7 // java.lang.String query
        start local 8 // java.lang.String fragment
         0: .line 363
            new java.lang.StringBuffer
            dup
            invokespecial java.lang.StringBuffer.<init>:()V
            astore 9 /* sb */
        start local 9 // java.lang.StringBuffer sb
         1: .line 364
            aload 0 /* scheme */
            ifnull 4
         2: .line 365
            aload 9 /* sb */
            aload 0 /* scheme */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         3: .line 366
            aload 9 /* sb */
            bipush 58
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
         4: .line 368
      StackMap locals: java.lang.StringBuffer
      StackMap stack:
            aload 9 /* sb */
            aload 1 /* opaquePart */
         5: .line 369
            aload 2 /* authority */
            aload 3 /* userInfo */
            aload 4 /* host */
            iload 5 /* port */
         6: .line 370
            aload 6 /* path */
            aload 7 /* query */
         7: .line 368
            invokestatic sun.net.www.ParseUtil.appendSchemeSpecificPart:(Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V
         8: .line 371
            aload 9 /* sb */
            aload 8 /* fragment */
            invokestatic sun.net.www.ParseUtil.appendFragment:(Ljava/lang/StringBuffer;Ljava/lang/String;)V
         9: .line 372
            aload 9 /* sb */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            areturn
        end local 9 // java.lang.StringBuffer sb
        end local 8 // java.lang.String fragment
        end local 7 // java.lang.String query
        end local 6 // java.lang.String path
        end local 5 // int port
        end local 4 // java.lang.String host
        end local 3 // java.lang.String userInfo
        end local 2 // java.lang.String authority
        end local 1 // java.lang.String opaquePart
        end local 0 // java.lang.String scheme
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0      scheme  Ljava/lang/String;
            0   10     1  opaquePart  Ljava/lang/String;
            0   10     2   authority  Ljava/lang/String;
            0   10     3    userInfo  Ljava/lang/String;
            0   10     4        host  Ljava/lang/String;
            0   10     5        port  I
            0   10     6        path  Ljava/lang/String;
            0   10     7       query  Ljava/lang/String;
            0   10     8    fragment  Ljava/lang/String;
            1   10     9          sb  Ljava/lang/StringBuffer;
    MethodParameters:
            Name  Flags
      scheme      
      opaquePart  
      authority   
      userInfo    
      host        
      port        
      path        
      query       
      fragment    

  private static void appendSchemeSpecificPart(java.lang.StringBuffer, java.lang.String, java.lang.String, java.lang.String, java.lang.String, int, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=11, args_size=8
        start local 0 // java.lang.StringBuffer sb
        start local 1 // java.lang.String opaquePart
        start local 2 // java.lang.String authority
        start local 3 // java.lang.String userInfo
        start local 4 // java.lang.String host
        start local 5 // int port
        start local 6 // java.lang.String path
        start local 7 // java.lang.String query
         0: .line 384
            aload 1 /* opaquePart */
            ifnull 15
         1: .line 388
            aload 1 /* opaquePart */
            ldc "//["
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 13
         2: .line 389
            aload 1 /* opaquePart */
            bipush 93
            invokevirtual java.lang.String.indexOf:(I)I
            istore 8 /* end */
        start local 8 // int end
         3: .line 390
            iload 8 /* end */
            iconst_m1
            if_icmpeq 21
            aload 1 /* opaquePart */
            bipush 58
            invokevirtual java.lang.String.indexOf:(I)I
            iconst_m1
            if_icmpeq 21
         4: .line 392
            iload 8 /* end */
            aload 1 /* opaquePart */
            invokevirtual java.lang.String.length:()I
            if_icmpne 8
         5: .line 393
            aload 1 /* opaquePart */
            astore 10 /* dontquote */
        start local 10 // java.lang.String dontquote
         6: .line 394
            ldc ""
            astore 9 /* doquote */
        start local 9 // java.lang.String doquote
         7: .line 395
            goto 10
        end local 10 // java.lang.String dontquote
        end local 9 // java.lang.String doquote
         8: .line 396
      StackMap locals: int
      StackMap stack:
            aload 1 /* opaquePart */
            iconst_0
            iload 8 /* end */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 10 /* dontquote */
        start local 10 // java.lang.String dontquote
         9: .line 397
            aload 1 /* opaquePart */
            iload 8 /* end */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 9 /* doquote */
        start local 9 // java.lang.String doquote
        10: .line 399
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* sb */
            aload 10 /* dontquote */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        11: .line 400
            aload 0 /* sb */
            aload 9 /* doquote */
            getstatic sun.net.www.ParseUtil.L_URIC:J
            getstatic sun.net.www.ParseUtil.H_URIC:J
            invokestatic sun.net.www.ParseUtil.quote:(Ljava/lang/String;JJ)Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        end local 10 // java.lang.String dontquote
        end local 9 // java.lang.String doquote
        end local 8 // int end
        12: .line 402
            goto 21
        13: .line 403
      StackMap locals:
      StackMap stack:
            aload 0 /* sb */
            aload 1 /* opaquePart */
            getstatic sun.net.www.ParseUtil.L_URIC:J
            getstatic sun.net.www.ParseUtil.H_URIC:J
            invokestatic sun.net.www.ParseUtil.quote:(Ljava/lang/String;JJ)Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        14: .line 405
            goto 21
        15: .line 406
      StackMap locals:
      StackMap stack:
            aload 0 /* sb */
            aload 2 /* authority */
            aload 3 /* userInfo */
            aload 4 /* host */
            iload 5 /* port */
            invokestatic sun.net.www.ParseUtil.appendAuthority:(Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V
        16: .line 407
            aload 6 /* path */
            ifnull 18
        17: .line 408
            aload 0 /* sb */
            aload 6 /* path */
            getstatic sun.net.www.ParseUtil.L_PATH:J
            getstatic sun.net.www.ParseUtil.H_PATH:J
            invokestatic sun.net.www.ParseUtil.quote:(Ljava/lang/String;JJ)Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        18: .line 409
      StackMap locals:
      StackMap stack:
            aload 7 /* query */
            ifnull 21
        19: .line 410
            aload 0 /* sb */
            bipush 63
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        20: .line 411
            aload 0 /* sb */
            aload 7 /* query */
            getstatic sun.net.www.ParseUtil.L_URIC:J
            getstatic sun.net.www.ParseUtil.H_URIC:J
            invokestatic sun.net.www.ParseUtil.quote:(Ljava/lang/String;JJ)Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        21: .line 414
      StackMap locals:
      StackMap stack:
            return
        end local 7 // java.lang.String query
        end local 6 // java.lang.String path
        end local 5 // int port
        end local 4 // java.lang.String host
        end local 3 // java.lang.String userInfo
        end local 2 // java.lang.String authority
        end local 1 // java.lang.String opaquePart
        end local 0 // java.lang.StringBuffer sb
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   22     0          sb  Ljava/lang/StringBuffer;
            0   22     1  opaquePart  Ljava/lang/String;
            0   22     2   authority  Ljava/lang/String;
            0   22     3    userInfo  Ljava/lang/String;
            0   22     4        host  Ljava/lang/String;
            0   22     5        port  I
            0   22     6        path  Ljava/lang/String;
            0   22     7       query  Ljava/lang/String;
            3   12     8         end  I
            7    8     9     doquote  Ljava/lang/String;
           10   12     9     doquote  Ljava/lang/String;
            6    8    10   dontquote  Ljava/lang/String;
            9   12    10   dontquote  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      sb          
      opaquePart  
      authority   
      userInfo    
      host        
      port        
      path        
      query       

  private static void appendAuthority(java.lang.StringBuffer, java.lang.String, java.lang.String, java.lang.String, int);
    descriptor: (Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=8, locals=8, args_size=5
        start local 0 // java.lang.StringBuffer sb
        start local 1 // java.lang.String authority
        start local 2 // java.lang.String userInfo
        start local 3 // java.lang.String host
        start local 4 // int port
         0: .line 422
            aload 3 /* host */
            ifnull 18
         1: .line 423
            aload 0 /* sb */
            ldc "//"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         2: .line 424
            aload 2 /* userInfo */
            ifnull 5
         3: .line 425
            aload 0 /* sb */
            aload 2 /* userInfo */
            getstatic sun.net.www.ParseUtil.L_USERINFO:J
            getstatic sun.net.www.ParseUtil.H_USERINFO:J
            invokestatic sun.net.www.ParseUtil.quote:(Ljava/lang/String;JJ)Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         4: .line 426
            aload 0 /* sb */
            bipush 64
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
         5: .line 428
      StackMap locals:
      StackMap stack:
            aload 3 /* host */
            bipush 58
            invokevirtual java.lang.String.indexOf:(I)I
            iflt 9
         6: .line 429
            aload 3 /* host */
            ldc "["
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 9
         7: .line 430
            aload 3 /* host */
            ldc "]"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 9
         8: .line 428
            iconst_1
            goto 10
      StackMap locals:
      StackMap stack:
         9: iconst_0
      StackMap locals:
      StackMap stack: int
        10: istore 5 /* needBrackets */
        start local 5 // boolean needBrackets
        11: .line 431
            iload 5 /* needBrackets */
            ifeq 12
            aload 0 /* sb */
            bipush 91
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        12: .line 432
      StackMap locals: int
      StackMap stack:
            aload 0 /* sb */
            aload 3 /* host */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        13: .line 433
            iload 5 /* needBrackets */
            ifeq 14
            aload 0 /* sb */
            bipush 93
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        14: .line 434
      StackMap locals:
      StackMap stack:
            iload 4 /* port */
            iconst_m1
            if_icmpeq 39
        15: .line 435
            aload 0 /* sb */
            bipush 58
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        16: .line 436
            aload 0 /* sb */
            iload 4 /* port */
            invokevirtual java.lang.StringBuffer.append:(I)Ljava/lang/StringBuffer;
            pop
        end local 5 // boolean needBrackets
        17: .line 438
            goto 39
      StackMap locals:
      StackMap stack:
        18: aload 1 /* authority */
            ifnull 39
        19: .line 439
            aload 0 /* sb */
            ldc "//"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        20: .line 440
            aload 1 /* authority */
            ldc "["
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 35
        21: .line 441
            aload 1 /* authority */
            bipush 93
            invokevirtual java.lang.String.indexOf:(I)I
            istore 5 /* end */
        start local 5 // int end
        22: .line 442
            iload 5 /* end */
            iconst_m1
            if_icmpeq 39
            aload 1 /* authority */
            bipush 58
            invokevirtual java.lang.String.indexOf:(I)I
            iconst_m1
            if_icmpeq 39
        23: .line 444
            iload 5 /* end */
            aload 1 /* authority */
            invokevirtual java.lang.String.length:()I
            if_icmpne 27
        24: .line 445
            aload 1 /* authority */
            astore 7 /* dontquote */
        start local 7 // java.lang.String dontquote
        25: .line 446
            ldc ""
            astore 6 /* doquote */
        start local 6 // java.lang.String doquote
        26: .line 447
            goto 29
        end local 7 // java.lang.String dontquote
        end local 6 // java.lang.String doquote
        27: .line 448
      StackMap locals: int
      StackMap stack:
            aload 1 /* authority */
            iconst_0
            iload 5 /* end */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 7 /* dontquote */
        start local 7 // java.lang.String dontquote
        28: .line 449
            aload 1 /* authority */
            iload 5 /* end */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 6 /* doquote */
        start local 6 // java.lang.String doquote
        29: .line 451
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* sb */
            aload 7 /* dontquote */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        30: .line 452
            aload 0 /* sb */
            aload 6 /* doquote */
        31: .line 453
            getstatic sun.net.www.ParseUtil.L_REG_NAME:J
            getstatic sun.net.www.ParseUtil.L_SERVER:J
            lor
        32: .line 454
            getstatic sun.net.www.ParseUtil.H_REG_NAME:J
            getstatic sun.net.www.ParseUtil.H_SERVER:J
            lor
        33: .line 452
            invokestatic sun.net.www.ParseUtil.quote:(Ljava/lang/String;JJ)Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        end local 7 // java.lang.String dontquote
        end local 6 // java.lang.String doquote
        end local 5 // int end
        34: .line 456
            goto 39
        35: .line 457
      StackMap locals:
      StackMap stack:
            aload 0 /* sb */
            aload 1 /* authority */
        36: .line 458
            getstatic sun.net.www.ParseUtil.L_REG_NAME:J
            getstatic sun.net.www.ParseUtil.L_SERVER:J
            lor
        37: .line 459
            getstatic sun.net.www.ParseUtil.H_REG_NAME:J
            getstatic sun.net.www.ParseUtil.H_SERVER:J
            lor
        38: .line 457
            invokestatic sun.net.www.ParseUtil.quote:(Ljava/lang/String;JJ)Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        39: .line 462
      StackMap locals:
      StackMap stack:
            return
        end local 4 // int port
        end local 3 // java.lang.String host
        end local 2 // java.lang.String userInfo
        end local 1 // java.lang.String authority
        end local 0 // java.lang.StringBuffer sb
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   40     0            sb  Ljava/lang/StringBuffer;
            0   40     1     authority  Ljava/lang/String;
            0   40     2      userInfo  Ljava/lang/String;
            0   40     3          host  Ljava/lang/String;
            0   40     4          port  I
           11   17     5  needBrackets  Z
           22   34     5           end  I
           26   27     6       doquote  Ljava/lang/String;
           29   34     6       doquote  Ljava/lang/String;
           25   27     7     dontquote  Ljava/lang/String;
           28   34     7     dontquote  Ljava/lang/String;
    MethodParameters:
           Name  Flags
      sb         
      authority  
      userInfo   
      host       
      port       

  private static void appendFragment(java.lang.StringBuffer, java.lang.String);
    descriptor: (Ljava/lang/StringBuffer;Ljava/lang/String;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // java.lang.StringBuffer sb
        start local 1 // java.lang.String fragment
         0: .line 465
            aload 1 /* fragment */
            ifnull 3
         1: .line 466
            aload 0 /* sb */
            bipush 35
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
         2: .line 467
            aload 0 /* sb */
            aload 1 /* fragment */
            getstatic sun.net.www.ParseUtil.L_URIC:J
            getstatic sun.net.www.ParseUtil.H_URIC:J
            invokestatic sun.net.www.ParseUtil.quote:(Ljava/lang/String;JJ)Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         3: .line 469
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String fragment
        end local 0 // java.lang.StringBuffer sb
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0        sb  Ljava/lang/StringBuffer;
            0    4     1  fragment  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      sb        
      fragment  

  private static java.lang.String quote(java.lang.String, long, long);
    descriptor: (Ljava/lang/String;JJ)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=9, args_size=3
        start local 0 // java.lang.String s
        start local 1 // long lowMask
        start local 3 // long highMask
         0: .line 475
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            pop
         1: .line 476
            aconst_null
            astore 5 /* sb */
        start local 5 // java.lang.StringBuffer sb
         2: .line 477
            lload 1 /* lowMask */
            lconst_1
            land
            lconst_0
            lcmp
            ifeq 3
            iconst_1
            goto 4
      StackMap locals: java.lang.StringBuffer
      StackMap stack:
         3: iconst_0
      StackMap locals:
      StackMap stack: int
         4: istore 6 /* allowNonASCII */
        start local 6 // boolean allowNonASCII
         5: .line 478
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         6: goto 29
         7: .line 479
      StackMap locals: int int
      StackMap stack:
            aload 0 /* s */
            iload 7 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 8 /* c */
        start local 8 // char c
         8: .line 480
            iload 8 /* c */
            sipush 128
            if_icmpge 18
         9: .line 481
            iload 8 /* c */
            lload 1 /* lowMask */
            lload 3 /* highMask */
            invokestatic sun.net.www.ParseUtil.match:(CJJ)Z
            ifne 15
            aload 0 /* s */
            iload 7 /* i */
            invokestatic sun.net.www.ParseUtil.isEscaped:(Ljava/lang/String;I)Z
            ifne 15
        10: .line 482
            aload 5 /* sb */
            ifnonnull 13
        11: .line 483
            new java.lang.StringBuffer
            dup
            invokespecial java.lang.StringBuffer.<init>:()V
            astore 5 /* sb */
        12: .line 484
            aload 5 /* sb */
            aload 0 /* s */
            iconst_0
            iload 7 /* i */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/CharSequence;II)Ljava/lang/StringBuffer;
            pop
        13: .line 486
      StackMap locals: int
      StackMap stack:
            aload 5 /* sb */
            iload 8 /* c */
            i2b
            invokestatic sun.net.www.ParseUtil.appendEscape:(Ljava/lang/StringBuffer;B)V
        14: .line 487
            goto 28
        15: .line 488
      StackMap locals:
      StackMap stack:
            aload 5 /* sb */
            ifnull 28
        16: .line 489
            aload 5 /* sb */
            iload 8 /* c */
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        17: .line 491
            goto 28
      StackMap locals:
      StackMap stack:
        18: iload 6 /* allowNonASCII */
            ifeq 26
        19: .line 492
            iload 8 /* c */
            invokestatic java.lang.Character.isSpaceChar:(C)Z
            ifne 21
        20: .line 493
            iload 8 /* c */
            invokestatic java.lang.Character.isISOControl:(C)Z
            ifeq 26
        21: .line 494
      StackMap locals:
      StackMap stack:
            aload 5 /* sb */
            ifnonnull 24
        22: .line 495
            new java.lang.StringBuffer
            dup
            invokespecial java.lang.StringBuffer.<init>:()V
            astore 5 /* sb */
        23: .line 496
            aload 5 /* sb */
            aload 0 /* s */
            iconst_0
            iload 7 /* i */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/CharSequence;II)Ljava/lang/StringBuffer;
            pop
        24: .line 498
      StackMap locals:
      StackMap stack:
            aload 5 /* sb */
            iload 8 /* c */
            invokestatic sun.net.www.ParseUtil.appendEncoded:(Ljava/lang/StringBuffer;C)V
        25: .line 499
            goto 28
        26: .line 500
      StackMap locals:
      StackMap stack:
            aload 5 /* sb */
            ifnull 28
        27: .line 501
            aload 5 /* sb */
            iload 8 /* c */
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        end local 8 // char c
        28: .line 478
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        29: iload 7 /* i */
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            if_icmplt 7
        end local 7 // int i
        30: .line 504
            aload 5 /* sb */
            ifnonnull 31
            aload 0 /* s */
            goto 32
      StackMap locals:
      StackMap stack:
        31: aload 5 /* sb */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
        32: areturn
        end local 6 // boolean allowNonASCII
        end local 5 // java.lang.StringBuffer sb
        end local 3 // long highMask
        end local 1 // long lowMask
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   33     0              s  Ljava/lang/String;
            0   33     1        lowMask  J
            0   33     3       highMask  J
            2   33     5             sb  Ljava/lang/StringBuffer;
            5   33     6  allowNonASCII  Z
            6   30     7              i  I
            8   28     8              c  C
    MethodParameters:
          Name  Flags
      s         
      lowMask   
      highMask  

  private static boolean isEscaped(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.lang.String s
        start local 1 // int pos
         0: .line 512
            aload 0 /* s */
            ifnull 1
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            iload 1 /* pos */
            iconst_2
            iadd
            if_icmpgt 2
         1: .line 513
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 515
      StackMap locals:
      StackMap stack:
            aload 0 /* s */
            iload 1 /* pos */
            invokevirtual java.lang.String.charAt:(I)C
            bipush 37
            if_icmpne 6
         3: .line 516
            aload 0 /* s */
            iload 1 /* pos */
            iconst_1
            iadd
            invokevirtual java.lang.String.charAt:(I)C
            getstatic sun.net.www.ParseUtil.L_HEX:J
            getstatic sun.net.www.ParseUtil.H_HEX:J
            invokestatic sun.net.www.ParseUtil.match:(CJJ)Z
            ifeq 6
         4: .line 517
            aload 0 /* s */
            iload 1 /* pos */
            iconst_2
            iadd
            invokevirtual java.lang.String.charAt:(I)C
            getstatic sun.net.www.ParseUtil.L_HEX:J
            getstatic sun.net.www.ParseUtil.H_HEX:J
            invokestatic sun.net.www.ParseUtil.match:(CJJ)Z
            ifeq 6
         5: .line 515
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         6: iconst_0
            ireturn
        end local 1 // int pos
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0     s  Ljava/lang/String;
            0    7     1   pos  I
    MethodParameters:
      Name  Flags
      s     
      pos   

  private static void appendEncoded(java.lang.StringBuffer, char);
    descriptor: (Ljava/lang/StringBuffer;C)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // java.lang.StringBuffer sb
        start local 1 // char c
         0: .line 521
            aconst_null
            astore 2 /* bb */
        start local 2 // java.nio.ByteBuffer bb
         1: .line 523
            ldc "UTF-8"
            invokestatic sun.nio.cs.ThreadLocalCoders.encoderFor:(Ljava/lang/Object;)Ljava/nio/charset/CharsetEncoder;
         2: .line 524
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            iload 1 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic java.nio.CharBuffer.wrap:(Ljava/lang/CharSequence;)Ljava/nio/CharBuffer;
            invokevirtual java.nio.charset.CharsetEncoder.encode:(Ljava/nio/CharBuffer;)Ljava/nio/ByteBuffer;
         3: .line 523
            astore 2 /* bb */
         4: .line 525
            goto 11
      StackMap locals: java.lang.StringBuffer int java.nio.ByteBuffer
      StackMap stack: java.nio.charset.CharacterCodingException
         5: pop
         6: .line 526
            getstatic sun.net.www.ParseUtil.$assertionsDisabled:Z
            ifne 11
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         7: .line 529
      StackMap locals:
      StackMap stack:
            aload 2 /* bb */
            invokevirtual java.nio.ByteBuffer.get:()B
            sipush 255
            iand
            istore 3 /* b */
        start local 3 // int b
         8: .line 530
            iload 3 /* b */
            sipush 128
            if_icmplt 10
         9: .line 531
            aload 0 /* sb */
            iload 3 /* b */
            i2b
            invokestatic sun.net.www.ParseUtil.appendEscape:(Ljava/lang/StringBuffer;B)V
            goto 11
        10: .line 533
      StackMap locals: int
      StackMap stack:
            aload 0 /* sb */
            iload 3 /* b */
            i2c
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        end local 3 // int b
        11: .line 528
      StackMap locals:
      StackMap stack:
            aload 2 /* bb */
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 7
        12: .line 535
            return
        end local 2 // java.nio.ByteBuffer bb
        end local 1 // char c
        end local 0 // java.lang.StringBuffer sb
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0    sb  Ljava/lang/StringBuffer;
            0   13     1     c  C
            1   13     2    bb  Ljava/nio/ByteBuffer;
            8   11     3     b  I
      Exception table:
        from    to  target  type
           1     4       5  Class java.nio.charset.CharacterCodingException
    MethodParameters:
      Name  Flags
      sb    
      c     

  private static void appendEscape(java.lang.StringBuffer, byte);
    descriptor: (Ljava/lang/StringBuffer;B)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.StringBuffer sb
        start local 1 // byte b
         0: .line 543
            aload 0 /* sb */
            bipush 37
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
         1: .line 544
            aload 0 /* sb */
            getstatic sun.net.www.ParseUtil.hexDigits:[C
            iload 1 /* b */
            iconst_4
            ishr
            bipush 15
            iand
            caload
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
         2: .line 545
            aload 0 /* sb */
            getstatic sun.net.www.ParseUtil.hexDigits:[C
            iload 1 /* b */
            iconst_0
            ishr
            bipush 15
            iand
            caload
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
         3: .line 546
            return
        end local 1 // byte b
        end local 0 // java.lang.StringBuffer sb
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0    sb  Ljava/lang/StringBuffer;
            0    4     1     b  B
    MethodParameters:
      Name  Flags
      sb    
      b     

  private static boolean match(char, long, long);
    descriptor: (CJJ)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // char c
        start local 1 // long lowMask
        start local 3 // long highMask
         0: .line 550
            iload 0 /* c */
            bipush 64
            if_icmpge 3
         1: .line 551
            lconst_1
            iload 0 /* c */
            lshl
            lload 1 /* lowMask */
            land
            lconst_0
            lcmp
            ifeq 2
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_0
            ireturn
         3: .line 552
      StackMap locals:
      StackMap stack:
            iload 0 /* c */
            sipush 128
            if_icmpge 6
         4: .line 553
            lconst_1
            iload 0 /* c */
            bipush 64
            isub
            lshl
            lload 3 /* highMask */
            land
            lconst_0
            lcmp
            ifeq 5
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         5: iconst_0
            ireturn
         6: .line 554
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 3 // long highMask
        end local 1 // long lowMask
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0         c  C
            0    7     1   lowMask  J
            0    7     3  highMask  J
    MethodParameters:
          Name  Flags
      c         
      lowMask   
      highMask  

  private static void checkPath(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // java.lang.String s
        start local 1 // java.lang.String scheme
        start local 2 // java.lang.String path
         0: .line 562
            aload 1 /* scheme */
            ifnull 6
         1: .line 563
            aload 2 /* path */
            ifnull 6
         2: .line 564
            aload 2 /* path */
            invokevirtual java.lang.String.length:()I
            ifle 6
            aload 2 /* path */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 47
            if_icmpeq 6
         3: .line 565
            new java.net.URISyntaxException
            dup
            aload 0 /* s */
         4: .line 566
            ldc "Relative path in absolute URI"
         5: .line 565
            invokespecial java.net.URISyntaxException.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            athrow
         6: .line 568
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.String path
        end local 1 // java.lang.String scheme
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0       s  Ljava/lang/String;
            0    7     1  scheme  Ljava/lang/String;
            0    7     2    path  Ljava/lang/String;
    Exceptions:
      throws java.net.URISyntaxException
    MethodParameters:
        Name  Flags
      s       
      scheme  
      path    

  private static long lowMask(char, char);
    descriptor: (CC)J
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // char first
        start local 1 // char last
         0: .line 576
            lconst_0
            lstore 2 /* m */
        start local 2 // long m
         1: .line 577
            iload 0 /* first */
            bipush 63
            invokestatic java.lang.Math.min:(II)I
            iconst_0
            invokestatic java.lang.Math.max:(II)I
            istore 4 /* f */
        start local 4 // int f
         2: .line 578
            iload 1 /* last */
            bipush 63
            invokestatic java.lang.Math.min:(II)I
            iconst_0
            invokestatic java.lang.Math.max:(II)I
            istore 5 /* l */
        start local 5 // int l
         3: .line 579
            iload 4 /* f */
            istore 6 /* i */
        start local 6 // int i
         4: goto 7
         5: .line 580
      StackMap locals: int int long int int int
      StackMap stack:
            lload 2 /* m */
            lconst_1
            iload 6 /* i */
            lshl
            lor
            lstore 2 /* m */
         6: .line 579
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 6 /* i */
            iload 5 /* l */
            if_icmple 5
        end local 6 // int i
         8: .line 581
            lload 2 /* m */
            lreturn
        end local 5 // int l
        end local 4 // int f
        end local 2 // long m
        end local 1 // char last
        end local 0 // char first
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0  first  C
            0    9     1   last  C
            1    9     2      m  J
            2    9     4      f  I
            3    9     5      l  I
            4    8     6      i  I
    MethodParameters:
       Name  Flags
      first  
      last   

  private static long lowMask(java.lang.String);
    descriptor: (Ljava/lang/String;)J
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // java.lang.String chars
         0: .line 586
            aload 0 /* chars */
            invokevirtual java.lang.String.length:()I
            istore 1 /* n */
        start local 1 // int n
         1: .line 587
            lconst_0
            lstore 2 /* m */
        start local 2 // long m
         2: .line 588
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 8
         4: .line 589
      StackMap locals: int long int
      StackMap stack:
            aload 0 /* chars */
            iload 4 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 5 /* c */
        start local 5 // char c
         5: .line 590
            iload 5 /* c */
            bipush 64
            if_icmpge 7
         6: .line 591
            lload 2 /* m */
            lconst_1
            iload 5 /* c */
            lshl
            lor
            lstore 2 /* m */
        end local 5 // char c
         7: .line 588
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 4 /* i */
            iload 1 /* n */
            if_icmplt 4
        end local 4 // int i
         9: .line 593
            lload 2 /* m */
            lreturn
        end local 2 // long m
        end local 1 // int n
        end local 0 // java.lang.String chars
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0  chars  Ljava/lang/String;
            1   10     1      n  I
            2   10     2      m  J
            3    9     4      i  I
            5    7     5      c  C
    MethodParameters:
       Name  Flags
      chars  

  private static long highMask(char, char);
    descriptor: (CC)J
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // char first
        start local 1 // char last
         0: .line 599
            lconst_0
            lstore 2 /* m */
        start local 2 // long m
         1: .line 600
            iload 0 /* first */
            bipush 127
            invokestatic java.lang.Math.min:(II)I
            bipush 64
            invokestatic java.lang.Math.max:(II)I
            bipush 64
            isub
            istore 4 /* f */
        start local 4 // int f
         2: .line 601
            iload 1 /* last */
            bipush 127
            invokestatic java.lang.Math.min:(II)I
            bipush 64
            invokestatic java.lang.Math.max:(II)I
            bipush 64
            isub
            istore 5 /* l */
        start local 5 // int l
         3: .line 602
            iload 4 /* f */
            istore 6 /* i */
        start local 6 // int i
         4: goto 7
         5: .line 603
      StackMap locals: int int long int int int
      StackMap stack:
            lload 2 /* m */
            lconst_1
            iload 6 /* i */
            lshl
            lor
            lstore 2 /* m */
         6: .line 602
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 6 /* i */
            iload 5 /* l */
            if_icmple 5
        end local 6 // int i
         8: .line 604
            lload 2 /* m */
            lreturn
        end local 5 // int l
        end local 4 // int f
        end local 2 // long m
        end local 1 // char last
        end local 0 // char first
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0  first  C
            0    9     1   last  C
            1    9     2      m  J
            2    9     4      f  I
            3    9     5      l  I
            4    8     6      i  I
    MethodParameters:
       Name  Flags
      first  
      last   

  private static long highMask(java.lang.String);
    descriptor: (Ljava/lang/String;)J
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=6, args_size=1
        start local 0 // java.lang.String chars
         0: .line 609
            aload 0 /* chars */
            invokevirtual java.lang.String.length:()I
            istore 1 /* n */
        start local 1 // int n
         1: .line 610
            lconst_0
            lstore 2 /* m */
        start local 2 // long m
         2: .line 611
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 8
         4: .line 612
      StackMap locals: int long int
      StackMap stack:
            aload 0 /* chars */
            iload 4 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 5 /* c */
        start local 5 // char c
         5: .line 613
            iload 5 /* c */
            bipush 64
            if_icmplt 7
            iload 5 /* c */
            sipush 128
            if_icmpge 7
         6: .line 614
            lload 2 /* m */
            lconst_1
            iload 5 /* c */
            bipush 64
            isub
            lshl
            lor
            lstore 2 /* m */
        end local 5 // char c
         7: .line 611
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 4 /* i */
            iload 1 /* n */
            if_icmplt 4
        end local 4 // int i
         9: .line 616
            lload 2 /* m */
            lreturn
        end local 2 // long m
        end local 1 // int n
        end local 0 // java.lang.String chars
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0  chars  Ljava/lang/String;
            1   10     1      n  I
            2   10     2      m  J
            3    9     4      i  I
            5    7     5      c  C
    MethodParameters:
       Name  Flags
      chars  
}
SourceFile: "ParseUtil.java"