public abstract class java.net.URLStreamHandler
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: java.net.URLStreamHandler
  super_class: java.lang.Object
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.net.URLStreamHandler this
         0: .line 57
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // java.net.URLStreamHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/net/URLStreamHandler;

  protected abstract java.net.URLConnection openConnection(java.net.URL);
    descriptor: (Ljava/net/URL;)Ljava/net/URLConnection;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      u     

  protected java.net.URLConnection openConnection(java.net.URL, java.net.Proxy);
    descriptor: (Ljava/net/URL;Ljava/net/Proxy;)Ljava/net/URLConnection;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // java.net.URLStreamHandler this
        start local 1 // java.net.URL u
        start local 2 // java.net.Proxy p
         0: .line 108
            aload 1 /* u */
            ifnull 1
            aload 2 /* p */
            ifnonnull 4
         1: .line 109
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "null "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* u */
            ifnonnull 2
            ldc "url"
            goto 3
      StackMap locals: java.net.URLStreamHandler java.net.URL java.net.Proxy
      StackMap stack: new 1 new 1 java.lang.StringBuilder
         2: ldc "proxy"
      StackMap locals: java.net.URLStreamHandler java.net.URL java.net.Proxy
      StackMap stack: new 1 new 1 java.lang.StringBuilder java.lang.String
         3: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 110
      StackMap locals:
      StackMap stack:
            new java.lang.UnsupportedOperationException
            dup
            ldc "Method not implemented."
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // java.net.Proxy p
        end local 1 // java.net.URL u
        end local 0 // java.net.URLStreamHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/net/URLStreamHandler;
            0    5     1     u  Ljava/net/URL;
            0    5     2     p  Ljava/net/Proxy;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      u     
      p     

  protected void parseURL(java.net.URL, java.lang.String, int, int);
    descriptor: (Ljava/net/URL;Ljava/lang/String;II)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=10, locals=19, args_size=5
        start local 0 // java.net.URLStreamHandler this
        start local 1 // java.net.URL u
        start local 2 // java.lang.String spec
        start local 3 // int start
        start local 4 // int limit
         0: .line 140
            aload 1 /* u */
            invokevirtual java.net.URL.getProtocol:()Ljava/lang/String;
            astore 5 /* protocol */
        start local 5 // java.lang.String protocol
         1: .line 141
            aload 1 /* u */
            invokevirtual java.net.URL.getAuthority:()Ljava/lang/String;
            astore 6 /* authority */
        start local 6 // java.lang.String authority
         2: .line 142
            aload 1 /* u */
            invokevirtual java.net.URL.getUserInfo:()Ljava/lang/String;
            astore 7 /* userInfo */
        start local 7 // java.lang.String userInfo
         3: .line 143
            aload 1 /* u */
            invokevirtual java.net.URL.getHost:()Ljava/lang/String;
            astore 8 /* host */
        start local 8 // java.lang.String host
         4: .line 144
            aload 1 /* u */
            invokevirtual java.net.URL.getPort:()I
            istore 9 /* port */
        start local 9 // int port
         5: .line 145
            aload 1 /* u */
            invokevirtual java.net.URL.getPath:()Ljava/lang/String;
            astore 10 /* path */
        start local 10 // java.lang.String path
         6: .line 146
            aload 1 /* u */
            invokevirtual java.net.URL.getQuery:()Ljava/lang/String;
            astore 11 /* query */
        start local 11 // java.lang.String query
         7: .line 149
            aload 1 /* u */
            invokevirtual java.net.URL.getRef:()Ljava/lang/String;
            astore 12 /* ref */
        start local 12 // java.lang.String ref
         8: .line 151
            iconst_0
            istore 13 /* isRelPath */
        start local 13 // boolean isRelPath
         9: .line 152
            iconst_0
            istore 14 /* queryOnly */
        start local 14 // boolean queryOnly
        10: .line 156
            iload 3 /* start */
            iload 4 /* limit */
            if_icmpge 20
        11: .line 157
            aload 2 /* spec */
            bipush 63
            invokevirtual java.lang.String.indexOf:(I)I
            istore 15 /* queryStart */
        start local 15 // int queryStart
        12: .line 158
            iload 15 /* queryStart */
            iload 3 /* start */
            if_icmpne 13
            iconst_1
            goto 14
      StackMap locals: java.net.URLStreamHandler java.net.URL java.lang.String int int java.lang.String java.lang.String java.lang.String java.lang.String int java.lang.String java.lang.String java.lang.String int int int
      StackMap stack:
        13: iconst_0
      StackMap locals:
      StackMap stack: int
        14: istore 14 /* queryOnly */
        15: .line 159
            iload 15 /* queryStart */
            iconst_m1
            if_icmpeq 20
            iload 15 /* queryStart */
            iload 4 /* limit */
            if_icmpge 20
        16: .line 160
            aload 2 /* spec */
            iload 15 /* queryStart */
            iconst_1
            iadd
            iload 4 /* limit */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 11 /* query */
        17: .line 161
            iload 4 /* limit */
            iload 15 /* queryStart */
            if_icmple 19
        18: .line 162
            iload 15 /* queryStart */
            istore 4 /* limit */
        19: .line 163
      StackMap locals:
      StackMap stack:
            aload 2 /* spec */
            iconst_0
            iload 15 /* queryStart */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 2 /* spec */
        end local 15 // int queryStart
        20: .line 167
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 15 /* i */
        start local 15 // int i
        21: .line 169
            iload 3 /* start */
            iload 4 /* limit */
            iconst_4
            isub
            if_icmpgt 27
        22: .line 170
            aload 2 /* spec */
            iload 3 /* start */
            invokevirtual java.lang.String.charAt:(I)C
            bipush 47
            if_icmpne 27
        23: .line 171
            aload 2 /* spec */
            iload 3 /* start */
            iconst_1
            iadd
            invokevirtual java.lang.String.charAt:(I)C
            bipush 47
            if_icmpne 27
        24: .line 172
            aload 2 /* spec */
            iload 3 /* start */
            iconst_2
            iadd
            invokevirtual java.lang.String.charAt:(I)C
            bipush 47
            if_icmpne 27
        25: .line 173
            aload 2 /* spec */
            iload 3 /* start */
            iconst_3
            iadd
            invokevirtual java.lang.String.charAt:(I)C
            bipush 47
            if_icmpne 27
        26: .line 169
            iconst_1
            goto 28
      StackMap locals: int
      StackMap stack:
        27: iconst_0
      StackMap locals:
      StackMap stack: int
        28: istore 16 /* isUNCName */
        start local 16 // boolean isUNCName
        29: .line 174
            iload 16 /* isUNCName */
            ifne 89
            iload 3 /* start */
            iload 4 /* limit */
            iconst_2
            isub
            if_icmpgt 89
            aload 2 /* spec */
            iload 3 /* start */
            invokevirtual java.lang.String.charAt:(I)C
            bipush 47
            if_icmpne 89
        30: .line 175
            aload 2 /* spec */
            iload 3 /* start */
            iconst_1
            iadd
            invokevirtual java.lang.String.charAt:(I)C
            bipush 47
            if_icmpne 89
        31: .line 176
            iinc 3 /* start */ 2
        32: .line 177
            aload 2 /* spec */
            bipush 47
            iload 3 /* start */
            invokevirtual java.lang.String.indexOf:(II)I
            istore 15 /* i */
        33: .line 178
            iload 15 /* i */
            iflt 34
            iload 15 /* i */
            iload 4 /* limit */
            if_icmple 37
        34: .line 179
      StackMap locals: int
      StackMap stack:
            aload 2 /* spec */
            bipush 63
            iload 3 /* start */
            invokevirtual java.lang.String.indexOf:(II)I
            istore 15 /* i */
        35: .line 180
            iload 15 /* i */
            iflt 36
            iload 15 /* i */
            iload 4 /* limit */
            if_icmple 37
        36: .line 181
      StackMap locals:
      StackMap stack:
            iload 4 /* limit */
            istore 15 /* i */
        37: .line 184
      StackMap locals:
      StackMap stack:
            aload 2 /* spec */
            iload 3 /* start */
            iload 15 /* i */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            dup
            astore 6 /* authority */
            astore 8 /* host */
        38: .line 186
            aload 6 /* authority */
            bipush 64
            invokevirtual java.lang.String.indexOf:(I)I
            istore 17 /* ind */
        start local 17 // int ind
        39: .line 187
            iload 17 /* ind */
            iconst_m1
            if_icmpeq 47
        40: .line 188
            iload 17 /* ind */
            aload 6 /* authority */
            bipush 64
            invokevirtual java.lang.String.lastIndexOf:(I)I
            if_icmpeq 44
        41: .line 190
            aconst_null
            astore 7 /* userInfo */
        42: .line 191
            aconst_null
            astore 8 /* host */
        43: .line 192
            goto 48
        44: .line 193
      StackMap locals: int
      StackMap stack:
            aload 6 /* authority */
            iconst_0
            iload 17 /* ind */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 7 /* userInfo */
        45: .line 194
            aload 6 /* authority */
            iload 17 /* ind */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 8 /* host */
        46: .line 196
            goto 48
        47: .line 197
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 7 /* userInfo */
        48: .line 199
      StackMap locals:
      StackMap stack:
            aload 8 /* host */
            ifnull 81
        49: .line 202
            aload 8 /* host */
            invokevirtual java.lang.String.length:()I
            ifle 72
            aload 8 /* host */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 91
            if_icmpne 72
        50: .line 203
            aload 8 /* host */
            bipush 93
            invokevirtual java.lang.String.indexOf:(I)I
            dup
            istore 17 /* ind */
            iconst_2
            if_icmple 69
        51: .line 205
            aload 8 /* host */
            astore 18 /* nhost */
        start local 18 // java.lang.String nhost
        52: .line 206
            aload 18 /* nhost */
            iconst_0
            iload 17 /* ind */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 8 /* host */
        53: .line 208
            aload 8 /* host */
            iconst_1
            iload 17 /* ind */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokestatic sun.net.util.IPAddressUtil.isIPv6LiteralAddress:(Ljava/lang/String;)Z
            ifne 57
        54: .line 209
            new java.lang.IllegalArgumentException
            dup
        55: .line 210
            new java.lang.StringBuilder
            dup
            ldc "Invalid host: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 8 /* host */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        56: .line 209
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        57: .line 213
      StackMap locals: java.lang.String
      StackMap stack:
            iconst_m1
            istore 9 /* port */
        58: .line 214
            aload 18 /* nhost */
            invokevirtual java.lang.String.length:()I
            iload 17 /* ind */
            iconst_1
            iadd
            if_icmple 82
        59: .line 215
            aload 18 /* nhost */
            iload 17 /* ind */
            iconst_1
            iadd
            invokevirtual java.lang.String.charAt:(I)C
            bipush 58
            if_icmpne 66
        60: .line 216
            iinc 17 /* ind */ 1
        61: .line 218
            aload 18 /* nhost */
            invokevirtual java.lang.String.length:()I
            iload 17 /* ind */
            iconst_1
            iadd
            if_icmple 82
        62: .line 219
            aload 18 /* nhost */
            iload 17 /* ind */
            iconst_1
            iadd
        63: .line 220
            aload 18 /* nhost */
            invokevirtual java.lang.String.length:()I
            bipush 10
        64: .line 219
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/CharSequence;III)I
            istore 9 /* port */
        65: .line 222
            goto 82
        66: .line 223
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
        67: .line 224
            new java.lang.StringBuilder
            dup
            ldc "Invalid authority field: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* authority */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        68: .line 223
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 18 // java.lang.String nhost
        69: .line 228
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
        70: .line 229
            new java.lang.StringBuilder
            dup
            ldc "Invalid authority field: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* authority */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        71: .line 228
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        72: .line 232
      StackMap locals:
      StackMap stack:
            aload 8 /* host */
            bipush 58
            invokevirtual java.lang.String.indexOf:(I)I
            istore 17 /* ind */
        73: .line 233
            iconst_m1
            istore 9 /* port */
        74: .line 234
            iload 17 /* ind */
            iflt 82
        75: .line 236
            aload 8 /* host */
            invokevirtual java.lang.String.length:()I
            iload 17 /* ind */
            iconst_1
            iadd
            if_icmple 79
        76: .line 237
            aload 8 /* host */
            iload 17 /* ind */
            iconst_1
            iadd
        77: .line 238
            aload 8 /* host */
            invokevirtual java.lang.String.length:()I
            bipush 10
        78: .line 237
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/CharSequence;III)I
            istore 9 /* port */
        79: .line 240
      StackMap locals:
      StackMap stack:
            aload 8 /* host */
            iconst_0
            iload 17 /* ind */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 8 /* host */
        80: .line 243
            goto 82
        81: .line 244
      StackMap locals:
      StackMap stack:
            ldc ""
            astore 8 /* host */
        82: .line 246
      StackMap locals:
      StackMap stack:
            iload 9 /* port */
            iconst_m1
            if_icmpge 86
        83: .line 247
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid port number :"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        84: .line 248
            iload 9 /* port */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        85: .line 247
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        86: .line 249
      StackMap locals:
      StackMap stack:
            iload 15 /* i */
            istore 3 /* start */
        87: .line 252
            aload 6 /* authority */
            ifnull 89
            aload 6 /* authority */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 89
        88: .line 253
            ldc ""
            astore 10 /* path */
        end local 17 // int ind
        89: .line 256
      StackMap locals:
      StackMap stack:
            aload 8 /* host */
            ifnonnull 91
        90: .line 257
            ldc ""
            astore 8 /* host */
        91: .line 261
      StackMap locals:
      StackMap stack:
            iload 3 /* start */
            iload 4 /* limit */
            if_icmpge 110
        92: .line 262
            aload 2 /* spec */
            iload 3 /* start */
            invokevirtual java.lang.String.charAt:(I)C
            bipush 47
            if_icmpne 95
        93: .line 263
            aload 2 /* spec */
            iload 3 /* start */
            iload 4 /* limit */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 10 /* path */
        94: .line 264
            goto 115
      StackMap locals:
      StackMap stack:
        95: aload 10 /* path */
            ifnull 105
            aload 10 /* path */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 105
        96: .line 265
            iconst_1
            istore 13 /* isRelPath */
        97: .line 266
            aload 10 /* path */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 17 /* ind */
        start local 17 // int ind
        98: .line 267
            ldc ""
            astore 18 /* separator */
        start local 18 // java.lang.String separator
        99: .line 268
            iload 17 /* ind */
            iconst_m1
            if_icmpne 101
            aload 6 /* authority */
            ifnull 101
       100: .line 269
            ldc "/"
            astore 18 /* separator */
       101: .line 270
      StackMap locals: int java.lang.String
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 10 /* path */
            iconst_0
            iload 17 /* ind */
            iconst_1
            iadd
            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 18 /* separator */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
       102: .line 271
            aload 2 /* spec */
            iload 3 /* start */
            iload 4 /* limit */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
       103: .line 270
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 10 /* path */
        end local 18 // java.lang.String separator
        end local 17 // int ind
       104: .line 273
            goto 115
       105: .line 274
      StackMap locals:
      StackMap stack:
            aload 2 /* spec */
            iload 3 /* start */
            iload 4 /* limit */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 10 /* path */
       106: .line 275
            aload 6 /* authority */
            ifnull 107
            new java.lang.StringBuilder
            dup
            ldc "/"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 10 /* path */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 108
      StackMap locals:
      StackMap stack:
       107: aload 10 /* path */
      StackMap locals:
      StackMap stack: java.lang.String
       108: astore 10 /* path */
       109: .line 277
            goto 115
      StackMap locals:
      StackMap stack:
       110: iload 14 /* queryOnly */
            ifeq 115
            aload 10 /* path */
            ifnull 115
       111: .line 278
            aload 10 /* path */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 17 /* ind */
        start local 17 // int ind
       112: .line 279
            iload 17 /* ind */
            ifge 114
       113: .line 280
            iconst_0
            istore 17 /* ind */
       114: .line 281
      StackMap locals: int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 10 /* path */
            iconst_0
            iload 17 /* ind */
            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
            ldc "/"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 10 /* path */
        end local 17 // int ind
       115: .line 283
      StackMap locals:
      StackMap stack:
            aload 10 /* path */
            ifnonnull 117
       116: .line 284
            ldc ""
            astore 10 /* path */
       117: .line 286
      StackMap locals:
      StackMap stack:
            iload 13 /* isRelPath */
            ifeq 139
       118: .line 288
            goto 120
       119: .line 289
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 10 /* path */
            iconst_0
            iload 15 /* 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 10 /* path */
            iload 15 /* 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 10 /* path */
       120: .line 288
      StackMap locals:
      StackMap stack:
            aload 10 /* path */
            ldc "/./"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            dup
            istore 15 /* i */
            ifge 119
       121: .line 292
            iconst_0
            istore 15 /* i */
       122: .line 293
            goto 129
       123: .line 300
      StackMap locals:
      StackMap stack:
            iload 15 /* i */
            ifle 128
            aload 10 /* path */
            bipush 47
            iload 15 /* i */
            iconst_1
            isub
            invokevirtual java.lang.String.lastIndexOf:(II)I
            dup
            istore 4 /* limit */
            iflt 128
       124: .line 301
            aload 10 /* path */
            ldc "/../"
            iload 4 /* limit */
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;I)I
            ifeq 128
       125: .line 302
            new java.lang.StringBuilder
            dup
            aload 10 /* path */
            iconst_0
            iload 4 /* limit */
            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 10 /* path */
            iload 15 /* 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 10 /* path */
       126: .line 303
            iconst_0
            istore 15 /* i */
       127: .line 304
            goto 129
       128: .line 305
      StackMap locals:
      StackMap stack:
            iinc 15 /* i */ 3
       129: .line 293
      StackMap locals:
      StackMap stack:
            aload 10 /* path */
            ldc "/../"
            iload 15 /* i */
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;I)I
            dup
            istore 15 /* i */
            ifge 123
       130: .line 309
            goto 134
       131: .line 310
      StackMap locals:
      StackMap stack:
            aload 10 /* path */
            ldc "/.."
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            istore 15 /* i */
       132: .line 311
            aload 10 /* path */
            bipush 47
            iload 15 /* i */
            iconst_1
            isub
            invokevirtual java.lang.String.lastIndexOf:(II)I
            dup
            istore 4 /* limit */
            iflt 135
       133: .line 312
            aload 10 /* path */
            iconst_0
            iload 4 /* limit */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 10 /* path */
       134: .line 309
      StackMap locals:
      StackMap stack:
            aload 10 /* path */
            ldc "/.."
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 131
       135: .line 318
      StackMap locals:
      StackMap stack:
            aload 10 /* path */
            ldc "./"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 137
            aload 10 /* path */
            invokevirtual java.lang.String.length:()I
            iconst_2
            if_icmple 137
       136: .line 319
            aload 10 /* path */
            iconst_2
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 10 /* path */
       137: .line 322
      StackMap locals:
      StackMap stack:
            aload 10 /* path */
            ldc "/."
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 139
       138: .line 323
            aload 10 /* path */
            iconst_0
            aload 10 /* path */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 10 /* path */
       139: .line 326
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* u */
            aload 5 /* protocol */
            aload 8 /* host */
            iload 9 /* port */
            aload 6 /* authority */
            aload 7 /* userInfo */
            aload 10 /* path */
            aload 11 /* query */
            aload 12 /* ref */
            invokevirtual java.net.URLStreamHandler.setURL:(Ljava/net/URL;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
       140: .line 327
            return
        end local 16 // boolean isUNCName
        end local 15 // int i
        end local 14 // boolean queryOnly
        end local 13 // boolean isRelPath
        end local 12 // java.lang.String ref
        end local 11 // java.lang.String query
        end local 10 // java.lang.String path
        end local 9 // int port
        end local 8 // java.lang.String host
        end local 7 // java.lang.String userInfo
        end local 6 // java.lang.String authority
        end local 5 // java.lang.String protocol
        end local 4 // int limit
        end local 3 // int start
        end local 2 // java.lang.String spec
        end local 1 // java.net.URL u
        end local 0 // java.net.URLStreamHandler this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0  141     0        this  Ljava/net/URLStreamHandler;
            0  141     1           u  Ljava/net/URL;
            0  141     2        spec  Ljava/lang/String;
            0  141     3       start  I
            0  141     4       limit  I
            1  141     5    protocol  Ljava/lang/String;
            2  141     6   authority  Ljava/lang/String;
            3  141     7    userInfo  Ljava/lang/String;
            4  141     8        host  Ljava/lang/String;
            5  141     9        port  I
            6  141    10        path  Ljava/lang/String;
            7  141    11       query  Ljava/lang/String;
            8  141    12         ref  Ljava/lang/String;
            9  141    13   isRelPath  Z
           10  141    14   queryOnly  Z
           12   20    15  queryStart  I
           21  141    15           i  I
           29  141    16   isUNCName  Z
           39   89    17         ind  I
           52   69    18       nhost  Ljava/lang/String;
           98  104    17         ind  I
           99  104    18   separator  Ljava/lang/String;
          112  115    17         ind  I
    MethodParameters:
       Name  Flags
      u      
      spec   
      start  
      limit  

  protected int getDefaultPort();
    descriptor: ()I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.net.URLStreamHandler this
         0: .line 336
            iconst_m1
            ireturn
        end local 0 // java.net.URLStreamHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/net/URLStreamHandler;

  protected boolean equals(java.net.URL, java.net.URL);
    descriptor: (Ljava/net/URL;Ljava/net/URL;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.net.URLStreamHandler this
        start local 1 // java.net.URL u1
        start local 2 // java.net.URL u2
         0: .line 352
            aload 1 /* u1 */
            invokevirtual java.net.URL.getRef:()Ljava/lang/String;
            aload 2 /* u2 */
            invokevirtual java.net.URL.getRef:()Ljava/lang/String;
            invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 1
            aload 0 /* this */
            aload 1 /* u1 */
            aload 2 /* u2 */
            invokevirtual java.net.URLStreamHandler.sameFile:(Ljava/net/URL;Ljava/net/URL;)Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 2 // java.net.URL u2
        end local 1 // java.net.URL u1
        end local 0 // java.net.URLStreamHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/net/URLStreamHandler;
            0    2     1    u1  Ljava/net/URL;
            0    2     2    u2  Ljava/net/URL;
    MethodParameters:
      Name  Flags
      u1    
      u2    

  protected int hashCode(java.net.URL);
    descriptor: (Ljava/net/URL;)I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=7, args_size=2
        start local 0 // java.net.URLStreamHandler this
        start local 1 // java.net.URL u
         0: .line 364
            iconst_0
            istore 2 /* h */
        start local 2 // int h
         1: .line 367
            aload 1 /* u */
            invokevirtual java.net.URL.getProtocol:()Ljava/lang/String;
            astore 3 /* protocol */
        start local 3 // java.lang.String protocol
         2: .line 368
            aload 3 /* protocol */
            ifnull 4
         3: .line 369
            iload 2 /* h */
            aload 3 /* protocol */
            invokevirtual java.lang.String.hashCode:()I
            iadd
            istore 2 /* h */
         4: .line 372
      StackMap locals: int java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 1 /* u */
            invokevirtual java.net.URLStreamHandler.getHostAddress:(Ljava/net/URL;)Ljava/net/InetAddress;
            astore 4 /* addr */
        start local 4 // java.net.InetAddress addr
         5: .line 373
            aload 4 /* addr */
            ifnull 8
         6: .line 374
            iload 2 /* h */
            aload 4 /* addr */
            invokevirtual java.net.InetAddress.hashCode:()I
            iadd
            istore 2 /* h */
         7: .line 375
            goto 11
         8: .line 376
      StackMap locals: java.net.InetAddress
      StackMap stack:
            aload 1 /* u */
            invokevirtual java.net.URL.getHost:()Ljava/lang/String;
            astore 5 /* host */
        start local 5 // java.lang.String host
         9: .line 377
            aload 5 /* host */
            ifnull 11
        10: .line 378
            iload 2 /* h */
            aload 5 /* host */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            invokevirtual java.lang.String.hashCode:()I
            iadd
            istore 2 /* h */
        end local 5 // java.lang.String host
        11: .line 382
      StackMap locals:
      StackMap stack:
            aload 1 /* u */
            invokevirtual java.net.URL.getFile:()Ljava/lang/String;
            astore 5 /* file */
        start local 5 // java.lang.String file
        12: .line 383
            aload 5 /* file */
            ifnull 14
        13: .line 384
            iload 2 /* h */
            aload 5 /* file */
            invokevirtual java.lang.String.hashCode:()I
            iadd
            istore 2 /* h */
        14: .line 387
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* u */
            invokevirtual java.net.URL.getPort:()I
            iconst_m1
            if_icmpne 16
        15: .line 388
            iload 2 /* h */
            aload 0 /* this */
            invokevirtual java.net.URLStreamHandler.getDefaultPort:()I
            iadd
            istore 2 /* h */
            goto 17
        16: .line 390
      StackMap locals:
      StackMap stack:
            iload 2 /* h */
            aload 1 /* u */
            invokevirtual java.net.URL.getPort:()I
            iadd
            istore 2 /* h */
        17: .line 393
      StackMap locals:
      StackMap stack:
            aload 1 /* u */
            invokevirtual java.net.URL.getRef:()Ljava/lang/String;
            astore 6 /* ref */
        start local 6 // java.lang.String ref
        18: .line 394
            aload 6 /* ref */
            ifnull 20
        19: .line 395
            iload 2 /* h */
            aload 6 /* ref */
            invokevirtual java.lang.String.hashCode:()I
            iadd
            istore 2 /* h */
        20: .line 397
      StackMap locals: java.lang.String
      StackMap stack:
            iload 2 /* h */
            ireturn
        end local 6 // java.lang.String ref
        end local 5 // java.lang.String file
        end local 4 // java.net.InetAddress addr
        end local 3 // java.lang.String protocol
        end local 2 // int h
        end local 1 // java.net.URL u
        end local 0 // java.net.URLStreamHandler this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   21     0      this  Ljava/net/URLStreamHandler;
            0   21     1         u  Ljava/net/URL;
            1   21     2         h  I
            2   21     3  protocol  Ljava/lang/String;
            5   21     4      addr  Ljava/net/InetAddress;
            9   11     5      host  Ljava/lang/String;
           12   21     5      file  Ljava/lang/String;
           18   21     6       ref  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      u     

  protected boolean sameFile(java.net.URL, java.net.URL);
    descriptor: (Ljava/net/URL;Ljava/net/URL;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // java.net.URLStreamHandler this
        start local 1 // java.net.URL u1
        start local 2 // java.net.URL u2
         0: .line 413
            aload 1 /* u1 */
            invokevirtual java.net.URL.getProtocol:()Ljava/lang/String;
            aload 2 /* u2 */
            invokevirtual java.net.URL.getProtocol:()Ljava/lang/String;
            if_acmpeq 4
         1: .line 414
            aload 1 /* u1 */
            invokevirtual java.net.URL.getProtocol:()Ljava/lang/String;
            ifnull 3
         2: .line 415
            aload 1 /* u1 */
            invokevirtual java.net.URL.getProtocol:()Ljava/lang/String;
            aload 2 /* u2 */
            invokevirtual java.net.URL.getProtocol:()Ljava/lang/String;
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifne 4
         3: .line 416
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         4: .line 419
      StackMap locals:
      StackMap stack:
            aload 1 /* u1 */
            invokevirtual java.net.URL.getFile:()Ljava/lang/String;
            aload 2 /* u2 */
            invokevirtual java.net.URL.getFile:()Ljava/lang/String;
            if_acmpeq 7
         5: .line 420
            aload 1 /* u1 */
            invokevirtual java.net.URL.getFile:()Ljava/lang/String;
            ifnull 6
            aload 1 /* u1 */
            invokevirtual java.net.URL.getFile:()Ljava/lang/String;
            aload 2 /* u2 */
            invokevirtual java.net.URL.getFile:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 7
         6: .line 421
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         7: .line 425
      StackMap locals:
      StackMap stack:
            aload 1 /* u1 */
            invokevirtual java.net.URL.getPort:()I
            iconst_m1
            if_icmpeq 8
            aload 1 /* u1 */
            invokevirtual java.net.URL.getPort:()I
            goto 9
      StackMap locals:
      StackMap stack:
         8: aload 1 /* u1 */
            getfield java.net.URL.handler:Ljava/net/URLStreamHandler;
            invokevirtual java.net.URLStreamHandler.getDefaultPort:()I
      StackMap locals:
      StackMap stack: int
         9: istore 3 /* port1 */
        start local 3 // int port1
        10: .line 426
            aload 2 /* u2 */
            invokevirtual java.net.URL.getPort:()I
            iconst_m1
            if_icmpeq 11
            aload 2 /* u2 */
            invokevirtual java.net.URL.getPort:()I
            goto 12
      StackMap locals: int
      StackMap stack:
        11: aload 2 /* u2 */
            getfield java.net.URL.handler:Ljava/net/URLStreamHandler;
            invokevirtual java.net.URLStreamHandler.getDefaultPort:()I
      StackMap locals:
      StackMap stack: int
        12: istore 4 /* port2 */
        start local 4 // int port2
        13: .line 427
            iload 3 /* port1 */
            iload 4 /* port2 */
            if_icmpeq 15
        14: .line 428
            iconst_0
            ireturn
        15: .line 431
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* u1 */
            aload 2 /* u2 */
            invokevirtual java.net.URLStreamHandler.hostsEqual:(Ljava/net/URL;Ljava/net/URL;)Z
            ifne 17
        16: .line 432
            iconst_0
            ireturn
        17: .line 434
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 4 // int port2
        end local 3 // int port1
        end local 2 // java.net.URL u2
        end local 1 // java.net.URL u1
        end local 0 // java.net.URLStreamHandler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   18     0   this  Ljava/net/URLStreamHandler;
            0   18     1     u1  Ljava/net/URL;
            0   18     2     u2  Ljava/net/URL;
           10   18     3  port1  I
           13   18     4  port2  I
    MethodParameters:
      Name  Flags
      u1    
      u2    

  protected java.net.InetAddress getHostAddress(java.net.URL);
    descriptor: (Ljava/net/URL;)Ljava/net/InetAddress;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // java.net.URLStreamHandler this
        start local 1 // java.net.URL u
         0: .line 447
            aload 1 /* u */
            invokevirtual java.net.URL.getHostAddress:()Ljava/net/InetAddress;
            areturn
        end local 1 // java.net.URL u
        end local 0 // java.net.URLStreamHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/net/URLStreamHandler;
            0    1     1     u  Ljava/net/URL;
    MethodParameters:
      Name  Flags
      u     

  protected boolean hostsEqual(java.net.URL, java.net.URL);
    descriptor: (Ljava/net/URL;Ljava/net/URL;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // java.net.URLStreamHandler this
        start local 1 // java.net.URL u1
        start local 2 // java.net.URL u2
         0: .line 459
            aload 0 /* this */
            aload 1 /* u1 */
            invokevirtual java.net.URLStreamHandler.getHostAddress:(Ljava/net/URL;)Ljava/net/InetAddress;
            astore 3 /* a1 */
        start local 3 // java.net.InetAddress a1
         1: .line 460
            aload 0 /* this */
            aload 2 /* u2 */
            invokevirtual java.net.URLStreamHandler.getHostAddress:(Ljava/net/URL;)Ljava/net/InetAddress;
            astore 4 /* a2 */
        start local 4 // java.net.InetAddress a2
         2: .line 462
            aload 3 /* a1 */
            ifnull 4
            aload 4 /* a2 */
            ifnull 4
         3: .line 463
            aload 3 /* a1 */
            aload 4 /* a2 */
            invokevirtual java.net.InetAddress.equals:(Ljava/lang/Object;)Z
            ireturn
         4: .line 465
      StackMap locals: java.net.InetAddress java.net.InetAddress
      StackMap stack:
            aload 1 /* u1 */
            invokevirtual java.net.URL.getHost:()Ljava/lang/String;
            ifnull 6
            aload 2 /* u2 */
            invokevirtual java.net.URL.getHost:()Ljava/lang/String;
            ifnull 6
         5: .line 466
            aload 1 /* u1 */
            invokevirtual java.net.URL.getHost:()Ljava/lang/String;
            aload 2 /* u2 */
            invokevirtual java.net.URL.getHost:()Ljava/lang/String;
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ireturn
         6: .line 468
      StackMap locals:
      StackMap stack:
            aload 1 /* u1 */
            invokevirtual java.net.URL.getHost:()Ljava/lang/String;
            ifnonnull 7
            aload 2 /* u2 */
            invokevirtual java.net.URL.getHost:()Ljava/lang/String;
            ifnonnull 7
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         7: iconst_0
            ireturn
        end local 4 // java.net.InetAddress a2
        end local 3 // java.net.InetAddress a1
        end local 2 // java.net.URL u2
        end local 1 // java.net.URL u1
        end local 0 // java.net.URLStreamHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljava/net/URLStreamHandler;
            0    8     1    u1  Ljava/net/URL;
            0    8     2    u2  Ljava/net/URL;
            1    8     3    a1  Ljava/net/InetAddress;
            2    8     4    a2  Ljava/net/InetAddress;
    MethodParameters:
      Name  Flags
      u1    
      u2    

  protected java.lang.String toExternalForm(java.net.URL);
    descriptor: (Ljava/net/URL;)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // java.net.URLStreamHandler this
        start local 1 // java.net.URL u
         0: .line 480
            new java.lang.StringBuilder
            dup
            aload 1 /* u */
            invokevirtual java.net.URL.getProtocol:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         1: .line 481
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
         2: .line 482
            aload 1 /* u */
            invokevirtual java.net.URL.getAuthority:()Ljava/lang/String;
            dup
            astore 2 /* s */
        start local 2 // java.lang.String s
         3: ifnull 5
            aload 2 /* s */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 5
         4: .line 483
            new java.lang.StringBuilder
            dup
            ldc "//"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* s */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 6
      StackMap locals: java.net.URLStreamHandler java.net.URL java.lang.String
      StackMap stack: java.lang.StringBuilder
         5: ldc ""
         6: .line 482
      StackMap locals: java.net.URLStreamHandler java.net.URL java.lang.String
      StackMap stack: java.lang.StringBuilder java.lang.String
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 484
            aload 1 /* u */
            invokevirtual java.net.URL.getPath:()Ljava/lang/String;
            dup
            astore 2 /* s */
            ifnull 8
            aload 2 /* s */
            goto 9
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
         8: ldc ""
      StackMap locals: java.net.URLStreamHandler java.net.URL java.lang.String
      StackMap stack: java.lang.StringBuilder java.lang.String
         9: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        10: .line 485
            aload 1 /* u */
            invokevirtual java.net.URL.getQuery:()Ljava/lang/String;
            dup
            astore 2 /* s */
            ifnull 11
            new java.lang.StringBuilder
            dup
            bipush 63
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* s */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 12
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
        11: ldc ""
      StackMap locals: java.net.URLStreamHandler java.net.URL java.lang.String
      StackMap stack: java.lang.StringBuilder java.lang.String
        12: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        13: .line 486
            aload 1 /* u */
            invokevirtual java.net.URL.getRef:()Ljava/lang/String;
            dup
            astore 2 /* s */
            ifnull 14
            new java.lang.StringBuilder
            dup
            bipush 35
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* s */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 15
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
        14: ldc ""
      StackMap locals: java.net.URLStreamHandler java.net.URL java.lang.String
      StackMap stack: java.lang.StringBuilder java.lang.String
        15: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        16: .line 480
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.String s
        end local 1 // java.net.URL u
        end local 0 // java.net.URLStreamHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   17     0  this  Ljava/net/URLStreamHandler;
            0   17     1     u  Ljava/net/URL;
            3   17     2     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      u     

  protected void setURL(java.net.URL, java.lang.String, java.lang.String, int, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/net/URL;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=9, locals=11, args_size=10
        start local 0 // java.net.URLStreamHandler this
        start local 1 // java.net.URL u
        start local 2 // java.lang.String protocol
        start local 3 // java.lang.String host
        start local 4 // int port
        start local 5 // java.lang.String authority
        start local 6 // java.lang.String userInfo
        start local 7 // java.lang.String path
        start local 8 // java.lang.String query
        start local 9 // java.lang.String ref
         0: .line 510
            aload 0 /* this */
            aload 1 /* u */
            getfield java.net.URL.handler:Ljava/net/URLStreamHandler;
            if_acmpeq 2
         1: .line 511
            new java.lang.SecurityException
            dup
            ldc "handler for url different from this handler"
            invokespecial java.lang.SecurityException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 513
      StackMap locals:
      StackMap stack:
            aload 3 /* host */
            ifnull 5
            aload 1 /* u */
            aload 0 /* this */
            invokevirtual java.net.URL.isBuiltinStreamHandler:(Ljava/net/URLStreamHandler;)Z
            ifeq 5
         3: .line 514
            aload 3 /* host */
            invokestatic sun.net.util.IPAddressUtil.checkHostString:(Ljava/lang/String;)Ljava/lang/String;
            astore 10 /* s */
        start local 10 // java.lang.String s
         4: .line 515
            aload 10 /* s */
            ifnull 5
            new java.lang.IllegalArgumentException
            dup
            aload 10 /* s */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 10 // java.lang.String s
         5: .line 518
      StackMap locals:
      StackMap stack:
            aload 1 /* u */
            aload 1 /* u */
            invokevirtual java.net.URL.getProtocol:()Ljava/lang/String;
            aload 3 /* host */
            iload 4 /* port */
            aload 5 /* authority */
            aload 6 /* userInfo */
            aload 7 /* path */
            aload 8 /* query */
            aload 9 /* ref */
            invokevirtual java.net.URL.set:(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         6: .line 519
            return
        end local 9 // java.lang.String ref
        end local 8 // java.lang.String query
        end local 7 // java.lang.String path
        end local 6 // java.lang.String userInfo
        end local 5 // java.lang.String authority
        end local 4 // int port
        end local 3 // java.lang.String host
        end local 2 // java.lang.String protocol
        end local 1 // java.net.URL u
        end local 0 // java.net.URLStreamHandler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Ljava/net/URLStreamHandler;
            0    7     1          u  Ljava/net/URL;
            0    7     2   protocol  Ljava/lang/String;
            0    7     3       host  Ljava/lang/String;
            0    7     4       port  I
            0    7     5  authority  Ljava/lang/String;
            0    7     6   userInfo  Ljava/lang/String;
            0    7     7       path  Ljava/lang/String;
            0    7     8      query  Ljava/lang/String;
            0    7     9        ref  Ljava/lang/String;
            4    5    10          s  Ljava/lang/String;
    MethodParameters:
           Name  Flags
      u          
      protocol   
      host       
      port       
      authority  
      userInfo   
      path       
      query      
      ref        

  protected void setURL(java.net.URL, java.lang.String, java.lang.String, int, java.lang.String, java.lang.String);
    descriptor: (Ljava/net/URL;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=10, locals=12, args_size=7
        start local 0 // java.net.URLStreamHandler this
        start local 1 // java.net.URL u
        start local 2 // java.lang.String protocol
        start local 3 // java.lang.String host
        start local 4 // int port
        start local 5 // java.lang.String file
        start local 6 // java.lang.String ref
         0: .line 544
            aconst_null
            astore 7 /* authority */
        start local 7 // java.lang.String authority
         1: .line 545
            aconst_null
            astore 8 /* userInfo */
        start local 8 // java.lang.String userInfo
         2: .line 546
            aload 3 /* host */
            ifnull 10
            aload 3 /* host */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 10
         3: .line 547
            iload 4 /* port */
            iconst_m1
            if_icmpne 4
            aload 3 /* host */
            goto 5
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
         4: new java.lang.StringBuilder
            dup
            aload 3 /* host */
            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;
            iload 4 /* port */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         5: astore 7 /* authority */
         6: .line 548
            aload 3 /* host */
            bipush 64
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 9 /* at */
        start local 9 // int at
         7: .line 549
            iload 9 /* at */
            iconst_m1
            if_icmpeq 10
         8: .line 550
            aload 3 /* host */
            iconst_0
            iload 9 /* at */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 8 /* userInfo */
         9: .line 551
            aload 3 /* host */
            iload 9 /* at */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 3 /* host */
        end local 9 // int at
        10: .line 558
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 9 /* path */
        start local 9 // java.lang.String path
        11: .line 559
            aconst_null
            astore 10 /* query */
        start local 10 // java.lang.String query
        12: .line 560
            aload 5 /* file */
            ifnull 19
        13: .line 561
            aload 5 /* file */
            bipush 63
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 11 /* q */
        start local 11 // int q
        14: .line 562
            iload 11 /* q */
            iconst_m1
            if_icmpeq 18
        15: .line 563
            aload 5 /* file */
            iload 11 /* q */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 10 /* query */
        16: .line 564
            aload 5 /* file */
            iconst_0
            iload 11 /* q */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 9 /* path */
        17: .line 565
            goto 19
        18: .line 566
      StackMap locals: java.lang.String java.lang.String int
      StackMap stack:
            aload 5 /* file */
            astore 9 /* path */
        end local 11 // int q
        19: .line 568
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* u */
            aload 2 /* protocol */
            aload 3 /* host */
            iload 4 /* port */
            aload 7 /* authority */
            aload 8 /* userInfo */
            aload 9 /* path */
            aload 10 /* query */
            aload 6 /* ref */
            invokevirtual java.net.URLStreamHandler.setURL:(Ljava/net/URL;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        20: .line 569
            return
        end local 10 // java.lang.String query
        end local 9 // java.lang.String path
        end local 8 // java.lang.String userInfo
        end local 7 // java.lang.String authority
        end local 6 // java.lang.String ref
        end local 5 // java.lang.String file
        end local 4 // int port
        end local 3 // java.lang.String host
        end local 2 // java.lang.String protocol
        end local 1 // java.net.URL u
        end local 0 // java.net.URLStreamHandler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   21     0       this  Ljava/net/URLStreamHandler;
            0   21     1          u  Ljava/net/URL;
            0   21     2   protocol  Ljava/lang/String;
            0   21     3       host  Ljava/lang/String;
            0   21     4       port  I
            0   21     5       file  Ljava/lang/String;
            0   21     6        ref  Ljava/lang/String;
            1   21     7  authority  Ljava/lang/String;
            2   21     8   userInfo  Ljava/lang/String;
            7   10     9         at  I
           11   21     9       path  Ljava/lang/String;
           12   21    10      query  Ljava/lang/String;
           14   19    11          q  I
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
          Name  Flags
      u         
      protocol  
      host      
      port      
      file      
      ref       
}
SourceFile: "URLStreamHandler.java"