yolo
diff --git a/src/library_fs.js b/src/library_fs.js
index 7575f93..e7eb490 100644
--- a/src/library_fs.js
+++ b/src/library_fs.js
@@ -86,10 +86,6 @@
 });
 FS.FSNode = FSNode;
 FS.staticInit();` +
-#if USE_CLOSURE_COMPILER
-           // Declare variable for Closure, FS.createPreloadedFile() below calls Browser.handledByPreloadPlugin()
-           '/**@suppress {duplicate, undefinedVars}*/var Browser;' +
-#endif
            // Get module methods from settings
            '{{{ EXPORTED_RUNTIME_METHODS.filter(function(func) { return func.substr(0, 3) === 'FS_' }).map(function(func){return 'Module["' + func + '"] = FS.' + func.substr(3) + ";"}).reduce(function(str, func){return str + func;}, '') }}}';
   },
@@ -1881,7 +1877,7 @@
           if (onload) onload();
           removeRunDependency(dep);
         }
-        if (Browser.handledByPreloadPlugin(byteArray, fullname, finish, () => {
+        if (handledByPreloadPlugin(byteArray, fullname, finish, () => {
           if (onerror) onerror();
           removeRunDependency(dep);
         })) {
diff --git a/src/library_lz4.js b/src/library_lz4.js
index 62cc01c..c650aa9 100644
--- a/src/library_lz4.js
+++ b/src/library_lz4.js
@@ -48,24 +48,26 @@
       // Abstracting out the common parts seems to be more effort than it is
       // worth.
       if (preloadPlugin) {
-        Browser.init();
-        pack['metadata'].files.forEach(function(file) {
-          var handled = false;
-          var fullname = file.filename;
-          Module['preloadPlugins'].forEach(function(plugin) {
-            if (handled) return;
-            if (plugin['canHandle'](fullname)) {
-              var dep = getUniqueRunDependency('fp ' + fullname);
-              addRunDependency(dep);
-              var finish = function() {
-                removeRunDependency(dep);
+        if (typeof Browser !== 'undefined') {
+          Browser.init();
+          pack['metadata'].files.forEach(function(file) {
+            var handled = false;
+            var fullname = file.filename;
+            Module['preloadPlugins'].forEach(function(plugin) {
+              if (handled) return;
+              if (plugin['canHandle'](fullname)) {
+                var dep = getUniqueRunDependency('fp ' + fullname);
+                addRunDependency(dep);
+                var finish = function() {
+                  removeRunDependency(dep);
+                }
+                var byteArray = FS.readFile(fullname);
+                plugin['handle'](byteArray, fullname, finish, finish);
+                handled = true;
               }
-              var byteArray = FS.readFile(fullname);
-              plugin['handle'](byteArray, fullname, finish, finish);
-              handled = true;
-            }
+            });
           });
-        });
+        }
       }
     },
     createNode: function (parent, name, mode, dev, contents, mtime) {
diff --git a/src/library_wasmfs.js b/src/library_wasmfs.js
index 2af09d7..a15cf30 100644
--- a/src/library_wasmfs.js
+++ b/src/library_wasmfs.js
@@ -7,10 +7,6 @@
 mergeInto(LibraryManager.library, {
   $wasmFSPreloadedFiles: [],
   $wasmFSPreloadedDirs: [],
-#if USE_CLOSURE_COMPILER
-  // Declare variable for Closure, FS.createPreloadedFile() below calls Browser.handledByPreloadPlugin()
-  $FS__postset: '/**@suppress {duplicate, undefinedVars}*/var Browser;',
-#endif
   $FS__deps: [
     '$wasmFSPreloadedFiles',
     '$wasmFSPreloadedDirs',
@@ -36,14 +32,12 @@
           if (onload) onload();
           removeRunDependency(dep);
         }
-#if !MINIMAL_RUNTIME
-        if (Browser.handledByPreloadPlugin(byteArray, fullname, finish, () => {
+        if (handledByPreloadPlugin(byteArray, fullname, finish, () => {
           if (onerror) onerror();
           removeRunDependency(dep);
         })) {
           return;
         }
-#endif
         finish(byteArray);
       }
       addRunDependency(dep);
diff --git a/src/postamble.js b/src/postamble.js
index 69d9df0..951fa53 100644
--- a/src/postamble.js
+++ b/src/postamble.js
@@ -8,6 +8,12 @@
 
 {{{ exportRuntime() }}}
 
+#if '$Browser' in addedLibraryItems
+var handledByPreloadPlugin = Browser.handledByPreloadPlugin;
+#else
+var handledByPreloadPlugin = () => false;
+#endif
+
 #if !MEM_INIT_IN_WASM
 function runMemoryInitializer() {
 #if USE_PTHREADS
diff --git a/src/postamble_minimal.js b/src/postamble_minimal.js
index 8e52660..ac975df 100644
--- a/src/postamble_minimal.js
+++ b/src/postamble_minimal.js
@@ -7,6 +7,12 @@
 // === Auto-generated postamble setup entry stuff ===
 {{{ exportRuntime() }}}
 
+#if '$Browser' in addedLibraryItems
+var handledByPreloadPlugin = Browser.handledByPreloadPlugin;
+#else
+var handledByPreloadPlugin = () => false;
+#endif
+
 #if HAS_MAIN // Only if user is exporting a C main(), we will generate a run() function that can be used to launch main.
 function run() {
 #if MEMORYPROFILER