class sun.misc.URLClassPath$FileLoader extends sun.misc.URLClassPath$Loader
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: sun.misc.URLClassPath$FileLoader
  super_class: sun.misc.URLClassPath$Loader
{
  private java.io.File dir;
    descriptor: Ljava/io/File;
    flags: (0x0002) ACC_PRIVATE

  void <init>(java.net.URL);
    descriptor: (Ljava/net/URL;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // sun.misc.URLClassPath$FileLoader this
        start local 1 // java.net.URL url
         0: .line 1331
            aload 0 /* this */
            aload 1 /* url */
            invokespecial sun.misc.URLClassPath$Loader.<init>:(Ljava/net/URL;)V
         1: .line 1332
            ldc "file"
            aload 1 /* url */
            invokevirtual java.net.URL.getProtocol:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 3
         2: .line 1333
            new java.lang.IllegalArgumentException
            dup
            ldc "url"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 1335
      StackMap locals: sun.misc.URLClassPath$FileLoader java.net.URL
      StackMap stack:
            aload 1 /* url */
            invokevirtual java.net.URL.getFile:()Ljava/lang/String;
            bipush 47
            getstatic java.io.File.separatorChar:C
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            astore 2 /* path */
        start local 2 // java.lang.String path
         4: .line 1336
            aload 2 /* path */
            invokestatic sun.net.www.ParseUtil.decode:(Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* path */
         5: .line 1337
            aload 0 /* this */
            new java.io.File
            dup
            aload 2 /* path */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.getCanonicalFile:()Ljava/io/File;
            putfield sun.misc.URLClassPath$FileLoader.dir:Ljava/io/File;
         6: .line 1338
            return
        end local 2 // java.lang.String path
        end local 1 // java.net.URL url
        end local 0 // sun.misc.URLClassPath$FileLoader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lsun/misc/URLClassPath$FileLoader;
            0    7     1   url  Ljava/net/URL;
            4    7     2  path  Ljava/lang/String;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      url   

  java.net.URL findResource(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)Ljava/net/URL;
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // sun.misc.URLClassPath$FileLoader this
        start local 1 // java.lang.String name
        start local 2 // boolean check
         0: .line 1344
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* check */
            invokevirtual sun.misc.URLClassPath$FileLoader.getResource:(Ljava/lang/String;Z)Lsun/misc/Resource;
            astore 3 /* rsc */
        start local 3 // sun.misc.Resource rsc
         1: .line 1345
            aload 3 /* rsc */
            ifnull 3
         2: .line 1346
            aload 3 /* rsc */
            invokevirtual sun.misc.Resource.getURL:()Ljava/net/URL;
            areturn
         3: .line 1348
      StackMap locals: sun.misc.Resource
      StackMap stack:
            aconst_null
            areturn
        end local 3 // sun.misc.Resource rsc
        end local 2 // boolean check
        end local 1 // java.lang.String name
        end local 0 // sun.misc.URLClassPath$FileLoader this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lsun/misc/URLClassPath$FileLoader;
            0    4     1   name  Ljava/lang/String;
            0    4     2  check  Z
            1    4     3    rsc  Lsun/misc/Resource;
    MethodParameters:
       Name  Flags
      name   final
      check  

  sun.misc.Resource getResource(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)Lsun/misc/Resource;
    flags: (0x0000) 
    Code:
      stack=6, locals=6, args_size=3
        start local 0 // sun.misc.URLClassPath$FileLoader this
        start local 1 // java.lang.String name
        start local 2 // boolean check
         0: .line 1354
            new java.net.URL
            dup
            aload 0 /* this */
            invokevirtual sun.misc.URLClassPath$FileLoader.getBaseURL:()Ljava/net/URL;
            ldc "."
            invokespecial java.net.URL.<init>:(Ljava/net/URL;Ljava/lang/String;)V
            astore 4 /* normalizedBase */
        start local 4 // java.net.URL normalizedBase
         1: .line 1355
            new java.net.URL
            dup
            aload 0 /* this */
            invokevirtual sun.misc.URLClassPath$FileLoader.getBaseURL:()Ljava/net/URL;
            aload 1 /* name */
            iconst_0
            invokestatic sun.net.www.ParseUtil.encodePath:(Ljava/lang/String;Z)Ljava/lang/String;
            invokespecial java.net.URL.<init>:(Ljava/net/URL;Ljava/lang/String;)V
            astore 3 /* url */
        start local 3 // java.net.URL url
         2: .line 1357
            aload 3 /* url */
            invokevirtual java.net.URL.getFile:()Ljava/lang/String;
            aload 4 /* normalizedBase */
            invokevirtual java.net.URL.getFile:()Ljava/lang/String;
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 4
         3: .line 1359
            aconst_null
            areturn
         4: .line 1362
      StackMap locals: java.net.URL java.net.URL
      StackMap stack:
            iload 2 /* check */
            ifeq 6
         5: .line 1363
            aload 3 /* url */
            invokestatic sun.misc.URLClassPath.check:(Ljava/net/URL;)V
         6: .line 1366
      StackMap locals:
      StackMap stack:
            aload 1 /* name */
            ldc ".."
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            iconst_m1
            if_icmpeq 12
         7: .line 1367
            new java.io.File
            dup
            aload 0 /* this */
            getfield sun.misc.URLClassPath$FileLoader.dir:Ljava/io/File;
            aload 1 /* name */
            bipush 47
            getstatic java.io.File.separatorChar:C
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
         8: .line 1368
            invokevirtual java.io.File.getCanonicalFile:()Ljava/io/File;
         9: .line 1367
            astore 5 /* file */
        start local 5 // java.io.File file
        10: .line 1369
            aload 5 /* file */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            aload 0 /* this */
            getfield sun.misc.URLClassPath$FileLoader.dir:Ljava/io/File;
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 13
        11: .line 1371
            aconst_null
            areturn
        end local 5 // java.io.File file
        12: .line 1374
      StackMap locals:
      StackMap stack:
            new java.io.File
            dup
            aload 0 /* this */
            getfield sun.misc.URLClassPath$FileLoader.dir:Ljava/io/File;
            aload 1 /* name */
            bipush 47
            getstatic java.io.File.separatorChar:C
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 5 /* file */
        start local 5 // java.io.File file
        13: .line 1377
      StackMap locals: java.io.File
      StackMap stack:
            aload 5 /* file */
            invokevirtual java.io.File.exists:()Z
            ifeq 18
        14: .line 1378
            new sun.misc.URLClassPath$FileLoader$1
            dup
            aload 0 /* this */
            aload 1 /* name */
            aload 3 /* url */
            aload 5 /* file */
            invokespecial sun.misc.URLClassPath$FileLoader$1.<init>:(Lsun/misc/URLClassPath$FileLoader;Ljava/lang/String;Ljava/net/URL;Ljava/io/File;)V
        15: areturn
        end local 5 // java.io.File file
        end local 4 // java.net.URL normalizedBase
        end local 3 // java.net.URL url
        16: .line 1388
      StackMap locals: sun.misc.URLClassPath$FileLoader java.lang.String int
      StackMap stack: java.lang.Exception
            pop
        17: .line 1389
            aconst_null
            areturn
        start local 3 // java.net.URL url
        18: .line 1391
      StackMap locals: java.net.URL
      StackMap stack:
            aconst_null
            areturn
        end local 3 // java.net.URL url
        end local 2 // boolean check
        end local 1 // java.lang.String name
        end local 0 // sun.misc.URLClassPath$FileLoader this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   19     0            this  Lsun/misc/URLClassPath$FileLoader;
            0   19     1            name  Ljava/lang/String;
            0   19     2           check  Z
            2   16     3             url  Ljava/net/URL;
           18   19     3             url  Ljava/net/URL;
            1   16     4  normalizedBase  Ljava/net/URL;
           10   12     5            file  Ljava/io/File;
           13   16     5            file  Ljava/io/File;
      Exception table:
        from    to  target  type
           0     3      16  Class java.lang.Exception
           4    11      16  Class java.lang.Exception
          12    15      16  Class java.lang.Exception
    MethodParameters:
       Name  Flags
      name   final
      check  
}
SourceFile: "URLClassPath.java"
NestHost: sun.misc.URLClassPath
InnerClasses:
  private FileLoader = sun.misc.URLClassPath$FileLoader of sun.misc.URLClassPath
  sun.misc.URLClassPath$FileLoader$1
  private Loader = sun.misc.URLClassPath$Loader of sun.misc.URLClassPath