abstract class jdk.nashorn.internal.runtime.NashornLoader extends java.security.SecureClassLoader
  minor version: 0
  major version: 59
  flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
  this_class: jdk.nashorn.internal.runtime.NashornLoader
  super_class: java.security.SecureClassLoader
{
  protected static final java.lang.String OBJECTS_PKG;
    descriptor: Ljava/lang/String;
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: "jdk.nashorn.internal.objects"

  protected static final java.lang.String RUNTIME_PKG;
    descriptor: Ljava/lang/String;
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: "jdk.nashorn.internal.runtime"

  protected static final java.lang.String RUNTIME_ARRAYS_PKG;
    descriptor: Ljava/lang/String;
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: "jdk.nashorn.internal.runtime.arrays"

  protected static final java.lang.String RUNTIME_LINKER_PKG;
    descriptor: Ljava/lang/String;
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: "jdk.nashorn.internal.runtime.linker"

  protected static final java.lang.String SCRIPTS_PKG;
    descriptor: Ljava/lang/String;
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: "jdk.nashorn.internal.scripts"

  protected static final java.lang.String OBJECTS_PKG_INTERNAL;
    descriptor: Ljava/lang/String;
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: "jdk/nashorn/internal/objects"

  protected static final java.lang.String RUNTIME_PKG_INTERNAL;
    descriptor: Ljava/lang/String;
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: "jdk/nashorn/internal/runtime"

  protected static final java.lang.String RUNTIME_ARRAYS_PKG_INTERNAL;
    descriptor: Ljava/lang/String;
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: "jdk/nashorn/internal/runtime/arrays"

  protected static final java.lang.String RUNTIME_LINKER_PKG_INTERNAL;
    descriptor: Ljava/lang/String;
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: "jdk/nashorn/internal/runtime/linker"

  protected static final java.lang.String SCRIPTS_PKG_INTERNAL;
    descriptor: Ljava/lang/String;
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: "jdk/nashorn/internal/scripts"

  static final java.lang.Module NASHORN_MODULE;
    descriptor: Ljava/lang/Module;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  private static final java.security.Permission[] SCRIPT_PERMISSIONS;
    descriptor: [Ljava/security/Permission;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.String MODULE_MANIPULATOR_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "jdk.nashorn.internal.scripts.ModuleGraphManipulator"

  private static final byte[] MODULE_MANIPULATOR_BYTES;
    descriptor: [B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private java.lang.reflect.Method addModuleExport;
    descriptor: Ljava/lang/reflect/Method;
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=0, args_size=0
         0: .line 60
            ldc Ljdk/nashorn/internal/runtime/Context;
            invokevirtual java.lang.Class.getModule:()Ljava/lang/Module;
            putstatic jdk.nashorn.internal.runtime.NashornLoader.NASHORN_MODULE:Ljava/lang/Module;
         1: .line 65
            invokestatic jdk.nashorn.internal.runtime.NashornLoader.readModuleManipulatorBytes:()[B
            putstatic jdk.nashorn.internal.runtime.NashornLoader.MODULE_MANIPULATOR_BYTES:[B
         2: .line 75
            iconst_5
            anewarray java.security.Permission
            dup
            iconst_0
         3: .line 76
            new java.lang.RuntimePermission
            dup
            ldc "accessClassInPackage.jdk.nashorn.internal.runtime"
            invokespecial java.lang.RuntimePermission.<init>:(Ljava/lang/String;)V
            aastore
            dup
            iconst_1
         4: .line 77
            new java.lang.RuntimePermission
            dup
            ldc "accessClassInPackage.jdk.nashorn.internal.runtime.linker"
            invokespecial java.lang.RuntimePermission.<init>:(Ljava/lang/String;)V
            aastore
            dup
            iconst_2
         5: .line 78
            new java.lang.RuntimePermission
            dup
            ldc "accessClassInPackage.jdk.nashorn.internal.objects"
            invokespecial java.lang.RuntimePermission.<init>:(Ljava/lang/String;)V
            aastore
            dup
            iconst_3
         6: .line 79
            new java.lang.RuntimePermission
            dup
            ldc "accessClassInPackage.jdk.nashorn.internal.scripts"
            invokespecial java.lang.RuntimePermission.<init>:(Ljava/lang/String;)V
            aastore
            dup
            iconst_4
         7: .line 80
            new java.lang.RuntimePermission
            dup
            ldc "accessClassInPackage.jdk.nashorn.internal.runtime.arrays"
            invokespecial java.lang.RuntimePermission.<init>:(Ljava/lang/String;)V
            aastore
         8: .line 75
            putstatic jdk.nashorn.internal.runtime.NashornLoader.SCRIPT_PERMISSIONS:[Ljava/security/Permission;
         9: .line 82
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(java.lang.ClassLoader);
    descriptor: (Ljava/lang/ClassLoader;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.runtime.NashornLoader this
        start local 1 // java.lang.ClassLoader parent
         0: .line 89
            aload 0 /* this */
            aload 1 /* parent */
            invokespecial java.security.SecureClassLoader.<init>:(Ljava/lang/ClassLoader;)V
         1: .line 90
            return
        end local 1 // java.lang.ClassLoader parent
        end local 0 // jdk.nashorn.internal.runtime.NashornLoader this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Ljdk/nashorn/internal/runtime/NashornLoader;
            0    2     1  parent  Ljava/lang/ClassLoader;
    MethodParameters:
        Name  Flags
      parent  final

  void loadModuleManipulator();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // jdk.nashorn.internal.runtime.NashornLoader this
         0: .line 93
            aload 0 /* this */
            ldc "jdk.nashorn.internal.scripts.ModuleGraphManipulator"
         1: .line 94
            getstatic jdk.nashorn.internal.runtime.NashornLoader.MODULE_MANIPULATOR_BYTES:[B
            iconst_0
            getstatic jdk.nashorn.internal.runtime.NashornLoader.MODULE_MANIPULATOR_BYTES:[B
            arraylength
         2: .line 93
            invokevirtual jdk.nashorn.internal.runtime.NashornLoader.defineClass:(Ljava/lang/String;[BII)Ljava/lang/Class;
            astore 1 /* clazz */
        start local 1 // java.lang.Class clazz
         3: .line 97
            ldc "jdk.nashorn.internal.scripts.ModuleGraphManipulator"
            iconst_1
            aload 0 /* this */
            invokestatic java.lang.Class.forName:(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
            pop
         4: .line 98
            goto 7
      StackMap locals: jdk.nashorn.internal.runtime.NashornLoader java.lang.Class
      StackMap stack: java.lang.Exception
         5: astore 2 /* ex */
        start local 2 // java.lang.Exception ex
         6: .line 99
            new java.lang.RuntimeException
            dup
            aload 2 /* ex */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.lang.Exception ex
         7: .line 101
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* clazz */
            invokedynamic run(Ljdk/nashorn/internal/runtime/NashornLoader;Ljava/lang/Class;)Ljava/security/PrivilegedAction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  jdk/nashorn/internal/runtime/NashornLoader.lambda$0(Ljava/lang/Class;)Ljava/lang/Void; (7)
                  ()Ljava/lang/Void;
            astore 2 /* pa */
        start local 2 // java.security.PrivilegedAction pa
         8: .line 110
            aload 2 /* pa */
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
         9: .line 111
            return
        end local 2 // java.security.PrivilegedAction pa
        end local 1 // java.lang.Class clazz
        end local 0 // jdk.nashorn.internal.runtime.NashornLoader this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0   this  Ljdk/nashorn/internal/runtime/NashornLoader;
            3   10     1  clazz  Ljava/lang/Class<*>;
            6    7     2     ex  Ljava/lang/Exception;
            8   10     2     pa  Ljava/security/PrivilegedAction<Ljava/lang/Void;>;
      Exception table:
        from    to  target  type
           3     4       5  Class java.lang.Exception

  final void addModuleExport(java.lang.Module);
    descriptor: (Ljava/lang/Module;)V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // jdk.nashorn.internal.runtime.NashornLoader this
        start local 1 // java.lang.Module to
         0: .line 115
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.NashornLoader.addModuleExport:Ljava/lang/reflect/Method;
            aconst_null
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* to */
            aastore
            invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 116
            goto 4
         2: .line 118
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 2 /* ex */
        start local 2 // java.lang.Exception ex
         3: .line 119
            new java.lang.RuntimeException
            dup
            aload 2 /* ex */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.lang.Exception ex
         4: .line 121
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Module to
        end local 0 // jdk.nashorn.internal.runtime.NashornLoader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljdk/nashorn/internal/runtime/NashornLoader;
            0    5     1    to  Ljava/lang/Module;
            3    4     2    ex  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.IllegalAccessException
           0     1       2  Class java.lang.IllegalArgumentException
           0     1       2  Class java.lang.reflect.InvocationTargetException
    MethodParameters:
      Name  Flags
      to    final

  protected static void checkPackageAccess(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // java.lang.String name
         0: .line 124
            aload 0 /* name */
            bipush 46
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 1 /* i */
        start local 1 // int i
         1: .line 125
            iload 1 /* i */
            iconst_m1
            if_icmpeq 12
         2: .line 126
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 2 /* sm */
        start local 2 // java.lang.SecurityManager sm
         3: .line 127
            aload 2 /* sm */
            ifnull 12
         4: .line 128
            aload 0 /* name */
            iconst_0
            iload 1 /* i */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 3 /* pkgName */
        start local 3 // java.lang.String pkgName
         5: .line 129
            aload 3 /* pkgName */
            dup
            astore 4
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 5
          -1427089809: 6
          -1051537505: 7
           -342733909: 8
             69590425: 9
            376089222: 10
              default: 11
          }
      StackMap locals: java.lang.String int java.lang.SecurityManager java.lang.String java.lang.String
      StackMap stack:
         6: aload 4
            ldc "jdk.nashorn.internal.runtime"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 12
            goto 11
      StackMap locals:
      StackMap stack:
         7: aload 4
            ldc "jdk.nashorn.internal.scripts"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 12
            goto 11
      StackMap locals:
      StackMap stack:
         8: aload 4
            ldc "jdk.nashorn.internal.objects"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 12
            goto 11
      StackMap locals:
      StackMap stack:
         9: aload 4
            ldc "jdk.nashorn.internal.runtime.arrays"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 12
            goto 11
      StackMap locals:
      StackMap stack:
        10: aload 4
            ldc "jdk.nashorn.internal.runtime.linker"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 12
        11: .line 138
      StackMap locals:
      StackMap stack:
            aload 2 /* sm */
            aload 3 /* pkgName */
            invokevirtual java.lang.SecurityManager.checkPackageAccess:(Ljava/lang/String;)V
        end local 3 // java.lang.String pkgName
        end local 2 // java.lang.SecurityManager sm
        12: .line 142
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int i
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   13     0     name  Ljava/lang/String;
            1   13     1        i  I
            3   12     2       sm  Ljava/lang/SecurityManager;
            5   12     3  pkgName  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  final

  protected java.security.PermissionCollection getPermissions(java.security.CodeSource);
    descriptor: (Ljava/security/CodeSource;)Ljava/security/PermissionCollection;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=7, args_size=2
        start local 0 // jdk.nashorn.internal.runtime.NashornLoader this
        start local 1 // java.security.CodeSource codesource
         0: .line 146
            new java.security.Permissions
            dup
            invokespecial java.security.Permissions.<init>:()V
            astore 2 /* permCollection */
        start local 2 // java.security.Permissions permCollection
         1: .line 147
            getstatic jdk.nashorn.internal.runtime.NashornLoader.SCRIPT_PERMISSIONS:[Ljava/security/Permission;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 5
      StackMap locals: jdk.nashorn.internal.runtime.NashornLoader java.security.CodeSource java.security.Permissions top int int java.security.Permission[]
      StackMap stack:
         2: aload 6
            iload 4
            aaload
            astore 3 /* perm */
        start local 3 // java.security.Permission perm
         3: .line 148
            aload 2 /* permCollection */
            aload 3 /* perm */
            invokevirtual java.security.Permissions.add:(Ljava/security/Permission;)V
        end local 3 // java.security.Permission perm
         4: .line 147
            iinc 4 1
      StackMap locals:
      StackMap stack:
         5: iload 4
            iload 5
            if_icmplt 2
         6: .line 150
            aload 2 /* permCollection */
            areturn
        end local 2 // java.security.Permissions permCollection
        end local 1 // java.security.CodeSource codesource
        end local 0 // jdk.nashorn.internal.runtime.NashornLoader this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    7     0            this  Ljdk/nashorn/internal/runtime/NashornLoader;
            0    7     1      codesource  Ljava/security/CodeSource;
            1    7     2  permCollection  Ljava/security/Permissions;
            3    4     3            perm  Ljava/security/Permission;
    MethodParameters:
            Name  Flags
      codesource  final

  static java.lang.ClassLoader createClassLoader(java.lang.String, java.lang.ClassLoader);
    descriptor: (Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/ClassLoader;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.lang.String classPath
        start local 1 // java.lang.ClassLoader parent
         0: .line 160
            aload 0 /* classPath */
            invokestatic jdk.nashorn.internal.runtime.NashornLoader.pathToURLs:(Ljava/lang/String;)[Ljava/net/URL;
            astore 2 /* urls */
        start local 2 // java.net.URL[] urls
         1: .line 161
            aload 2 /* urls */
            aload 1 /* parent */
            invokestatic java.net.URLClassLoader.newInstance:([Ljava/net/URL;Ljava/lang/ClassLoader;)Ljava/net/URLClassLoader;
            areturn
        end local 2 // java.net.URL[] urls
        end local 1 // java.lang.ClassLoader parent
        end local 0 // java.lang.String classPath
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0  classPath  Ljava/lang/String;
            0    2     1     parent  Ljava/lang/ClassLoader;
            1    2     2       urls  [Ljava/net/URL;
    MethodParameters:
           Name  Flags
      classPath  final
      parent     final

  private static java.net.URL[] pathToURLs(java.lang.String);
    descriptor: (Ljava/lang/String;)[Ljava/net/URL;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // java.lang.String path
         0: .line 172
            aload 0 /* path */
            getstatic java.io.File.pathSeparator:Ljava/lang/String;
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            astore 1 /* components */
        start local 1 // java.lang.String[] components
         1: .line 173
            aload 1 /* components */
            arraylength
            anewarray java.net.URL
            astore 2 /* urls */
        start local 2 // java.net.URL[] urls
         2: .line 174
            iconst_0
            istore 3 /* count */
        start local 3 // int count
         3: .line 175
            goto 7
         4: .line 176
      StackMap locals: java.lang.String[] java.net.URL[] int
      StackMap stack:
            new java.io.File
            dup
            aload 1 /* components */
            iload 3 /* count */
            aaload
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokestatic jdk.nashorn.internal.runtime.NashornLoader.fileToURL:(Ljava/io/File;)Ljava/net/URL;
            astore 4 /* url */
        start local 4 // java.net.URL url
         5: .line 177
            aload 4 /* url */
            ifnull 7
         6: .line 178
            aload 2 /* urls */
            iload 3 /* count */
            iinc 3 /* count */ 1
            aload 4 /* url */
            aastore
        end local 4 // java.net.URL url
         7: .line 175
      StackMap locals:
      StackMap stack:
            iload 3 /* count */
            aload 1 /* components */
            arraylength
            if_icmplt 4
         8: .line 181
            aload 2 /* urls */
            arraylength
            iload 3 /* count */
            if_icmpeq 12
         9: .line 182
            iload 3 /* count */
            anewarray java.net.URL
            astore 4 /* tmp */
        start local 4 // java.net.URL[] tmp
        10: .line 183
            aload 2 /* urls */
            iconst_0
            aload 4 /* tmp */
            iconst_0
            iload 3 /* count */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        11: .line 184
            aload 4 /* tmp */
            astore 2 /* urls */
        end local 4 // java.net.URL[] tmp
        12: .line 186
      StackMap locals:
      StackMap stack:
            aload 2 /* urls */
            areturn
        end local 3 // int count
        end local 2 // java.net.URL[] urls
        end local 1 // java.lang.String[] components
        end local 0 // java.lang.String path
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   13     0        path  Ljava/lang/String;
            1   13     1  components  [Ljava/lang/String;
            2   13     2        urls  [Ljava/net/URL;
            3   13     3       count  I
            5    7     4         url  Ljava/net/URL;
           10   12     4         tmp  [Ljava/net/URL;
    MethodParameters:
      Name  Flags
      path  final

  private static java.net.URL fileToURL(java.io.File);
    descriptor: (Ljava/io/File;)Ljava/net/URL;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // java.io.File file
         0: .line 199
            aload 0 /* file */
            invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
            astore 1 /* name */
        start local 1 // java.lang.String name
         1: .line 200
            goto 4
        end local 1 // java.lang.String name
      StackMap locals:
      StackMap stack: java.io.IOException
         2: pop
         3: .line 201
            aload 0 /* file */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            astore 1 /* name */
        start local 1 // java.lang.String name
         4: .line 203
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* name */
            getstatic java.io.File.separatorChar:C
            bipush 47
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            astore 1 /* name */
         5: .line 204
            aload 1 /* name */
            ldc "/"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 7
         6: .line 205
            new java.lang.StringBuilder
            dup
            ldc "/"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* name */
         7: .line 208
      StackMap locals:
      StackMap stack:
            aload 0 /* file */
            invokevirtual java.io.File.isFile:()Z
            ifne 9
         8: .line 209
            new java.lang.StringBuilder
            dup
            aload 1 /* name */
            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 /* name */
         9: .line 212
      StackMap locals:
      StackMap stack:
            new java.net.URL
            dup
            ldc "file"
            ldc ""
            aload 1 /* name */
            invokespecial java.net.URL.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        10: areturn
        11: .line 213
      StackMap locals:
      StackMap stack: java.net.MalformedURLException
            pop
        12: .line 214
            new java.lang.IllegalArgumentException
            dup
            ldc "file"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // java.lang.String name
        end local 0 // java.io.File file
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  file  Ljava/io/File;
            1    2     1  name  Ljava/lang/String;
            4   13     1  name  Ljava/lang/String;
      Exception table:
        from    to  target  type
           0     1       2  Class java.io.IOException
           9    10      11  Class java.net.MalformedURLException
    MethodParameters:
      Name  Flags
      file  final

  private static byte[] readModuleManipulatorBytes();
    descriptor: ()[B
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=0
         0: .line 219
            invokedynamic run()Ljava/security/PrivilegedAction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  jdk/nashorn/internal/runtime/NashornLoader.lambda$1()[B (6)
                  ()[B
            astore 0 /* pa */
        start local 0 // java.security.PrivilegedAction pa
         1: .line 227
            aload 0 /* pa */
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast byte[]
            areturn
        end local 0 // java.security.PrivilegedAction pa
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1    2     0    pa  Ljava/security/PrivilegedAction<[B>;

  private java.lang.Void lambda$0(java.lang.Class);
    descriptor: (Ljava/lang/Class;)Ljava/lang/Void;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=7, locals=3, args_size=2
        start local 0 // jdk.nashorn.internal.runtime.NashornLoader this
         0: .line 103
            aload 0 /* this */
            aload 1
            ldc "addExport"
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Module;
            aastore
            invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
            putfield jdk.nashorn.internal.runtime.NashornLoader.addModuleExport:Ljava/lang/reflect/Method;
         1: .line 104
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.NashornLoader.addModuleExport:Ljava/lang/reflect/Method;
            iconst_1
            invokevirtual java.lang.reflect.Method.setAccessible:(Z)V
         2: .line 105
            goto 5
      StackMap locals:
      StackMap stack: java.lang.Exception
         3: astore 2 /* ex */
        start local 2 // java.lang.Exception ex
         4: .line 106
            new java.lang.RuntimeException
            dup
            aload 2 /* ex */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.lang.Exception ex
         5: .line 108
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // jdk.nashorn.internal.runtime.NashornLoader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljdk/nashorn/internal/runtime/NashornLoader;
            4    5     2    ex  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0     2       3  Class java.lang.NoSuchMethodException
           0     2       3  Class java.lang.SecurityException

  private static byte[] lambda$1();
    descriptor: ()[B
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=0
         0: .line 220
            new java.lang.StringBuilder
            dup
            ldc "/"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "jdk.nashorn.internal.scripts.ModuleGraphManipulator"
            bipush 46
            bipush 47
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ".class"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 0 /* res */
        start local 0 // java.lang.String res
         1: .line 221
            aconst_null
            astore 1
            aconst_null
            astore 2
         2: ldc Ljdk/nashorn/internal/runtime/NashornLoader;
            aload 0 /* res */
            invokevirtual java.lang.Class.getResourceAsStream:(Ljava/lang/String;)Ljava/io/InputStream;
            astore 3 /* in */
        start local 3 // java.io.InputStream in
         3: .line 222
            aload 3 /* in */
            invokevirtual java.io.InputStream.readAllBytes:()[B
         4: .line 223
            aload 3 /* in */
            ifnull 5
            aload 3 /* in */
            invokevirtual java.io.InputStream.close:()V
         5: .line 222
      StackMap locals: java.lang.String java.lang.Throwable java.lang.Throwable java.io.InputStream
      StackMap stack: byte[]
            areturn
      StackMap locals:
      StackMap stack: java.lang.Throwable
         6: astore 1
         7: .line 223
            aload 3 /* in */
            ifnull 8
            aload 3 /* in */
            invokevirtual java.io.InputStream.close:()V
        end local 3 // java.io.InputStream in
      StackMap locals:
      StackMap stack:
         8: aload 1
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
         9: astore 2
            aload 1
            ifnonnull 10
            aload 2
            astore 1
            goto 11
      StackMap locals:
      StackMap stack:
        10: aload 1
            aload 2
            if_acmpeq 11
            aload 1
            aload 2
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        11: aload 1
            athrow
      StackMap locals: java.lang.String
      StackMap stack: java.io.IOException
        12: astore 1 /* exp */
        start local 1 // java.io.IOException exp
        13: .line 224
            new java.io.UncheckedIOException
            dup
            aload 1 /* exp */
            invokespecial java.io.UncheckedIOException.<init>:(Ljava/io/IOException;)V
            athrow
        end local 1 // java.io.IOException exp
        end local 0 // java.lang.String res
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1   14     0   res  Ljava/lang/String;
            3    8     3    in  Ljava/io/InputStream;
           13   14     1   exp  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           3     4       6  any
           2     5       9  any
           6     9       9  any
           1     5      12  Class java.io.IOException
           6    12      12  Class java.io.IOException
}
SourceFile: "NashornLoader.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles