From b6dbb68b00ffbbe6329678bb2eeeadd6e0a164d9 Mon Sep 17 00:00:00 2001 From: Marc-Antoine Date: Tue, 26 Mar 2019 12:22:26 +0100 Subject: [PATCH] Adds support for Windows paths (#33) * Base work for portable path * Add conversion where needed (still missing some!) * Got it to work on Windows! * Convert to portable path when calling 'yarn install' * Update config.ts * Use posix where possible * Use xfs in json-proxy instead of native fs * Fix berry json proxy dependencies * Handle more special cases (globby, pnp), activate Windows Pipeline * Fix PATH env variable when spawn process * Fix azure yaml * Fixes plugin loading * Updates the checked-in build * Fixes yarn-path execution * Debug: Adds logging to findZip * Revert "Debug: Adds logging to findZip" This reverts commit e616b6b9f802438cf55901c15badb524a9843398. * Enforces symlinks on Windows * Fixes the cmd scripts * Adds a retry for EBUSY and ENOTEMPTY * Fixes process spawning on win32 * More portable path, prevent translating to portable path if already one * Some cleanup for PnP hook on Windows * Use only portable path in Native resolution * Moves the portable path conversion in dedicated wrappers * Makes fakeFs a parameter to instantiate a PnP API * Updates the PnP hook * Fixes accidental infinite loop * Updates the checked-in PnP hook * Fixes how the PnP linker interacts with the PnP API on Windows * Implements a fs layer to convert paths before they reach zipopenfs * Adds a few extra conversions * Updates the checked-in build --- .pnp.js | 956 ++- azure-pipelines.yml | 28 +- .../pkg-tests-specs/sources/pnp.test.js | 1 + packages/berry-cli/bin/berry.js | 5910 +++++++++-------- packages/berry-cli/sources/cli.ts | 16 +- packages/berry-core/sources/Cache.ts | 6 +- packages/berry-core/sources/Configuration.ts | 14 +- packages/berry-core/sources/Project.ts | 140 +- packages/berry-core/sources/VirtualFetcher.ts | 8 +- packages/berry-core/sources/Workspace.ts | 10 +- packages/berry-core/sources/execUtils.ts | 11 +- packages/berry-core/sources/scriptUtils.ts | 42 +- packages/berry-fslib/sources/FakeFS.ts | 17 +- packages/berry-fslib/sources/JailFS.ts | 4 +- packages/berry-fslib/sources/NodeFS.ts | 126 +- packages/berry-fslib/sources/PosixFS.ts | 187 + packages/berry-fslib/sources/ZipFS.ts | 2 +- packages/berry-fslib/sources/index.ts | 3 +- packages/berry-json-proxy/package.json | 5 +- .../berry-json-proxy/sources/makeUpdater.ts | 20 +- packages/berry-pnp/bundles/hook.js | 2 +- packages/berry-pnp/sources/hydratePnpApi.ts | 7 +- .../berry-pnp/sources/loader/_entryPoint.ts | 12 + .../berry-pnp/sources/loader/applyPatch.ts | 46 +- .../sources/loader/hydrateRuntimeState.ts | 8 +- packages/berry-pnp/sources/loader/makeApi.ts | 118 +- packages/berry-shell/sources/index.ts | 22 +- .../sources/commands/_entry.ts | 14 +- .../sources/commands/config.ts | 2 + .../sources/commands/node.ts | 3 +- .../sources/commands/policies/set-version.ts | 6 +- packages/plugin-init/sources/commands/init.ts | 4 +- packages/plugin-pnp/sources/PnpLinker.ts | 22 +- .../plugin-stage/bin/@berry/plugin-stage.js | 2 +- packages/vscode-zipfs/sources/index.ts | 4 +- yarn.lock | 2 + 36 files changed, 4320 insertions(+), 3460 deletions(-) create mode 100644 packages/berry-fslib/sources/PosixFS.ts diff --git a/.pnp.js b/.pnp.js index 701013435e8f..856b04cab25b 100755 --- a/.pnp.js +++ b/.pnp.js @@ -9064,6 +9064,10 @@ function $$SETUP_STATE(hydrateRuntimeState) { [ "@berry/json-proxy", "workspace:packages/berry-json-proxy" + ], + [ + "@berry/fslib", + "workspace:packages/berry-fslib" ] ] } @@ -63295,19 +63299,29 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); -const module_1 = __importDefault(__webpack_require__(1)); -const path_1 = __importDefault(__webpack_require__(2)); -const string_decoder_1 = __importDefault(__webpack_require__(3)); -const applyPatch_1 = __webpack_require__(4); -const hydrateRuntimeState_1 = __webpack_require__(20); -const makeApi_1 = __webpack_require__(21); +const fslib_1 = __webpack_require__(1); +const fs_1 = __importDefault(__webpack_require__(3)); +const module_1 = __importDefault(__webpack_require__(17)); +const path_1 = __importDefault(__webpack_require__(4)); +const string_decoder_1 = __importDefault(__webpack_require__(18)); +const applyPatch_1 = __webpack_require__(19); +const hydrateRuntimeState_1 = __webpack_require__(21); +const makeApi_1 = __webpack_require__(22); +// We must copy the fs into a local, because otherwise +// 1. we would make the NodeFS instance use the function that we patched (infinite loop) +// 2. Object.create(fs) isn't enough, since it won't prevent the proto from being modified +const localFs = Object.assign({}, fs_1.default); +const nodeFs = new fslib_1.NodeFS(localFs); +const zipOpenFs = new fslib_1.ZipOpenFS({ baseFs: nodeFs }); module.exports = makeApi_1.makeApi($$SETUP_STATE(hydrateRuntimeState_1.hydrateRuntimeState), { compatibilityMode: true, pnpapiResolution: path_1.default.resolve(__dirname, __filename), + fakeFs: zipOpenFs, }); if (__non_webpack_module__.parent && __non_webpack_module__.parent.id === 'internal/preload') { applyPatch_1.applyPatch(module.exports, { compatibilityMode: true, + fakeFs: zipOpenFs, }); if (__non_webpack_module__.filename) { // We delete it from the cache in order to support the case where the CLI resolver is invoked from "yarn run" @@ -63369,246 +63383,27 @@ if (process.mainModule === __non_webpack_module__) { /***/ }), /* 1 */ -/***/ (function(module, exports) { - -module.exports = require("module"); - -/***/ }), -/* 2 */ -/***/ (function(module, exports) { - -module.exports = require("path"); - -/***/ }), -/* 3 */ -/***/ (function(module, exports) { - -module.exports = require("string_decoder"); - -/***/ }), -/* 4 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const fslib_1 = __webpack_require__(5); -const fs_1 = __importDefault(__webpack_require__(7)); -const module_1 = __importDefault(__webpack_require__(1)); -const path_1 = __importDefault(__webpack_require__(2)); -const internalTools_1 = __webpack_require__(19); -function applyPatch(pnpapi, opts) { - // @ts-ignore - const builtinModules = new Set(module_1.default.builtinModules || Object.keys(process.binding('natives'))); - // The callback function gets called to wrap the return value of the module names matching the regexp - const patchedModules = []; - if (opts.compatibilityMode) { - // Modern versions of `resolve` support a specific entry point that custom resolvers can use - // to inject a specific resolution logic without having to patch the whole package. - // - // Cf: https://github.com/browserify/resolve/pull/174 - patchedModules.push([ - /^\.\/normalize-options\.js$/, - (issuer, normalizeOptions) => { - if (!issuer || issuer.name !== 'resolve') - return normalizeOptions; - return (request, opts) => { - opts = opts || {}; - if (opts.forceNodeResolution) - return opts; - opts.preserveSymlinks = true; - opts.paths = function (request, basedir, getNodeModulesDir, opts) { - // Extract the name of the package being requested (1=full name, 2=scope name, 3=local name) - const parts = request.match(/^((?:(@[^\/]+)\/)?([^\/]+))/); - if (!parts) - throw new Error(`Assertion failed: Expected the "resolve" package to call the "paths" callback with package names only (got "${request}")`); - // make sure that basedir ends with a slash - if (basedir.charAt(basedir.length - 1) !== '/') - basedir = path_1.default.join(basedir, '/'); - // This is guaranteed to return the path to the "package.json" file from the given package - const manifestPath = pnpapi.resolveToUnqualified(`${parts[1]}/package.json`, basedir, { - considerBuiltins: false, - }); - if (manifestPath === null) - throw new Error(`Assertion failed: The resolution thinks that "${parts[1]}" is a Node builtin`); - // The first dirname strips the package.json, the second strips the local named folder - let nodeModules = path_1.default.dirname(path_1.default.dirname(manifestPath)); - // Strips the scope named folder if needed - if (parts[2]) - nodeModules = path_1.default.dirname(nodeModules); - return [nodeModules]; - }; - return opts; - }; - }, - ]); - } - /** - * Used to disable the resolution hooks (for when we want to fallback to the previous resolution - we then need - * a way to "reset" the environment temporarily) - */ - let enableNativeHooks = true; - // @ts-ignore - process.versions.pnp = String(pnpapi.VERSIONS.std); - // A small note: we don't replace the cache here (and instead use the native one). This is an effort to not - // break code similar to "delete require.cache[require.resolve(FOO)]", where FOO is a package located outside - // of the Yarn dependency tree. In this case, we defer the load to the native loader. If we were to replace the - // cache by our own, the native loader would populate its own cache, which wouldn't be exposed anymore, so the - // delete call would be broken. - const originalModuleLoad = module_1.default._load; - module_1.default._load = function (request, parent, isMain) { - if (!enableNativeHooks) { - return originalModuleLoad.call(module_1.default, request, parent, isMain); - } - // Builtins are managed by the regular Node loader - if (builtinModules.has(request)) { - try { - enableNativeHooks = false; - return originalModuleLoad.call(module_1.default, request, parent, isMain); - } - finally { - enableNativeHooks = true; - } - } - // The 'pnpapi' name is reserved to return the PnP api currently in use by the program - if (request === `pnpapi`) - return pnpapi; - // Request `Module._resolveFilename` (ie. `resolveRequest`) to tell us which file we should load - const modulePath = module_1.default._resolveFilename(request, parent, isMain); - // Check if the module has already been created for the given file - const cacheEntry = module_1.default._cache[modulePath]; - if (cacheEntry) - return cacheEntry.exports; - // Create a new module and store it into the cache - // @ts-ignore - const module = new module_1.default(modulePath, parent); - module_1.default._cache[modulePath] = module; - // The main module is exposed as global variable - if (isMain) { - // @ts-ignore - process.mainModule = module; - module.id = '.'; - } - // Try to load the module, and remove it from the cache if it fails - let hasThrown = true; - try { - module.load(modulePath); - hasThrown = false; - } - finally { - if (hasThrown) { - delete module_1.default._cache[modulePath]; - } - } - // Some modules might have to be patched for compatibility purposes - for (const [filter, patchFn] of patchedModules) - if (filter.test(request)) - module.exports = patchFn(parent && parent.filename ? pnpapi.findPackageLocator(parent.filename) : null, module.exports); - return module.exports; - }; - const originalModuleResolveFilename = module_1.default._resolveFilename; - module_1.default._resolveFilename = function (request, parent, isMain, options) { - if (request === `pnpapi`) - return request; - if (!enableNativeHooks) - return originalModuleResolveFilename.call(module_1.default, request, parent, isMain, options); - if (options && options.plugnplay === false) { - try { - enableNativeHooks = false; - return originalModuleResolveFilename.call(module_1.default, request, parent, isMain, options); - } - finally { - enableNativeHooks = true; - } - } - let issuers; - if (options) { - const optionNames = new Set(Object.keys(options)); - optionNames.delete(`paths`); - optionNames.delete(`plugnplay`); - if (optionNames.size > 0) { - throw internalTools_1.makeError(`UNSUPPORTED`, `Some options passed to require() aren't supported by PnP yet (${Array.from(optionNames).join(', ')})`); - } - if (options.paths) { - issuers = options.paths.map((entry) => { - return `${path_1.default.normalize(entry)}/`; - }); - } - } - if (!issuers) { - const issuerModule = internalTools_1.getIssuerModule(parent); - const issuer = issuerModule ? issuerModule.filename : `${process.cwd()}/`; - issuers = [issuer]; - } - let firstError; - for (const issuer of issuers) { - let resolution; - try { - resolution = pnpapi.resolveRequest(request, issuer); - } - catch (error) { - firstError = firstError || error; - continue; - } - return resolution !== null ? resolution : request; - } - throw firstError; - }; - const originalFindPath = module_1.default._findPath; - module_1.default._findPath = function (request, paths, isMain) { - if (request === `pnpapi`) - return false; - if (!enableNativeHooks) - return originalFindPath.call(module_1.default, request, paths, isMain); - for (const path of paths) { - let resolution; - try { - resolution = pnpapi.resolveRequest(request, path); - } - catch (error) { - continue; - } - if (resolution) { - return resolution; - } - } - return false; - }; - // We must copy the fs into a local, because otherwise - // 1. we would make the NodeFS instance use the function that we patched (infinite loop) - // 2. Object.create(fs) isn't enough, since it won't prevent the proto from being modified - const localFs = Object.assign({}, fs_1.default); - const nodeFs = new fslib_1.NodeFS(localFs); - fslib_1.patchFs(fs_1.default, new fslib_1.ZipOpenFS({ baseFs: nodeFs })); -} -exports.applyPatch = applyPatch; -; - - -/***/ }), -/* 5 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const NodeFS_1 = __webpack_require__(6); -var AliasFS_1 = __webpack_require__(9); +const NodeFS_1 = __webpack_require__(2); +var AliasFS_1 = __webpack_require__(6); exports.AliasFS = AliasFS_1.AliasFS; -var CwdFS_1 = __webpack_require__(10); +var FakeFS_1 = __webpack_require__(5); +exports.FakeFS = FakeFS_1.FakeFS; +var CwdFS_1 = __webpack_require__(7); exports.CwdFS = CwdFS_1.CwdFS; -var JailFS_1 = __webpack_require__(11); +var JailFS_1 = __webpack_require__(8); exports.JailFS = JailFS_1.JailFS; -var NodeFS_2 = __webpack_require__(6); +var NodeFS_2 = __webpack_require__(2); exports.NodeFS = NodeFS_2.NodeFS; -var FakeFS_1 = __webpack_require__(8); -exports.FakeFS = FakeFS_1.FakeFS; -var ZipFS_1 = __webpack_require__(12); +var PosixFS_1 = __webpack_require__(9); +exports.PosixFS = PosixFS_1.PosixFS; +var ZipFS_1 = __webpack_require__(10); exports.ZipFS = ZipFS_1.ZipFS; -var ZipOpenFS_1 = __webpack_require__(18); +var ZipOpenFS_1 = __webpack_require__(16); exports.ZipOpenFS = ZipOpenFS_1.ZipOpenFS; function wrapSync(fn) { return fn; @@ -63717,7 +63512,7 @@ exports.xfs = new NodeFS_1.NodeFS(); /***/ }), -/* 6 */ +/* 2 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -63726,8 +63521,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); -const fs_1 = __importDefault(__webpack_require__(7)); -const FakeFS_1 = __webpack_require__(8); +const fs_1 = __importDefault(__webpack_require__(3)); +const path_1 = __webpack_require__(4); +const FakeFS_1 = __webpack_require__(5); +const PORTABLE_PATH_PREFIX = `/mnt/`; +const PORTABLE_PREFIX_REGEXP = /^\/mnt\/([a-z])(?:\/(.*))?$/; class NodeFS extends FakeFS_1.FakeFS { constructor(realFs = fs_1.default) { super(); @@ -63738,11 +63536,11 @@ class NodeFS extends FakeFS_1.FakeFS { } async openPromise(p, flags, mode) { return await new Promise((resolve, reject) => { - this.realFs.open(p, flags, mode, this.makeCallback(resolve, reject)); + this.realFs.open(NodeFS.fromPortablePath(p), flags, mode, this.makeCallback(resolve, reject)); }); } openSync(p, flags, mode) { - return this.realFs.openSync(p, flags, mode); + return this.realFs.openSync(NodeFS.fromPortablePath(p), flags, mode); } async closePromise(fd) { await new Promise((resolve, reject) => { @@ -63753,148 +63551,152 @@ class NodeFS extends FakeFS_1.FakeFS { this.realFs.closeSync(fd); } createReadStream(p, opts) { - return this.realFs.createReadStream(this.fromPortablePath(p), opts); + return this.realFs.createReadStream(NodeFS.fromPortablePath(p), opts); } createWriteStream(p, opts) { - return this.realFs.createWriteStream(this.fromPortablePath(p), opts); + return this.realFs.createWriteStream(NodeFS.fromPortablePath(p), opts); } async realpathPromise(p) { return await new Promise((resolve, reject) => { - this.realFs.realpath(p, {}, this.makeCallback(resolve, reject)); + this.realFs.realpath(NodeFS.fromPortablePath(p), {}, this.makeCallback(resolve, reject)); + }).then(path => { + return NodeFS.toPortablePath(path); }); } realpathSync(p) { - return this.toPortablePath(this.realFs.realpathSync(this.fromPortablePath(p), {})); + return NodeFS.toPortablePath(this.realFs.realpathSync(NodeFS.fromPortablePath(p), {})); } async existsPromise(p) { return await new Promise(resolve => { - this.realFs.exists(this.fromPortablePath(p), resolve); + this.realFs.exists(NodeFS.fromPortablePath(p), resolve); }); } existsSync(p) { - return this.realFs.existsSync(this.fromPortablePath(p)); + return this.realFs.existsSync(NodeFS.fromPortablePath(p)); } async statPromise(p) { return await new Promise((resolve, reject) => { - this.realFs.stat(p, this.makeCallback(resolve, reject)); + this.realFs.stat(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject)); }); } statSync(p) { - return this.realFs.statSync(this.fromPortablePath(p)); + return this.realFs.statSync(NodeFS.fromPortablePath(p)); } async lstatPromise(p) { return await new Promise((resolve, reject) => { - this.realFs.lstat(p, this.makeCallback(resolve, reject)); + this.realFs.lstat(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject)); }); } lstatSync(p) { - return this.realFs.lstatSync(this.fromPortablePath(p)); + return this.realFs.lstatSync(NodeFS.fromPortablePath(p)); } async chmodPromise(p, mask) { return await new Promise((resolve, reject) => { - this.realFs.chmod(this.fromPortablePath(p), mask, this.makeCallback(resolve, reject)); + this.realFs.chmod(NodeFS.fromPortablePath(p), mask, this.makeCallback(resolve, reject)); }); } chmodSync(p, mask) { - return this.realFs.chmodSync(this.fromPortablePath(p), mask); + return this.realFs.chmodSync(NodeFS.fromPortablePath(p), mask); } async renamePromise(oldP, newP) { return await new Promise((resolve, reject) => { - this.realFs.rename(this.fromPortablePath(oldP), this.fromPortablePath(newP), this.makeCallback(resolve, reject)); + this.realFs.rename(NodeFS.fromPortablePath(oldP), NodeFS.fromPortablePath(newP), this.makeCallback(resolve, reject)); }); } renameSync(oldP, newP) { - return this.realFs.renameSync(this.fromPortablePath(oldP), this.fromPortablePath(newP)); + return this.realFs.renameSync(NodeFS.fromPortablePath(oldP), NodeFS.fromPortablePath(newP)); } async copyFilePromise(sourceP, destP, flags = 0) { return await new Promise((resolve, reject) => { - this.realFs.copyFile(this.fromPortablePath(sourceP), this.fromPortablePath(destP), flags, this.makeCallback(resolve, reject)); + this.realFs.copyFile(NodeFS.fromPortablePath(sourceP), NodeFS.fromPortablePath(destP), flags, this.makeCallback(resolve, reject)); }); } copyFileSync(sourceP, destP, flags = 0) { - return this.realFs.copyFileSync(this.fromPortablePath(sourceP), this.fromPortablePath(destP), flags); + return this.realFs.copyFileSync(NodeFS.fromPortablePath(sourceP), NodeFS.fromPortablePath(destP), flags); } async writeFilePromise(p, content, opts) { return await new Promise((resolve, reject) => { if (opts) { - this.realFs.writeFile(p, content, opts, this.makeCallback(resolve, reject)); + this.realFs.writeFile(NodeFS.fromPortablePath(p), content, opts, this.makeCallback(resolve, reject)); } else { - this.realFs.writeFile(p, content, this.makeCallback(resolve, reject)); + this.realFs.writeFile(NodeFS.fromPortablePath(p), content, this.makeCallback(resolve, reject)); } }); } writeFileSync(p, content, opts) { if (opts) { - this.realFs.writeFileSync(this.fromPortablePath(p), content, opts); + this.realFs.writeFileSync(NodeFS.fromPortablePath(p), content, opts); } else { - this.realFs.writeFileSync(this.fromPortablePath(p), content); + this.realFs.writeFileSync(NodeFS.fromPortablePath(p), content); } } async unlinkPromise(p) { return await new Promise((resolve, reject) => { - this.realFs.unlink(p, this.makeCallback(resolve, reject)); + this.realFs.unlink(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject)); }); } unlinkSync(p) { - return this.realFs.unlinkSync(this.fromPortablePath(p)); + return this.realFs.unlinkSync(NodeFS.fromPortablePath(p)); } async utimesPromise(p, atime, mtime) { return await new Promise((resolve, reject) => { - this.realFs.utimes(p, atime, mtime, this.makeCallback(resolve, reject)); + this.realFs.utimes(NodeFS.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); }); } utimesSync(p, atime, mtime) { - this.realFs.utimesSync(p, atime, mtime); + this.realFs.utimesSync(NodeFS.fromPortablePath(p), atime, mtime); } async mkdirPromise(p) { return await new Promise((resolve, reject) => { - this.realFs.mkdir(p, this.makeCallback(resolve, reject)); + this.realFs.mkdir(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject)); }); } mkdirSync(p) { - return this.realFs.mkdirSync(this.fromPortablePath(p)); + return this.realFs.mkdirSync(NodeFS.fromPortablePath(p)); } async rmdirPromise(p) { return await new Promise((resolve, reject) => { - this.realFs.rmdir(p, this.makeCallback(resolve, reject)); + this.realFs.rmdir(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject)); }); } rmdirSync(p) { - return this.realFs.rmdirSync(this.fromPortablePath(p)); + return this.realFs.rmdirSync(NodeFS.fromPortablePath(p)); } async symlinkPromise(target, p) { return await new Promise((resolve, reject) => { - this.realFs.symlink(target, this.fromPortablePath(p), this.makeCallback(resolve, reject)); + this.realFs.symlink(NodeFS.fromPortablePath(target), NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject)); }); } symlinkSync(target, p) { - return this.realFs.symlinkSync(target, this.fromPortablePath(p)); + return this.realFs.symlinkSync(NodeFS.fromPortablePath(target), NodeFS.fromPortablePath(p)); } async readFilePromise(p, encoding) { return await new Promise((resolve, reject) => { - this.realFs.readFile(this.fromPortablePath(p), encoding, this.makeCallback(resolve, reject)); + this.realFs.readFile(NodeFS.fromPortablePath(p), encoding, this.makeCallback(resolve, reject)); }); } readFileSync(p, encoding) { - return this.realFs.readFileSync(this.fromPortablePath(p), encoding); + return this.realFs.readFileSync(NodeFS.fromPortablePath(p), encoding); } async readdirPromise(p) { return await new Promise((resolve, reject) => { - this.realFs.readdir(p, this.makeCallback(resolve, reject)); + this.realFs.readdir(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject)); }); } readdirSync(p) { - return this.realFs.readdirSync(this.fromPortablePath(p)); + return this.realFs.readdirSync(NodeFS.fromPortablePath(p)); } async readlinkPromise(p) { return await new Promise((resolve, reject) => { - this.realFs.readlink(p, this.makeCallback(resolve, reject)); + this.realFs.readlink(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject)); + }).then(path => { + return NodeFS.toPortablePath(path); }); } readlinkSync(p) { - return this.realFs.readlinkSync(this.fromPortablePath(p)); + return NodeFS.toPortablePath(this.realFs.readlinkSync(NodeFS.fromPortablePath(p))); } makeCallback(resolve, reject) { return (err, result) => { @@ -63906,30 +63708,59 @@ class NodeFS extends FakeFS_1.FakeFS { } }; } - fromPortablePath(p) { - return p; + static fromPortablePath(p) { + if (process.platform !== `win32`) + return p; + // Path should look like "/mnt/n/berry/scripts/plugin-pack.js" + // And transform to "N:\berry/scripts/plugin-pack.js" + const match = p.match(PORTABLE_PREFIX_REGEXP); + if (!match) + return p; + const [, drive, pathWithoutPrefix = ''] = match; + const windowsPath = pathWithoutPrefix.replace(/\//g, '\\'); + return `${drive.toUpperCase()}:\\${windowsPath}`; } - toPortablePath(p) { - return p; + static toPortablePath(p) { + if (process.platform !== `win32`) + return p; + // Path should look like "N:\berry/scripts/plugin-pack.js" + // And transform to "/mnt/n/berry/scripts/plugin-pack.js" + // Skip if the path is already portable + if (p.startsWith(PORTABLE_PATH_PREFIX)) + return p; + const { root } = path_1.win32.parse(p); + // If relative path, just replace win32 slashes by posix slashes + if (!root) + return p.replace(/\\/g, '/'); + const driveLetter = root[0].toLowerCase(); + const pathWithoutRoot = p.substr(root.length); + const posixPath = pathWithoutRoot.replace(/\\/g, '/'); + return `${PORTABLE_PATH_PREFIX}${driveLetter}/${posixPath}`; } } exports.NodeFS = NodeFS; /***/ }), -/* 7 */ +/* 3 */ /***/ (function(module, exports) { module.exports = require("fs"); /***/ }), -/* 8 */ +/* 4 */ +/***/ (function(module, exports) { + +module.exports = require("path"); + +/***/ }), +/* 5 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const path_1 = __webpack_require__(2); +const path_1 = __webpack_require__(4); class FakeFS { resolve(p) { return path_1.posix.resolve(`/`, p); @@ -63950,7 +63781,22 @@ class FakeFS { if (stat.isDirectory()) { for (const entry of await this.readdirPromise(p)) await this.removePromise(path_1.posix.resolve(p, entry)); - await this.rmdirPromise(p); + // 5 gives 1s worth of retries at worst + for (let t = 0; t < 5; ++t) { + try { + await this.rmdirPromise(p); + break; + } + catch (error) { + if (error.code === `EBUSY` || error.code === `ENOTEMPTY`) { + await new Promise(resolve => setTimeout(resolve, t * 100)); + continue; + } + else { + throw error; + } + } + } } else { await this.unlinkPromise(p); @@ -64163,13 +64009,13 @@ exports.FakeFS = FakeFS; /***/ }), -/* 9 */ +/* 6 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const FakeFS_1 = __webpack_require__(8); +const FakeFS_1 = __webpack_require__(5); class AliasFS extends FakeFS_1.FakeFS { constructor(target, { baseFs }) { super(); @@ -64313,15 +64159,15 @@ exports.AliasFS = AliasFS; /***/ }), -/* 10 */ +/* 7 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const path_1 = __webpack_require__(2); -const FakeFS_1 = __webpack_require__(8); -const NodeFS_1 = __webpack_require__(6); +const path_1 = __webpack_require__(4); +const FakeFS_1 = __webpack_require__(5); +const NodeFS_1 = __webpack_require__(2); class CwdFS extends FakeFS_1.FakeFS { constructor(target, { baseFs = new NodeFS_1.NodeFS() } = {}) { super(); @@ -64474,15 +64320,15 @@ exports.CwdFS = CwdFS; /***/ }), -/* 11 */ +/* 8 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const path_1 = __webpack_require__(2); -const FakeFS_1 = __webpack_require__(8); -const NodeFS_1 = __webpack_require__(6); +const path_1 = __webpack_require__(4); +const FakeFS_1 = __webpack_require__(5); +const NodeFS_1 = __webpack_require__(2); class JailFS extends FakeFS_1.FakeFS { constructor(target, { baseFs = new NodeFS_1.NodeFS() } = {}) { super(); @@ -64565,10 +64411,10 @@ class JailFS extends FakeFS_1.FakeFS { return this.baseFs.writeFileSync(this.fromJailedPath(p), content, opts); } async unlinkPromise(p) { - return await this.baseFs.rmdirPromise(this.fromJailedPath(p)); + return await this.baseFs.unlinkPromise(this.fromJailedPath(p)); } unlinkSync(p) { - return this.baseFs.rmdirSync(this.fromJailedPath(p)); + return this.baseFs.unlinkSync(this.fromJailedPath(p)); } async utimesPromise(p, atime, mtime) { return await this.baseFs.utimesPromise(this.fromJailedPath(p), atime, mtime); @@ -64640,7 +64486,154 @@ exports.JailFS = JailFS; /***/ }), -/* 12 */ +/* 9 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +Object.defineProperty(exports, "__esModule", { value: true }); +const FakeFS_1 = __webpack_require__(5); +const NodeFS_1 = __webpack_require__(2); +class PosixFS extends FakeFS_1.FakeFS { + constructor(baseFs) { + super(); + this.baseFs = baseFs; + } + getRealPath() { + return NodeFS_1.NodeFS.fromPortablePath(this.baseFs.getRealPath()); + } + async openPromise(p, flags, mode) { + return await this.baseFs.openPromise(NodeFS_1.NodeFS.toPortablePath(p), flags, mode); + } + openSync(p, flags, mode) { + return this.baseFs.openSync(NodeFS_1.NodeFS.toPortablePath(p), flags, mode); + } + async closePromise(fd) { + await this.baseFs.closePromise(fd); + } + closeSync(fd) { + this.baseFs.closeSync(fd); + } + createReadStream(p, opts) { + return this.baseFs.createReadStream(NodeFS_1.NodeFS.toPortablePath(p), opts); + } + createWriteStream(p, opts) { + return this.baseFs.createWriteStream(NodeFS_1.NodeFS.toPortablePath(p), opts); + } + async realpathPromise(p) { + return NodeFS_1.NodeFS.fromPortablePath(await this.baseFs.realpathPromise(NodeFS_1.NodeFS.toPortablePath(p))); + } + realpathSync(p) { + return NodeFS_1.NodeFS.fromPortablePath(this.baseFs.realpathSync(NodeFS_1.NodeFS.toPortablePath(p))); + } + async existsPromise(p) { + return await this.baseFs.existsPromise(NodeFS_1.NodeFS.toPortablePath(p)); + } + existsSync(p) { + return this.baseFs.existsSync(NodeFS_1.NodeFS.toPortablePath(p)); + } + async statPromise(p) { + return await this.baseFs.statPromise(NodeFS_1.NodeFS.toPortablePath(p)); + } + statSync(p) { + return this.baseFs.statSync(NodeFS_1.NodeFS.toPortablePath(p)); + } + async lstatPromise(p) { + return await this.baseFs.lstatPromise(NodeFS_1.NodeFS.toPortablePath(p)); + } + lstatSync(p) { + return this.baseFs.lstatSync(NodeFS_1.NodeFS.toPortablePath(p)); + } + async chmodPromise(p, mask) { + return await this.baseFs.chmodPromise(NodeFS_1.NodeFS.toPortablePath(p), mask); + } + chmodSync(p, mask) { + return this.baseFs.chmodSync(NodeFS_1.NodeFS.toPortablePath(p), mask); + } + async renamePromise(oldP, newP) { + return await this.baseFs.renamePromise(NodeFS_1.NodeFS.toPortablePath(oldP), NodeFS_1.NodeFS.toPortablePath(newP)); + } + renameSync(oldP, newP) { + return this.baseFs.renameSync(NodeFS_1.NodeFS.toPortablePath(oldP), NodeFS_1.NodeFS.toPortablePath(newP)); + } + async copyFilePromise(sourceP, destP, flags) { + return await this.baseFs.copyFilePromise(NodeFS_1.NodeFS.toPortablePath(sourceP), NodeFS_1.NodeFS.toPortablePath(destP), flags); + } + copyFileSync(sourceP, destP, flags) { + return this.baseFs.copyFileSync(NodeFS_1.NodeFS.toPortablePath(sourceP), NodeFS_1.NodeFS.toPortablePath(destP), flags); + } + async writeFilePromise(p, content, opts) { + return await this.baseFs.writeFilePromise(NodeFS_1.NodeFS.toPortablePath(p), content, opts); + } + writeFileSync(p, content, opts) { + return this.baseFs.writeFileSync(NodeFS_1.NodeFS.toPortablePath(p), content, opts); + } + async unlinkPromise(p) { + return await this.baseFs.unlinkPromise(NodeFS_1.NodeFS.toPortablePath(p)); + } + unlinkSync(p) { + return this.baseFs.unlinkSync(NodeFS_1.NodeFS.toPortablePath(p)); + } + async utimesPromise(p, atime, mtime) { + return await this.baseFs.utimesPromise(NodeFS_1.NodeFS.toPortablePath(p), atime, mtime); + } + utimesSync(p, atime, mtime) { + return this.baseFs.utimesSync(NodeFS_1.NodeFS.toPortablePath(p), atime, mtime); + } + async mkdirPromise(p) { + return await this.baseFs.mkdirPromise(NodeFS_1.NodeFS.toPortablePath(p)); + } + mkdirSync(p) { + return this.baseFs.mkdirSync(NodeFS_1.NodeFS.toPortablePath(p)); + } + async rmdirPromise(p) { + return await this.baseFs.rmdirPromise(NodeFS_1.NodeFS.toPortablePath(p)); + } + rmdirSync(p) { + return this.baseFs.rmdirSync(NodeFS_1.NodeFS.toPortablePath(p)); + } + async symlinkPromise(target, p) { + return await this.baseFs.symlinkPromise(target, NodeFS_1.NodeFS.toPortablePath(p)); + } + symlinkSync(target, p) { + return this.baseFs.symlinkSync(target, NodeFS_1.NodeFS.toPortablePath(p)); + } + async readFilePromise(p, encoding) { + // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered) + switch (encoding) { + case `utf8`: + return await this.baseFs.readFilePromise(NodeFS_1.NodeFS.toPortablePath(p), encoding); + default: + return await this.baseFs.readFilePromise(NodeFS_1.NodeFS.toPortablePath(p), encoding); + } + } + readFileSync(p, encoding) { + // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered) + switch (encoding) { + case `utf8`: + return this.baseFs.readFileSync(NodeFS_1.NodeFS.toPortablePath(p), encoding); + default: + return this.baseFs.readFileSync(NodeFS_1.NodeFS.toPortablePath(p), encoding); + } + } + async readdirPromise(p) { + return await this.baseFs.readdirPromise(NodeFS_1.NodeFS.toPortablePath(p)); + } + readdirSync(p) { + return this.baseFs.readdirSync(NodeFS_1.NodeFS.toPortablePath(p)); + } + async readlinkPromise(p) { + return NodeFS_1.NodeFS.fromPortablePath(await this.baseFs.readlinkPromise(NodeFS_1.NodeFS.toPortablePath(p))); + } + readlinkSync(p) { + return NodeFS_1.NodeFS.fromPortablePath(this.baseFs.readlinkSync(NodeFS_1.NodeFS.toPortablePath(p))); + } +} +exports.PosixFS = PosixFS; + + +/***/ }), +/* 10 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -64649,13 +64642,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); -const libzip_1 = __importDefault(__webpack_require__(13)); -const fs_1 = __webpack_require__(7); -const path_1 = __webpack_require__(2); -const stream_1 = __webpack_require__(16); -const util_1 = __webpack_require__(17); -const FakeFS_1 = __webpack_require__(8); -const NodeFS_1 = __webpack_require__(6); +const libzip_1 = __importDefault(__webpack_require__(11)); +const fs_1 = __webpack_require__(3); +const path_1 = __webpack_require__(4); +const stream_1 = __webpack_require__(14); +const util_1 = __webpack_require__(15); +const FakeFS_1 = __webpack_require__(5); +const NodeFS_1 = __webpack_require__(2); const S_IFMT = 0o170000; const S_IFDIR = 0o040000; const S_IFREG = 0o100000; @@ -64742,7 +64735,7 @@ class ZipFS extends FakeFS_1.FakeFS { flags |= libzip_1.default.ZIP_CREATE | libzip_1.default.ZIP_TRUNCATE; if (readOnly) flags |= libzip_1.default.ZIP_RDONLY; - this.zip = libzip_1.default.open(p, flags, errPtr); + this.zip = libzip_1.default.open(NodeFS_1.NodeFS.fromPortablePath(p), flags, errPtr); if (this.zip === 0) { const error = libzip_1.default.struct.errorS(); libzip_1.default.error.initWithCode(error, libzip_1.default.getValue(errPtr, `i32`)); @@ -65252,7 +65245,7 @@ exports.ZipFS = ZipFS; /***/ }), -/* 13 */ +/* 11 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -65261,7 +65254,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); -const libzip_1 = __importDefault(__webpack_require__(14)); +const libzip_1 = __importDefault(__webpack_require__(12)); const number64 = [ `number`, `number`, @@ -65349,46 +65342,46 @@ exports.default = { /***/ }), -/* 14 */ +/* 12 */ /***/ (function(module, exports, __webpack_require__) { -var frozenFs = Object.assign({}, __webpack_require__(7)); -var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module["arguments"]=[];Module["thisProgram"]="./this.program";Module["quit"]=(function(status,toThrow){throw toThrow});Module["preRun"]=[];Module["postRun"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=true;if(Module["ENVIRONMENT"]){throw new Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)")}var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}else{return scriptDirectory+path}}if(ENVIRONMENT_IS_NODE){if(!(typeof process==="object"&&"function"==="function"))throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");scriptDirectory=__dirname+"/";var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=frozenFs;if(!nodePath)nodePath=__webpack_require__(2);filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(true){module["exports"]=Module}(function(){})("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));(function(){})("unhandledRejection",abort);Module["quit"]=(function(status){process["exit"](status)});Module["inspect"]=(function(){return"[Emscripten Module object]"})}else{throw new Error("environment detection error")}var out=Module["print"]||(typeof console!=="undefined"?console.log.bind(console):typeof print!=="undefined"?print:null);var err=Module["printErr"]||(typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn.bind(console)||out);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;assert(typeof Module["memoryInitializerPrefixURL"]==="undefined","Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["pthreadMainPrefixURL"]==="undefined","Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["cdInitializerPrefixURL"]==="undefined","Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["filePackagePrefixURL"]==="undefined","Module.filePackagePrefixURL option was removed, use Module.locateFile instead");stackSave=stackRestore=stackAlloc=(function(){abort("cannot use the stack before compiled code is ready to run, and has provided stack access")});function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}var asm2wasmImports={"f64-rem":(function(x,y){return x%y}),"debugger":(function(){debugger})};var functionPointers=new Array(0);var tempRet0=0;var setTempRet0=(function(value){tempRet0=value});var GLOBAL_BASE=1024;function getSafeHeapType(bytes,isFloat){switch(bytes){case 1:return"i8";case 2:return"i16";case 4:return isFloat?"float":"i32";case 8:return"double";default:assert(0)}}function SAFE_HEAP_STORE(dest,value,bytes,isFloat){if(dest<=0)abort("segmentation fault storing "+bytes+" bytes to address "+dest);if(dest%bytes!==0)abort("alignment error storing to address "+dest+", which was expected to be aligned to a multiple of "+bytes);if(dest+bytes>HEAP32[DYNAMICTOP_PTR>>2])abort("segmentation fault, exceeded the top of the available dynamic heap when storing "+bytes+" bytes to address "+dest+". DYNAMICTOP="+HEAP32[DYNAMICTOP_PTR>>2]);assert(DYNAMICTOP_PTR);assert(HEAP32[DYNAMICTOP_PTR>>2]<=TOTAL_MEMORY);setValue(dest,value,getSafeHeapType(bytes,isFloat),1)}function SAFE_HEAP_STORE_D(dest,value,bytes){SAFE_HEAP_STORE(dest,value,bytes,true)}function SAFE_HEAP_LOAD(dest,bytes,unsigned,isFloat){if(dest<=0)abort("segmentation fault loading "+bytes+" bytes from address "+dest);if(dest%bytes!==0)abort("alignment error loading from address "+dest+", which was expected to be aligned to a multiple of "+bytes);if(dest+bytes>HEAP32[DYNAMICTOP_PTR>>2])abort("segmentation fault, exceeded the top of the available dynamic heap when loading "+bytes+" bytes from address "+dest+". DYNAMICTOP="+HEAP32[DYNAMICTOP_PTR>>2]);assert(DYNAMICTOP_PTR);assert(HEAP32[DYNAMICTOP_PTR>>2]<=TOTAL_MEMORY);var type=getSafeHeapType(bytes,isFloat);var ret=getValue(dest,type,1);if(unsigned)ret=unSign(ret,parseInt(type.substr(1)),1);return ret}function SAFE_HEAP_LOAD_D(dest,bytes,unsigned){return SAFE_HEAP_LOAD(dest,bytes,unsigned,true)}function segfault(){abort("segmentation fault")}function alignfault(){abort("alignment fault")}var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){function convertReturnValue(ret){if(returnType==="string")return Pointer_stringify(ret);if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;assert(returnType!=="array",'Return type should not be "array".');if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}else{switch(type){case"i1":SAFE_HEAP_STORE(ptr|0,value|0,1);break;case"i8":SAFE_HEAP_STORE(ptr|0,value|0,1);break;case"i16":SAFE_HEAP_STORE(ptr|0,value|0,2);break;case"i32":SAFE_HEAP_STORE(ptr|0,value|0,4);break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/4294967296)>>>0:0)],SAFE_HEAP_STORE(ptr|0,tempI64[0]|0,4),SAFE_HEAP_STORE(ptr+4|0,tempI64[1]|0,4);break;case"float":SAFE_HEAP_STORE_D(ptr|0,Math_fround(value),4);break;case"double":SAFE_HEAP_STORE_D(ptr|0,+value,8);break;default:abort("invalid type for setValue: "+type)}}}function getValue(ptr,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";if(noSafe){switch(type){case"i1":return HEAP8[ptr>>0];case"i8":return HEAP8[ptr>>0];case"i16":return HEAP16[ptr>>1];case"i32":return HEAP32[ptr>>2];case"i64":return HEAP32[ptr>>2];case"float":return HEAPF32[ptr>>2];case"double":return HEAPF64[ptr>>3];default:abort("invalid type for getValue: "+type)}}else{switch(type){case"i1":return SAFE_HEAP_LOAD(ptr|0,1,0)|0;case"i8":return SAFE_HEAP_LOAD(ptr|0,1,0)|0;case"i16":return SAFE_HEAP_LOAD(ptr|0,2,0)|0;case"i32":return SAFE_HEAP_LOAD(ptr|0,4,0)|0;case"i64":return SAFE_HEAP_LOAD(ptr|0,8,0)|0;case"float":return Math_fround(SAFE_HEAP_LOAD_D(ptr|0,4,0));case"double":return+SAFE_HEAP_LOAD_D(ptr|0,8,0);default:abort("invalid type for getValue: "+type)}}return null}var ALLOC_NORMAL=0;var ALLOC_NONE=3;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[_malloc,stackAlloc,dynamicAlloc][allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){assert(typeof maxBytesToWrite=="number","stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}var WASM_PAGE_SIZE=65536;var MIN_TOTAL_MEMORY=16777216;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBuffer(buf){Module["buffer"]=buffer=buf}function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE=1024,STACK_BASE=22720,STACK_MAX=5265600,DYNAMIC_BASE=5265600,DYNAMICTOP_PTR=22464;assert(STACK_BASE%16===0,"stack must start aligned");assert(DYNAMIC_BASE%16===0,"heap must start aligned");function writeStackCookie(){assert((STACK_MAX&3)==0);HEAPU32[(STACK_MAX>>2)-1]=34821223;HEAPU32[(STACK_MAX>>2)-2]=2310721022}function checkStackCookie(){if(HEAPU32[(STACK_MAX>>2)-1]!=34821223||HEAPU32[(STACK_MAX>>2)-2]!=2310721022){abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x"+HEAPU32[(STACK_MAX>>2)-2].toString(16)+" "+HEAPU32[(STACK_MAX>>2)-1].toString(16))}if(HEAP32[0]!==1668509029)throw"Runtime error: The application has corrupted its heap memory area (address zero)!"}function abortStackOverflow(allocSize){abort("Stack overflow! Attempted to allocate "+allocSize+" bytes on the stack, but stack has only "+(STACK_MAX-stackSave()+allocSize)+" bytes available!")}function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){assert(HEAP32[DYNAMICTOP_PTR>>2]>TOTAL_MEMORY);var PAGE_MULTIPLE=65536;var LIMIT=2147483648-PAGE_MULTIPLE;if(HEAP32[DYNAMICTOP_PTR>>2]>LIMIT){err("Cannot enlarge memory, asked to go up to "+HEAP32[DYNAMICTOP_PTR>>2]+" bytes, but the limit is "+LIMIT+" bytes!");return false}var OLD_TOTAL_MEMORY=TOTAL_MEMORY;TOTAL_MEMORY=Math.max(TOTAL_MEMORY,MIN_TOTAL_MEMORY);while(TOTAL_MEMORY>2]){if(TOTAL_MEMORY<=536870912){TOTAL_MEMORY=alignUp(2*TOTAL_MEMORY,PAGE_MULTIPLE)}else{TOTAL_MEMORY=Math.min(alignUp((3*TOTAL_MEMORY+2147483648)/4,PAGE_MULTIPLE),LIMIT);if(TOTAL_MEMORY===OLD_TOTAL_MEMORY){warnOnce("Cannot ask for more memory since we reached the practical limit in browsers (which is just below 2GB), so the request would have failed. Requesting only "+TOTAL_MEMORY)}}}var start=Date.now();var replacement=Module["reallocBuffer"](TOTAL_MEMORY);if(!replacement||replacement.byteLength!=TOTAL_MEMORY){err("Failed to grow the heap from "+OLD_TOTAL_MEMORY+" bytes to "+TOTAL_MEMORY+" bytes, not enough memory!");if(replacement){err("Expected to get back a buffer of size "+TOTAL_MEMORY+" bytes, but instead got back a buffer of size "+replacement.byteLength)}TOTAL_MEMORY=OLD_TOTAL_MEMORY;return false}updateGlobalBuffer(replacement);updateGlobalBufferViews();return true}var byteLength;try{byteLength=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get);byteLength(new ArrayBuffer(4))}catch(e){byteLength=(function(buffer){return buffer.byteLength})}var TOTAL_STACK=5242880;if(Module["TOTAL_STACK"])assert(TOTAL_STACK===Module["TOTAL_STACK"],"the stack size can no longer be determined at runtime");var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY>2]=DYNAMIC_BASE;function getTotalMemory(){return TOTAL_MEMORY}HEAP32[0]=1668509029;HEAP16[1]=25459;if(HEAPU8[2]!==115||HEAPU8[3]!==99)throw"Runtime error: expected the system to be little-endian!";function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){checkStackCookie();if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){checkStackCookie();callRuntimeCallbacks(__ATMAIN__)}function postRun(){checkStackCookie();if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}function writeArrayToMemory(array,buffer){assert(array.length>=0,"writeArrayToMemory array must have a length (should be an array or typed array)");HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i=0){return value}return bits<=32?2*Math.abs(1<=0){err("Memory size incompatibility issues may be due to changing TOTAL_MEMORY at runtime to something too large. Use ALLOW_MEMORY_GROWTH to allow any size memory (and also make sure not to set TOTAL_MEMORY at runtime to something smaller than it was at compile time).")}return false}receiveInstance(instance,module);return exports}Module["asmPreload"]=Module["asm"];var wasmReallocBuffer=(function(size){var PAGE_MULTIPLE=65536;size=alignUp(size,PAGE_MULTIPLE);var old=Module["buffer"];var oldSize=old.byteLength;try{var result=Module["wasmMemory"].grow((size-oldSize)/wasmPageSize);if(result!==(-1|0)){return Module["buffer"]=Module["wasmMemory"].buffer}else{return null}}catch(e){console.error("Module.reallocBuffer: Attempted to grow from "+oldSize+" bytes to "+size+" bytes, but got error: "+e);return null}});Module["reallocBuffer"]=(function(size){return wasmReallocBuffer(size)});Module["asm"]=(function(global,env,providedBuffer){if(!env["table"]){assert(Module["wasmTableSize"]!==undefined);var TABLE_SIZE=Module["wasmTableSize"];var MAX_TABLE_SIZE=Module["wasmMaxTableSize"];if(typeof WebAssembly==="object"&&typeof WebAssembly.Table==="function"){if(MAX_TABLE_SIZE!==undefined){env["table"]=new WebAssembly.Table({"initial":TABLE_SIZE,"maximum":MAX_TABLE_SIZE,"element":"anyfunc"})}else{env["table"]=new WebAssembly.Table({"initial":TABLE_SIZE,element:"anyfunc"})}}else{env["table"]=new Array(TABLE_SIZE)}Module["wasmTable"]=env["table"]}if(!env["__memory_base"]){env["__memory_base"]=Module["STATIC_BASE"]}if(!env["__table_base"]){env["__table_base"]=0}var exports=createWasm(global,env,providedBuffer);assert(exports,"binaryen setup failed (no wasm support?)");return exports})}integrateWasmJS();STATIC_BASE=GLOBAL_BASE;__ATINIT__.push({func:(function(){___emscripten_environ_constructor()})});var STATIC_BUMP=21696;Module["STATIC_BASE"]=STATIC_BASE;Module["STATIC_BUMP"]=STATIC_BUMP;var tempDoublePtr=22704;assert(tempDoublePtr%8==0);var ENV={};function ___buildEnvironment(environ){var MAX_ENV_VALUES=64;var TOTAL_ENV_SIZE=1024;var poolPtr;var envPtr;if(!___buildEnvironment.called){___buildEnvironment.called=true;ENV["USER"]=ENV["LOGNAME"]="web_user";ENV["PATH"]="/";ENV["PWD"]="/";ENV["HOME"]="/home/web_user";ENV["LANG"]="C.UTF-8";ENV["_"]=Module["thisProgram"];poolPtr=getMemory(TOTAL_ENV_SIZE);envPtr=getMemory(MAX_ENV_VALUES*4);SAFE_HEAP_STORE(envPtr|0,poolPtr|0,4);SAFE_HEAP_STORE(environ|0,envPtr|0,4)}else{envPtr=SAFE_HEAP_LOAD(environ|0,4,0)|0;poolPtr=SAFE_HEAP_LOAD(envPtr|0,4,0)|0}var strings=[];var totalSize=0;for(var key in ENV){if(typeof ENV[key]==="string"){var line=key+"="+ENV[key];strings.push(line);totalSize+=line.length}}if(totalSize>TOTAL_ENV_SIZE){throw new Error("Environment size exceeded TOTAL_ENV_SIZE!")}var ptrSize=4;for(var i=0;i=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts}),normalize:(function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path}),dirname:(function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir}),basename:(function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)}),extname:(function(path){return PATH.splitPath(path)[3]}),join:(function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))}),join2:(function(l,r){return PATH.normalize(l+"/"+r)}),resolve:(function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter((function(p){return!!p})),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){out(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,"/",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;inode.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}if(!node.contents&&newCapacity>0)node.contents=[];while(node.contents.lengthnewSize)node.contents.length=newSize;else while(node.contents.length=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);assert(size>=0);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+length>2}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return stat.mode}),realPath:(function(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join.apply(null,parts)}),flagsForNode:(function(flags){flags&=~2097152;flags&=~2048;flags&=~32768;flags&=~524288;var newFlags=0;for(var k in NODEFS.flagsForNodeMap){if(flags&k){newFlags|=NODEFS.flagsForNodeMap[k];flags^=k}}if(!flags){return newFlags}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.flagsForNode(stream.flags))}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),close:(function(stream){try{if(FS.isFile(stream.node.mode)&&stream.nfd){fs.closeSync(stream.nfd)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),read:(function(stream,buffer,offset,length,position){if(length===0)return 0;try{return fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),write:(function(stream,buffer,offset,length,position){try{return fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};var NODERAWFS={lookupPath:(function(path){return{path:path,node:{mode:NODEFS.getMode(path)}}}),createStandardStreams:(function(){FS.streams[0]={fd:0,nfd:0,position:0,path:"",flags:0,tty:true,seekable:false};for(var i=1;i<3;i++){FS.streams[i]={fd:i,nfd:i,position:0,path:"",flags:577,tty:true,seekable:false}}}),cwd:(function(){return process.cwd()}),chdir:(function(){process.chdir.apply(void 0,arguments)}),mknod:(function(path,mode){if(FS.isDir(path)){fs.mkdirSync(path,mode)}else{fs.writeFileSync(path,"",{mode:mode})}}),mkdir:(function(){fs.mkdirSync.apply(void 0,arguments)}),symlink:(function(){fs.symlinkSync.apply(void 0,arguments)}),rename:(function(){fs.renameSync.apply(void 0,arguments)}),rmdir:(function(){fs.rmdirSync.apply(void 0,arguments)}),readdir:(function(){fs.readdirSync.apply(void 0,arguments)}),unlink:(function(){fs.unlinkSync.apply(void 0,arguments)}),readlink:(function(){return fs.readlinkSync.apply(void 0,arguments)}),stat:(function(){return fs.statSync.apply(void 0,arguments)}),lstat:(function(){return fs.lstatSync.apply(void 0,arguments)}),chmod:(function(){fs.chmodSync.apply(void 0,arguments)}),fchmod:(function(){fs.fchmodSync.apply(void 0,arguments)}),chown:(function(){fs.chownSync.apply(void 0,arguments)}),fchown:(function(){fs.fchownSync.apply(void 0,arguments)}),truncate:(function(){fs.truncateSync.apply(void 0,arguments)}),ftruncate:(function(){fs.ftruncateSync.apply(void 0,arguments)}),utime:(function(){fs.utimesSync.apply(void 0,arguments)}),open:(function(path,flags,mode,suggestFD){if(typeof flags==="string"){flags=VFS.modeStringToFlags(flags)}var nfd=fs.openSync(path,NODEFS.flagsForNode(flags),mode);var fd=suggestFD!=null?suggestFD:FS.nextfd(nfd);var stream={fd:fd,nfd:nfd,position:0,path:path,flags:flags,seekable:true};FS.streams[fd]=stream;return stream}),close:(function(stream){if(!stream.stream_ops){fs.closeSync(stream.nfd)}FS.closeStream(stream.fd)}),llseek:(function(stream,offset,whence){if(stream.stream_ops){return VFS.llseek(stream,offset,whence)}var position=offset;if(whence===1){position+=stream.position}else if(whence===2){position+=fs.fstatSync(stream.nfd).size}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}stream.position=position;return position}),read:(function(stream,buffer,offset,length,position){if(stream.stream_ops){return VFS.read(stream,buffer,offset,length,position)}var seeking=typeof position!=="undefined";if(!seeking&&stream.seekable)position=stream.position;var bytesRead=fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead}),write:(function(stream,buffer,offset,length,position){if(stream.stream_ops){return VFS.write(stream,buffer,offset,length,position)}if(stream.flags&+"1024"){FS.llseek(stream,0,+"2")}var seeking=typeof position!=="undefined";if(!seeking&&stream.seekable)position=stream.position;var bytesWritten=fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position);if(!seeking)stream.position+=bytesWritten;return bytesWritten}),allocate:(function(){throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP)}),mmap:(function(){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}),msync:(function(){return 0}),munmap:(function(){return 0}),ioctl:(function(){throw new FS.ErrnoError(ERRNO_CODES.ENOTTY)})};var ERRNO_MESSAGES={0:"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"};var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:(function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)}),lookupPath:(function(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(40)}var parts=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),false);var current=FS.root;var current_path="/";for(var i=0;i40){throw new FS.ErrnoError(40)}}}}return{path:current_path,node:current}}),getPath:(function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}}),hashName:(function(parentid,name){var hash=0;for(var i=0;i>>0)%FS.nameTable.length}),hashAddNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node}),hashRemoveNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}}),lookupNode:(function(parent,name){var err=FS.mayLookup(parent);if(err){throw new FS.ErrnoError(err,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:(function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags}),flagsToPermissionString:(function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return 13}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return 13}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return 13}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return 13;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return 17}catch(e){}return FS.nodePermissions(dir,"wx")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return 20}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 16}}else{if(FS.isDir(node.mode)){return 21}}return 0}),mayOpen:(function(node,flags){if(!node){return 2}if(FS.isLink(node.mode)){return 40}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return 21}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(24)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(29)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(16)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(16)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(20)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(22)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(22)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(1)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdirTree:(function(path,mode){var dirs=path.split("/");var d="";for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(5)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(5)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall10(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr();FS.unlink(path);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);SAFE_HEAP_STORE(result|0,stream.position|0,4);if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall15(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),mode=SYSCALLS.get();FS.chmod(path,mode);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall195(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,path,buf)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall197(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,stream.path,buf)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;SAFE_HEAP_STORE(arg+offset|0,2|0,2);return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall38(which,varargs){SYSCALLS.varargs=varargs;try{var old_path=SYSCALLS.getStr(),new_path=SYSCALLS.getStr();FS.rename(old_path,new_path);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall40(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr();FS.rmdir(path);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21509:case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();SAFE_HEAP_STORE(argp|0,0|0,4);return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};case 21523:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21524:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall60(which,varargs){SYSCALLS.varargs=varargs;try{var mask=SYSCALLS.get();var old=SYSCALLS.umask;SYSCALLS.umask=mask;return old}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___unlock(){}var ___tm_current=22560;var ___tm_timezone=(stringToUTF8("GMT",22608,4),22608);function _tzset(){if(_tzset.called)return;_tzset.called=true;SAFE_HEAP_STORE(__get_timezone()|0,(new Date).getTimezoneOffset()*60|0,4);var winter=new Date(2e3,0,1);var summer=new Date(2e3,6,1);SAFE_HEAP_STORE(__get_daylight()|0,Number(winter.getTimezoneOffset()!=summer.getTimezoneOffset())|0,4);function extractZone(date){var match=date.toTimeString().match(/\(([A-Za-z ]+)\)$/);return match?match[1]:"GMT"}var winterName=extractZone(winter);var summerName=extractZone(summer);var winterNamePtr=allocate(intArrayFromString(winterName),"i8",ALLOC_NORMAL);var summerNamePtr=allocate(intArrayFromString(summerName),"i8",ALLOC_NORMAL);if(summer.getTimezoneOffset()0!=(dstOffset==guessedOffset)){var nonDstOffset=Math.max(winterOffset,summerOffset);var trueOffset=dst>0?dstOffset:nonDstOffset;date.setTime(date.getTime()+(trueOffset-guessedOffset)*6e4)}SAFE_HEAP_STORE(tmPtr+24|0,date.getDay()|0,4);var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;SAFE_HEAP_STORE(tmPtr+28|0,yday|0,4);return date.getTime()/1e3|0}function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){SAFE_HEAP_STORE(ptr|0,ret|0,4)}return ret}if(ENVIRONMENT_IS_NODE){_emscripten_get_now=function _emscripten_get_now_actual(){var t=process["hrtime"]();return t[0]*1e3+t[1]/1e6}}else if(typeof dateNow!=="undefined"){_emscripten_get_now=dateNow}else if(typeof self==="object"&&self["performance"]&&typeof self["performance"]["now"]==="function"){_emscripten_get_now=(function(){return self["performance"]["now"]()})}else if(typeof performance==="object"&&typeof performance["now"]==="function"){_emscripten_get_now=(function(){return performance["now"]()})}else{_emscripten_get_now=Date.now}FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((function(){FS.quit()}));__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=frozenFs;var NODEJS_PATH=__webpack_require__(2);NODEFS.staticInit()}if(ENVIRONMENT_IS_NODE){var _wrapNodeError=(function(func){return(function(){try{return func.apply(this,arguments)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})});var VFS=Object.assign({},FS);for(var _key in NODERAWFS)FS[_key]=_wrapNodeError(NODERAWFS[_key])}else{throw new Error("NODERAWFS is currently only supported on Node.js environment.")}function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}var decodeBase64=typeof atob==="function"?atob:(function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i0){return}writeStackCookie();preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();assert(!Module["_main"],'compiled without a main, but one is present. if you added it from JS, use Module["onRuntimeInitialized"]');postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout((function(){setTimeout((function(){Module["setStatus"]("")}),1);doRun()}),1)}else{doRun()}checkStackCookie()}Module["run"]=run;var abortDecorators=[];function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){out(what);err(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;var extra="";var output="abort("+what+") at "+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() +var frozenFs = Object.assign({}, __webpack_require__(3)); +var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module["arguments"]=[];Module["thisProgram"]="./this.program";Module["quit"]=(function(status,toThrow){throw toThrow});Module["preRun"]=[];Module["postRun"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=true;if(Module["ENVIRONMENT"]){throw new Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)")}var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}else{return scriptDirectory+path}}if(ENVIRONMENT_IS_NODE){if(!(typeof process==="object"&&"function"==="function"))throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");scriptDirectory=__dirname+"/";var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=frozenFs;if(!nodePath)nodePath=__webpack_require__(4);filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(true){module["exports"]=Module}(function(){})("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));(function(){})("unhandledRejection",abort);Module["quit"]=(function(status){process["exit"](status)});Module["inspect"]=(function(){return"[Emscripten Module object]"})}else{throw new Error("environment detection error")}var out=Module["print"]||(typeof console!=="undefined"?console.log.bind(console):typeof print!=="undefined"?print:null);var err=Module["printErr"]||(typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn.bind(console)||out);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;assert(typeof Module["memoryInitializerPrefixURL"]==="undefined","Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["pthreadMainPrefixURL"]==="undefined","Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["cdInitializerPrefixURL"]==="undefined","Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["filePackagePrefixURL"]==="undefined","Module.filePackagePrefixURL option was removed, use Module.locateFile instead");stackSave=stackRestore=stackAlloc=(function(){abort("cannot use the stack before compiled code is ready to run, and has provided stack access")});function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}var asm2wasmImports={"f64-rem":(function(x,y){return x%y}),"debugger":(function(){debugger})};var functionPointers=new Array(0);var tempRet0=0;var setTempRet0=(function(value){tempRet0=value});var GLOBAL_BASE=1024;function getSafeHeapType(bytes,isFloat){switch(bytes){case 1:return"i8";case 2:return"i16";case 4:return isFloat?"float":"i32";case 8:return"double";default:assert(0)}}function SAFE_HEAP_STORE(dest,value,bytes,isFloat){if(dest<=0)abort("segmentation fault storing "+bytes+" bytes to address "+dest);if(dest%bytes!==0)abort("alignment error storing to address "+dest+", which was expected to be aligned to a multiple of "+bytes);if(dest+bytes>HEAP32[DYNAMICTOP_PTR>>2])abort("segmentation fault, exceeded the top of the available dynamic heap when storing "+bytes+" bytes to address "+dest+". DYNAMICTOP="+HEAP32[DYNAMICTOP_PTR>>2]);assert(DYNAMICTOP_PTR);assert(HEAP32[DYNAMICTOP_PTR>>2]<=TOTAL_MEMORY);setValue(dest,value,getSafeHeapType(bytes,isFloat),1)}function SAFE_HEAP_STORE_D(dest,value,bytes){SAFE_HEAP_STORE(dest,value,bytes,true)}function SAFE_HEAP_LOAD(dest,bytes,unsigned,isFloat){if(dest<=0)abort("segmentation fault loading "+bytes+" bytes from address "+dest);if(dest%bytes!==0)abort("alignment error loading from address "+dest+", which was expected to be aligned to a multiple of "+bytes);if(dest+bytes>HEAP32[DYNAMICTOP_PTR>>2])abort("segmentation fault, exceeded the top of the available dynamic heap when loading "+bytes+" bytes from address "+dest+". DYNAMICTOP="+HEAP32[DYNAMICTOP_PTR>>2]);assert(DYNAMICTOP_PTR);assert(HEAP32[DYNAMICTOP_PTR>>2]<=TOTAL_MEMORY);var type=getSafeHeapType(bytes,isFloat);var ret=getValue(dest,type,1);if(unsigned)ret=unSign(ret,parseInt(type.substr(1)),1);return ret}function SAFE_HEAP_LOAD_D(dest,bytes,unsigned){return SAFE_HEAP_LOAD(dest,bytes,unsigned,true)}function segfault(){abort("segmentation fault")}function alignfault(){abort("alignment fault")}var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){function convertReturnValue(ret){if(returnType==="string")return Pointer_stringify(ret);if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;assert(returnType!=="array",'Return type should not be "array".');if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}else{switch(type){case"i1":SAFE_HEAP_STORE(ptr|0,value|0,1);break;case"i8":SAFE_HEAP_STORE(ptr|0,value|0,1);break;case"i16":SAFE_HEAP_STORE(ptr|0,value|0,2);break;case"i32":SAFE_HEAP_STORE(ptr|0,value|0,4);break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/4294967296)>>>0:0)],SAFE_HEAP_STORE(ptr|0,tempI64[0]|0,4),SAFE_HEAP_STORE(ptr+4|0,tempI64[1]|0,4);break;case"float":SAFE_HEAP_STORE_D(ptr|0,Math_fround(value),4);break;case"double":SAFE_HEAP_STORE_D(ptr|0,+value,8);break;default:abort("invalid type for setValue: "+type)}}}function getValue(ptr,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";if(noSafe){switch(type){case"i1":return HEAP8[ptr>>0];case"i8":return HEAP8[ptr>>0];case"i16":return HEAP16[ptr>>1];case"i32":return HEAP32[ptr>>2];case"i64":return HEAP32[ptr>>2];case"float":return HEAPF32[ptr>>2];case"double":return HEAPF64[ptr>>3];default:abort("invalid type for getValue: "+type)}}else{switch(type){case"i1":return SAFE_HEAP_LOAD(ptr|0,1,0)|0;case"i8":return SAFE_HEAP_LOAD(ptr|0,1,0)|0;case"i16":return SAFE_HEAP_LOAD(ptr|0,2,0)|0;case"i32":return SAFE_HEAP_LOAD(ptr|0,4,0)|0;case"i64":return SAFE_HEAP_LOAD(ptr|0,8,0)|0;case"float":return Math_fround(SAFE_HEAP_LOAD_D(ptr|0,4,0));case"double":return+SAFE_HEAP_LOAD_D(ptr|0,8,0);default:abort("invalid type for getValue: "+type)}}return null}var ALLOC_NORMAL=0;var ALLOC_NONE=3;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[_malloc,stackAlloc,dynamicAlloc][allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){assert(typeof maxBytesToWrite=="number","stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}var WASM_PAGE_SIZE=65536;var MIN_TOTAL_MEMORY=16777216;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBuffer(buf){Module["buffer"]=buffer=buf}function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE=1024,STACK_BASE=22720,STACK_MAX=5265600,DYNAMIC_BASE=5265600,DYNAMICTOP_PTR=22464;assert(STACK_BASE%16===0,"stack must start aligned");assert(DYNAMIC_BASE%16===0,"heap must start aligned");function writeStackCookie(){assert((STACK_MAX&3)==0);HEAPU32[(STACK_MAX>>2)-1]=34821223;HEAPU32[(STACK_MAX>>2)-2]=2310721022}function checkStackCookie(){if(HEAPU32[(STACK_MAX>>2)-1]!=34821223||HEAPU32[(STACK_MAX>>2)-2]!=2310721022){abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x"+HEAPU32[(STACK_MAX>>2)-2].toString(16)+" "+HEAPU32[(STACK_MAX>>2)-1].toString(16))}if(HEAP32[0]!==1668509029)throw"Runtime error: The application has corrupted its heap memory area (address zero)!"}function abortStackOverflow(allocSize){abort("Stack overflow! Attempted to allocate "+allocSize+" bytes on the stack, but stack has only "+(STACK_MAX-stackSave()+allocSize)+" bytes available!")}function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){assert(HEAP32[DYNAMICTOP_PTR>>2]>TOTAL_MEMORY);var PAGE_MULTIPLE=65536;var LIMIT=2147483648-PAGE_MULTIPLE;if(HEAP32[DYNAMICTOP_PTR>>2]>LIMIT){err("Cannot enlarge memory, asked to go up to "+HEAP32[DYNAMICTOP_PTR>>2]+" bytes, but the limit is "+LIMIT+" bytes!");return false}var OLD_TOTAL_MEMORY=TOTAL_MEMORY;TOTAL_MEMORY=Math.max(TOTAL_MEMORY,MIN_TOTAL_MEMORY);while(TOTAL_MEMORY>2]){if(TOTAL_MEMORY<=536870912){TOTAL_MEMORY=alignUp(2*TOTAL_MEMORY,PAGE_MULTIPLE)}else{TOTAL_MEMORY=Math.min(alignUp((3*TOTAL_MEMORY+2147483648)/4,PAGE_MULTIPLE),LIMIT);if(TOTAL_MEMORY===OLD_TOTAL_MEMORY){warnOnce("Cannot ask for more memory since we reached the practical limit in browsers (which is just below 2GB), so the request would have failed. Requesting only "+TOTAL_MEMORY)}}}var start=Date.now();var replacement=Module["reallocBuffer"](TOTAL_MEMORY);if(!replacement||replacement.byteLength!=TOTAL_MEMORY){err("Failed to grow the heap from "+OLD_TOTAL_MEMORY+" bytes to "+TOTAL_MEMORY+" bytes, not enough memory!");if(replacement){err("Expected to get back a buffer of size "+TOTAL_MEMORY+" bytes, but instead got back a buffer of size "+replacement.byteLength)}TOTAL_MEMORY=OLD_TOTAL_MEMORY;return false}updateGlobalBuffer(replacement);updateGlobalBufferViews();return true}var byteLength;try{byteLength=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get);byteLength(new ArrayBuffer(4))}catch(e){byteLength=(function(buffer){return buffer.byteLength})}var TOTAL_STACK=5242880;if(Module["TOTAL_STACK"])assert(TOTAL_STACK===Module["TOTAL_STACK"],"the stack size can no longer be determined at runtime");var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY>2]=DYNAMIC_BASE;function getTotalMemory(){return TOTAL_MEMORY}HEAP32[0]=1668509029;HEAP16[1]=25459;if(HEAPU8[2]!==115||HEAPU8[3]!==99)throw"Runtime error: expected the system to be little-endian!";function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){checkStackCookie();if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){checkStackCookie();callRuntimeCallbacks(__ATMAIN__)}function postRun(){checkStackCookie();if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}function writeArrayToMemory(array,buffer){assert(array.length>=0,"writeArrayToMemory array must have a length (should be an array or typed array)");HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i=0){return value}return bits<=32?2*Math.abs(1<=0){err("Memory size incompatibility issues may be due to changing TOTAL_MEMORY at runtime to something too large. Use ALLOW_MEMORY_GROWTH to allow any size memory (and also make sure not to set TOTAL_MEMORY at runtime to something smaller than it was at compile time).")}return false}receiveInstance(instance,module);return exports}Module["asmPreload"]=Module["asm"];var wasmReallocBuffer=(function(size){var PAGE_MULTIPLE=65536;size=alignUp(size,PAGE_MULTIPLE);var old=Module["buffer"];var oldSize=old.byteLength;try{var result=Module["wasmMemory"].grow((size-oldSize)/wasmPageSize);if(result!==(-1|0)){return Module["buffer"]=Module["wasmMemory"].buffer}else{return null}}catch(e){console.error("Module.reallocBuffer: Attempted to grow from "+oldSize+" bytes to "+size+" bytes, but got error: "+e);return null}});Module["reallocBuffer"]=(function(size){return wasmReallocBuffer(size)});Module["asm"]=(function(global,env,providedBuffer){if(!env["table"]){assert(Module["wasmTableSize"]!==undefined);var TABLE_SIZE=Module["wasmTableSize"];var MAX_TABLE_SIZE=Module["wasmMaxTableSize"];if(typeof WebAssembly==="object"&&typeof WebAssembly.Table==="function"){if(MAX_TABLE_SIZE!==undefined){env["table"]=new WebAssembly.Table({"initial":TABLE_SIZE,"maximum":MAX_TABLE_SIZE,"element":"anyfunc"})}else{env["table"]=new WebAssembly.Table({"initial":TABLE_SIZE,element:"anyfunc"})}}else{env["table"]=new Array(TABLE_SIZE)}Module["wasmTable"]=env["table"]}if(!env["__memory_base"]){env["__memory_base"]=Module["STATIC_BASE"]}if(!env["__table_base"]){env["__table_base"]=0}var exports=createWasm(global,env,providedBuffer);assert(exports,"binaryen setup failed (no wasm support?)");return exports})}integrateWasmJS();STATIC_BASE=GLOBAL_BASE;__ATINIT__.push({func:(function(){___emscripten_environ_constructor()})});var STATIC_BUMP=21696;Module["STATIC_BASE"]=STATIC_BASE;Module["STATIC_BUMP"]=STATIC_BUMP;var tempDoublePtr=22704;assert(tempDoublePtr%8==0);var ENV={};function ___buildEnvironment(environ){var MAX_ENV_VALUES=64;var TOTAL_ENV_SIZE=1024;var poolPtr;var envPtr;if(!___buildEnvironment.called){___buildEnvironment.called=true;ENV["USER"]=ENV["LOGNAME"]="web_user";ENV["PATH"]="/";ENV["PWD"]="/";ENV["HOME"]="/home/web_user";ENV["LANG"]="C.UTF-8";ENV["_"]=Module["thisProgram"];poolPtr=getMemory(TOTAL_ENV_SIZE);envPtr=getMemory(MAX_ENV_VALUES*4);SAFE_HEAP_STORE(envPtr|0,poolPtr|0,4);SAFE_HEAP_STORE(environ|0,envPtr|0,4)}else{envPtr=SAFE_HEAP_LOAD(environ|0,4,0)|0;poolPtr=SAFE_HEAP_LOAD(envPtr|0,4,0)|0}var strings=[];var totalSize=0;for(var key in ENV){if(typeof ENV[key]==="string"){var line=key+"="+ENV[key];strings.push(line);totalSize+=line.length}}if(totalSize>TOTAL_ENV_SIZE){throw new Error("Environment size exceeded TOTAL_ENV_SIZE!")}var ptrSize=4;for(var i=0;i=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts}),normalize:(function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path}),dirname:(function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir}),basename:(function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)}),extname:(function(path){return PATH.splitPath(path)[3]}),join:(function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))}),join2:(function(l,r){return PATH.normalize(l+"/"+r)}),resolve:(function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter((function(p){return!!p})),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){out(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,"/",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;inode.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}if(!node.contents&&newCapacity>0)node.contents=[];while(node.contents.lengthnewSize)node.contents.length=newSize;else while(node.contents.length=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);assert(size>=0);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+length>2}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return stat.mode}),realPath:(function(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join.apply(null,parts)}),flagsForNode:(function(flags){flags&=~2097152;flags&=~2048;flags&=~32768;flags&=~524288;var newFlags=0;for(var k in NODEFS.flagsForNodeMap){if(flags&k){newFlags|=NODEFS.flagsForNodeMap[k];flags^=k}}if(!flags){return newFlags}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.flagsForNode(stream.flags))}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),close:(function(stream){try{if(FS.isFile(stream.node.mode)&&stream.nfd){fs.closeSync(stream.nfd)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),read:(function(stream,buffer,offset,length,position){if(length===0)return 0;try{return fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),write:(function(stream,buffer,offset,length,position){try{return fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};var NODERAWFS={lookupPath:(function(path){return{path:path,node:{mode:NODEFS.getMode(path)}}}),createStandardStreams:(function(){FS.streams[0]={fd:0,nfd:0,position:0,path:"",flags:0,tty:true,seekable:false};for(var i=1;i<3;i++){FS.streams[i]={fd:i,nfd:i,position:0,path:"",flags:577,tty:true,seekable:false}}}),cwd:(function(){return process.cwd()}),chdir:(function(){process.chdir.apply(void 0,arguments)}),mknod:(function(path,mode){if(FS.isDir(path)){fs.mkdirSync(path,mode)}else{fs.writeFileSync(path,"",{mode:mode})}}),mkdir:(function(){fs.mkdirSync.apply(void 0,arguments)}),symlink:(function(){fs.symlinkSync.apply(void 0,arguments)}),rename:(function(){fs.renameSync.apply(void 0,arguments)}),rmdir:(function(){fs.rmdirSync.apply(void 0,arguments)}),readdir:(function(){fs.readdirSync.apply(void 0,arguments)}),unlink:(function(){fs.unlinkSync.apply(void 0,arguments)}),readlink:(function(){return fs.readlinkSync.apply(void 0,arguments)}),stat:(function(){return fs.statSync.apply(void 0,arguments)}),lstat:(function(){return fs.lstatSync.apply(void 0,arguments)}),chmod:(function(){fs.chmodSync.apply(void 0,arguments)}),fchmod:(function(){fs.fchmodSync.apply(void 0,arguments)}),chown:(function(){fs.chownSync.apply(void 0,arguments)}),fchown:(function(){fs.fchownSync.apply(void 0,arguments)}),truncate:(function(){fs.truncateSync.apply(void 0,arguments)}),ftruncate:(function(){fs.ftruncateSync.apply(void 0,arguments)}),utime:(function(){fs.utimesSync.apply(void 0,arguments)}),open:(function(path,flags,mode,suggestFD){if(typeof flags==="string"){flags=VFS.modeStringToFlags(flags)}var nfd=fs.openSync(path,NODEFS.flagsForNode(flags),mode);var fd=suggestFD!=null?suggestFD:FS.nextfd(nfd);var stream={fd:fd,nfd:nfd,position:0,path:path,flags:flags,seekable:true};FS.streams[fd]=stream;return stream}),close:(function(stream){if(!stream.stream_ops){fs.closeSync(stream.nfd)}FS.closeStream(stream.fd)}),llseek:(function(stream,offset,whence){if(stream.stream_ops){return VFS.llseek(stream,offset,whence)}var position=offset;if(whence===1){position+=stream.position}else if(whence===2){position+=fs.fstatSync(stream.nfd).size}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}stream.position=position;return position}),read:(function(stream,buffer,offset,length,position){if(stream.stream_ops){return VFS.read(stream,buffer,offset,length,position)}var seeking=typeof position!=="undefined";if(!seeking&&stream.seekable)position=stream.position;var bytesRead=fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead}),write:(function(stream,buffer,offset,length,position){if(stream.stream_ops){return VFS.write(stream,buffer,offset,length,position)}if(stream.flags&+"1024"){FS.llseek(stream,0,+"2")}var seeking=typeof position!=="undefined";if(!seeking&&stream.seekable)position=stream.position;var bytesWritten=fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position);if(!seeking)stream.position+=bytesWritten;return bytesWritten}),allocate:(function(){throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP)}),mmap:(function(){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}),msync:(function(){return 0}),munmap:(function(){return 0}),ioctl:(function(){throw new FS.ErrnoError(ERRNO_CODES.ENOTTY)})};var ERRNO_MESSAGES={0:"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"};var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:(function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)}),lookupPath:(function(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(40)}var parts=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),false);var current=FS.root;var current_path="/";for(var i=0;i40){throw new FS.ErrnoError(40)}}}}return{path:current_path,node:current}}),getPath:(function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}}),hashName:(function(parentid,name){var hash=0;for(var i=0;i>>0)%FS.nameTable.length}),hashAddNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node}),hashRemoveNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}}),lookupNode:(function(parent,name){var err=FS.mayLookup(parent);if(err){throw new FS.ErrnoError(err,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:(function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags}),flagsToPermissionString:(function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return 13}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return 13}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return 13}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return 13;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return 17}catch(e){}return FS.nodePermissions(dir,"wx")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return 20}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 16}}else{if(FS.isDir(node.mode)){return 21}}return 0}),mayOpen:(function(node,flags){if(!node){return 2}if(FS.isLink(node.mode)){return 40}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return 21}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(24)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(29)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(16)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(16)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(20)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(22)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(22)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(1)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdirTree:(function(path,mode){var dirs=path.split("/");var d="";for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(5)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(5)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall10(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr();FS.unlink(path);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);SAFE_HEAP_STORE(result|0,stream.position|0,4);if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall15(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),mode=SYSCALLS.get();FS.chmod(path,mode);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall195(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,path,buf)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall197(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,stream.path,buf)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;SAFE_HEAP_STORE(arg+offset|0,2|0,2);return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall38(which,varargs){SYSCALLS.varargs=varargs;try{var old_path=SYSCALLS.getStr(),new_path=SYSCALLS.getStr();FS.rename(old_path,new_path);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall40(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr();FS.rmdir(path);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21509:case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();SAFE_HEAP_STORE(argp|0,0|0,4);return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};case 21523:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21524:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall60(which,varargs){SYSCALLS.varargs=varargs;try{var mask=SYSCALLS.get();var old=SYSCALLS.umask;SYSCALLS.umask=mask;return old}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___unlock(){}var ___tm_current=22560;var ___tm_timezone=(stringToUTF8("GMT",22608,4),22608);function _tzset(){if(_tzset.called)return;_tzset.called=true;SAFE_HEAP_STORE(__get_timezone()|0,(new Date).getTimezoneOffset()*60|0,4);var winter=new Date(2e3,0,1);var summer=new Date(2e3,6,1);SAFE_HEAP_STORE(__get_daylight()|0,Number(winter.getTimezoneOffset()!=summer.getTimezoneOffset())|0,4);function extractZone(date){var match=date.toTimeString().match(/\(([A-Za-z ]+)\)$/);return match?match[1]:"GMT"}var winterName=extractZone(winter);var summerName=extractZone(summer);var winterNamePtr=allocate(intArrayFromString(winterName),"i8",ALLOC_NORMAL);var summerNamePtr=allocate(intArrayFromString(summerName),"i8",ALLOC_NORMAL);if(summer.getTimezoneOffset()0!=(dstOffset==guessedOffset)){var nonDstOffset=Math.max(winterOffset,summerOffset);var trueOffset=dst>0?dstOffset:nonDstOffset;date.setTime(date.getTime()+(trueOffset-guessedOffset)*6e4)}SAFE_HEAP_STORE(tmPtr+24|0,date.getDay()|0,4);var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;SAFE_HEAP_STORE(tmPtr+28|0,yday|0,4);return date.getTime()/1e3|0}function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){SAFE_HEAP_STORE(ptr|0,ret|0,4)}return ret}if(ENVIRONMENT_IS_NODE){_emscripten_get_now=function _emscripten_get_now_actual(){var t=process["hrtime"]();return t[0]*1e3+t[1]/1e6}}else if(typeof dateNow!=="undefined"){_emscripten_get_now=dateNow}else if(typeof self==="object"&&self["performance"]&&typeof self["performance"]["now"]==="function"){_emscripten_get_now=(function(){return self["performance"]["now"]()})}else if(typeof performance==="object"&&typeof performance["now"]==="function"){_emscripten_get_now=(function(){return performance["now"]()})}else{_emscripten_get_now=Date.now}FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((function(){FS.quit()}));__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=frozenFs;var NODEJS_PATH=__webpack_require__(4);NODEFS.staticInit()}if(ENVIRONMENT_IS_NODE){var _wrapNodeError=(function(func){return(function(){try{return func.apply(this,arguments)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})});var VFS=Object.assign({},FS);for(var _key in NODERAWFS)FS[_key]=_wrapNodeError(NODERAWFS[_key])}else{throw new Error("NODERAWFS is currently only supported on Node.js environment.")}function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}var decodeBase64=typeof atob==="function"?atob:(function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i0){return}writeStackCookie();preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();assert(!Module["_main"],'compiled without a main, but one is present. if you added it from JS, use Module["onRuntimeInitialized"]');postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout((function(){setTimeout((function(){Module["setStatus"]("")}),1);doRun()}),1)}else{doRun()}checkStackCookie()}Module["run"]=run;var abortDecorators=[];function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){out(what);err(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;var extra="";var output="abort("+what+") at "+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() /***/ }), -/* 15 */ +/* 13 */ /***/ (function(module, exports) { module.exports = require("crypto"); /***/ }), -/* 16 */ +/* 14 */ /***/ (function(module, exports) { module.exports = require("stream"); /***/ }), -/* 17 */ +/* 15 */ /***/ (function(module, exports) { module.exports = require("util"); /***/ }), -/* 18 */ +/* 16 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const fs_1 = __webpack_require__(7); -const path_1 = __webpack_require__(2); -const FakeFS_1 = __webpack_require__(8); -const NodeFS_1 = __webpack_require__(6); -const ZipFS_1 = __webpack_require__(12); +const fs_1 = __webpack_require__(3); +const path_1 = __webpack_require__(4); +const FakeFS_1 = __webpack_require__(5); +const NodeFS_1 = __webpack_require__(2); +const ZipFS_1 = __webpack_require__(10); class ZipOpenFS extends FakeFS_1.FakeFS { constructor({ baseFs = new NodeFS_1.NodeFS(), filter = null, useCache = true } = {}) { super(); @@ -65887,12 +65880,234 @@ class ZipOpenFS extends FakeFS_1.FakeFS { exports.ZipOpenFS = ZipOpenFS; +/***/ }), +/* 17 */ +/***/ (function(module, exports) { + +module.exports = require("module"); + +/***/ }), +/* 18 */ +/***/ (function(module, exports) { + +module.exports = require("string_decoder"); + /***/ }), /* 19 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const fslib_1 = __webpack_require__(1); +const fs_1 = __importDefault(__webpack_require__(3)); +const module_1 = __importDefault(__webpack_require__(17)); +const path_1 = __importDefault(__webpack_require__(4)); +const internalTools_1 = __webpack_require__(20); +function applyPatch(pnpapi, opts) { + // @ts-ignore + const builtinModules = new Set(module_1.default.builtinModules || Object.keys(process.binding('natives'))); + // The callback function gets called to wrap the return value of the module names matching the regexp + const patchedModules = []; + if (opts.compatibilityMode) { + // Modern versions of `resolve` support a specific entry point that custom resolvers can use + // to inject a specific resolution logic without having to patch the whole package. + // + // Cf: https://github.com/browserify/resolve/pull/174 + patchedModules.push([ + /^\.\/normalize-options\.js$/, + (issuer, normalizeOptions) => { + if (!issuer || issuer.name !== 'resolve') + return normalizeOptions; + return (request, opts) => { + opts = opts || {}; + if (opts.forceNodeResolution) + return opts; + opts.preserveSymlinks = true; + opts.paths = function (request, basedir, getNodeModulesDir, opts) { + // Extract the name of the package being requested (1=full name, 2=scope name, 3=local name) + const parts = request.match(/^((?:(@[^\/]+)\/)?([^\/]+))/); + if (!parts) + throw new Error(`Assertion failed: Expected the "resolve" package to call the "paths" callback with package names only (got "${request}")`); + // make sure that basedir ends with a slash + if (basedir.charAt(basedir.length - 1) !== '/') + basedir = path_1.default.join(basedir, '/'); + // TODO Handle portable paths + // This is guaranteed to return the path to the "package.json" file from the given package + const manifestPath = pnpapi.resolveToUnqualified(`${parts[1]}/package.json`, basedir, { + considerBuiltins: false, + }); + if (manifestPath === null) + throw new Error(`Assertion failed: The resolution thinks that "${parts[1]}" is a Node builtin`); + // The first dirname strips the package.json, the second strips the local named folder + let nodeModules = path_1.default.dirname(path_1.default.dirname(manifestPath)); + // Strips the scope named folder if needed + if (parts[2]) + nodeModules = path_1.default.dirname(nodeModules); + return [nodeModules]; + }; + return opts; + }; + }, + ]); + } + /** + * Used to disable the resolution hooks (for when we want to fallback to the previous resolution - we then need + * a way to "reset" the environment temporarily) + */ + let enableNativeHooks = true; + // @ts-ignore + process.versions.pnp = String(pnpapi.VERSIONS.std); + // A small note: we don't replace the cache here (and instead use the native one). This is an effort to not + // break code similar to "delete require.cache[require.resolve(FOO)]", where FOO is a package located outside + // of the Yarn dependency tree. In this case, we defer the load to the native loader. If we were to replace the + // cache by our own, the native loader would populate its own cache, which wouldn't be exposed anymore, so the + // delete call would be broken. + const originalModuleLoad = module_1.default._load; + module_1.default._load = function (request, parent, isMain) { + if (!enableNativeHooks) { + return originalModuleLoad.call(module_1.default, request, parent, isMain); + } + // Builtins are managed by the regular Node loader + if (builtinModules.has(request)) { + try { + enableNativeHooks = false; + return originalModuleLoad.call(module_1.default, request, parent, isMain); + } + finally { + enableNativeHooks = true; + } + } + // The 'pnpapi' name is reserved to return the PnP api currently in use by the program + if (request === `pnpapi`) + return pnpapi; + // Request `Module._resolveFilename` (ie. `resolveRequest`) to tell us which file we should load + const modulePath = module_1.default._resolveFilename(request, parent, isMain); + // Check if the module has already been created for the given file + const cacheEntry = module_1.default._cache[modulePath]; + if (cacheEntry) + return cacheEntry.exports; + // Create a new module and store it into the cache + // @ts-ignore + const module = new module_1.default(modulePath, parent); + module_1.default._cache[modulePath] = module; + // The main module is exposed as global variable + if (isMain) { + // @ts-ignore + process.mainModule = module; + module.id = '.'; + } + // Try to load the module, and remove it from the cache if it fails + let hasThrown = true; + try { + module.load(modulePath); + hasThrown = false; + } + finally { + if (hasThrown) { + delete module_1.default._cache[modulePath]; + } + } + // Some modules might have to be patched for compatibility purposes + for (const [filter, patchFn] of patchedModules) { + if (filter.test(request)) { + const issuer = parent && parent.filename ? pnpapi.findPackageLocator(parent.filename) : null; + module.exports = patchFn(issuer, module.exports); + } + } + return module.exports; + }; + const originalModuleResolveFilename = module_1.default._resolveFilename; + module_1.default._resolveFilename = function (request, parent, isMain, options) { + if (request === `pnpapi`) + return request; + if (!enableNativeHooks) + return originalModuleResolveFilename.call(module_1.default, request, parent, isMain, options); + if (options && options.plugnplay === false) { + try { + enableNativeHooks = false; + return originalModuleResolveFilename.call(module_1.default, request, parent, isMain, options); + } + finally { + enableNativeHooks = true; + } + } + let issuers; + if (options) { + const optionNames = new Set(Object.keys(options)); + optionNames.delete(`paths`); + optionNames.delete(`plugnplay`); + if (optionNames.size > 0) { + throw internalTools_1.makeError(`UNSUPPORTED`, `Some options passed to require() aren't supported by PnP yet (${Array.from(optionNames).join(', ')})`); + } + if (options.paths) { + issuers = options.paths.map((entry) => { + return `${path_1.default.normalize(entry)}/`; + }); + } + } + if (!issuers) { + const issuerModule = internalTools_1.getIssuerModule(parent); + const issuer = issuerModule ? issuerModule.filename : `${fslib_1.NodeFS.toPortablePath(process.cwd())}/`; + issuers = [issuer]; + } + // When Node is called, it tries to require the main script but can't + // because PnP already patched 'Module' + // We test it for an absolute Windows path and convert it to a portable path. + // We should probably always call toPortablePath and check for this directly + if (/^[A-Z]:.*/.test(request)) { + request = fslib_1.NodeFS.toPortablePath(request); + } + let firstError; + for (const issuer of issuers) { + let resolution; + try { + resolution = pnpapi.resolveRequest(request, issuer); + } + catch (error) { + firstError = firstError || error; + continue; + } + return resolution !== null ? resolution : request; + } + throw firstError; + }; + const originalFindPath = module_1.default._findPath; + module_1.default._findPath = function (request, paths, isMain) { + if (request === `pnpapi`) + return false; + if (!enableNativeHooks) + return originalFindPath.call(module_1.default, request, paths, isMain); + for (const path of paths) { + let resolution; + try { + // TODO Convert path to portable path? + resolution = pnpapi.resolveRequest(request, path); + } + catch (error) { + continue; + } + if (resolution) { + return resolution; + } + } + return false; + }; + fslib_1.patchFs(fs_1.default, new fslib_1.PosixFS(opts.fakeFs)); +} +exports.applyPatch = applyPatch; +; + + +/***/ }), +/* 20 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + /** * Simple helper function that assign an error code to an error, so that it can more easily be caught and used * by third-parties. @@ -65918,24 +66133,23 @@ exports.getIssuerModule = getIssuerModule; /***/ }), -/* 20 */ +/* 21 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; Object.defineProperty(exports, "__esModule", { value: true }); -const path_1 = __importDefault(__webpack_require__(2)); +const fslib_1 = __webpack_require__(1); +const path_1 = __webpack_require__(4); function hydrateRuntimeState(data, { basePath }) { + const portablePath = fslib_1.NodeFS.toPortablePath(basePath); const ignorePattern = data.ignorePatternData ? new RegExp(data.ignorePatternData) : null; const packageRegistry = new Map(data.packageRegistryData.map(([packageName, packageStoreData]) => { return [packageName, new Map(packageStoreData.map(([packageReference, packageInformationData]) => { return [packageReference, { - packageLocation: path_1.default.resolve(basePath, packageInformationData.packageLocation), + packageLocation: path_1.posix.resolve(portablePath, packageInformationData.packageLocation), packageDependencies: new Map(packageInformationData.packageDependencies), }]; }))]; @@ -65954,7 +66168,7 @@ function hydrateRuntimeState(data, { basePath }) { } const packageLocationLengths = data.locationLengthData; return { - basePath, + basePath: portablePath, ignorePattern, packageRegistry, packageLocatorsByLocations, @@ -65965,7 +66179,7 @@ exports.hydrateRuntimeState = hydrateRuntimeState; /***/ }), -/* 21 */ +/* 22 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -65974,10 +66188,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); -const fs_1 = __importDefault(__webpack_require__(7)); -const module_1 = __importDefault(__webpack_require__(1)); -const path_1 = __importDefault(__webpack_require__(2)); -const internalTools_1 = __webpack_require__(19); +const fslib_1 = __webpack_require__(1); +const module_1 = __importDefault(__webpack_require__(17)); +const path_1 = __webpack_require__(4); +const internalTools_1 = __webpack_require__(20); function makeApi(runtimeState, opts) { // @ts-ignore const builtinModules = new Set(module_1.default.builtinModules || Object.keys(process.binding('natives'))); @@ -65999,7 +66213,7 @@ function makeApi(runtimeState, opts) { // plugins that should be used (https://github.com/eslint/eslint/issues/10125). This will // likely get fixed at some point, but it'll take time and in the meantime we'll just add // additional fallback entries for common shared configs. - for (const name of [`gatsby`, `react-scripts`]) { + for (const name of [`react-scripts`]) { const packageStore = runtimeState.packageRegistry.get(name); if (packageStore) { for (const reference of packageStore.keys()) { @@ -66037,7 +66251,7 @@ function makeApi(runtimeState, opts) { let stat; try { candidates.push(unqualifiedPath); - stat = fs_1.default.statSync(unqualifiedPath); + stat = opts.fakeFs.statSync(unqualifiedPath); } catch (error) { } // If the file exists and is a file, we can stop right there @@ -66053,20 +66267,20 @@ function makeApi(runtimeState, opts) { // be resolved relative to "/xyz/.pnp/local/pnp-0123456789/" rather than "/xyz/pkg-with-peers/", because otherwise // we would lose the information that would tell us what are the dependencies of pkg-with-peers relative to its // ancestors. - if (fs_1.default.lstatSync(unqualifiedPath).isSymbolicLink()) - unqualifiedPath = path_1.default.normalize(path_1.default.resolve(path_1.default.dirname(unqualifiedPath), fs_1.default.readlinkSync(unqualifiedPath))); + if (opts.fakeFs.lstatSync(unqualifiedPath).isSymbolicLink()) + unqualifiedPath = path_1.posix.normalize(path_1.posix.resolve(path_1.posix.dirname(unqualifiedPath), opts.fakeFs.readlinkSync(unqualifiedPath))); return unqualifiedPath; } // If the file is a directory, we must check if it contains a package.json with a "main" entry if (stat && stat.isDirectory()) { let pkgJson; try { - pkgJson = JSON.parse(fs_1.default.readFileSync(`${unqualifiedPath}/package.json`, 'utf-8')); + pkgJson = JSON.parse(opts.fakeFs.readFileSync(`${unqualifiedPath}/package.json`, `utf8`)); } catch (error) { } let nextUnqualifiedPath; if (pkgJson && pkgJson.main) - nextUnqualifiedPath = path_1.default.resolve(unqualifiedPath, pkgJson.main); + nextUnqualifiedPath = path_1.posix.resolve(unqualifiedPath, pkgJson.main); // If the "main" field changed the path, we start again from this new location if (nextUnqualifiedPath && nextUnqualifiedPath !== unqualifiedPath) { const resolution = applyNodeExtensionResolution(nextUnqualifiedPath, candidates, { extensions }); @@ -66082,7 +66296,7 @@ function makeApi(runtimeState, opts) { }) .find(candidateFile => { candidates.push(candidateFile); - return fs_1.default.existsSync(candidateFile); + return opts.fakeFs.existsSync(candidateFile); }); if (qualifiedPath) return qualifiedPath; @@ -66094,7 +66308,7 @@ function makeApi(runtimeState, opts) { }) .find(candidateFile => { candidates.push(candidateFile); - return fs_1.default.existsSync(candidateFile); + return opts.fakeFs.existsSync(candidateFile); }); if (indexPath) { return indexPath; @@ -66123,7 +66337,7 @@ function makeApi(runtimeState, opts) { * Normalize path to posix format. */ function normalizePath(p) { - p = path_1.default.normalize(p); + p = path_1.posix.normalize(p); if (process.platform === 'win32') p = p.replace(backwardSlashRegExp, '/'); return p; @@ -66134,6 +66348,8 @@ function makeApi(runtimeState, opts) { function callNativeResolution(request, issuer) { if (issuer.endsWith('/')) issuer += 'internal.js'; + request = fslib_1.NodeFS.fromPortablePath(request); + issuer = fslib_1.NodeFS.fromPortablePath(issuer); // Since we would need to create a fake module anyway (to call _resolveLookupPath that // would give us the paths to give to _resolveFilename), we can as well not use // the {paths} option at all, since it internally makes _resolveFilename create another @@ -66165,12 +66381,11 @@ function makeApi(runtimeState, opts) { return null; return packageInformation; } - ; /** * Finds the package locator that owns the specified path. If none is found, returns null instead. */ function findPackageLocator(location) { - let relativeLocation = normalizePath(path_1.default.relative(runtimeState.basePath, location)); + let relativeLocation = normalizePath(path_1.posix.relative(runtimeState.basePath, location)); if (!relativeLocation.match(isStrictRegExp)) relativeLocation = `./${relativeLocation}`; if (location.match(isDirRegExp) && !relativeLocation.endsWith(`/`)) @@ -66241,18 +66456,18 @@ function makeApi(runtimeState, opts) { // If the request is a relative or absolute path, we just return it normalized const dependencyNameMatch = request.match(pathRegExp); if (!dependencyNameMatch) { - if (path_1.default.isAbsolute(request)) { - unqualifiedPath = path_1.default.normalize(request); + if (path_1.posix.isAbsolute(request)) { + unqualifiedPath = path_1.posix.normalize(request); } else { if (!issuer) { throw internalTools_1.makeError(`API_ERROR`, `The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute`, { request, issuer }); } if (issuer.match(isDirRegExp)) { - unqualifiedPath = path_1.default.normalize(path_1.default.resolve(issuer, request)); + unqualifiedPath = path_1.posix.normalize(path_1.posix.resolve(issuer, request)); } else { - unqualifiedPath = path_1.default.normalize(path_1.default.resolve(path_1.default.dirname(issuer), request)); + unqualifiedPath = path_1.posix.normalize(path_1.posix.resolve(path_1.posix.dirname(issuer), request)); } } } @@ -66312,15 +66527,15 @@ function makeApi(runtimeState, opts) { throw internalTools_1.makeError(`MISSING_DEPENDENCY`, `A dependency seems valid but didn't get installed for some reason. This might be caused by a partial install, such as dev vs prod.\n\nRequired package: ${dependencyLocator.name}@${dependencyLocator.reference} (via "${request}")\nRequired by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuer})\n`, { request, issuer, dependencyLocator: Object.assign({}, dependencyLocator) }); } // Now that we know which package we should resolve to, we only have to find out the file location - const dependencyLocation = path_1.default.resolve(runtimeState.basePath, dependencyInformation.packageLocation); + const dependencyLocation = path_1.posix.resolve(runtimeState.basePath, dependencyInformation.packageLocation); if (subPath) { - unqualifiedPath = path_1.default.resolve(dependencyLocation, subPath); + unqualifiedPath = path_1.posix.resolve(dependencyLocation, subPath); } else { unqualifiedPath = dependencyLocation; } } - return path_1.default.normalize(unqualifiedPath); + return path_1.posix.normalize(unqualifiedPath); } ; /** @@ -66331,7 +66546,7 @@ function makeApi(runtimeState, opts) { const candidates = []; const qualifiedPath = applyNodeExtensionResolution(unqualifiedPath, candidates, { extensions }); if (qualifiedPath) { - return path_1.default.normalize(qualifiedPath); + return path_1.posix.normalize(qualifiedPath); } else { throw internalTools_1.makeError(`QUALIFIED_PATH_RESOLUTION_FAILED`, `Couldn't find a suitable Node resolution for the specified unqualified path\n\nSource path: ${unqualifiedPath}\n${candidates.map(candidate => `Rejected resolution: ${candidate}\n`).join(``)}`, { unqualifiedPath }); @@ -66364,11 +66579,40 @@ function makeApi(runtimeState, opts) { return { VERSIONS, topLevel, - getPackageInformation, - findPackageLocator, - resolveToUnqualified, - resolveUnqualified, - resolveRequest, + getPackageInformation: (locator) => { + const info = getPackageInformation(locator); + if (info === null) + return null; + const packageLocation = fslib_1.NodeFS.fromPortablePath(info.packageLocation); + const nativeInfo = Object.assign({}, info, { packageLocation }); + return nativeInfo; + }, + findPackageLocator: (path) => { + path = fslib_1.NodeFS.toPortablePath(path); + return findPackageLocator(path); + }, + resolveToUnqualified: (request, issuer, opts) => { + request = fslib_1.NodeFS.toPortablePath(request); + if (issuer !== null) + issuer = fslib_1.NodeFS.toPortablePath(issuer); + const resolution = resolveToUnqualified(request, issuer, opts); + if (resolution === null) + return null; + return fslib_1.NodeFS.fromPortablePath(resolution); + }, + resolveUnqualified: (unqualifiedPath, opts) => { + unqualifiedPath = fslib_1.NodeFS.fromPortablePath(unqualifiedPath); + return fslib_1.NodeFS.fromPortablePath(resolveUnqualified(unqualifiedPath, opts)); + }, + resolveRequest: (request, issuer, opts) => { + request = fslib_1.NodeFS.toPortablePath(request); + if (issuer !== null) + issuer = fslib_1.NodeFS.toPortablePath(issuer); + const resolution = resolveRequest(request, issuer, opts); + if (resolution === null) + return null; + return fslib_1.NodeFS.fromPortablePath(resolution); + }, }; } exports.makeApi = makeApi; diff --git a/azure-pipelines.yml b/azure-pipelines.yml index d3e49a8bd9ef..36268db4d06b 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -1,20 +1,24 @@ jobs: -# - job: Windows -# pool: 'Hosted VS2017' +- job: Windows + pool: + vmImage: 'vs2017-win2016' -# variables: -# os_name: Windows + variables: + os_name: Windows -# strategy: -# matrix: -# node_8_x: -# node_version: 8.x -# node_10_x: -# node_version: 10.x + strategy: + matrix: + node_8_x: + node_version: 8.x + node_10_x: + node_version: 10.x -# steps: -# - template: scripts/azure-run-tests.yml + steps: + - bash: | + git config core.symlinks true + git reset --hard + - template: scripts/azure-run-tests.yml - job: Linux pool: diff --git a/packages/acceptance-tests/pkg-tests-specs/sources/pnp.test.js b/packages/acceptance-tests/pkg-tests-specs/sources/pnp.test.js index 163577a65530..1ef8f89df376 100644 --- a/packages/acceptance-tests/pkg-tests-specs/sources/pnp.test.js +++ b/packages/acceptance-tests/pkg-tests-specs/sources/pnp.test.js @@ -68,6 +68,7 @@ describe(`Plug'n'Play`, () => { }, }, async ({path, run, source}) => { + console.log(path); await run(`install`); await expect( diff --git a/packages/berry-cli/bin/berry.js b/packages/berry-cli/bin/berry.js index a0a45cf64dcd..12f33d40a00b 100644 --- a/packages/berry-cli/bin/berry.js +++ b/packages/berry-cli/bin/berry.js @@ -98,30 +98,31 @@ var __importDefault = (this && this.__importDefault) || function (mod) { Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const fslib_1 = __webpack_require__(3); -const concierge_1 = __webpack_require__(38); -const child_process_1 = __webpack_require__(278); -const joi_1 = __importDefault(__webpack_require__(385)); -const pluginConfiguration_1 = __webpack_require__(417); +const concierge_1 = __webpack_require__(39); +const child_process_1 = __webpack_require__(279); +const joi_1 = __importDefault(__webpack_require__(386)); +const pluginConfiguration_1 = __webpack_require__(418); const concierge = new concierge_1.Concierge({ Joi: joi_1.default, configKey: null }); concierge.topLevel(`[--cwd PATH]`).validate(joi_1.default.object().unknown().keys({ cwd: joi_1.default.string().default(process.cwd()), })); function runBinary(path) { - if (path.endsWith(`.js`)) { - child_process_1.execFileSync(process.execPath, [path, ...process.argv.slice(2)], { + const physicalPath = fslib_1.NodeFS.fromPortablePath(path); + if (physicalPath) { + child_process_1.execFileSync(process.execPath, [physicalPath, ...process.argv.slice(2)], { stdio: `inherit`, env: Object.assign({}, process.env, { YARN_IGNORE_PATH: `1` }) }); } else { - child_process_1.execFileSync(path, process.argv.slice(2), { + child_process_1.execFileSync(physicalPath, process.argv.slice(2), { stdio: `inherit`, env: Object.assign({}, process.env, { YARN_IGNORE_PATH: `1` }) }); } } async function run() { - const configuration = await core_1.Configuration.find(process.cwd(), pluginConfiguration_1.pluginConfiguration); + const configuration = await core_1.Configuration.find(fslib_1.NodeFS.toPortablePath(process.cwd()), pluginConfiguration_1.pluginConfiguration); const yarnPath = configuration.get(`yarnPath`); const ignorePath = configuration.get(`ignorePath`); if (yarnPath !== null && !ignorePath) { @@ -142,7 +143,9 @@ async function run() { for (const plugin of configuration.plugins.values()) for (const command of plugin.commands || []) command(concierge, pluginConfiguration_1.pluginConfiguration); - concierge.runExit(`yarn`, process.argv.slice(2)); + concierge.runExit(`yarn`, process.argv.slice(2), { + cwd: fslib_1.NodeFS.toPortablePath(process.cwd()) + }); } } run().catch(error => { @@ -167,40 +170,40 @@ var __importStar = (this && this.__importStar) || function (mod) { Object.defineProperty(exports, "__esModule", { value: true }); var Cache_1 = __webpack_require__(2); exports.Cache = Cache_1.Cache; -var Configuration_1 = __webpack_require__(30); +var Configuration_1 = __webpack_require__(31); exports.Configuration = Configuration_1.Configuration; exports.SettingsType = Configuration_1.SettingsType; -var JsonReport_1 = __webpack_require__(72); +var JsonReport_1 = __webpack_require__(73); exports.JsonReport = JsonReport_1.JsonReport; -var LightReport_1 = __webpack_require__(73); +var LightReport_1 = __webpack_require__(74); exports.LightReport = LightReport_1.LightReport; -var Manifest_1 = __webpack_require__(74); +var Manifest_1 = __webpack_require__(75); exports.Manifest = Manifest_1.Manifest; -var Project_1 = __webpack_require__(75); +var Project_1 = __webpack_require__(76); exports.Project = Project_1.Project; -var Report_1 = __webpack_require__(25); +var Report_1 = __webpack_require__(26); exports.ReportError = Report_1.ReportError; exports.Report = Report_1.Report; exports.MessageName = Report_1.MessageName; -var StreamReport_1 = __webpack_require__(279); +var StreamReport_1 = __webpack_require__(280); exports.StreamReport = StreamReport_1.StreamReport; -var ThrowReport_1 = __webpack_require__(87); +var ThrowReport_1 = __webpack_require__(88); exports.ThrowReport = ThrowReport_1.ThrowReport; -var VirtualFetcher_1 = __webpack_require__(66); +var VirtualFetcher_1 = __webpack_require__(67); exports.VirtualFetcher = VirtualFetcher_1.VirtualFetcher; -var Workspace_1 = __webpack_require__(88); +var Workspace_1 = __webpack_require__(89); exports.Workspace = Workspace_1.Workspace; -var types_1 = __webpack_require__(69); +var types_1 = __webpack_require__(70); exports.LinkType = types_1.LinkType; -const httpUtils = __importStar(__webpack_require__(306)); +const httpUtils = __importStar(__webpack_require__(307)); exports.httpUtils = httpUtils; -const miscUtils = __importStar(__webpack_require__(29)); +const miscUtils = __importStar(__webpack_require__(30)); exports.miscUtils = miscUtils; -const scriptUtils = __importStar(__webpack_require__(276)); +const scriptUtils = __importStar(__webpack_require__(277)); exports.scriptUtils = scriptUtils; -const structUtils = __importStar(__webpack_require__(27)); +const structUtils = __importStar(__webpack_require__(28)); exports.structUtils = structUtils; -const tgzUtils = __importStar(__webpack_require__(352)); +const tgzUtils = __importStar(__webpack_require__(353)); exports.tgzUtils = tgzUtils; @@ -210,9 +213,6 @@ exports.tgzUtils = tgzUtils; "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; var __importStar = (this && this.__importStar) || function (mod) { if (mod && mod.__esModule) return mod; var result = {}; @@ -222,12 +222,12 @@ var __importStar = (this && this.__importStar) || function (mod) { }; Object.defineProperty(exports, "__esModule", { value: true }); const fslib_1 = __webpack_require__(3); -const lockfile_1 = __webpack_require__(18); -const path_1 = __importDefault(__webpack_require__(7)); -const util_1 = __webpack_require__(16); -const Report_1 = __webpack_require__(25); -const hashUtils = __importStar(__webpack_require__(26)); -const structUtils = __importStar(__webpack_require__(27)); +const lockfile_1 = __webpack_require__(19); +const path_1 = __webpack_require__(6); +const util_1 = __webpack_require__(17); +const Report_1 = __webpack_require__(26); +const hashUtils = __importStar(__webpack_require__(27)); +const structUtils = __importStar(__webpack_require__(28)); const lockP = util_1.promisify(lockfile_1.lock); const unlockP = util_1.promisify(lockfile_1.unlock); class Cache { @@ -245,11 +245,11 @@ class Cache { return `${structUtils.slugifyLocator(locator)}.zip`; } getLocatorPath(locator) { - return path_1.default.resolve(this.cwd, this.getLocatorFilename(locator)); + return path_1.posix.resolve(this.cwd, this.getLocatorFilename(locator)); } async setup() { await fslib_1.xfs.mkdirpPromise(this.cwd); - await this.writeFileIntoCache(path_1.default.resolve(this.cwd, `.gitignore`), async (file) => { + await this.writeFileIntoCache(path_1.posix.resolve(this.cwd, `.gitignore`), async (file) => { await fslib_1.xfs.writeFilePromise(file, `/.gitignore\n*.lock\n`); }); } @@ -303,7 +303,7 @@ class Cache { return [zipFs, checksum]; } async writeFileIntoCache(file, generator) { - const lock = `${file}.lock`; + const lock = fslib_1.NodeFS.fromPortablePath(`${file}.lock`); try { await lockP(lock); } @@ -331,17 +331,19 @@ Object.defineProperty(exports, "__esModule", { value: true }); const NodeFS_1 = __webpack_require__(4); var AliasFS_1 = __webpack_require__(8); exports.AliasFS = AliasFS_1.AliasFS; +var FakeFS_1 = __webpack_require__(7); +exports.FakeFS = FakeFS_1.FakeFS; var CwdFS_1 = __webpack_require__(9); exports.CwdFS = CwdFS_1.CwdFS; var JailFS_1 = __webpack_require__(10); exports.JailFS = JailFS_1.JailFS; var NodeFS_2 = __webpack_require__(4); exports.NodeFS = NodeFS_2.NodeFS; -var FakeFS_1 = __webpack_require__(6); -exports.FakeFS = FakeFS_1.FakeFS; -var ZipFS_1 = __webpack_require__(11); +var PosixFS_1 = __webpack_require__(11); +exports.PosixFS = PosixFS_1.PosixFS; +var ZipFS_1 = __webpack_require__(12); exports.ZipFS = ZipFS_1.ZipFS; -var ZipOpenFS_1 = __webpack_require__(17); +var ZipOpenFS_1 = __webpack_require__(18); exports.ZipOpenFS = ZipOpenFS_1.ZipOpenFS; function wrapSync(fn) { return fn; @@ -460,7 +462,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) { }; Object.defineProperty(exports, "__esModule", { value: true }); const fs_1 = __importDefault(__webpack_require__(5)); -const FakeFS_1 = __webpack_require__(6); +const path_1 = __webpack_require__(6); +const FakeFS_1 = __webpack_require__(7); +const PORTABLE_PATH_PREFIX = `/mnt/`; +const PORTABLE_PREFIX_REGEXP = /^\/mnt\/([a-z])(?:\/(.*))?$/; class NodeFS extends FakeFS_1.FakeFS { constructor(realFs = fs_1.default) { super(); @@ -471,11 +476,11 @@ class NodeFS extends FakeFS_1.FakeFS { } async openPromise(p, flags, mode) { return await new Promise((resolve, reject) => { - this.realFs.open(p, flags, mode, this.makeCallback(resolve, reject)); + this.realFs.open(NodeFS.fromPortablePath(p), flags, mode, this.makeCallback(resolve, reject)); }); } openSync(p, flags, mode) { - return this.realFs.openSync(p, flags, mode); + return this.realFs.openSync(NodeFS.fromPortablePath(p), flags, mode); } async closePromise(fd) { await new Promise((resolve, reject) => { @@ -486,148 +491,152 @@ class NodeFS extends FakeFS_1.FakeFS { this.realFs.closeSync(fd); } createReadStream(p, opts) { - return this.realFs.createReadStream(this.fromPortablePath(p), opts); + return this.realFs.createReadStream(NodeFS.fromPortablePath(p), opts); } createWriteStream(p, opts) { - return this.realFs.createWriteStream(this.fromPortablePath(p), opts); + return this.realFs.createWriteStream(NodeFS.fromPortablePath(p), opts); } async realpathPromise(p) { return await new Promise((resolve, reject) => { - this.realFs.realpath(p, {}, this.makeCallback(resolve, reject)); + this.realFs.realpath(NodeFS.fromPortablePath(p), {}, this.makeCallback(resolve, reject)); + }).then(path => { + return NodeFS.toPortablePath(path); }); } realpathSync(p) { - return this.toPortablePath(this.realFs.realpathSync(this.fromPortablePath(p), {})); + return NodeFS.toPortablePath(this.realFs.realpathSync(NodeFS.fromPortablePath(p), {})); } async existsPromise(p) { return await new Promise(resolve => { - this.realFs.exists(this.fromPortablePath(p), resolve); + this.realFs.exists(NodeFS.fromPortablePath(p), resolve); }); } existsSync(p) { - return this.realFs.existsSync(this.fromPortablePath(p)); + return this.realFs.existsSync(NodeFS.fromPortablePath(p)); } async statPromise(p) { return await new Promise((resolve, reject) => { - this.realFs.stat(p, this.makeCallback(resolve, reject)); + this.realFs.stat(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject)); }); } statSync(p) { - return this.realFs.statSync(this.fromPortablePath(p)); + return this.realFs.statSync(NodeFS.fromPortablePath(p)); } async lstatPromise(p) { return await new Promise((resolve, reject) => { - this.realFs.lstat(p, this.makeCallback(resolve, reject)); + this.realFs.lstat(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject)); }); } lstatSync(p) { - return this.realFs.lstatSync(this.fromPortablePath(p)); + return this.realFs.lstatSync(NodeFS.fromPortablePath(p)); } async chmodPromise(p, mask) { return await new Promise((resolve, reject) => { - this.realFs.chmod(this.fromPortablePath(p), mask, this.makeCallback(resolve, reject)); + this.realFs.chmod(NodeFS.fromPortablePath(p), mask, this.makeCallback(resolve, reject)); }); } chmodSync(p, mask) { - return this.realFs.chmodSync(this.fromPortablePath(p), mask); + return this.realFs.chmodSync(NodeFS.fromPortablePath(p), mask); } async renamePromise(oldP, newP) { return await new Promise((resolve, reject) => { - this.realFs.rename(this.fromPortablePath(oldP), this.fromPortablePath(newP), this.makeCallback(resolve, reject)); + this.realFs.rename(NodeFS.fromPortablePath(oldP), NodeFS.fromPortablePath(newP), this.makeCallback(resolve, reject)); }); } renameSync(oldP, newP) { - return this.realFs.renameSync(this.fromPortablePath(oldP), this.fromPortablePath(newP)); + return this.realFs.renameSync(NodeFS.fromPortablePath(oldP), NodeFS.fromPortablePath(newP)); } async copyFilePromise(sourceP, destP, flags = 0) { return await new Promise((resolve, reject) => { - this.realFs.copyFile(this.fromPortablePath(sourceP), this.fromPortablePath(destP), flags, this.makeCallback(resolve, reject)); + this.realFs.copyFile(NodeFS.fromPortablePath(sourceP), NodeFS.fromPortablePath(destP), flags, this.makeCallback(resolve, reject)); }); } copyFileSync(sourceP, destP, flags = 0) { - return this.realFs.copyFileSync(this.fromPortablePath(sourceP), this.fromPortablePath(destP), flags); + return this.realFs.copyFileSync(NodeFS.fromPortablePath(sourceP), NodeFS.fromPortablePath(destP), flags); } async writeFilePromise(p, content, opts) { return await new Promise((resolve, reject) => { if (opts) { - this.realFs.writeFile(p, content, opts, this.makeCallback(resolve, reject)); + this.realFs.writeFile(NodeFS.fromPortablePath(p), content, opts, this.makeCallback(resolve, reject)); } else { - this.realFs.writeFile(p, content, this.makeCallback(resolve, reject)); + this.realFs.writeFile(NodeFS.fromPortablePath(p), content, this.makeCallback(resolve, reject)); } }); } writeFileSync(p, content, opts) { if (opts) { - this.realFs.writeFileSync(this.fromPortablePath(p), content, opts); + this.realFs.writeFileSync(NodeFS.fromPortablePath(p), content, opts); } else { - this.realFs.writeFileSync(this.fromPortablePath(p), content); + this.realFs.writeFileSync(NodeFS.fromPortablePath(p), content); } } async unlinkPromise(p) { return await new Promise((resolve, reject) => { - this.realFs.unlink(p, this.makeCallback(resolve, reject)); + this.realFs.unlink(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject)); }); } unlinkSync(p) { - return this.realFs.unlinkSync(this.fromPortablePath(p)); + return this.realFs.unlinkSync(NodeFS.fromPortablePath(p)); } async utimesPromise(p, atime, mtime) { return await new Promise((resolve, reject) => { - this.realFs.utimes(p, atime, mtime, this.makeCallback(resolve, reject)); + this.realFs.utimes(NodeFS.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); }); } utimesSync(p, atime, mtime) { - this.realFs.utimesSync(p, atime, mtime); + this.realFs.utimesSync(NodeFS.fromPortablePath(p), atime, mtime); } async mkdirPromise(p) { return await new Promise((resolve, reject) => { - this.realFs.mkdir(p, this.makeCallback(resolve, reject)); + this.realFs.mkdir(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject)); }); } mkdirSync(p) { - return this.realFs.mkdirSync(this.fromPortablePath(p)); + return this.realFs.mkdirSync(NodeFS.fromPortablePath(p)); } async rmdirPromise(p) { return await new Promise((resolve, reject) => { - this.realFs.rmdir(p, this.makeCallback(resolve, reject)); + this.realFs.rmdir(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject)); }); } rmdirSync(p) { - return this.realFs.rmdirSync(this.fromPortablePath(p)); + return this.realFs.rmdirSync(NodeFS.fromPortablePath(p)); } async symlinkPromise(target, p) { return await new Promise((resolve, reject) => { - this.realFs.symlink(target, this.fromPortablePath(p), this.makeCallback(resolve, reject)); + this.realFs.symlink(NodeFS.fromPortablePath(target), NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject)); }); } symlinkSync(target, p) { - return this.realFs.symlinkSync(target, this.fromPortablePath(p)); + return this.realFs.symlinkSync(NodeFS.fromPortablePath(target), NodeFS.fromPortablePath(p)); } async readFilePromise(p, encoding) { return await new Promise((resolve, reject) => { - this.realFs.readFile(this.fromPortablePath(p), encoding, this.makeCallback(resolve, reject)); + this.realFs.readFile(NodeFS.fromPortablePath(p), encoding, this.makeCallback(resolve, reject)); }); } readFileSync(p, encoding) { - return this.realFs.readFileSync(this.fromPortablePath(p), encoding); + return this.realFs.readFileSync(NodeFS.fromPortablePath(p), encoding); } async readdirPromise(p) { return await new Promise((resolve, reject) => { - this.realFs.readdir(p, this.makeCallback(resolve, reject)); + this.realFs.readdir(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject)); }); } readdirSync(p) { - return this.realFs.readdirSync(this.fromPortablePath(p)); + return this.realFs.readdirSync(NodeFS.fromPortablePath(p)); } async readlinkPromise(p) { return await new Promise((resolve, reject) => { - this.realFs.readlink(p, this.makeCallback(resolve, reject)); + this.realFs.readlink(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject)); + }).then(path => { + return NodeFS.toPortablePath(path); }); } readlinkSync(p) { - return this.realFs.readlinkSync(this.fromPortablePath(p)); + return NodeFS.toPortablePath(this.realFs.readlinkSync(NodeFS.fromPortablePath(p))); } makeCallback(resolve, reject) { return (err, result) => { @@ -639,11 +648,34 @@ class NodeFS extends FakeFS_1.FakeFS { } }; } - fromPortablePath(p) { - return p; - } - toPortablePath(p) { - return p; + static fromPortablePath(p) { + if (process.platform !== `win32`) + return p; + // Path should look like "/mnt/n/berry/scripts/plugin-pack.js" + // And transform to "N:\berry/scripts/plugin-pack.js" + const match = p.match(PORTABLE_PREFIX_REGEXP); + if (!match) + return p; + const [, drive, pathWithoutPrefix = ''] = match; + const windowsPath = pathWithoutPrefix.replace(/\//g, '\\'); + return `${drive.toUpperCase()}:\\${windowsPath}`; + } + static toPortablePath(p) { + if (process.platform !== `win32`) + return p; + // Path should look like "N:\berry/scripts/plugin-pack.js" + // And transform to "/mnt/n/berry/scripts/plugin-pack.js" + // Skip if the path is already portable + if (p.startsWith(PORTABLE_PATH_PREFIX)) + return p; + const { root } = path_1.win32.parse(p); + // If relative path, just replace win32 slashes by posix slashes + if (!root) + return p.replace(/\\/g, '/'); + const driveLetter = root[0].toLowerCase(); + const pathWithoutRoot = p.substr(root.length); + const posixPath = pathWithoutRoot.replace(/\\/g, '/'); + return `${PORTABLE_PATH_PREFIX}${driveLetter}/${posixPath}`; } } exports.NodeFS = NodeFS; @@ -657,12 +689,18 @@ module.exports = require("fs"); /***/ }), /* 6 */ +/***/ (function(module, exports) { + +module.exports = require("path"); + +/***/ }), +/* 7 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const path_1 = __webpack_require__(7); +const path_1 = __webpack_require__(6); class FakeFS { resolve(p) { return path_1.posix.resolve(`/`, p); @@ -683,7 +721,22 @@ class FakeFS { if (stat.isDirectory()) { for (const entry of await this.readdirPromise(p)) await this.removePromise(path_1.posix.resolve(p, entry)); - await this.rmdirPromise(p); + // 5 gives 1s worth of retries at worst + for (let t = 0; t < 5; ++t) { + try { + await this.rmdirPromise(p); + break; + } + catch (error) { + if (error.code === `EBUSY` || error.code === `ENOTEMPTY`) { + await new Promise(resolve => setTimeout(resolve, t * 100)); + continue; + } + else { + throw error; + } + } + } } else { await this.unlinkPromise(p); @@ -895,12 +948,6 @@ exports.FakeFS = FakeFS; ; -/***/ }), -/* 7 */ -/***/ (function(module, exports) { - -module.exports = require("path"); - /***/ }), /* 8 */ /***/ (function(module, exports, __webpack_require__) { @@ -908,7 +955,7 @@ module.exports = require("path"); "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const FakeFS_1 = __webpack_require__(6); +const FakeFS_1 = __webpack_require__(7); class AliasFS extends FakeFS_1.FakeFS { constructor(target, { baseFs }) { super(); @@ -1058,8 +1105,8 @@ exports.AliasFS = AliasFS; "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const path_1 = __webpack_require__(7); -const FakeFS_1 = __webpack_require__(6); +const path_1 = __webpack_require__(6); +const FakeFS_1 = __webpack_require__(7); const NodeFS_1 = __webpack_require__(4); class CwdFS extends FakeFS_1.FakeFS { constructor(target, { baseFs = new NodeFS_1.NodeFS() } = {}) { @@ -1219,8 +1266,8 @@ exports.CwdFS = CwdFS; "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const path_1 = __webpack_require__(7); -const FakeFS_1 = __webpack_require__(6); +const path_1 = __webpack_require__(6); +const FakeFS_1 = __webpack_require__(7); const NodeFS_1 = __webpack_require__(4); class JailFS extends FakeFS_1.FakeFS { constructor(target, { baseFs = new NodeFS_1.NodeFS() } = {}) { @@ -1304,10 +1351,10 @@ class JailFS extends FakeFS_1.FakeFS { return this.baseFs.writeFileSync(this.fromJailedPath(p), content, opts); } async unlinkPromise(p) { - return await this.baseFs.rmdirPromise(this.fromJailedPath(p)); + return await this.baseFs.unlinkPromise(this.fromJailedPath(p)); } unlinkSync(p) { - return this.baseFs.rmdirSync(this.fromJailedPath(p)); + return this.baseFs.unlinkSync(this.fromJailedPath(p)); } async utimesPromise(p, atime, mtime) { return await this.baseFs.utimesPromise(this.fromJailedPath(p), atime, mtime); @@ -1384,16 +1431,163 @@ exports.JailFS = JailFS; "use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const FakeFS_1 = __webpack_require__(7); +const NodeFS_1 = __webpack_require__(4); +class PosixFS extends FakeFS_1.FakeFS { + constructor(baseFs) { + super(); + this.baseFs = baseFs; + } + getRealPath() { + return NodeFS_1.NodeFS.fromPortablePath(this.baseFs.getRealPath()); + } + async openPromise(p, flags, mode) { + return await this.baseFs.openPromise(NodeFS_1.NodeFS.toPortablePath(p), flags, mode); + } + openSync(p, flags, mode) { + return this.baseFs.openSync(NodeFS_1.NodeFS.toPortablePath(p), flags, mode); + } + async closePromise(fd) { + await this.baseFs.closePromise(fd); + } + closeSync(fd) { + this.baseFs.closeSync(fd); + } + createReadStream(p, opts) { + return this.baseFs.createReadStream(NodeFS_1.NodeFS.toPortablePath(p), opts); + } + createWriteStream(p, opts) { + return this.baseFs.createWriteStream(NodeFS_1.NodeFS.toPortablePath(p), opts); + } + async realpathPromise(p) { + return NodeFS_1.NodeFS.fromPortablePath(await this.baseFs.realpathPromise(NodeFS_1.NodeFS.toPortablePath(p))); + } + realpathSync(p) { + return NodeFS_1.NodeFS.fromPortablePath(this.baseFs.realpathSync(NodeFS_1.NodeFS.toPortablePath(p))); + } + async existsPromise(p) { + return await this.baseFs.existsPromise(NodeFS_1.NodeFS.toPortablePath(p)); + } + existsSync(p) { + return this.baseFs.existsSync(NodeFS_1.NodeFS.toPortablePath(p)); + } + async statPromise(p) { + return await this.baseFs.statPromise(NodeFS_1.NodeFS.toPortablePath(p)); + } + statSync(p) { + return this.baseFs.statSync(NodeFS_1.NodeFS.toPortablePath(p)); + } + async lstatPromise(p) { + return await this.baseFs.lstatPromise(NodeFS_1.NodeFS.toPortablePath(p)); + } + lstatSync(p) { + return this.baseFs.lstatSync(NodeFS_1.NodeFS.toPortablePath(p)); + } + async chmodPromise(p, mask) { + return await this.baseFs.chmodPromise(NodeFS_1.NodeFS.toPortablePath(p), mask); + } + chmodSync(p, mask) { + return this.baseFs.chmodSync(NodeFS_1.NodeFS.toPortablePath(p), mask); + } + async renamePromise(oldP, newP) { + return await this.baseFs.renamePromise(NodeFS_1.NodeFS.toPortablePath(oldP), NodeFS_1.NodeFS.toPortablePath(newP)); + } + renameSync(oldP, newP) { + return this.baseFs.renameSync(NodeFS_1.NodeFS.toPortablePath(oldP), NodeFS_1.NodeFS.toPortablePath(newP)); + } + async copyFilePromise(sourceP, destP, flags) { + return await this.baseFs.copyFilePromise(NodeFS_1.NodeFS.toPortablePath(sourceP), NodeFS_1.NodeFS.toPortablePath(destP), flags); + } + copyFileSync(sourceP, destP, flags) { + return this.baseFs.copyFileSync(NodeFS_1.NodeFS.toPortablePath(sourceP), NodeFS_1.NodeFS.toPortablePath(destP), flags); + } + async writeFilePromise(p, content, opts) { + return await this.baseFs.writeFilePromise(NodeFS_1.NodeFS.toPortablePath(p), content, opts); + } + writeFileSync(p, content, opts) { + return this.baseFs.writeFileSync(NodeFS_1.NodeFS.toPortablePath(p), content, opts); + } + async unlinkPromise(p) { + return await this.baseFs.unlinkPromise(NodeFS_1.NodeFS.toPortablePath(p)); + } + unlinkSync(p) { + return this.baseFs.unlinkSync(NodeFS_1.NodeFS.toPortablePath(p)); + } + async utimesPromise(p, atime, mtime) { + return await this.baseFs.utimesPromise(NodeFS_1.NodeFS.toPortablePath(p), atime, mtime); + } + utimesSync(p, atime, mtime) { + return this.baseFs.utimesSync(NodeFS_1.NodeFS.toPortablePath(p), atime, mtime); + } + async mkdirPromise(p) { + return await this.baseFs.mkdirPromise(NodeFS_1.NodeFS.toPortablePath(p)); + } + mkdirSync(p) { + return this.baseFs.mkdirSync(NodeFS_1.NodeFS.toPortablePath(p)); + } + async rmdirPromise(p) { + return await this.baseFs.rmdirPromise(NodeFS_1.NodeFS.toPortablePath(p)); + } + rmdirSync(p) { + return this.baseFs.rmdirSync(NodeFS_1.NodeFS.toPortablePath(p)); + } + async symlinkPromise(target, p) { + return await this.baseFs.symlinkPromise(target, NodeFS_1.NodeFS.toPortablePath(p)); + } + symlinkSync(target, p) { + return this.baseFs.symlinkSync(target, NodeFS_1.NodeFS.toPortablePath(p)); + } + async readFilePromise(p, encoding) { + // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered) + switch (encoding) { + case `utf8`: + return await this.baseFs.readFilePromise(NodeFS_1.NodeFS.toPortablePath(p), encoding); + default: + return await this.baseFs.readFilePromise(NodeFS_1.NodeFS.toPortablePath(p), encoding); + } + } + readFileSync(p, encoding) { + // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered) + switch (encoding) { + case `utf8`: + return this.baseFs.readFileSync(NodeFS_1.NodeFS.toPortablePath(p), encoding); + default: + return this.baseFs.readFileSync(NodeFS_1.NodeFS.toPortablePath(p), encoding); + } + } + async readdirPromise(p) { + return await this.baseFs.readdirPromise(NodeFS_1.NodeFS.toPortablePath(p)); + } + readdirSync(p) { + return this.baseFs.readdirSync(NodeFS_1.NodeFS.toPortablePath(p)); + } + async readlinkPromise(p) { + return NodeFS_1.NodeFS.fromPortablePath(await this.baseFs.readlinkPromise(NodeFS_1.NodeFS.toPortablePath(p))); + } + readlinkSync(p) { + return NodeFS_1.NodeFS.fromPortablePath(this.baseFs.readlinkSync(NodeFS_1.NodeFS.toPortablePath(p))); + } +} +exports.PosixFS = PosixFS; + + +/***/ }), +/* 12 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); -const libzip_1 = __importDefault(__webpack_require__(12)); +const libzip_1 = __importDefault(__webpack_require__(13)); const fs_1 = __webpack_require__(5); -const path_1 = __webpack_require__(7); -const stream_1 = __webpack_require__(15); -const util_1 = __webpack_require__(16); -const FakeFS_1 = __webpack_require__(6); +const path_1 = __webpack_require__(6); +const stream_1 = __webpack_require__(16); +const util_1 = __webpack_require__(17); +const FakeFS_1 = __webpack_require__(7); const NodeFS_1 = __webpack_require__(4); const S_IFMT = 0o170000; const S_IFDIR = 0o040000; @@ -1481,7 +1675,7 @@ class ZipFS extends FakeFS_1.FakeFS { flags |= libzip_1.default.ZIP_CREATE | libzip_1.default.ZIP_TRUNCATE; if (readOnly) flags |= libzip_1.default.ZIP_RDONLY; - this.zip = libzip_1.default.open(p, flags, errPtr); + this.zip = libzip_1.default.open(NodeFS_1.NodeFS.fromPortablePath(p), flags, errPtr); if (this.zip === 0) { const error = libzip_1.default.struct.errorS(); libzip_1.default.error.initWithCode(error, libzip_1.default.getValue(errPtr, `i32`)); @@ -1991,7 +2185,7 @@ exports.ZipFS = ZipFS; /***/ }), -/* 12 */ +/* 13 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2000,7 +2194,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); -const libzip_1 = __importDefault(__webpack_require__(13)); +const libzip_1 = __importDefault(__webpack_require__(14)); const number64 = [ `number`, `number`, @@ -2088,46 +2282,46 @@ exports.default = { /***/ }), -/* 13 */ +/* 14 */ /***/ (function(module, exports, __webpack_require__) { var frozenFs = Object.assign({}, __webpack_require__(5)); -var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module["arguments"]=[];Module["thisProgram"]="./this.program";Module["quit"]=(function(status,toThrow){throw toThrow});Module["preRun"]=[];Module["postRun"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=true;if(Module["ENVIRONMENT"]){throw new Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)")}var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}else{return scriptDirectory+path}}if(ENVIRONMENT_IS_NODE){if(!(typeof process==="object"&&"function"==="function"))throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");scriptDirectory=__dirname+"/";var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=frozenFs;if(!nodePath)nodePath=__webpack_require__(7);filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(true){module["exports"]=Module}(function(){})("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));(function(){})("unhandledRejection",abort);Module["quit"]=(function(status){process["exit"](status)});Module["inspect"]=(function(){return"[Emscripten Module object]"})}else{throw new Error("environment detection error")}var out=Module["print"]||(typeof console!=="undefined"?console.log.bind(console):typeof print!=="undefined"?print:null);var err=Module["printErr"]||(typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn.bind(console)||out);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;assert(typeof Module["memoryInitializerPrefixURL"]==="undefined","Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["pthreadMainPrefixURL"]==="undefined","Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["cdInitializerPrefixURL"]==="undefined","Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["filePackagePrefixURL"]==="undefined","Module.filePackagePrefixURL option was removed, use Module.locateFile instead");stackSave=stackRestore=stackAlloc=(function(){abort("cannot use the stack before compiled code is ready to run, and has provided stack access")});function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}var asm2wasmImports={"f64-rem":(function(x,y){return x%y}),"debugger":(function(){debugger})};var functionPointers=new Array(0);var tempRet0=0;var setTempRet0=(function(value){tempRet0=value});var GLOBAL_BASE=1024;function getSafeHeapType(bytes,isFloat){switch(bytes){case 1:return"i8";case 2:return"i16";case 4:return isFloat?"float":"i32";case 8:return"double";default:assert(0)}}function SAFE_HEAP_STORE(dest,value,bytes,isFloat){if(dest<=0)abort("segmentation fault storing "+bytes+" bytes to address "+dest);if(dest%bytes!==0)abort("alignment error storing to address "+dest+", which was expected to be aligned to a multiple of "+bytes);if(dest+bytes>HEAP32[DYNAMICTOP_PTR>>2])abort("segmentation fault, exceeded the top of the available dynamic heap when storing "+bytes+" bytes to address "+dest+". DYNAMICTOP="+HEAP32[DYNAMICTOP_PTR>>2]);assert(DYNAMICTOP_PTR);assert(HEAP32[DYNAMICTOP_PTR>>2]<=TOTAL_MEMORY);setValue(dest,value,getSafeHeapType(bytes,isFloat),1)}function SAFE_HEAP_STORE_D(dest,value,bytes){SAFE_HEAP_STORE(dest,value,bytes,true)}function SAFE_HEAP_LOAD(dest,bytes,unsigned,isFloat){if(dest<=0)abort("segmentation fault loading "+bytes+" bytes from address "+dest);if(dest%bytes!==0)abort("alignment error loading from address "+dest+", which was expected to be aligned to a multiple of "+bytes);if(dest+bytes>HEAP32[DYNAMICTOP_PTR>>2])abort("segmentation fault, exceeded the top of the available dynamic heap when loading "+bytes+" bytes from address "+dest+". DYNAMICTOP="+HEAP32[DYNAMICTOP_PTR>>2]);assert(DYNAMICTOP_PTR);assert(HEAP32[DYNAMICTOP_PTR>>2]<=TOTAL_MEMORY);var type=getSafeHeapType(bytes,isFloat);var ret=getValue(dest,type,1);if(unsigned)ret=unSign(ret,parseInt(type.substr(1)),1);return ret}function SAFE_HEAP_LOAD_D(dest,bytes,unsigned){return SAFE_HEAP_LOAD(dest,bytes,unsigned,true)}function segfault(){abort("segmentation fault")}function alignfault(){abort("alignment fault")}var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){function convertReturnValue(ret){if(returnType==="string")return Pointer_stringify(ret);if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;assert(returnType!=="array",'Return type should not be "array".');if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}else{switch(type){case"i1":SAFE_HEAP_STORE(ptr|0,value|0,1);break;case"i8":SAFE_HEAP_STORE(ptr|0,value|0,1);break;case"i16":SAFE_HEAP_STORE(ptr|0,value|0,2);break;case"i32":SAFE_HEAP_STORE(ptr|0,value|0,4);break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/4294967296)>>>0:0)],SAFE_HEAP_STORE(ptr|0,tempI64[0]|0,4),SAFE_HEAP_STORE(ptr+4|0,tempI64[1]|0,4);break;case"float":SAFE_HEAP_STORE_D(ptr|0,Math_fround(value),4);break;case"double":SAFE_HEAP_STORE_D(ptr|0,+value,8);break;default:abort("invalid type for setValue: "+type)}}}function getValue(ptr,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";if(noSafe){switch(type){case"i1":return HEAP8[ptr>>0];case"i8":return HEAP8[ptr>>0];case"i16":return HEAP16[ptr>>1];case"i32":return HEAP32[ptr>>2];case"i64":return HEAP32[ptr>>2];case"float":return HEAPF32[ptr>>2];case"double":return HEAPF64[ptr>>3];default:abort("invalid type for getValue: "+type)}}else{switch(type){case"i1":return SAFE_HEAP_LOAD(ptr|0,1,0)|0;case"i8":return SAFE_HEAP_LOAD(ptr|0,1,0)|0;case"i16":return SAFE_HEAP_LOAD(ptr|0,2,0)|0;case"i32":return SAFE_HEAP_LOAD(ptr|0,4,0)|0;case"i64":return SAFE_HEAP_LOAD(ptr|0,8,0)|0;case"float":return Math_fround(SAFE_HEAP_LOAD_D(ptr|0,4,0));case"double":return+SAFE_HEAP_LOAD_D(ptr|0,8,0);default:abort("invalid type for getValue: "+type)}}return null}var ALLOC_NORMAL=0;var ALLOC_NONE=3;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[_malloc,stackAlloc,dynamicAlloc][allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){assert(typeof maxBytesToWrite=="number","stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}var WASM_PAGE_SIZE=65536;var MIN_TOTAL_MEMORY=16777216;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBuffer(buf){Module["buffer"]=buffer=buf}function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE=1024,STACK_BASE=22720,STACK_MAX=5265600,DYNAMIC_BASE=5265600,DYNAMICTOP_PTR=22464;assert(STACK_BASE%16===0,"stack must start aligned");assert(DYNAMIC_BASE%16===0,"heap must start aligned");function writeStackCookie(){assert((STACK_MAX&3)==0);HEAPU32[(STACK_MAX>>2)-1]=34821223;HEAPU32[(STACK_MAX>>2)-2]=2310721022}function checkStackCookie(){if(HEAPU32[(STACK_MAX>>2)-1]!=34821223||HEAPU32[(STACK_MAX>>2)-2]!=2310721022){abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x"+HEAPU32[(STACK_MAX>>2)-2].toString(16)+" "+HEAPU32[(STACK_MAX>>2)-1].toString(16))}if(HEAP32[0]!==1668509029)throw"Runtime error: The application has corrupted its heap memory area (address zero)!"}function abortStackOverflow(allocSize){abort("Stack overflow! Attempted to allocate "+allocSize+" bytes on the stack, but stack has only "+(STACK_MAX-stackSave()+allocSize)+" bytes available!")}function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){assert(HEAP32[DYNAMICTOP_PTR>>2]>TOTAL_MEMORY);var PAGE_MULTIPLE=65536;var LIMIT=2147483648-PAGE_MULTIPLE;if(HEAP32[DYNAMICTOP_PTR>>2]>LIMIT){err("Cannot enlarge memory, asked to go up to "+HEAP32[DYNAMICTOP_PTR>>2]+" bytes, but the limit is "+LIMIT+" bytes!");return false}var OLD_TOTAL_MEMORY=TOTAL_MEMORY;TOTAL_MEMORY=Math.max(TOTAL_MEMORY,MIN_TOTAL_MEMORY);while(TOTAL_MEMORY>2]){if(TOTAL_MEMORY<=536870912){TOTAL_MEMORY=alignUp(2*TOTAL_MEMORY,PAGE_MULTIPLE)}else{TOTAL_MEMORY=Math.min(alignUp((3*TOTAL_MEMORY+2147483648)/4,PAGE_MULTIPLE),LIMIT);if(TOTAL_MEMORY===OLD_TOTAL_MEMORY){warnOnce("Cannot ask for more memory since we reached the practical limit in browsers (which is just below 2GB), so the request would have failed. Requesting only "+TOTAL_MEMORY)}}}var start=Date.now();var replacement=Module["reallocBuffer"](TOTAL_MEMORY);if(!replacement||replacement.byteLength!=TOTAL_MEMORY){err("Failed to grow the heap from "+OLD_TOTAL_MEMORY+" bytes to "+TOTAL_MEMORY+" bytes, not enough memory!");if(replacement){err("Expected to get back a buffer of size "+TOTAL_MEMORY+" bytes, but instead got back a buffer of size "+replacement.byteLength)}TOTAL_MEMORY=OLD_TOTAL_MEMORY;return false}updateGlobalBuffer(replacement);updateGlobalBufferViews();return true}var byteLength;try{byteLength=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get);byteLength(new ArrayBuffer(4))}catch(e){byteLength=(function(buffer){return buffer.byteLength})}var TOTAL_STACK=5242880;if(Module["TOTAL_STACK"])assert(TOTAL_STACK===Module["TOTAL_STACK"],"the stack size can no longer be determined at runtime");var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY>2]=DYNAMIC_BASE;function getTotalMemory(){return TOTAL_MEMORY}HEAP32[0]=1668509029;HEAP16[1]=25459;if(HEAPU8[2]!==115||HEAPU8[3]!==99)throw"Runtime error: expected the system to be little-endian!";function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){checkStackCookie();if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){checkStackCookie();callRuntimeCallbacks(__ATMAIN__)}function postRun(){checkStackCookie();if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}function writeArrayToMemory(array,buffer){assert(array.length>=0,"writeArrayToMemory array must have a length (should be an array or typed array)");HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i=0){return value}return bits<=32?2*Math.abs(1<=0){err("Memory size incompatibility issues may be due to changing TOTAL_MEMORY at runtime to something too large. Use ALLOW_MEMORY_GROWTH to allow any size memory (and also make sure not to set TOTAL_MEMORY at runtime to something smaller than it was at compile time).")}return false}receiveInstance(instance,module);return exports}Module["asmPreload"]=Module["asm"];var wasmReallocBuffer=(function(size){var PAGE_MULTIPLE=65536;size=alignUp(size,PAGE_MULTIPLE);var old=Module["buffer"];var oldSize=old.byteLength;try{var result=Module["wasmMemory"].grow((size-oldSize)/wasmPageSize);if(result!==(-1|0)){return Module["buffer"]=Module["wasmMemory"].buffer}else{return null}}catch(e){console.error("Module.reallocBuffer: Attempted to grow from "+oldSize+" bytes to "+size+" bytes, but got error: "+e);return null}});Module["reallocBuffer"]=(function(size){return wasmReallocBuffer(size)});Module["asm"]=(function(global,env,providedBuffer){if(!env["table"]){assert(Module["wasmTableSize"]!==undefined);var TABLE_SIZE=Module["wasmTableSize"];var MAX_TABLE_SIZE=Module["wasmMaxTableSize"];if(typeof WebAssembly==="object"&&typeof WebAssembly.Table==="function"){if(MAX_TABLE_SIZE!==undefined){env["table"]=new WebAssembly.Table({"initial":TABLE_SIZE,"maximum":MAX_TABLE_SIZE,"element":"anyfunc"})}else{env["table"]=new WebAssembly.Table({"initial":TABLE_SIZE,element:"anyfunc"})}}else{env["table"]=new Array(TABLE_SIZE)}Module["wasmTable"]=env["table"]}if(!env["__memory_base"]){env["__memory_base"]=Module["STATIC_BASE"]}if(!env["__table_base"]){env["__table_base"]=0}var exports=createWasm(global,env,providedBuffer);assert(exports,"binaryen setup failed (no wasm support?)");return exports})}integrateWasmJS();STATIC_BASE=GLOBAL_BASE;__ATINIT__.push({func:(function(){___emscripten_environ_constructor()})});var STATIC_BUMP=21696;Module["STATIC_BASE"]=STATIC_BASE;Module["STATIC_BUMP"]=STATIC_BUMP;var tempDoublePtr=22704;assert(tempDoublePtr%8==0);var ENV={};function ___buildEnvironment(environ){var MAX_ENV_VALUES=64;var TOTAL_ENV_SIZE=1024;var poolPtr;var envPtr;if(!___buildEnvironment.called){___buildEnvironment.called=true;ENV["USER"]=ENV["LOGNAME"]="web_user";ENV["PATH"]="/";ENV["PWD"]="/";ENV["HOME"]="/home/web_user";ENV["LANG"]="C.UTF-8";ENV["_"]=Module["thisProgram"];poolPtr=getMemory(TOTAL_ENV_SIZE);envPtr=getMemory(MAX_ENV_VALUES*4);SAFE_HEAP_STORE(envPtr|0,poolPtr|0,4);SAFE_HEAP_STORE(environ|0,envPtr|0,4)}else{envPtr=SAFE_HEAP_LOAD(environ|0,4,0)|0;poolPtr=SAFE_HEAP_LOAD(envPtr|0,4,0)|0}var strings=[];var totalSize=0;for(var key in ENV){if(typeof ENV[key]==="string"){var line=key+"="+ENV[key];strings.push(line);totalSize+=line.length}}if(totalSize>TOTAL_ENV_SIZE){throw new Error("Environment size exceeded TOTAL_ENV_SIZE!")}var ptrSize=4;for(var i=0;i=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts}),normalize:(function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path}),dirname:(function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir}),basename:(function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)}),extname:(function(path){return PATH.splitPath(path)[3]}),join:(function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))}),join2:(function(l,r){return PATH.normalize(l+"/"+r)}),resolve:(function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter((function(p){return!!p})),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){out(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,"/",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;inode.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}if(!node.contents&&newCapacity>0)node.contents=[];while(node.contents.lengthnewSize)node.contents.length=newSize;else while(node.contents.length=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);assert(size>=0);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+length>2}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return stat.mode}),realPath:(function(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join.apply(null,parts)}),flagsForNode:(function(flags){flags&=~2097152;flags&=~2048;flags&=~32768;flags&=~524288;var newFlags=0;for(var k in NODEFS.flagsForNodeMap){if(flags&k){newFlags|=NODEFS.flagsForNodeMap[k];flags^=k}}if(!flags){return newFlags}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.flagsForNode(stream.flags))}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),close:(function(stream){try{if(FS.isFile(stream.node.mode)&&stream.nfd){fs.closeSync(stream.nfd)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),read:(function(stream,buffer,offset,length,position){if(length===0)return 0;try{return fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),write:(function(stream,buffer,offset,length,position){try{return fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};var NODERAWFS={lookupPath:(function(path){return{path:path,node:{mode:NODEFS.getMode(path)}}}),createStandardStreams:(function(){FS.streams[0]={fd:0,nfd:0,position:0,path:"",flags:0,tty:true,seekable:false};for(var i=1;i<3;i++){FS.streams[i]={fd:i,nfd:i,position:0,path:"",flags:577,tty:true,seekable:false}}}),cwd:(function(){return process.cwd()}),chdir:(function(){process.chdir.apply(void 0,arguments)}),mknod:(function(path,mode){if(FS.isDir(path)){fs.mkdirSync(path,mode)}else{fs.writeFileSync(path,"",{mode:mode})}}),mkdir:(function(){fs.mkdirSync.apply(void 0,arguments)}),symlink:(function(){fs.symlinkSync.apply(void 0,arguments)}),rename:(function(){fs.renameSync.apply(void 0,arguments)}),rmdir:(function(){fs.rmdirSync.apply(void 0,arguments)}),readdir:(function(){fs.readdirSync.apply(void 0,arguments)}),unlink:(function(){fs.unlinkSync.apply(void 0,arguments)}),readlink:(function(){return fs.readlinkSync.apply(void 0,arguments)}),stat:(function(){return fs.statSync.apply(void 0,arguments)}),lstat:(function(){return fs.lstatSync.apply(void 0,arguments)}),chmod:(function(){fs.chmodSync.apply(void 0,arguments)}),fchmod:(function(){fs.fchmodSync.apply(void 0,arguments)}),chown:(function(){fs.chownSync.apply(void 0,arguments)}),fchown:(function(){fs.fchownSync.apply(void 0,arguments)}),truncate:(function(){fs.truncateSync.apply(void 0,arguments)}),ftruncate:(function(){fs.ftruncateSync.apply(void 0,arguments)}),utime:(function(){fs.utimesSync.apply(void 0,arguments)}),open:(function(path,flags,mode,suggestFD){if(typeof flags==="string"){flags=VFS.modeStringToFlags(flags)}var nfd=fs.openSync(path,NODEFS.flagsForNode(flags),mode);var fd=suggestFD!=null?suggestFD:FS.nextfd(nfd);var stream={fd:fd,nfd:nfd,position:0,path:path,flags:flags,seekable:true};FS.streams[fd]=stream;return stream}),close:(function(stream){if(!stream.stream_ops){fs.closeSync(stream.nfd)}FS.closeStream(stream.fd)}),llseek:(function(stream,offset,whence){if(stream.stream_ops){return VFS.llseek(stream,offset,whence)}var position=offset;if(whence===1){position+=stream.position}else if(whence===2){position+=fs.fstatSync(stream.nfd).size}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}stream.position=position;return position}),read:(function(stream,buffer,offset,length,position){if(stream.stream_ops){return VFS.read(stream,buffer,offset,length,position)}var seeking=typeof position!=="undefined";if(!seeking&&stream.seekable)position=stream.position;var bytesRead=fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead}),write:(function(stream,buffer,offset,length,position){if(stream.stream_ops){return VFS.write(stream,buffer,offset,length,position)}if(stream.flags&+"1024"){FS.llseek(stream,0,+"2")}var seeking=typeof position!=="undefined";if(!seeking&&stream.seekable)position=stream.position;var bytesWritten=fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position);if(!seeking)stream.position+=bytesWritten;return bytesWritten}),allocate:(function(){throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP)}),mmap:(function(){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}),msync:(function(){return 0}),munmap:(function(){return 0}),ioctl:(function(){throw new FS.ErrnoError(ERRNO_CODES.ENOTTY)})};var ERRNO_MESSAGES={0:"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"};var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:(function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)}),lookupPath:(function(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(40)}var parts=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),false);var current=FS.root;var current_path="/";for(var i=0;i40){throw new FS.ErrnoError(40)}}}}return{path:current_path,node:current}}),getPath:(function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}}),hashName:(function(parentid,name){var hash=0;for(var i=0;i>>0)%FS.nameTable.length}),hashAddNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node}),hashRemoveNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}}),lookupNode:(function(parent,name){var err=FS.mayLookup(parent);if(err){throw new FS.ErrnoError(err,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:(function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags}),flagsToPermissionString:(function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return 13}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return 13}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return 13}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return 13;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return 17}catch(e){}return FS.nodePermissions(dir,"wx")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return 20}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 16}}else{if(FS.isDir(node.mode)){return 21}}return 0}),mayOpen:(function(node,flags){if(!node){return 2}if(FS.isLink(node.mode)){return 40}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return 21}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(24)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(29)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(16)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(16)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(20)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(22)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(22)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(1)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdirTree:(function(path,mode){var dirs=path.split("/");var d="";for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(5)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(5)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall10(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr();FS.unlink(path);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);SAFE_HEAP_STORE(result|0,stream.position|0,4);if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall15(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),mode=SYSCALLS.get();FS.chmod(path,mode);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall195(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,path,buf)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall197(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,stream.path,buf)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;SAFE_HEAP_STORE(arg+offset|0,2|0,2);return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall38(which,varargs){SYSCALLS.varargs=varargs;try{var old_path=SYSCALLS.getStr(),new_path=SYSCALLS.getStr();FS.rename(old_path,new_path);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall40(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr();FS.rmdir(path);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21509:case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();SAFE_HEAP_STORE(argp|0,0|0,4);return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};case 21523:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21524:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall60(which,varargs){SYSCALLS.varargs=varargs;try{var mask=SYSCALLS.get();var old=SYSCALLS.umask;SYSCALLS.umask=mask;return old}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___unlock(){}var ___tm_current=22560;var ___tm_timezone=(stringToUTF8("GMT",22608,4),22608);function _tzset(){if(_tzset.called)return;_tzset.called=true;SAFE_HEAP_STORE(__get_timezone()|0,(new Date).getTimezoneOffset()*60|0,4);var winter=new Date(2e3,0,1);var summer=new Date(2e3,6,1);SAFE_HEAP_STORE(__get_daylight()|0,Number(winter.getTimezoneOffset()!=summer.getTimezoneOffset())|0,4);function extractZone(date){var match=date.toTimeString().match(/\(([A-Za-z ]+)\)$/);return match?match[1]:"GMT"}var winterName=extractZone(winter);var summerName=extractZone(summer);var winterNamePtr=allocate(intArrayFromString(winterName),"i8",ALLOC_NORMAL);var summerNamePtr=allocate(intArrayFromString(summerName),"i8",ALLOC_NORMAL);if(summer.getTimezoneOffset()0!=(dstOffset==guessedOffset)){var nonDstOffset=Math.max(winterOffset,summerOffset);var trueOffset=dst>0?dstOffset:nonDstOffset;date.setTime(date.getTime()+(trueOffset-guessedOffset)*6e4)}SAFE_HEAP_STORE(tmPtr+24|0,date.getDay()|0,4);var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;SAFE_HEAP_STORE(tmPtr+28|0,yday|0,4);return date.getTime()/1e3|0}function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){SAFE_HEAP_STORE(ptr|0,ret|0,4)}return ret}if(ENVIRONMENT_IS_NODE){_emscripten_get_now=function _emscripten_get_now_actual(){var t=process["hrtime"]();return t[0]*1e3+t[1]/1e6}}else if(typeof dateNow!=="undefined"){_emscripten_get_now=dateNow}else if(typeof self==="object"&&self["performance"]&&typeof self["performance"]["now"]==="function"){_emscripten_get_now=(function(){return self["performance"]["now"]()})}else if(typeof performance==="object"&&typeof performance["now"]==="function"){_emscripten_get_now=(function(){return performance["now"]()})}else{_emscripten_get_now=Date.now}FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((function(){FS.quit()}));__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=frozenFs;var NODEJS_PATH=__webpack_require__(7);NODEFS.staticInit()}if(ENVIRONMENT_IS_NODE){var _wrapNodeError=(function(func){return(function(){try{return func.apply(this,arguments)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})});var VFS=Object.assign({},FS);for(var _key in NODERAWFS)FS[_key]=_wrapNodeError(NODERAWFS[_key])}else{throw new Error("NODERAWFS is currently only supported on Node.js environment.")}function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}var decodeBase64=typeof atob==="function"?atob:(function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i0){return}writeStackCookie();preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();assert(!Module["_main"],'compiled without a main, but one is present. if you added it from JS, use Module["onRuntimeInitialized"]');postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout((function(){setTimeout((function(){Module["setStatus"]("")}),1);doRun()}),1)}else{doRun()}checkStackCookie()}Module["run"]=run;var abortDecorators=[];function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){out(what);err(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;var extra="";var output="abort("+what+") at "+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() +var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module["arguments"]=[];Module["thisProgram"]="./this.program";Module["quit"]=(function(status,toThrow){throw toThrow});Module["preRun"]=[];Module["postRun"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=true;if(Module["ENVIRONMENT"]){throw new Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)")}var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}else{return scriptDirectory+path}}if(ENVIRONMENT_IS_NODE){if(!(typeof process==="object"&&"function"==="function"))throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");scriptDirectory=__dirname+"/";var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=frozenFs;if(!nodePath)nodePath=__webpack_require__(6);filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(true){module["exports"]=Module}(function(){})("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));(function(){})("unhandledRejection",abort);Module["quit"]=(function(status){process["exit"](status)});Module["inspect"]=(function(){return"[Emscripten Module object]"})}else{throw new Error("environment detection error")}var out=Module["print"]||(typeof console!=="undefined"?console.log.bind(console):typeof print!=="undefined"?print:null);var err=Module["printErr"]||(typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn.bind(console)||out);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;assert(typeof Module["memoryInitializerPrefixURL"]==="undefined","Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["pthreadMainPrefixURL"]==="undefined","Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["cdInitializerPrefixURL"]==="undefined","Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["filePackagePrefixURL"]==="undefined","Module.filePackagePrefixURL option was removed, use Module.locateFile instead");stackSave=stackRestore=stackAlloc=(function(){abort("cannot use the stack before compiled code is ready to run, and has provided stack access")});function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}var asm2wasmImports={"f64-rem":(function(x,y){return x%y}),"debugger":(function(){debugger})};var functionPointers=new Array(0);var tempRet0=0;var setTempRet0=(function(value){tempRet0=value});var GLOBAL_BASE=1024;function getSafeHeapType(bytes,isFloat){switch(bytes){case 1:return"i8";case 2:return"i16";case 4:return isFloat?"float":"i32";case 8:return"double";default:assert(0)}}function SAFE_HEAP_STORE(dest,value,bytes,isFloat){if(dest<=0)abort("segmentation fault storing "+bytes+" bytes to address "+dest);if(dest%bytes!==0)abort("alignment error storing to address "+dest+", which was expected to be aligned to a multiple of "+bytes);if(dest+bytes>HEAP32[DYNAMICTOP_PTR>>2])abort("segmentation fault, exceeded the top of the available dynamic heap when storing "+bytes+" bytes to address "+dest+". DYNAMICTOP="+HEAP32[DYNAMICTOP_PTR>>2]);assert(DYNAMICTOP_PTR);assert(HEAP32[DYNAMICTOP_PTR>>2]<=TOTAL_MEMORY);setValue(dest,value,getSafeHeapType(bytes,isFloat),1)}function SAFE_HEAP_STORE_D(dest,value,bytes){SAFE_HEAP_STORE(dest,value,bytes,true)}function SAFE_HEAP_LOAD(dest,bytes,unsigned,isFloat){if(dest<=0)abort("segmentation fault loading "+bytes+" bytes from address "+dest);if(dest%bytes!==0)abort("alignment error loading from address "+dest+", which was expected to be aligned to a multiple of "+bytes);if(dest+bytes>HEAP32[DYNAMICTOP_PTR>>2])abort("segmentation fault, exceeded the top of the available dynamic heap when loading "+bytes+" bytes from address "+dest+". DYNAMICTOP="+HEAP32[DYNAMICTOP_PTR>>2]);assert(DYNAMICTOP_PTR);assert(HEAP32[DYNAMICTOP_PTR>>2]<=TOTAL_MEMORY);var type=getSafeHeapType(bytes,isFloat);var ret=getValue(dest,type,1);if(unsigned)ret=unSign(ret,parseInt(type.substr(1)),1);return ret}function SAFE_HEAP_LOAD_D(dest,bytes,unsigned){return SAFE_HEAP_LOAD(dest,bytes,unsigned,true)}function segfault(){abort("segmentation fault")}function alignfault(){abort("alignment fault")}var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){function convertReturnValue(ret){if(returnType==="string")return Pointer_stringify(ret);if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;assert(returnType!=="array",'Return type should not be "array".');if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}else{switch(type){case"i1":SAFE_HEAP_STORE(ptr|0,value|0,1);break;case"i8":SAFE_HEAP_STORE(ptr|0,value|0,1);break;case"i16":SAFE_HEAP_STORE(ptr|0,value|0,2);break;case"i32":SAFE_HEAP_STORE(ptr|0,value|0,4);break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/4294967296)>>>0:0)],SAFE_HEAP_STORE(ptr|0,tempI64[0]|0,4),SAFE_HEAP_STORE(ptr+4|0,tempI64[1]|0,4);break;case"float":SAFE_HEAP_STORE_D(ptr|0,Math_fround(value),4);break;case"double":SAFE_HEAP_STORE_D(ptr|0,+value,8);break;default:abort("invalid type for setValue: "+type)}}}function getValue(ptr,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";if(noSafe){switch(type){case"i1":return HEAP8[ptr>>0];case"i8":return HEAP8[ptr>>0];case"i16":return HEAP16[ptr>>1];case"i32":return HEAP32[ptr>>2];case"i64":return HEAP32[ptr>>2];case"float":return HEAPF32[ptr>>2];case"double":return HEAPF64[ptr>>3];default:abort("invalid type for getValue: "+type)}}else{switch(type){case"i1":return SAFE_HEAP_LOAD(ptr|0,1,0)|0;case"i8":return SAFE_HEAP_LOAD(ptr|0,1,0)|0;case"i16":return SAFE_HEAP_LOAD(ptr|0,2,0)|0;case"i32":return SAFE_HEAP_LOAD(ptr|0,4,0)|0;case"i64":return SAFE_HEAP_LOAD(ptr|0,8,0)|0;case"float":return Math_fround(SAFE_HEAP_LOAD_D(ptr|0,4,0));case"double":return+SAFE_HEAP_LOAD_D(ptr|0,8,0);default:abort("invalid type for getValue: "+type)}}return null}var ALLOC_NORMAL=0;var ALLOC_NONE=3;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[_malloc,stackAlloc,dynamicAlloc][allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){assert(typeof maxBytesToWrite=="number","stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}var WASM_PAGE_SIZE=65536;var MIN_TOTAL_MEMORY=16777216;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBuffer(buf){Module["buffer"]=buffer=buf}function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE=1024,STACK_BASE=22720,STACK_MAX=5265600,DYNAMIC_BASE=5265600,DYNAMICTOP_PTR=22464;assert(STACK_BASE%16===0,"stack must start aligned");assert(DYNAMIC_BASE%16===0,"heap must start aligned");function writeStackCookie(){assert((STACK_MAX&3)==0);HEAPU32[(STACK_MAX>>2)-1]=34821223;HEAPU32[(STACK_MAX>>2)-2]=2310721022}function checkStackCookie(){if(HEAPU32[(STACK_MAX>>2)-1]!=34821223||HEAPU32[(STACK_MAX>>2)-2]!=2310721022){abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x"+HEAPU32[(STACK_MAX>>2)-2].toString(16)+" "+HEAPU32[(STACK_MAX>>2)-1].toString(16))}if(HEAP32[0]!==1668509029)throw"Runtime error: The application has corrupted its heap memory area (address zero)!"}function abortStackOverflow(allocSize){abort("Stack overflow! Attempted to allocate "+allocSize+" bytes on the stack, but stack has only "+(STACK_MAX-stackSave()+allocSize)+" bytes available!")}function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){assert(HEAP32[DYNAMICTOP_PTR>>2]>TOTAL_MEMORY);var PAGE_MULTIPLE=65536;var LIMIT=2147483648-PAGE_MULTIPLE;if(HEAP32[DYNAMICTOP_PTR>>2]>LIMIT){err("Cannot enlarge memory, asked to go up to "+HEAP32[DYNAMICTOP_PTR>>2]+" bytes, but the limit is "+LIMIT+" bytes!");return false}var OLD_TOTAL_MEMORY=TOTAL_MEMORY;TOTAL_MEMORY=Math.max(TOTAL_MEMORY,MIN_TOTAL_MEMORY);while(TOTAL_MEMORY>2]){if(TOTAL_MEMORY<=536870912){TOTAL_MEMORY=alignUp(2*TOTAL_MEMORY,PAGE_MULTIPLE)}else{TOTAL_MEMORY=Math.min(alignUp((3*TOTAL_MEMORY+2147483648)/4,PAGE_MULTIPLE),LIMIT);if(TOTAL_MEMORY===OLD_TOTAL_MEMORY){warnOnce("Cannot ask for more memory since we reached the practical limit in browsers (which is just below 2GB), so the request would have failed. Requesting only "+TOTAL_MEMORY)}}}var start=Date.now();var replacement=Module["reallocBuffer"](TOTAL_MEMORY);if(!replacement||replacement.byteLength!=TOTAL_MEMORY){err("Failed to grow the heap from "+OLD_TOTAL_MEMORY+" bytes to "+TOTAL_MEMORY+" bytes, not enough memory!");if(replacement){err("Expected to get back a buffer of size "+TOTAL_MEMORY+" bytes, but instead got back a buffer of size "+replacement.byteLength)}TOTAL_MEMORY=OLD_TOTAL_MEMORY;return false}updateGlobalBuffer(replacement);updateGlobalBufferViews();return true}var byteLength;try{byteLength=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get);byteLength(new ArrayBuffer(4))}catch(e){byteLength=(function(buffer){return buffer.byteLength})}var TOTAL_STACK=5242880;if(Module["TOTAL_STACK"])assert(TOTAL_STACK===Module["TOTAL_STACK"],"the stack size can no longer be determined at runtime");var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY>2]=DYNAMIC_BASE;function getTotalMemory(){return TOTAL_MEMORY}HEAP32[0]=1668509029;HEAP16[1]=25459;if(HEAPU8[2]!==115||HEAPU8[3]!==99)throw"Runtime error: expected the system to be little-endian!";function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){checkStackCookie();if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){checkStackCookie();callRuntimeCallbacks(__ATMAIN__)}function postRun(){checkStackCookie();if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}function writeArrayToMemory(array,buffer){assert(array.length>=0,"writeArrayToMemory array must have a length (should be an array or typed array)");HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i=0){return value}return bits<=32?2*Math.abs(1<=0){err("Memory size incompatibility issues may be due to changing TOTAL_MEMORY at runtime to something too large. Use ALLOW_MEMORY_GROWTH to allow any size memory (and also make sure not to set TOTAL_MEMORY at runtime to something smaller than it was at compile time).")}return false}receiveInstance(instance,module);return exports}Module["asmPreload"]=Module["asm"];var wasmReallocBuffer=(function(size){var PAGE_MULTIPLE=65536;size=alignUp(size,PAGE_MULTIPLE);var old=Module["buffer"];var oldSize=old.byteLength;try{var result=Module["wasmMemory"].grow((size-oldSize)/wasmPageSize);if(result!==(-1|0)){return Module["buffer"]=Module["wasmMemory"].buffer}else{return null}}catch(e){console.error("Module.reallocBuffer: Attempted to grow from "+oldSize+" bytes to "+size+" bytes, but got error: "+e);return null}});Module["reallocBuffer"]=(function(size){return wasmReallocBuffer(size)});Module["asm"]=(function(global,env,providedBuffer){if(!env["table"]){assert(Module["wasmTableSize"]!==undefined);var TABLE_SIZE=Module["wasmTableSize"];var MAX_TABLE_SIZE=Module["wasmMaxTableSize"];if(typeof WebAssembly==="object"&&typeof WebAssembly.Table==="function"){if(MAX_TABLE_SIZE!==undefined){env["table"]=new WebAssembly.Table({"initial":TABLE_SIZE,"maximum":MAX_TABLE_SIZE,"element":"anyfunc"})}else{env["table"]=new WebAssembly.Table({"initial":TABLE_SIZE,element:"anyfunc"})}}else{env["table"]=new Array(TABLE_SIZE)}Module["wasmTable"]=env["table"]}if(!env["__memory_base"]){env["__memory_base"]=Module["STATIC_BASE"]}if(!env["__table_base"]){env["__table_base"]=0}var exports=createWasm(global,env,providedBuffer);assert(exports,"binaryen setup failed (no wasm support?)");return exports})}integrateWasmJS();STATIC_BASE=GLOBAL_BASE;__ATINIT__.push({func:(function(){___emscripten_environ_constructor()})});var STATIC_BUMP=21696;Module["STATIC_BASE"]=STATIC_BASE;Module["STATIC_BUMP"]=STATIC_BUMP;var tempDoublePtr=22704;assert(tempDoublePtr%8==0);var ENV={};function ___buildEnvironment(environ){var MAX_ENV_VALUES=64;var TOTAL_ENV_SIZE=1024;var poolPtr;var envPtr;if(!___buildEnvironment.called){___buildEnvironment.called=true;ENV["USER"]=ENV["LOGNAME"]="web_user";ENV["PATH"]="/";ENV["PWD"]="/";ENV["HOME"]="/home/web_user";ENV["LANG"]="C.UTF-8";ENV["_"]=Module["thisProgram"];poolPtr=getMemory(TOTAL_ENV_SIZE);envPtr=getMemory(MAX_ENV_VALUES*4);SAFE_HEAP_STORE(envPtr|0,poolPtr|0,4);SAFE_HEAP_STORE(environ|0,envPtr|0,4)}else{envPtr=SAFE_HEAP_LOAD(environ|0,4,0)|0;poolPtr=SAFE_HEAP_LOAD(envPtr|0,4,0)|0}var strings=[];var totalSize=0;for(var key in ENV){if(typeof ENV[key]==="string"){var line=key+"="+ENV[key];strings.push(line);totalSize+=line.length}}if(totalSize>TOTAL_ENV_SIZE){throw new Error("Environment size exceeded TOTAL_ENV_SIZE!")}var ptrSize=4;for(var i=0;i=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts}),normalize:(function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path}),dirname:(function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir}),basename:(function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)}),extname:(function(path){return PATH.splitPath(path)[3]}),join:(function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))}),join2:(function(l,r){return PATH.normalize(l+"/"+r)}),resolve:(function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter((function(p){return!!p})),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){out(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,"/",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;inode.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}if(!node.contents&&newCapacity>0)node.contents=[];while(node.contents.lengthnewSize)node.contents.length=newSize;else while(node.contents.length=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);assert(size>=0);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+length>2}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return stat.mode}),realPath:(function(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join.apply(null,parts)}),flagsForNode:(function(flags){flags&=~2097152;flags&=~2048;flags&=~32768;flags&=~524288;var newFlags=0;for(var k in NODEFS.flagsForNodeMap){if(flags&k){newFlags|=NODEFS.flagsForNodeMap[k];flags^=k}}if(!flags){return newFlags}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.flagsForNode(stream.flags))}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),close:(function(stream){try{if(FS.isFile(stream.node.mode)&&stream.nfd){fs.closeSync(stream.nfd)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),read:(function(stream,buffer,offset,length,position){if(length===0)return 0;try{return fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),write:(function(stream,buffer,offset,length,position){try{return fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};var NODERAWFS={lookupPath:(function(path){return{path:path,node:{mode:NODEFS.getMode(path)}}}),createStandardStreams:(function(){FS.streams[0]={fd:0,nfd:0,position:0,path:"",flags:0,tty:true,seekable:false};for(var i=1;i<3;i++){FS.streams[i]={fd:i,nfd:i,position:0,path:"",flags:577,tty:true,seekable:false}}}),cwd:(function(){return process.cwd()}),chdir:(function(){process.chdir.apply(void 0,arguments)}),mknod:(function(path,mode){if(FS.isDir(path)){fs.mkdirSync(path,mode)}else{fs.writeFileSync(path,"",{mode:mode})}}),mkdir:(function(){fs.mkdirSync.apply(void 0,arguments)}),symlink:(function(){fs.symlinkSync.apply(void 0,arguments)}),rename:(function(){fs.renameSync.apply(void 0,arguments)}),rmdir:(function(){fs.rmdirSync.apply(void 0,arguments)}),readdir:(function(){fs.readdirSync.apply(void 0,arguments)}),unlink:(function(){fs.unlinkSync.apply(void 0,arguments)}),readlink:(function(){return fs.readlinkSync.apply(void 0,arguments)}),stat:(function(){return fs.statSync.apply(void 0,arguments)}),lstat:(function(){return fs.lstatSync.apply(void 0,arguments)}),chmod:(function(){fs.chmodSync.apply(void 0,arguments)}),fchmod:(function(){fs.fchmodSync.apply(void 0,arguments)}),chown:(function(){fs.chownSync.apply(void 0,arguments)}),fchown:(function(){fs.fchownSync.apply(void 0,arguments)}),truncate:(function(){fs.truncateSync.apply(void 0,arguments)}),ftruncate:(function(){fs.ftruncateSync.apply(void 0,arguments)}),utime:(function(){fs.utimesSync.apply(void 0,arguments)}),open:(function(path,flags,mode,suggestFD){if(typeof flags==="string"){flags=VFS.modeStringToFlags(flags)}var nfd=fs.openSync(path,NODEFS.flagsForNode(flags),mode);var fd=suggestFD!=null?suggestFD:FS.nextfd(nfd);var stream={fd:fd,nfd:nfd,position:0,path:path,flags:flags,seekable:true};FS.streams[fd]=stream;return stream}),close:(function(stream){if(!stream.stream_ops){fs.closeSync(stream.nfd)}FS.closeStream(stream.fd)}),llseek:(function(stream,offset,whence){if(stream.stream_ops){return VFS.llseek(stream,offset,whence)}var position=offset;if(whence===1){position+=stream.position}else if(whence===2){position+=fs.fstatSync(stream.nfd).size}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}stream.position=position;return position}),read:(function(stream,buffer,offset,length,position){if(stream.stream_ops){return VFS.read(stream,buffer,offset,length,position)}var seeking=typeof position!=="undefined";if(!seeking&&stream.seekable)position=stream.position;var bytesRead=fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead}),write:(function(stream,buffer,offset,length,position){if(stream.stream_ops){return VFS.write(stream,buffer,offset,length,position)}if(stream.flags&+"1024"){FS.llseek(stream,0,+"2")}var seeking=typeof position!=="undefined";if(!seeking&&stream.seekable)position=stream.position;var bytesWritten=fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position);if(!seeking)stream.position+=bytesWritten;return bytesWritten}),allocate:(function(){throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP)}),mmap:(function(){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}),msync:(function(){return 0}),munmap:(function(){return 0}),ioctl:(function(){throw new FS.ErrnoError(ERRNO_CODES.ENOTTY)})};var ERRNO_MESSAGES={0:"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"};var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:(function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)}),lookupPath:(function(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(40)}var parts=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),false);var current=FS.root;var current_path="/";for(var i=0;i40){throw new FS.ErrnoError(40)}}}}return{path:current_path,node:current}}),getPath:(function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}}),hashName:(function(parentid,name){var hash=0;for(var i=0;i>>0)%FS.nameTable.length}),hashAddNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node}),hashRemoveNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}}),lookupNode:(function(parent,name){var err=FS.mayLookup(parent);if(err){throw new FS.ErrnoError(err,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:(function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags}),flagsToPermissionString:(function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return 13}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return 13}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return 13}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return 13;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return 17}catch(e){}return FS.nodePermissions(dir,"wx")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return 20}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 16}}else{if(FS.isDir(node.mode)){return 21}}return 0}),mayOpen:(function(node,flags){if(!node){return 2}if(FS.isLink(node.mode)){return 40}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return 21}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(24)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(29)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(16)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(16)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(20)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(22)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(22)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(1)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdirTree:(function(path,mode){var dirs=path.split("/");var d="";for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(5)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(5)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall10(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr();FS.unlink(path);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);SAFE_HEAP_STORE(result|0,stream.position|0,4);if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall15(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),mode=SYSCALLS.get();FS.chmod(path,mode);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall195(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,path,buf)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall197(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,stream.path,buf)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;SAFE_HEAP_STORE(arg+offset|0,2|0,2);return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall38(which,varargs){SYSCALLS.varargs=varargs;try{var old_path=SYSCALLS.getStr(),new_path=SYSCALLS.getStr();FS.rename(old_path,new_path);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall40(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr();FS.rmdir(path);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21509:case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();SAFE_HEAP_STORE(argp|0,0|0,4);return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};case 21523:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21524:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall60(which,varargs){SYSCALLS.varargs=varargs;try{var mask=SYSCALLS.get();var old=SYSCALLS.umask;SYSCALLS.umask=mask;return old}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___unlock(){}var ___tm_current=22560;var ___tm_timezone=(stringToUTF8("GMT",22608,4),22608);function _tzset(){if(_tzset.called)return;_tzset.called=true;SAFE_HEAP_STORE(__get_timezone()|0,(new Date).getTimezoneOffset()*60|0,4);var winter=new Date(2e3,0,1);var summer=new Date(2e3,6,1);SAFE_HEAP_STORE(__get_daylight()|0,Number(winter.getTimezoneOffset()!=summer.getTimezoneOffset())|0,4);function extractZone(date){var match=date.toTimeString().match(/\(([A-Za-z ]+)\)$/);return match?match[1]:"GMT"}var winterName=extractZone(winter);var summerName=extractZone(summer);var winterNamePtr=allocate(intArrayFromString(winterName),"i8",ALLOC_NORMAL);var summerNamePtr=allocate(intArrayFromString(summerName),"i8",ALLOC_NORMAL);if(summer.getTimezoneOffset()0!=(dstOffset==guessedOffset)){var nonDstOffset=Math.max(winterOffset,summerOffset);var trueOffset=dst>0?dstOffset:nonDstOffset;date.setTime(date.getTime()+(trueOffset-guessedOffset)*6e4)}SAFE_HEAP_STORE(tmPtr+24|0,date.getDay()|0,4);var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;SAFE_HEAP_STORE(tmPtr+28|0,yday|0,4);return date.getTime()/1e3|0}function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){SAFE_HEAP_STORE(ptr|0,ret|0,4)}return ret}if(ENVIRONMENT_IS_NODE){_emscripten_get_now=function _emscripten_get_now_actual(){var t=process["hrtime"]();return t[0]*1e3+t[1]/1e6}}else if(typeof dateNow!=="undefined"){_emscripten_get_now=dateNow}else if(typeof self==="object"&&self["performance"]&&typeof self["performance"]["now"]==="function"){_emscripten_get_now=(function(){return self["performance"]["now"]()})}else if(typeof performance==="object"&&typeof performance["now"]==="function"){_emscripten_get_now=(function(){return performance["now"]()})}else{_emscripten_get_now=Date.now}FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((function(){FS.quit()}));__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=frozenFs;var NODEJS_PATH=__webpack_require__(6);NODEFS.staticInit()}if(ENVIRONMENT_IS_NODE){var _wrapNodeError=(function(func){return(function(){try{return func.apply(this,arguments)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})});var VFS=Object.assign({},FS);for(var _key in NODERAWFS)FS[_key]=_wrapNodeError(NODERAWFS[_key])}else{throw new Error("NODERAWFS is currently only supported on Node.js environment.")}function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}var decodeBase64=typeof atob==="function"?atob:(function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i0){return}writeStackCookie();preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();assert(!Module["_main"],'compiled without a main, but one is present. if you added it from JS, use Module["onRuntimeInitialized"]');postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout((function(){setTimeout((function(){Module["setStatus"]("")}),1);doRun()}),1)}else{doRun()}checkStackCookie()}Module["run"]=run;var abortDecorators=[];function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){out(what);err(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;var extra="";var output="abort("+what+") at "+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() /***/ }), -/* 14 */ +/* 15 */ /***/ (function(module, exports) { module.exports = require("crypto"); /***/ }), -/* 15 */ +/* 16 */ /***/ (function(module, exports) { module.exports = require("stream"); /***/ }), -/* 16 */ +/* 17 */ /***/ (function(module, exports) { module.exports = require("util"); /***/ }), -/* 17 */ +/* 18 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const fs_1 = __webpack_require__(5); -const path_1 = __webpack_require__(7); -const FakeFS_1 = __webpack_require__(6); +const path_1 = __webpack_require__(6); +const FakeFS_1 = __webpack_require__(7); const NodeFS_1 = __webpack_require__(4); -const ZipFS_1 = __webpack_require__(11); +const ZipFS_1 = __webpack_require__(12); class ZipOpenFS extends FakeFS_1.FakeFS { constructor({ baseFs = new NodeFS_1.NodeFS(), filter = null, useCache = true } = {}) { super(); @@ -2627,25 +2821,25 @@ exports.ZipOpenFS = ZipOpenFS; /***/ }), -/* 18 */ +/* 19 */ /***/ (function(module, exports, __webpack_require__) { var fs = __webpack_require__(5) var wx = 'wx' if (process.version.match(/^v0\.[0-6]/)) { - var c = __webpack_require__(19) + var c = __webpack_require__(20) wx = c.O_TRUNC | c.O_CREAT | c.O_WRONLY | c.O_EXCL } -var os = __webpack_require__(20) +var os = __webpack_require__(21) exports.filetime = 'ctime' if (os.platform() == "win32") { exports.filetime = 'mtime' } var debug -var util = __webpack_require__(16) +var util = __webpack_require__(17) if (util.debuglog) debug = util.debuglog('LOCKFILE') else if (/\blockfile\b/i.test(process.env.NODE_DEBUG)) @@ -2662,7 +2856,7 @@ function hasOwnProperty (obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop) } -var onExit = __webpack_require__(21) +var onExit = __webpack_require__(22) onExit(function () { debug('exit listener') // cleanup @@ -2953,28 +3147,28 @@ function retryThrow (path, opts, er) { /***/ }), -/* 19 */ +/* 20 */ /***/ (function(module, exports) { module.exports = require("constants"); /***/ }), -/* 20 */ +/* 21 */ /***/ (function(module, exports) { module.exports = require("os"); /***/ }), -/* 21 */ +/* 22 */ /***/ (function(module, exports, __webpack_require__) { // Note: since nyc uses this module to output coverage, any lines // that are in the direct sync flow of nyc's outputCoverage are // ignored, since we can never get coverage for them. -var assert = __webpack_require__(22) -var signals = __webpack_require__(23) +var assert = __webpack_require__(23) +var signals = __webpack_require__(24) -var EE = __webpack_require__(24) +var EE = __webpack_require__(25) /* istanbul ignore if */ if (typeof EE !== 'function') { EE = EE.EventEmitter @@ -3128,13 +3322,13 @@ function processEmit (ev, arg) { /***/ }), -/* 22 */ +/* 23 */ /***/ (function(module, exports) { module.exports = require("assert"); /***/ }), -/* 23 */ +/* 24 */ /***/ (function(module, exports) { // This is not the set of all possible signals. @@ -3193,13 +3387,13 @@ if (process.platform === 'linux') { /***/ }), -/* 24 */ +/* 25 */ /***/ (function(module, exports) { module.exports = require("events"); /***/ }), -/* 25 */ +/* 26 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -3291,14 +3485,14 @@ exports.Report = Report; /***/ }), -/* 26 */ +/* 27 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const fslib_1 = __webpack_require__(3); -const crypto_1 = __webpack_require__(14); +const crypto_1 = __webpack_require__(15); function makeHash(...args) { const hmac = crypto_1.createHmac(`sha512`, `berry`); for (const arg of args) @@ -3326,7 +3520,7 @@ exports.checksumFile = checksumFile; /***/ }), -/* 27 */ +/* 28 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -3342,9 +3536,9 @@ var __importStar = (this && this.__importStar) || function (mod) { return result; }; Object.defineProperty(exports, "__esModule", { value: true }); -const semver_1 = __importDefault(__webpack_require__(28)); -const hashUtils = __importStar(__webpack_require__(26)); -const miscUtils = __importStar(__webpack_require__(29)); +const semver_1 = __importDefault(__webpack_require__(29)); +const hashUtils = __importStar(__webpack_require__(27)); +const miscUtils = __importStar(__webpack_require__(30)); const VIRTUAL_PROTOCOL = `virtual:`; const VIRTUAL_ABBREVIATE = 12; function makeIdent(scope, name) { @@ -3604,7 +3798,7 @@ exports.prettyWorkspace = prettyWorkspace; /***/ }), -/* 28 */ +/* 29 */ /***/ (function(module, exports) { exports = module.exports = SemVer; @@ -4962,7 +5156,7 @@ function coerce(version) { /***/ }), -/* 29 */ +/* 30 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -5049,7 +5243,7 @@ exports.sortMap = sortMap; /***/ }), -/* 30 */ +/* 31 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -5066,22 +5260,22 @@ var __importStar = (this && this.__importStar) || function (mod) { }; Object.defineProperty(exports, "__esModule", { value: true }); const fslib_1 = __webpack_require__(3); -const parsers_1 = __webpack_require__(31); -const concierge_1 = __webpack_require__(38); -const chalk_1 = __importDefault(__webpack_require__(53)); -const os_1 = __webpack_require__(20); -const path_1 = __webpack_require__(7); -const supports_color_1 = __importDefault(__webpack_require__(59)); -const MultiFetcher_1 = __webpack_require__(62); -const MultiResolver_1 = __webpack_require__(63); -const SemverResolver_1 = __webpack_require__(64); -const TagResolver_1 = __webpack_require__(65); -const VirtualFetcher_1 = __webpack_require__(66); -const WorkspaceFetcher_1 = __webpack_require__(67); -const WorkspaceResolver_1 = __webpack_require__(68); -const miscUtils = __importStar(__webpack_require__(29)); -const nodeUtils = __importStar(__webpack_require__(70)); -const structUtils = __importStar(__webpack_require__(27)); +const parsers_1 = __webpack_require__(32); +const concierge_1 = __webpack_require__(39); +const chalk_1 = __importDefault(__webpack_require__(54)); +const os_1 = __webpack_require__(21); +const path_1 = __webpack_require__(6); +const supports_color_1 = __importDefault(__webpack_require__(60)); +const MultiFetcher_1 = __webpack_require__(63); +const MultiResolver_1 = __webpack_require__(64); +const SemverResolver_1 = __webpack_require__(65); +const TagResolver_1 = __webpack_require__(66); +const VirtualFetcher_1 = __webpack_require__(67); +const WorkspaceFetcher_1 = __webpack_require__(68); +const WorkspaceResolver_1 = __webpack_require__(69); +const miscUtils = __importStar(__webpack_require__(30)); +const nodeUtils = __importStar(__webpack_require__(71)); +const structUtils = __importStar(__webpack_require__(28)); // @ts-ignore const ctx = new chalk_1.default.constructor({ enabled: true }); const legacyNames = new Set([ @@ -5190,6 +5384,11 @@ exports.coreDefinitions = { type: SettingsType.STRING, default: getRcFilename(), }, + enableGlobalCache: { + description: `If true, the system-wide cache folder will be used regardless of \`cache-folder\``, + type: SettingsType.BOOLEAN, + default: false, + }, // Settings related to the output style enableColors: { description: `If true, the CLI is allowed to use colors in its output`, @@ -5272,7 +5471,7 @@ function parseValue(value, type, folder) { if (typeof value !== `string`) throw new Error(`Expected value to be a string`); if (type === SettingsType.ABSOLUTE_PATH) { - return path_1.posix.resolve(folder, value); + return path_1.posix.resolve(folder, fslib_1.NodeFS.toPortablePath(value)); } else if (type === SettingsType.LOCATOR_LOOSE) { return structUtils.parseLocator(value, false); @@ -5286,7 +5485,8 @@ function parseValue(value, type, folder) { } function getDefaultGlobalFolder() { if (process.platform === `win32`) { - return path_1.posix.resolve(process.env.LOCALAPPDATA || path_1.posix.join(os_1.homedir(), 'AppData', 'Local')); + const folder = fslib_1.NodeFS.toPortablePath(process.env.LOCALAPPDATA || path_1.win32.join(os_1.homedir(), 'AppData', 'Local')); + return path_1.posix.resolve(folder); } else if (process.env.XDG_DATA_HOME) { return path_1.posix.resolve(process.env.XDG_DATA_HOME, 'yarn/modern'); @@ -5399,8 +5599,9 @@ class Configuration { for (const { path, cwd, data } of rcFiles) { if (!Array.isArray(data.plugins)) continue; - for (const pluginPath of data.plugins) { - const { factory, name } = nodeUtils.dynamicRequire(path_1.posix.resolve(cwd, pluginPath)); + for (const userProvidedPath of data.plugins) { + const pluginPath = path_1.posix.resolve(cwd, fslib_1.NodeFS.toPortablePath(userProvidedPath)); + const { factory, name } = nodeUtils.dynamicRequire(fslib_1.NodeFS.fromPortablePath(pluginPath)); // Prevent plugin redefinition so that the ones declared deeper in the // filesystem always have precedence over the ones below. if (dynamicPlugins.has(name)) @@ -5429,6 +5630,10 @@ class Configuration { configuration.useWithSource(``, environmentSettings, startingCwd); for (const { path, cwd, data } of rcFiles) configuration.useWithSource(path, data, cwd); + if (configuration.get(`enableGlobalCache`)) { + configuration.values.set(`cacheFolder`, `${configuration.get(`globalFolder`)}/cache`); + configuration.sources.set(`cacheFolder`, ``); + } return configuration; } static async getRcData(startingCwd) { @@ -5584,29 +5789,29 @@ exports.Configuration = Configuration; /***/ }), -/* 31 */ +/* 32 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -var shell_1 = __webpack_require__(32); +var shell_1 = __webpack_require__(33); exports.parseShell = shell_1.parseShell; -var resolution_1 = __webpack_require__(34); +var resolution_1 = __webpack_require__(35); exports.parseResolution = resolution_1.parseResolution; -var syml_1 = __webpack_require__(36); +var syml_1 = __webpack_require__(37); exports.parseSyml = syml_1.parseSyml; exports.stringifySyml = syml_1.stringifySyml; /***/ }), -/* 32 */ +/* 33 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const shell_1 = __webpack_require__(33); +const shell_1 = __webpack_require__(34); function parseShell(source) { try { return shell_1.parse(source); @@ -5621,7 +5826,7 @@ exports.parseShell = parseShell; /***/ }), -/* 33 */ +/* 34 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -7184,13 +7389,13 @@ module.exports = { /***/ }), -/* 34 */ +/* 35 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const resolution_1 = __webpack_require__(35); +const resolution_1 = __webpack_require__(36); function parseResolution(source) { try { return resolution_1.parse(source); @@ -7205,7 +7410,7 @@ exports.parseResolution = parseResolution; /***/ }), -/* 35 */ +/* 36 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -7742,13 +7947,13 @@ module.exports = { /***/ }), -/* 36 */ +/* 37 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const syml_1 = __webpack_require__(37); +const syml_1 = __webpack_require__(38); const simpleStringPattern = /^(?![-?:,\][{}#&*!|>'"%@`]).([ \t]*(?![ \t\r\n])(?![,\][{}:#]).)*$/; // The following keys will always be stored at the top of the object, in the // specified order. It's not fair but life isn't fair either. @@ -7837,7 +8042,7 @@ exports.parseSyml = parseSyml; /***/ }), -/* 37 */ +/* 38 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9755,7 +9960,7 @@ module.exports = { /***/ }), -/* 38 */ +/* 39 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9765,7 +9970,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); -var _core = __webpack_require__(39); +var _core = __webpack_require__(40); Object.keys(_core).forEach(function (key) { if (key === "default" || key === "__esModule") return; @@ -9778,7 +9983,7 @@ Object.keys(_core).forEach(function (key) { }); /***/ }), -/* 39 */ +/* 40 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9789,7 +9994,7 @@ Object.defineProperty(exports, "__esModule", { }); exports.concierge = exports.Concierge = exports.UsageError = undefined; -var _UsageError = __webpack_require__(40); +var _UsageError = __webpack_require__(41); Object.defineProperty(exports, 'UsageError', { enumerable: true, @@ -9798,7 +10003,7 @@ Object.defineProperty(exports, 'UsageError', { } }); -var _Concierge = __webpack_require__(41); +var _Concierge = __webpack_require__(42); Object.defineProperty(exports, 'Concierge', { enumerable: true, @@ -9809,7 +10014,7 @@ Object.defineProperty(exports, 'Concierge', { var concierge = exports.concierge = new _Concierge.Concierge(); /***/ }), -/* 40 */ +/* 41 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9830,7 +10035,7 @@ var UsageError = exports.UsageError = function UsageError(message) { }; /***/ }), -/* 41 */ +/* 42 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9845,7 +10050,7 @@ var _extends = Object.assign || function (target) { for (var i = 1; i < argument var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); -var _chalk = __webpack_require__(42); +var _chalk = __webpack_require__(43); var _chalk2 = _interopRequireDefault(_chalk); @@ -9853,17 +10058,17 @@ var _fs = __webpack_require__(5); var _fs2 = _interopRequireDefault(_fs); -var _lodash = __webpack_require__(50); +var _lodash = __webpack_require__(51); -var _path = __webpack_require__(7); +var _path = __webpack_require__(6); var _path2 = _interopRequireDefault(_path); -var _Command = __webpack_require__(51); +var _Command = __webpack_require__(52); -var _UsageError = __webpack_require__(40); +var _UsageError = __webpack_require__(41); -var _parse = __webpack_require__(52); +var _parse = __webpack_require__(53); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } @@ -10579,7 +10784,7 @@ var Concierge = function () { var next = parsedArgv[_t + 1]; // If we're currently processing a command that accepts arguments by proxy, we treat all following tokens as raw strings - if (selectedCommand && selectedCommand.proxyArguments) { + if (selectedCommand && selectedCommand.proxyArguments && rest.length >= selectedCommand.requiredArguments.length) { current = _extends({}, current); current.type = RAW_STRING; @@ -11039,16 +11244,16 @@ var Concierge = function () { exports.Concierge = Concierge; /***/ }), -/* 42 */ +/* 43 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var escapeStringRegexp = __webpack_require__(43); -var ansiStyles = __webpack_require__(44); -var stripAnsi = __webpack_require__(46); -var hasAnsi = __webpack_require__(48); -var supportsColor = __webpack_require__(49); +var escapeStringRegexp = __webpack_require__(44); +var ansiStyles = __webpack_require__(45); +var stripAnsi = __webpack_require__(47); +var hasAnsi = __webpack_require__(49); +var supportsColor = __webpack_require__(50); var defineProps = Object.defineProperties; var isSimpleWindowsTerm = process.platform === 'win32' && !/^xterm/i.test(process.env.TERM); @@ -11162,7 +11367,7 @@ module.exports.supportsColor = supportsColor; /***/ }), -/* 43 */ +/* 44 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11180,7 +11385,7 @@ module.exports = function (str) { /***/ }), -/* 44 */ +/* 45 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11250,10 +11455,10 @@ Object.defineProperty(module, 'exports', { get: assembleStyles }); -/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(45)(module))) +/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(46)(module))) /***/ }), -/* 45 */ +/* 46 */ /***/ (function(module, exports) { module.exports = function(module) { @@ -11281,12 +11486,12 @@ module.exports = function(module) { /***/ }), -/* 46 */ +/* 47 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var ansiRegex = __webpack_require__(47)(); +var ansiRegex = __webpack_require__(48)(); module.exports = function (str) { return typeof str === 'string' ? str.replace(ansiRegex, '') : str; @@ -11294,7 +11499,7 @@ module.exports = function (str) { /***/ }), -/* 47 */ +/* 48 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11305,18 +11510,18 @@ module.exports = function () { /***/ }), -/* 48 */ +/* 49 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var ansiRegex = __webpack_require__(47); +var ansiRegex = __webpack_require__(48); var re = new RegExp(ansiRegex().source); // remove the `g` flag module.exports = re.test.bind(re); /***/ }), -/* 49 */ +/* 50 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11373,7 +11578,7 @@ module.exports = (function () { /***/ }), -/* 50 */ +/* 51 */ /***/ (function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(module) {var __WEBPACK_AMD_DEFINE_RESULT__;/** @@ -28476,10 +28681,10 @@ module.exports = (function () { else {} }.call(this)); -/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(45)(module))) +/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(46)(module))) /***/ }), -/* 51 */ +/* 52 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -28492,7 +28697,7 @@ exports.Command = undefined; var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); -var _chalk = __webpack_require__(42); +var _chalk = __webpack_require__(43); var _chalk2 = _interopRequireDefault(_chalk); @@ -28719,7 +28924,7 @@ var Command = function () { exports.Command = Command; /***/ }), -/* 52 */ +/* 53 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -30795,16 +31000,16 @@ module.exports = { }; /***/ }), -/* 53 */ +/* 54 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const escapeStringRegexp = __webpack_require__(43); -const ansiStyles = __webpack_require__(54); -const stdoutColor = __webpack_require__(59).stdout; +const escapeStringRegexp = __webpack_require__(44); +const ansiStyles = __webpack_require__(55); +const stdoutColor = __webpack_require__(60).stdout; -const template = __webpack_require__(61); +const template = __webpack_require__(62); const isSimpleWindowsTerm = process.platform === 'win32' && !(process.env.TERM || '').toLowerCase().startsWith('xterm'); @@ -31030,12 +31235,12 @@ module.exports.default = module.exports; // For TypeScript /***/ }), -/* 54 */ +/* 55 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; /* WEBPACK VAR INJECTION */(function(module) { -const colorConvert = __webpack_require__(55); +const colorConvert = __webpack_require__(56); const wrapAnsi16 = (fn, offset) => function () { const code = fn.apply(colorConvert, arguments); @@ -31200,14 +31405,14 @@ Object.defineProperty(module, 'exports', { get: assembleStyles }); -/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(45)(module))) +/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(46)(module))) /***/ }), -/* 55 */ +/* 56 */ /***/ (function(module, exports, __webpack_require__) { -var conversions = __webpack_require__(56); -var route = __webpack_require__(58); +var conversions = __webpack_require__(57); +var route = __webpack_require__(59); var convert = {}; @@ -31287,11 +31492,11 @@ module.exports = convert; /***/ }), -/* 56 */ +/* 57 */ /***/ (function(module, exports, __webpack_require__) { /* MIT license */ -var cssKeywords = __webpack_require__(57); +var cssKeywords = __webpack_require__(58); // NOTE: conversions should only return primitive values (i.e. arrays, or // values that give correct `typeof` results). @@ -32161,7 +32366,7 @@ convert.rgb.gray = function (rgb) { /***/ }), -/* 57 */ +/* 58 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -32320,10 +32525,10 @@ module.exports = { /***/ }), -/* 58 */ +/* 59 */ /***/ (function(module, exports, __webpack_require__) { -var conversions = __webpack_require__(56); +var conversions = __webpack_require__(57); /* this function routes a model to all other models. @@ -32423,13 +32628,13 @@ module.exports = function (fromModel) { /***/ }), -/* 59 */ +/* 60 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const os = __webpack_require__(20); -const hasFlag = __webpack_require__(60); +const os = __webpack_require__(21); +const hasFlag = __webpack_require__(61); const env = process.env; @@ -32561,7 +32766,7 @@ module.exports = { /***/ }), -/* 60 */ +/* 61 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -32576,7 +32781,7 @@ module.exports = (flag, argv) => { /***/ }), -/* 61 */ +/* 62 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -32711,7 +32916,7 @@ module.exports = (chalk, tmp) => { /***/ }), -/* 62 */ +/* 63 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -32724,8 +32929,8 @@ var __importStar = (this && this.__importStar) || function (mod) { return result; }; Object.defineProperty(exports, "__esModule", { value: true }); -const Report_1 = __webpack_require__(25); -const structUtils = __importStar(__webpack_require__(27)); +const Report_1 = __webpack_require__(26); +const structUtils = __importStar(__webpack_require__(28)); class MultiFetcher { constructor(fetchers) { this.fetchers = fetchers; @@ -32760,7 +32965,7 @@ exports.MultiFetcher = MultiFetcher; /***/ }), -/* 63 */ +/* 64 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -32773,8 +32978,8 @@ var __importStar = (this && this.__importStar) || function (mod) { return result; }; Object.defineProperty(exports, "__esModule", { value: true }); -const Report_1 = __webpack_require__(25); -const structUtils = __importStar(__webpack_require__(27)); +const Report_1 = __webpack_require__(26); +const structUtils = __importStar(__webpack_require__(28)); class MultiResolver { constructor(resolvers) { this.resolvers = resolvers.filter(resolver => resolver); @@ -32832,7 +33037,7 @@ exports.MultiResolver = MultiResolver; /***/ }), -/* 64 */ +/* 65 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -32848,8 +33053,8 @@ var __importStar = (this && this.__importStar) || function (mod) { return result; }; Object.defineProperty(exports, "__esModule", { value: true }); -const semver_1 = __importDefault(__webpack_require__(28)); -const structUtils = __importStar(__webpack_require__(27)); +const semver_1 = __importDefault(__webpack_require__(29)); +const structUtils = __importStar(__webpack_require__(28)); class SemverResolver { supportsDescriptor(descriptor, opts) { if (!semver_1.default.validRange(descriptor.range)) @@ -32885,7 +33090,7 @@ exports.SemverResolver = SemverResolver; /***/ }), -/* 65 */ +/* 66 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -32898,7 +33103,7 @@ var __importStar = (this && this.__importStar) || function (mod) { return result; }; Object.defineProperty(exports, "__esModule", { value: true }); -const structUtils = __importStar(__webpack_require__(27)); +const structUtils = __importStar(__webpack_require__(28)); exports.TAG_REGEXP = /^[a-z]+$/; class TagResolver { supportsDescriptor(descriptor, opts) { @@ -32935,7 +33140,7 @@ exports.TagResolver = TagResolver; /***/ }), -/* 66 */ +/* 67 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -32949,8 +33154,8 @@ var __importStar = (this && this.__importStar) || function (mod) { }; Object.defineProperty(exports, "__esModule", { value: true }); const fslib_1 = __webpack_require__(3); -const path_1 = __webpack_require__(7); -const structUtils = __importStar(__webpack_require__(27)); +const path_1 = __webpack_require__(6); +const structUtils = __importStar(__webpack_require__(28)); class VirtualFetcher { supports(locator) { if (!locator.reference.startsWith(`virtual:`)) @@ -32979,14 +33184,14 @@ class VirtualFetcher { } getLocatorPath(locator, opts) { const virtualFolder = opts.project.configuration.get(`virtualFolder`); - const virtualPath = path_1.resolve(virtualFolder, this.getLocatorFilename(locator)); + const virtualPath = path_1.posix.resolve(virtualFolder, this.getLocatorFilename(locator)); return virtualPath; } async ensureVirtualLink(locator, sourceFetch, opts) { const virtualPath = this.getLocatorPath(locator, opts); - const relativeTarget = path_1.relative(path_1.dirname(virtualPath), sourceFetch.packageFs.getRealPath()); + const relativeTarget = path_1.posix.relative(path_1.posix.dirname(virtualPath), sourceFetch.packageFs.getRealPath()); // Doesn't need locking, and the folder must exist for the lock to succeed - await fslib_1.xfs.mkdirpPromise(path_1.dirname(virtualPath)); + await fslib_1.xfs.mkdirpPromise(path_1.posix.dirname(virtualPath)); await fslib_1.xfs.lockPromise(virtualPath, async () => { let currentLink; try { @@ -33010,14 +33215,14 @@ exports.VirtualFetcher = VirtualFetcher; /***/ }), -/* 67 */ +/* 68 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const fslib_1 = __webpack_require__(3); -const WorkspaceResolver_1 = __webpack_require__(68); +const WorkspaceResolver_1 = __webpack_require__(69); class WorkspaceFetcher { supports(locator) { if (!locator.reference.startsWith(WorkspaceResolver_1.WorkspaceResolver.protocol)) @@ -33039,14 +33244,14 @@ exports.WorkspaceFetcher = WorkspaceFetcher; /***/ }), -/* 68 */ +/* 69 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const Report_1 = __webpack_require__(25); -const types_1 = __webpack_require__(69); +const Report_1 = __webpack_require__(26); +const types_1 = __webpack_require__(70); class WorkspaceResolver { supportsDescriptor(descriptor, opts) { if (descriptor.range.startsWith(WorkspaceResolver.protocol)) @@ -33091,7 +33296,7 @@ exports.WorkspaceResolver = WorkspaceResolver; /***/ }), -/* 69 */ +/* 70 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -33110,7 +33315,7 @@ var LinkType; /***/ }), -/* 70 */ +/* 71 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -33119,7 +33324,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); -const module_1 = __importDefault(__webpack_require__(71)); +const module_1 = __importDefault(__webpack_require__(72)); function dynamicRequire(request) { const req = true ? require @@ -33135,19 +33340,19 @@ exports.builtinModules = builtinModules; /***/ }), -/* 71 */ +/* 72 */ /***/ (function(module, exports) { module.exports = require("module"); /***/ }), -/* 72 */ +/* 73 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const Report_1 = __webpack_require__(25); +const Report_1 = __webpack_require__(26); class JsonReport extends Report_1.Report { static async start(opts, cb) { const report = new this(opts); @@ -33198,13 +33403,13 @@ exports.JsonReport = JsonReport; /***/ }), -/* 73 */ +/* 74 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const Report_1 = __webpack_require__(25); +const Report_1 = __webpack_require__(26); class LightReport extends Report_1.Report { constructor({ configuration, stdout, suggestInstall = true }) { super(); @@ -33269,7 +33474,7 @@ exports.LightReport = LightReport; /***/ }), -/* 74 */ +/* 75 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -33286,11 +33491,11 @@ var __importStar = (this && this.__importStar) || function (mod) { }; Object.defineProperty(exports, "__esModule", { value: true }); const fslib_1 = __webpack_require__(3); -const parsers_1 = __webpack_require__(31); -const path_1 = __webpack_require__(7); -const semver_1 = __importDefault(__webpack_require__(28)); -const miscUtils = __importStar(__webpack_require__(29)); -const structUtils = __importStar(__webpack_require__(27)); +const parsers_1 = __webpack_require__(32); +const path_1 = __webpack_require__(6); +const semver_1 = __importDefault(__webpack_require__(29)); +const miscUtils = __importStar(__webpack_require__(30)); +const structUtils = __importStar(__webpack_require__(28)); ; ; ; @@ -33569,7 +33774,7 @@ exports.Manifest = Manifest; /***/ }), -/* 75 */ +/* 76 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -33595,28 +33800,28 @@ var __importStar = (this && this.__importStar) || function (mod) { }; Object.defineProperty(exports, "__esModule", { value: true }); const fslib_1 = __webpack_require__(3); -const parsers_1 = __webpack_require__(31); -const crypto_1 = __webpack_require__(14); +const parsers_1 = __webpack_require__(32); +const crypto_1 = __webpack_require__(15); // @ts-ignore -const logic_solver_1 = __importDefault(__webpack_require__(76)); -const path_1 = __webpack_require__(7); +const logic_solver_1 = __importDefault(__webpack_require__(77)); +const path_1 = __webpack_require__(6); // @ts-ignore -const p_limit_1 = __importDefault(__webpack_require__(80)); -const semver_1 = __importDefault(__webpack_require__(28)); -const stream_1 = __webpack_require__(15); -const tmp_1 = __webpack_require__(82); -const AliasResolver_1 = __webpack_require__(84); -const LockfileResolver_1 = __webpack_require__(85); -const Manifest_1 = __webpack_require__(74); -const MultiResolver_1 = __webpack_require__(63); -const Report_1 = __webpack_require__(25); -const RunInstallPleaseResolver_1 = __webpack_require__(86); -const ThrowReport_1 = __webpack_require__(87); -const Workspace_1 = __webpack_require__(88); -const YarnResolver_1 = __webpack_require__(275); -const miscUtils = __importStar(__webpack_require__(29)); -const scriptUtils = __importStar(__webpack_require__(276)); -const structUtils = __importStar(__webpack_require__(27)); +const p_limit_1 = __importDefault(__webpack_require__(81)); +const semver_1 = __importDefault(__webpack_require__(29)); +const stream_1 = __webpack_require__(16); +const tmp_1 = __webpack_require__(83); +const AliasResolver_1 = __webpack_require__(85); +const LockfileResolver_1 = __webpack_require__(86); +const Manifest_1 = __webpack_require__(75); +const MultiResolver_1 = __webpack_require__(64); +const Report_1 = __webpack_require__(26); +const RunInstallPleaseResolver_1 = __webpack_require__(87); +const ThrowReport_1 = __webpack_require__(88); +const Workspace_1 = __webpack_require__(89); +const YarnResolver_1 = __webpack_require__(276); +const miscUtils = __importStar(__webpack_require__(30)); +const scriptUtils = __importStar(__webpack_require__(277)); +const structUtils = __importStar(__webpack_require__(28)); // When upgraded, the lockfile entries have to be resolved again (but the specific // versions are still pinned, no worry). Bump it when you change the fields within // the Package type; no more no less. @@ -33651,7 +33856,7 @@ class Project { packageCwd = currentCwd; } } - nextCwd = path_1.dirname(currentCwd); + nextCwd = path_1.posix.dirname(currentCwd); } if (!projectCwd || !packageCwd) throw new Error(`Project not found`); @@ -34005,29 +34210,29 @@ class Project { for (const descriptor of pkg.dependencies.values()) { allDescriptors.set(descriptor.descriptorHash, descriptor); mustBeResolved.add(descriptor.descriptorHash); - // We must check and make sure that the descriptor didn't get aliased - // to something else + // We must check and make sure that the descriptor didn't get aliased + // to something else const aliasHash = this.resolutionAliases.get(descriptor.descriptorHash); if (aliasHash === undefined) continue; - // It doesn't cost us much to support the case where a descriptor is - // equal to its own alias (which should mean "no alias") + // It doesn't cost us much to support the case where a descriptor is + // equal to its own alias (which should mean "no alias") if (descriptor.descriptorHash === aliasHash) continue; const alias = this.storedDescriptors.get(aliasHash); if (!alias) throw new Error(`Assertion failed: The alias should have been registered`); - // If it's already been "resolved" (in reality it will be the temporary - // resolution we've set in the next few lines) we simply must skip it + // If it's already been "resolved" (in reality it will be the temporary + // resolution we've set in the next few lines) we simply must skip it if (allResolutions.has(descriptor.descriptorHash)) continue; - // Temporarily set an invalid resolution so that it won't be resolved - // multiple times if it is found multiple times in the dependency - // tree (this is only temporary, we will replace it by the actual - // resolution after we've finished resolving everything) + // Temporarily set an invalid resolution so that it won't be resolved + // multiple times if it is found multiple times in the dependency + // tree (this is only temporary, we will replace it by the actual + // resolution after we've finished resolving everything) allResolutions.set(descriptor.descriptorHash, `temporary`); - // We can now replace the descriptor by its alias in the list of - // descriptors that must be resolved + // We can now replace the descriptor by its alias in the list of + // descriptors that must be resolved mustBeResolved.delete(descriptor.descriptorHash); mustBeResolved.add(aliasHash); allDescriptors.set(aliasHash, alias); @@ -34035,8 +34240,8 @@ class Project { } } } - // Each package that should have been resolved but was skipped because it - // was aliased will now see the resolution for its alias propagated to it + // Each package that should have been resolved but was skipped because it + // was aliased will now see the resolution for its alias propagated to it while (haveBeenAliased.size > 0) { let hasChanged = false; for (const descriptorHash of haveBeenAliased) { @@ -34049,9 +34254,9 @@ class Project { const resolution = allResolutions.get(aliasHash); if (resolution === undefined) throw new Error(`Assertion failed: The resolution should have been registered`); - // The following can happen if a package gets aliased to another package - // that's itself aliased - in this case we just process all those we can - // do, then make new passes until everything is resolved + // The following can happen if a package gets aliased to another package + // that's itself aliased - in this case we just process all those we can + // do, then make new passes until everything is resolved if (resolution === `temporary`) continue; haveBeenAliased.delete(descriptorHash); @@ -34500,11 +34705,11 @@ exports.Project = Project; /***/ }), -/* 76 */ +/* 77 */ /***/ (function(module, exports, __webpack_require__) { -var MiniSat = __webpack_require__(77); -var _ = __webpack_require__(79); +var MiniSat = __webpack_require__(78); +var _ = __webpack_require__(80); var Logic; Logic = {}; @@ -36356,11 +36561,11 @@ module.exports = Logic; /***/ }), -/* 77 */ +/* 78 */ /***/ (function(module, exports, __webpack_require__) { -var C_MINISAT = __webpack_require__(78); -var _ = __webpack_require__(79); +var C_MINISAT = __webpack_require__(79); +var _ = __webpack_require__(80); var MiniSat; MiniSat = function () { // A MiniSat object wraps an instance of "native" MiniSat. You can @@ -36487,7 +36692,7 @@ module.exports = MiniSat; /***/ }), -/* 78 */ +/* 79 */ /***/ (function(module, exports, __webpack_require__) { var C_MINISAT; @@ -36531,7 +36736,7 @@ var eb=[Je,Dd];var fb=[Ke,Kd,Jd,Ke];var gb=[Le,wb,yb,Ab,Db,Ib,Hb,bc,dc,zc,yc,Oc, /***/ }), -/* 79 */ +/* 80 */ /***/ (function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(module) {var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;// Underscore.js 1.9.1 @@ -38228,15 +38433,15 @@ var eb=[Je,Dd];var fb=[Ke,Kd,Jd,Ke];var gb=[Le,wb,yb,Ab,Db,Ib,Hb,bc,dc,zc,yc,Oc, } }()); -/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(45)(module))) +/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(46)(module))) /***/ }), -/* 80 */ +/* 81 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const pTry = __webpack_require__(81); +const pTry = __webpack_require__(82); module.exports = concurrency => { if (concurrency < 1) { @@ -38287,7 +38492,7 @@ module.exports = concurrency => { /***/ }), -/* 81 */ +/* 82 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -38299,7 +38504,7 @@ module.exports = (callback, ...args) => new Promise(resolve => { /***/ }), -/* 82 */ +/* 83 */ /***/ (function(module, exports, __webpack_require__) { /*! @@ -38314,9 +38519,9 @@ module.exports = (callback, ...args) => new Promise(resolve => { * Module dependencies. */ const fs = __webpack_require__(5); -const path = __webpack_require__(7); -const crypto = __webpack_require__(14); -const osTmpDir = __webpack_require__(83); +const path = __webpack_require__(6); +const crypto = __webpack_require__(15); +const osTmpDir = __webpack_require__(84); const _c = process.binding('constants'); /* @@ -38916,7 +39121,7 @@ module.exports.setGracefulCleanup = setGracefulCleanup; /***/ }), -/* 83 */ +/* 84 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -38948,7 +39153,7 @@ module.exports = function () { /***/ }), -/* 84 */ +/* 85 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -38961,7 +39166,7 @@ var __importStar = (this && this.__importStar) || function (mod) { return result; }; Object.defineProperty(exports, "__esModule", { value: true }); -const structUtils = __importStar(__webpack_require__(27)); +const structUtils = __importStar(__webpack_require__(28)); class AliasResolver { constructor(next) { this.next = next; @@ -39005,7 +39210,7 @@ exports.AliasResolver = AliasResolver; /***/ }), -/* 85 */ +/* 86 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -39018,7 +39223,7 @@ var __importStar = (this && this.__importStar) || function (mod) { return result; }; Object.defineProperty(exports, "__esModule", { value: true }); -const structUtils = __importStar(__webpack_require__(27)); +const structUtils = __importStar(__webpack_require__(28)); class LockfileResolver { supportsDescriptor(descriptor, opts) { const resolution = opts.project.storedResolutions.get(descriptor.descriptorHash); @@ -39064,13 +39269,13 @@ exports.LockfileResolver = LockfileResolver; /***/ }), -/* 86 */ +/* 87 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const Report_1 = __webpack_require__(25); +const Report_1 = __webpack_require__(26); class RunInstallPleaseResolver { constructor(resolver) { this.resolver = resolver; @@ -39098,13 +39303,13 @@ exports.RunInstallPleaseResolver = RunInstallPleaseResolver; /***/ }), -/* 87 */ +/* 88 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const Report_1 = __webpack_require__(25); +const Report_1 = __webpack_require__(26); class ThrowReport extends Report_1.Report { reportCacheHit(locator) { } @@ -39132,7 +39337,7 @@ exports.ThrowReport = ThrowReport; /***/ }), -/* 88 */ +/* 89 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -39149,14 +39354,14 @@ var __importStar = (this && this.__importStar) || function (mod) { }; Object.defineProperty(exports, "__esModule", { value: true }); const fslib_1 = __webpack_require__(3); -const json_proxy_1 = __webpack_require__(89); -const crypto_1 = __webpack_require__(14); -const globby_1 = __importDefault(__webpack_require__(92)); -const path_1 = __webpack_require__(7); -const semver_1 = __importDefault(__webpack_require__(28)); -const Manifest_1 = __webpack_require__(74); -const WorkspaceResolver_1 = __webpack_require__(68); -const structUtils = __importStar(__webpack_require__(27)); +const json_proxy_1 = __webpack_require__(90); +const crypto_1 = __webpack_require__(15); +const globby_1 = __importDefault(__webpack_require__(93)); +const path_1 = __webpack_require__(6); +const semver_1 = __importDefault(__webpack_require__(29)); +const Manifest_1 = __webpack_require__(75); +const WorkspaceResolver_1 = __webpack_require__(69); +const structUtils = __importStar(__webpack_require__(28)); function hashWorkspaceCwd(cwd) { return crypto_1.createHmac('sha256', 'berry').update(cwd).digest('hex').substr(0, 6); } @@ -39186,7 +39391,7 @@ class Workspace { for (const definition of this.manifest.workspaceDefinitions) { const relativeCwds = await globby_1.default(definition.pattern, { absolute: true, - cwd: this.cwd, + cwd: fslib_1.NodeFS.fromPortablePath(this.cwd), expandDirectories: false, onlyDirectories: true, onlyFiles: false, @@ -39194,7 +39399,7 @@ class Workspace { // It seems that the return value of globby isn't in any guaranteed order - not even the directory listing order relativeCwds.sort(); for (const relativeCwd of relativeCwds) { - const candidateCwd = path_1.posix.resolve(this.cwd, relativeCwd); + const candidateCwd = path_1.posix.resolve(this.cwd, fslib_1.NodeFS.toPortablePath(relativeCwd)); if (fslib_1.xfs.existsSync(`${candidateCwd}/package.json`)) { this.workspacesCwds.add(candidateCwd); } @@ -39239,21 +39444,21 @@ exports.Workspace = Workspace; /***/ }), -/* 89 */ +/* 90 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -var makeTracker_1 = __webpack_require__(90); +var makeTracker_1 = __webpack_require__(91); exports.makeTracker = makeTracker_1.makeTracker; -var makeUpdater_1 = __webpack_require__(91); +var makeUpdater_1 = __webpack_require__(92); exports.makeUpdater = makeUpdater_1.makeUpdater; exports.updateAndSave = makeUpdater_1.updateAndSave; /***/ }), -/* 90 */ +/* 91 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -39516,22 +39721,19 @@ exports.makeTracker = makeTracker; /***/ }), -/* 91 */ +/* 92 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const fs_1 = __webpack_require__(5); -const util_1 = __webpack_require__(16); -const makeTracker_1 = __webpack_require__(90); -const readFileP = util_1.promisify(fs_1.readFile); -const writeFileP = util_1.promisify(fs_1.writeFile); +const fslib_1 = __webpack_require__(3); +const makeTracker_1 = __webpack_require__(91); async function makeUpdater(filename) { let indent = ` `; let obj; - if (fs_1.existsSync(filename)) { - const content = await readFileP(filename, `utf8`); + if (fslib_1.xfs.existsSync(filename)) { + const content = await fslib_1.xfs.readFilePromise(filename, `utf8`); const indentMatch = content.match(/^[ \t]+/m); if (indentMatch) indent = indentMatch[0]; @@ -39549,7 +39751,7 @@ async function makeUpdater(filename) { if (tracker.immutable === initial) return; const data = JSON.stringify(tracker.immutable, null, indent) + `\n`; - await writeFileP(filename, data); + await fslib_1.xfs.writeFilePromise(filename, data); } }; } @@ -39563,16 +39765,16 @@ exports.updateAndSave = updateAndSave; /***/ }), -/* 92 */ +/* 93 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const arrayUnion = __webpack_require__(93); -const glob = __webpack_require__(95); -const fastGlob = __webpack_require__(109); -const dirGlob = __webpack_require__(268); -const gitignore = __webpack_require__(272); +const arrayUnion = __webpack_require__(94); +const glob = __webpack_require__(96); +const fastGlob = __webpack_require__(110); +const dirGlob = __webpack_require__(269); +const gitignore = __webpack_require__(273); const DEFAULT_FILTER = () => false; @@ -39698,12 +39900,12 @@ module.exports.gitignore = gitignore; /***/ }), -/* 93 */ +/* 94 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var arrayUniq = __webpack_require__(94); +var arrayUniq = __webpack_require__(95); module.exports = function () { return arrayUniq([].concat.apply([], arguments)); @@ -39711,7 +39913,7 @@ module.exports = function () { /***/ }), -/* 94 */ +/* 95 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -39780,7 +39982,7 @@ if ('Set' in global) { /***/ }), -/* 95 */ +/* 96 */ /***/ (function(module, exports, __webpack_require__) { // Approach: @@ -39826,26 +40028,26 @@ if ('Set' in global) { module.exports = glob var fs = __webpack_require__(5) -var rp = __webpack_require__(96) -var minimatch = __webpack_require__(98) +var rp = __webpack_require__(97) +var minimatch = __webpack_require__(99) var Minimatch = minimatch.Minimatch -var inherits = __webpack_require__(102) -var EE = __webpack_require__(24).EventEmitter -var path = __webpack_require__(7) -var assert = __webpack_require__(22) -var isAbsolute = __webpack_require__(103) -var globSync = __webpack_require__(104) -var common = __webpack_require__(105) +var inherits = __webpack_require__(103) +var EE = __webpack_require__(25).EventEmitter +var path = __webpack_require__(6) +var assert = __webpack_require__(23) +var isAbsolute = __webpack_require__(104) +var globSync = __webpack_require__(105) +var common = __webpack_require__(106) var alphasort = common.alphasort var alphasorti = common.alphasorti var setopts = common.setopts var ownProp = common.ownProp -var inflight = __webpack_require__(106) -var util = __webpack_require__(16) +var inflight = __webpack_require__(107) +var util = __webpack_require__(17) var childrenIgnored = common.childrenIgnored var isIgnored = common.isIgnored -var once = __webpack_require__(108) +var once = __webpack_require__(109) function glob (pattern, options, cb) { if (typeof options === 'function') cb = options, options = {} @@ -40576,7 +40778,7 @@ Glob.prototype._stat2 = function (f, abs, er, stat, cb) { /***/ }), -/* 96 */ +/* 97 */ /***/ (function(module, exports, __webpack_require__) { module.exports = realpath @@ -40592,7 +40794,7 @@ var origRealpathSync = fs.realpathSync var version = process.version var ok = /^v[0-5]\./.test(version) -var old = __webpack_require__(97) +var old = __webpack_require__(98) function newError (er) { return er && er.syscall === 'realpath' && ( @@ -40648,7 +40850,7 @@ function unmonkeypatch () { /***/ }), -/* 97 */ +/* 98 */ /***/ (function(module, exports, __webpack_require__) { // Copyright Joyent, Inc. and other Node contributors. @@ -40672,7 +40874,7 @@ function unmonkeypatch () { // OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE // USE OR OTHER DEALINGS IN THE SOFTWARE. -var pathModule = __webpack_require__(7); +var pathModule = __webpack_require__(6); var isWindows = process.platform === 'win32'; var fs = __webpack_require__(5); @@ -40957,7 +41159,7 @@ exports.realpath = function realpath(p, cache, cb) { /***/ }), -/* 98 */ +/* 99 */ /***/ (function(module, exports, __webpack_require__) { module.exports = minimatch @@ -40965,11 +41167,11 @@ minimatch.Minimatch = Minimatch var path = { sep: '/' } try { - path = __webpack_require__(7) + path = __webpack_require__(6) } catch (er) {} var GLOBSTAR = minimatch.GLOBSTAR = Minimatch.GLOBSTAR = {} -var expand = __webpack_require__(99) +var expand = __webpack_require__(100) var plTypes = { '!': { open: '(?:(?!(?:', close: '))[^/]*?)'}, @@ -41886,11 +42088,11 @@ function regExpEscape (s) { /***/ }), -/* 99 */ +/* 100 */ /***/ (function(module, exports, __webpack_require__) { -var concatMap = __webpack_require__(100); -var balanced = __webpack_require__(101); +var concatMap = __webpack_require__(101); +var balanced = __webpack_require__(102); module.exports = expandTop; @@ -42093,7 +42295,7 @@ function expand(str, isTop) { /***/ }), -/* 100 */ +/* 101 */ /***/ (function(module, exports) { module.exports = function (xs, fn) { @@ -42112,7 +42314,7 @@ var isArray = Array.isArray || function (xs) { /***/ }), -/* 101 */ +/* 102 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -42178,7 +42380,7 @@ function range(a, b, str) { /***/ }), -/* 102 */ +/* 103 */ /***/ (function(module, exports) { if (typeof Object.create === 'function') { @@ -42207,7 +42409,7 @@ if (typeof Object.create === 'function') { /***/ }), -/* 103 */ +/* 104 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -42234,22 +42436,22 @@ module.exports.win32 = win32; /***/ }), -/* 104 */ +/* 105 */ /***/ (function(module, exports, __webpack_require__) { module.exports = globSync globSync.GlobSync = GlobSync var fs = __webpack_require__(5) -var rp = __webpack_require__(96) -var minimatch = __webpack_require__(98) +var rp = __webpack_require__(97) +var minimatch = __webpack_require__(99) var Minimatch = minimatch.Minimatch -var Glob = __webpack_require__(95).Glob -var util = __webpack_require__(16) -var path = __webpack_require__(7) -var assert = __webpack_require__(22) -var isAbsolute = __webpack_require__(103) -var common = __webpack_require__(105) +var Glob = __webpack_require__(96).Glob +var util = __webpack_require__(17) +var path = __webpack_require__(6) +var assert = __webpack_require__(23) +var isAbsolute = __webpack_require__(104) +var common = __webpack_require__(106) var alphasort = common.alphasort var alphasorti = common.alphasorti var setopts = common.setopts @@ -42726,7 +42928,7 @@ GlobSync.prototype._makeAbs = function (f) { /***/ }), -/* 105 */ +/* 106 */ /***/ (function(module, exports, __webpack_require__) { exports.alphasort = alphasort @@ -42743,9 +42945,9 @@ function ownProp (obj, field) { return Object.prototype.hasOwnProperty.call(obj, field) } -var path = __webpack_require__(7) -var minimatch = __webpack_require__(98) -var isAbsolute = __webpack_require__(103) +var path = __webpack_require__(6) +var minimatch = __webpack_require__(99) +var isAbsolute = __webpack_require__(104) var Minimatch = minimatch.Minimatch function alphasorti (a, b) { @@ -42972,12 +43174,12 @@ function childrenIgnored (self, path) { /***/ }), -/* 106 */ +/* 107 */ /***/ (function(module, exports, __webpack_require__) { -var wrappy = __webpack_require__(107) +var wrappy = __webpack_require__(108) var reqs = Object.create(null) -var once = __webpack_require__(108) +var once = __webpack_require__(109) module.exports = wrappy(inflight) @@ -43032,7 +43234,7 @@ function slice (args) { /***/ }), -/* 107 */ +/* 108 */ /***/ (function(module, exports) { // Returns a wrapper function that returns a wrapped callback @@ -43071,10 +43273,10 @@ function wrappy (fn, cb) { /***/ }), -/* 108 */ +/* 109 */ /***/ (function(module, exports, __webpack_require__) { -var wrappy = __webpack_require__(107) +var wrappy = __webpack_require__(108) module.exports = wrappy(once) once.proto = once(function () { @@ -43098,10 +43300,10 @@ function once (fn) { /***/ }), -/* 109 */ +/* 110 */ /***/ (function(module, exports, __webpack_require__) { -const pkg = __webpack_require__(110); +const pkg = __webpack_require__(111); module.exports = pkg.async; module.exports.default = pkg.async; @@ -43114,19 +43316,19 @@ module.exports.generateTasks = pkg.generateTasks; /***/ }), -/* 110 */ +/* 111 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -var optionsManager = __webpack_require__(111); -var taskManager = __webpack_require__(112); -var reader_async_1 = __webpack_require__(238); -var reader_stream_1 = __webpack_require__(262); -var reader_sync_1 = __webpack_require__(263); -var arrayUtils = __webpack_require__(265); -var streamUtils = __webpack_require__(266); +var optionsManager = __webpack_require__(112); +var taskManager = __webpack_require__(113); +var reader_async_1 = __webpack_require__(239); +var reader_stream_1 = __webpack_require__(263); +var reader_sync_1 = __webpack_require__(264); +var arrayUtils = __webpack_require__(266); +var streamUtils = __webpack_require__(267); /** * Synchronous API. */ @@ -43192,7 +43394,7 @@ function isString(source) { /***/ }), -/* 111 */ +/* 112 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -43241,13 +43443,13 @@ exports.prepare = prepare; /***/ }), -/* 112 */ +/* 113 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -var patternUtils = __webpack_require__(113); +var patternUtils = __webpack_require__(114); /** * Generate tasks based on parent directory of each pattern. */ @@ -43334,16 +43536,16 @@ exports.convertPatternGroupToTask = convertPatternGroupToTask; /***/ }), -/* 113 */ +/* 114 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -var path = __webpack_require__(7); -var globParent = __webpack_require__(114); -var isGlob = __webpack_require__(118); -var micromatch = __webpack_require__(119); +var path = __webpack_require__(6); +var globParent = __webpack_require__(115); +var isGlob = __webpack_require__(119); +var micromatch = __webpack_require__(120); var GLOBSTAR = '**'; /** * Return true for static pattern. @@ -43489,16 +43691,16 @@ exports.matchAny = matchAny; /***/ }), -/* 114 */ +/* 115 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var path = __webpack_require__(7); -var isglob = __webpack_require__(115); -var pathDirname = __webpack_require__(117); -var isWin32 = __webpack_require__(20).platform() === 'win32'; +var path = __webpack_require__(6); +var isglob = __webpack_require__(116); +var pathDirname = __webpack_require__(118); +var isWin32 = __webpack_require__(21).platform() === 'win32'; module.exports = function globParent(str) { // flip windows path separators @@ -43520,7 +43722,7 @@ module.exports = function globParent(str) { /***/ }), -/* 115 */ +/* 116 */ /***/ (function(module, exports, __webpack_require__) { /*! @@ -43530,7 +43732,7 @@ module.exports = function globParent(str) { * Licensed under the MIT License. */ -var isExtglob = __webpack_require__(116); +var isExtglob = __webpack_require__(117); module.exports = function isGlob(str) { if (typeof str !== 'string' || str === '') { @@ -43551,7 +43753,7 @@ module.exports = function isGlob(str) { /***/ }), -/* 116 */ +/* 117 */ /***/ (function(module, exports) { /*! @@ -43577,14 +43779,14 @@ module.exports = function isExtglob(str) { /***/ }), -/* 117 */ +/* 118 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var path = __webpack_require__(7); -var inspect = __webpack_require__(16).inspect; +var path = __webpack_require__(6); +var inspect = __webpack_require__(17).inspect; function assertPath(path) { if (typeof path !== 'string') { @@ -43727,7 +43929,7 @@ module.exports.win32 = win32; /***/ }), -/* 118 */ +/* 119 */ /***/ (function(module, exports, __webpack_require__) { /*! @@ -43737,7 +43939,7 @@ module.exports.win32 = win32; * Released under the MIT License. */ -var isExtglob = __webpack_require__(116); +var isExtglob = __webpack_require__(117); var chars = { '{': '}', '(': ')', '[': ']'}; module.exports = function isGlob(str, options) { @@ -43779,7 +43981,7 @@ module.exports = function isGlob(str, options) { /***/ }), -/* 119 */ +/* 120 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -43789,19 +43991,19 @@ module.exports = function isGlob(str, options) { * Module dependencies */ -var util = __webpack_require__(16); -var braces = __webpack_require__(120); -var toRegex = __webpack_require__(121); -var extend = __webpack_require__(134); +var util = __webpack_require__(17); +var braces = __webpack_require__(121); +var toRegex = __webpack_require__(122); +var extend = __webpack_require__(135); /** * Local dependencies */ -var compilers = __webpack_require__(215); -var parsers = __webpack_require__(235); -var cache = __webpack_require__(236); -var utils = __webpack_require__(237); +var compilers = __webpack_require__(216); +var parsers = __webpack_require__(236); +var cache = __webpack_require__(237); +var utils = __webpack_require__(238); var MAX_LENGTH = 1024 * 64; /** @@ -44663,7 +44865,7 @@ module.exports = micromatch; /***/ }), -/* 120 */ +/* 121 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -44673,18 +44875,18 @@ module.exports = micromatch; * Module dependencies */ -var toRegex = __webpack_require__(121); -var unique = __webpack_require__(139); -var extend = __webpack_require__(140); +var toRegex = __webpack_require__(122); +var unique = __webpack_require__(140); +var extend = __webpack_require__(141); /** * Local dependencies */ -var compilers = __webpack_require__(142); -var parsers = __webpack_require__(153); -var Braces = __webpack_require__(157); -var utils = __webpack_require__(143); +var compilers = __webpack_require__(143); +var parsers = __webpack_require__(154); +var Braces = __webpack_require__(158); +var utils = __webpack_require__(144); var MAX_LENGTH = 1024 * 64; var cache = {}; @@ -44988,16 +45190,16 @@ module.exports = braces; /***/ }), -/* 121 */ +/* 122 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var safe = __webpack_require__(122); -var define = __webpack_require__(128); -var extend = __webpack_require__(134); -var not = __webpack_require__(138); +var safe = __webpack_require__(123); +var define = __webpack_require__(129); +var extend = __webpack_require__(135); +var not = __webpack_require__(139); var MAX_LENGTH = 1024 * 64; /** @@ -45150,10 +45352,10 @@ module.exports.makeRe = makeRe; /***/ }), -/* 122 */ +/* 123 */ /***/ (function(module, exports, __webpack_require__) { -var parse = __webpack_require__(123); +var parse = __webpack_require__(124); var types = parse.types; module.exports = function (re, opts) { @@ -45199,13 +45401,13 @@ function isRegExp (x) { /***/ }), -/* 123 */ +/* 124 */ /***/ (function(module, exports, __webpack_require__) { -var util = __webpack_require__(124); -var types = __webpack_require__(125); -var sets = __webpack_require__(126); -var positions = __webpack_require__(127); +var util = __webpack_require__(125); +var types = __webpack_require__(126); +var sets = __webpack_require__(127); +var positions = __webpack_require__(128); module.exports = function(regexpStr) { @@ -45487,11 +45689,11 @@ module.exports.types = types; /***/ }), -/* 124 */ +/* 125 */ /***/ (function(module, exports, __webpack_require__) { -var types = __webpack_require__(125); -var sets = __webpack_require__(126); +var types = __webpack_require__(126); +var sets = __webpack_require__(127); // All of these are private and only used by randexp. @@ -45604,7 +45806,7 @@ exports.error = function(regexp, msg) { /***/ }), -/* 125 */ +/* 126 */ /***/ (function(module, exports) { module.exports = { @@ -45620,10 +45822,10 @@ module.exports = { /***/ }), -/* 126 */ +/* 127 */ /***/ (function(module, exports, __webpack_require__) { -var types = __webpack_require__(125); +var types = __webpack_require__(126); var INTS = function() { return [{ type: types.RANGE , from: 48, to: 57 }]; @@ -45708,10 +45910,10 @@ exports.anyChar = function() { /***/ }), -/* 127 */ +/* 128 */ /***/ (function(module, exports, __webpack_require__) { -var types = __webpack_require__(125); +var types = __webpack_require__(126); exports.wordBoundary = function() { return { type: types.POSITION, value: 'b' }; @@ -45731,7 +45933,7 @@ exports.end = function() { /***/ }), -/* 128 */ +/* 129 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -45744,8 +45946,8 @@ exports.end = function() { -var isobject = __webpack_require__(129); -var isDescriptor = __webpack_require__(130); +var isobject = __webpack_require__(130); +var isDescriptor = __webpack_require__(131); var define = (typeof Reflect !== 'undefined' && Reflect.defineProperty) ? Reflect.defineProperty : Object.defineProperty; @@ -45776,7 +45978,7 @@ module.exports = function defineProperty(obj, key, val) { /***/ }), -/* 129 */ +/* 130 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -45795,7 +45997,7 @@ module.exports = function isObject(val) { /***/ }), -/* 130 */ +/* 131 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -45808,9 +46010,9 @@ module.exports = function isObject(val) { -var typeOf = __webpack_require__(131); -var isAccessor = __webpack_require__(132); -var isData = __webpack_require__(133); +var typeOf = __webpack_require__(132); +var isAccessor = __webpack_require__(133); +var isData = __webpack_require__(134); module.exports = function isDescriptor(obj, key) { if (typeOf(obj) !== 'object') { @@ -45824,7 +46026,7 @@ module.exports = function isDescriptor(obj, key) { /***/ }), -/* 131 */ +/* 132 */ /***/ (function(module, exports) { var toString = Object.prototype.toString; @@ -45959,7 +46161,7 @@ function isBuffer(val) { /***/ }), -/* 132 */ +/* 133 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -45972,7 +46174,7 @@ function isBuffer(val) { -var typeOf = __webpack_require__(131); +var typeOf = __webpack_require__(132); // accessor descriptor properties var accessor = { @@ -46035,7 +46237,7 @@ module.exports = isAccessorDescriptor; /***/ }), -/* 133 */ +/* 134 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -46048,7 +46250,7 @@ module.exports = isAccessorDescriptor; -var typeOf = __webpack_require__(131); +var typeOf = __webpack_require__(132); module.exports = function isDataDescriptor(obj, prop) { // data descriptor properties @@ -46091,14 +46293,14 @@ module.exports = function isDataDescriptor(obj, prop) { /***/ }), -/* 134 */ +/* 135 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var isExtendable = __webpack_require__(135); -var assignSymbols = __webpack_require__(137); +var isExtendable = __webpack_require__(136); +var assignSymbols = __webpack_require__(138); module.exports = Object.assign || function(obj/*, objects*/) { if (obj === null || typeof obj === 'undefined') { @@ -46158,7 +46360,7 @@ function isEnum(obj, key) { /***/ }), -/* 135 */ +/* 136 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -46171,7 +46373,7 @@ function isEnum(obj, key) { -var isPlainObject = __webpack_require__(136); +var isPlainObject = __webpack_require__(137); module.exports = function isExtendable(val) { return isPlainObject(val) || typeof val === 'function' || Array.isArray(val); @@ -46179,7 +46381,7 @@ module.exports = function isExtendable(val) { /***/ }), -/* 136 */ +/* 137 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -46192,7 +46394,7 @@ module.exports = function isExtendable(val) { -var isObject = __webpack_require__(129); +var isObject = __webpack_require__(130); function isObjectObject(o) { return isObject(o) === true @@ -46223,7 +46425,7 @@ module.exports = function isPlainObject(o) { /***/ }), -/* 137 */ +/* 138 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -46270,14 +46472,14 @@ module.exports = function(receiver, objects) { /***/ }), -/* 138 */ +/* 139 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var extend = __webpack_require__(134); -var safe = __webpack_require__(122); +var extend = __webpack_require__(135); +var safe = __webpack_require__(123); /** * The main export is a function that takes a `pattern` string and an `options` object. @@ -46349,7 +46551,7 @@ module.exports = toRegex; /***/ }), -/* 139 */ +/* 140 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -46399,13 +46601,13 @@ module.exports.immutable = function uniqueImmutable(arr) { /***/ }), -/* 140 */ +/* 141 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var isObject = __webpack_require__(141); +var isObject = __webpack_require__(142); module.exports = function extend(o/*, objects*/) { if (!isObject(o)) { o = {}; } @@ -46439,7 +46641,7 @@ function hasOwn(obj, key) { /***/ }), -/* 141 */ +/* 142 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -46459,13 +46661,13 @@ module.exports = function isExtendable(val) { /***/ }), -/* 142 */ +/* 143 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var utils = __webpack_require__(143); +var utils = __webpack_require__(144); module.exports = function(braces, options) { braces.compiler @@ -46748,25 +46950,25 @@ function hasQueue(node) { /***/ }), -/* 143 */ +/* 144 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var splitString = __webpack_require__(144); +var splitString = __webpack_require__(145); var utils = module.exports; /** * Module dependencies */ -utils.extend = __webpack_require__(140); -utils.flatten = __webpack_require__(145); -utils.isObject = __webpack_require__(129); -utils.fillRange = __webpack_require__(146); -utils.repeat = __webpack_require__(152); -utils.unique = __webpack_require__(139); +utils.extend = __webpack_require__(141); +utils.flatten = __webpack_require__(146); +utils.isObject = __webpack_require__(130); +utils.fillRange = __webpack_require__(147); +utils.repeat = __webpack_require__(153); +utils.unique = __webpack_require__(140); utils.define = function(obj, key, val) { Object.defineProperty(obj, key, { @@ -47098,7 +47300,7 @@ utils.escapeRegex = function(str) { /***/ }), -/* 144 */ +/* 145 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -47111,7 +47313,7 @@ utils.escapeRegex = function(str) { -var extend = __webpack_require__(134); +var extend = __webpack_require__(135); module.exports = function(str, options, fn) { if (typeof str !== 'string') { @@ -47276,7 +47478,7 @@ function keepEscaping(opts, str, idx) { /***/ }), -/* 145 */ +/* 146 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -47305,7 +47507,7 @@ function flat(arr, res) { /***/ }), -/* 146 */ +/* 147 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -47318,11 +47520,11 @@ function flat(arr, res) { -var util = __webpack_require__(16); -var isNumber = __webpack_require__(147); -var extend = __webpack_require__(140); -var repeat = __webpack_require__(150); -var toRegex = __webpack_require__(151); +var util = __webpack_require__(17); +var isNumber = __webpack_require__(148); +var extend = __webpack_require__(141); +var repeat = __webpack_require__(151); +var toRegex = __webpack_require__(152); /** * Return a range of numbers or letters. @@ -47520,7 +47722,7 @@ module.exports = fillRange; /***/ }), -/* 147 */ +/* 148 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -47533,7 +47735,7 @@ module.exports = fillRange; -var typeOf = __webpack_require__(148); +var typeOf = __webpack_require__(149); module.exports = function isNumber(num) { var type = typeOf(num); @@ -47549,10 +47751,10 @@ module.exports = function isNumber(num) { /***/ }), -/* 148 */ +/* 149 */ /***/ (function(module, exports, __webpack_require__) { -var isBuffer = __webpack_require__(149); +var isBuffer = __webpack_require__(150); var toString = Object.prototype.toString; /** @@ -47671,7 +47873,7 @@ module.exports = function kindOf(val) { /***/ }), -/* 149 */ +/* 150 */ /***/ (function(module, exports) { /*! @@ -47698,7 +47900,7 @@ function isSlowBuffer (obj) { /***/ }), -/* 150 */ +/* 151 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -47775,7 +47977,7 @@ function repeat(str, num) { /***/ }), -/* 151 */ +/* 152 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -47788,8 +47990,8 @@ function repeat(str, num) { -var repeat = __webpack_require__(150); -var isNumber = __webpack_require__(147); +var repeat = __webpack_require__(151); +var isNumber = __webpack_require__(148); var cache = {}; function toRegexRange(min, max, options) { @@ -48076,7 +48278,7 @@ module.exports = toRegexRange; /***/ }), -/* 152 */ +/* 153 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -48101,14 +48303,14 @@ module.exports = function repeat(ele, num) { /***/ }), -/* 153 */ +/* 154 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var Node = __webpack_require__(154); -var utils = __webpack_require__(143); +var Node = __webpack_require__(155); +var utils = __webpack_require__(144); /** * Braces parsers @@ -48468,15 +48670,15 @@ function concatNodes(pos, node, parent, options) { /***/ }), -/* 154 */ +/* 155 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var isObject = __webpack_require__(129); -var define = __webpack_require__(155); -var utils = __webpack_require__(156); +var isObject = __webpack_require__(130); +var define = __webpack_require__(156); +var utils = __webpack_require__(157); var ownNames; /** @@ -48967,7 +49169,7 @@ exports = module.exports = Node; /***/ }), -/* 155 */ +/* 156 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -48980,7 +49182,7 @@ exports = module.exports = Node; -var isDescriptor = __webpack_require__(130); +var isDescriptor = __webpack_require__(131); module.exports = function defineProperty(obj, prop, val) { if (typeof obj !== 'object' && typeof obj !== 'function') { @@ -49005,13 +49207,13 @@ module.exports = function defineProperty(obj, prop, val) { /***/ }), -/* 156 */ +/* 157 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var typeOf = __webpack_require__(148); +var typeOf = __webpack_require__(149); var utils = module.exports; /** @@ -50031,17 +50233,17 @@ function assert(val, message) { /***/ }), -/* 157 */ +/* 158 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var extend = __webpack_require__(140); -var Snapdragon = __webpack_require__(158); -var compilers = __webpack_require__(142); -var parsers = __webpack_require__(153); -var utils = __webpack_require__(143); +var extend = __webpack_require__(141); +var Snapdragon = __webpack_require__(159); +var compilers = __webpack_require__(143); +var parsers = __webpack_require__(154); +var utils = __webpack_require__(144); /** * Customize Snapdragon parser and renderer @@ -50142,17 +50344,17 @@ module.exports = Braces; /***/ }), -/* 158 */ +/* 159 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var Base = __webpack_require__(159); -var define = __webpack_require__(183); -var Compiler = __webpack_require__(191); -var Parser = __webpack_require__(212); -var utils = __webpack_require__(196); +var Base = __webpack_require__(160); +var define = __webpack_require__(184); +var Compiler = __webpack_require__(192); +var Parser = __webpack_require__(213); +var utils = __webpack_require__(197); var regexCache = {}; var cache = {}; @@ -50323,20 +50525,20 @@ module.exports.Parser = Parser; /***/ }), -/* 159 */ +/* 160 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var util = __webpack_require__(16); -var define = __webpack_require__(155); -var CacheBase = __webpack_require__(160); -var Emitter = __webpack_require__(161); -var isObject = __webpack_require__(129); -var merge = __webpack_require__(179); -var pascal = __webpack_require__(181); -var cu = __webpack_require__(182); +var util = __webpack_require__(17); +var define = __webpack_require__(156); +var CacheBase = __webpack_require__(161); +var Emitter = __webpack_require__(162); +var isObject = __webpack_require__(130); +var merge = __webpack_require__(180); +var pascal = __webpack_require__(182); +var cu = __webpack_require__(183); /** * Optionally define a custom `cache` namespace to use. @@ -50765,21 +50967,21 @@ module.exports.namespace = namespace; /***/ }), -/* 160 */ +/* 161 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var isObject = __webpack_require__(129); -var Emitter = __webpack_require__(161); -var visit = __webpack_require__(162); -var toPath = __webpack_require__(165); -var union = __webpack_require__(166); -var del = __webpack_require__(170); -var get = __webpack_require__(168); -var has = __webpack_require__(175); -var set = __webpack_require__(178); +var isObject = __webpack_require__(130); +var Emitter = __webpack_require__(162); +var visit = __webpack_require__(163); +var toPath = __webpack_require__(166); +var union = __webpack_require__(167); +var del = __webpack_require__(171); +var get = __webpack_require__(169); +var has = __webpack_require__(176); +var set = __webpack_require__(179); /** * Create a `Cache` constructor that when instantiated will @@ -51033,7 +51235,7 @@ module.exports.namespace = namespace; /***/ }), -/* 161 */ +/* 162 */ /***/ (function(module, exports, __webpack_require__) { @@ -51202,7 +51404,7 @@ Emitter.prototype.hasListeners = function(event){ /***/ }), -/* 162 */ +/* 163 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -51215,8 +51417,8 @@ Emitter.prototype.hasListeners = function(event){ -var visit = __webpack_require__(163); -var mapVisit = __webpack_require__(164); +var visit = __webpack_require__(164); +var mapVisit = __webpack_require__(165); module.exports = function(collection, method, val) { var result; @@ -51239,7 +51441,7 @@ module.exports = function(collection, method, val) { /***/ }), -/* 163 */ +/* 164 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -51252,7 +51454,7 @@ module.exports = function(collection, method, val) { -var isObject = __webpack_require__(129); +var isObject = __webpack_require__(130); module.exports = function visit(thisArg, method, target, val) { if (!isObject(thisArg) && typeof thisArg !== 'function') { @@ -51279,14 +51481,14 @@ module.exports = function visit(thisArg, method, target, val) { /***/ }), -/* 164 */ +/* 165 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var util = __webpack_require__(16); -var visit = __webpack_require__(163); +var util = __webpack_require__(17); +var visit = __webpack_require__(164); /** * Map `visit` over an array of objects. @@ -51323,7 +51525,7 @@ function isObject(val) { /***/ }), -/* 165 */ +/* 166 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -51336,7 +51538,7 @@ function isObject(val) { -var typeOf = __webpack_require__(148); +var typeOf = __webpack_require__(149); module.exports = function toPath(args) { if (typeOf(args) !== 'arguments') { @@ -51363,16 +51565,16 @@ function filter(arr) { /***/ }), -/* 166 */ +/* 167 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var isObject = __webpack_require__(141); -var union = __webpack_require__(167); -var get = __webpack_require__(168); -var set = __webpack_require__(169); +var isObject = __webpack_require__(142); +var union = __webpack_require__(168); +var get = __webpack_require__(169); +var set = __webpack_require__(170); module.exports = function unionValue(obj, prop, value) { if (!isObject(obj)) { @@ -51400,7 +51602,7 @@ function arrayify(val) { /***/ }), -/* 167 */ +/* 168 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -51436,7 +51638,7 @@ module.exports = function union(init) { /***/ }), -/* 168 */ +/* 169 */ /***/ (function(module, exports) { /*! @@ -51492,7 +51694,7 @@ function toString(val) { /***/ }), -/* 169 */ +/* 170 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -51505,10 +51707,10 @@ function toString(val) { -var toPath = __webpack_require__(165); -var extend = __webpack_require__(140); -var isPlainObject = __webpack_require__(136); -var isObject = __webpack_require__(141); +var toPath = __webpack_require__(166); +var extend = __webpack_require__(141); +var isPlainObject = __webpack_require__(137); +var isObject = __webpack_require__(142); module.exports = function(obj, path, val) { if (!isObject(obj)) { @@ -51562,7 +51764,7 @@ module.exports = function(obj, path, val) { /***/ }), -/* 170 */ +/* 171 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -51575,8 +51777,8 @@ module.exports = function(obj, path, val) { -var isObject = __webpack_require__(129); -var has = __webpack_require__(171); +var isObject = __webpack_require__(130); +var has = __webpack_require__(172); module.exports = function unset(obj, prop) { if (!isObject(obj)) { @@ -51601,7 +51803,7 @@ module.exports = function unset(obj, prop) { /***/ }), -/* 171 */ +/* 172 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -51614,9 +51816,9 @@ module.exports = function unset(obj, prop) { -var isObject = __webpack_require__(172); -var hasValues = __webpack_require__(174); -var get = __webpack_require__(168); +var isObject = __webpack_require__(173); +var hasValues = __webpack_require__(175); +var get = __webpack_require__(169); module.exports = function(obj, prop, noZero) { if (isObject(obj)) { @@ -51627,7 +51829,7 @@ module.exports = function(obj, prop, noZero) { /***/ }), -/* 172 */ +/* 173 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -51640,7 +51842,7 @@ module.exports = function(obj, prop, noZero) { -var isArray = __webpack_require__(173); +var isArray = __webpack_require__(174); module.exports = function isObject(val) { return val != null && typeof val === 'object' && isArray(val) === false; @@ -51648,7 +51850,7 @@ module.exports = function isObject(val) { /***/ }), -/* 173 */ +/* 174 */ /***/ (function(module, exports) { var toString = {}.toString; @@ -51659,7 +51861,7 @@ module.exports = Array.isArray || function (arr) { /***/ }), -/* 174 */ +/* 175 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -51702,7 +51904,7 @@ module.exports = function hasValue(o, noZero) { /***/ }), -/* 175 */ +/* 176 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -51715,9 +51917,9 @@ module.exports = function hasValue(o, noZero) { -var isObject = __webpack_require__(129); -var hasValues = __webpack_require__(176); -var get = __webpack_require__(168); +var isObject = __webpack_require__(130); +var hasValues = __webpack_require__(177); +var get = __webpack_require__(169); module.exports = function(val, prop) { return hasValues(isObject(val) && prop ? get(val, prop) : val); @@ -51725,7 +51927,7 @@ module.exports = function(val, prop) { /***/ }), -/* 176 */ +/* 177 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -51738,8 +51940,8 @@ module.exports = function(val, prop) { -var typeOf = __webpack_require__(177); -var isNumber = __webpack_require__(147); +var typeOf = __webpack_require__(178); +var isNumber = __webpack_require__(148); module.exports = function hasValue(val) { // is-number checks for NaN and other edge cases @@ -51792,10 +51994,10 @@ module.exports = function hasValue(val) { /***/ }), -/* 177 */ +/* 178 */ /***/ (function(module, exports, __webpack_require__) { -var isBuffer = __webpack_require__(149); +var isBuffer = __webpack_require__(150); var toString = Object.prototype.toString; /** @@ -51917,7 +52119,7 @@ module.exports = function kindOf(val) { /***/ }), -/* 178 */ +/* 179 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -51930,10 +52132,10 @@ module.exports = function kindOf(val) { -var split = __webpack_require__(144); -var extend = __webpack_require__(140); -var isPlainObject = __webpack_require__(136); -var isObject = __webpack_require__(141); +var split = __webpack_require__(145); +var extend = __webpack_require__(141); +var isPlainObject = __webpack_require__(137); +var isObject = __webpack_require__(142); module.exports = function(obj, prop, val) { if (!isObject(obj)) { @@ -51975,14 +52177,14 @@ module.exports = function(obj, prop, val) { /***/ }), -/* 179 */ +/* 180 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var isExtendable = __webpack_require__(135); -var forIn = __webpack_require__(180); +var isExtendable = __webpack_require__(136); +var forIn = __webpack_require__(181); function mixinDeep(target, objects) { var len = arguments.length, i = 0; @@ -52035,7 +52237,7 @@ module.exports = mixinDeep; /***/ }), -/* 180 */ +/* 181 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -52058,7 +52260,7 @@ module.exports = function forIn(obj, fn, thisArg) { /***/ }), -/* 181 */ +/* 182 */ /***/ (function(module, exports) { /*! @@ -52085,17 +52287,17 @@ module.exports = pascalcase; /***/ }), -/* 182 */ +/* 183 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var util = __webpack_require__(16); -var union = __webpack_require__(167); -var define = __webpack_require__(183); -var staticExtend = __webpack_require__(188); -var isObj = __webpack_require__(129); +var util = __webpack_require__(17); +var union = __webpack_require__(168); +var define = __webpack_require__(184); +var staticExtend = __webpack_require__(189); +var isObj = __webpack_require__(130); /** * Expose class utils @@ -52462,7 +52664,7 @@ cu.bubble = function(Parent, events) { /***/ }), -/* 183 */ +/* 184 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -52475,7 +52677,7 @@ cu.bubble = function(Parent, events) { -var isDescriptor = __webpack_require__(184); +var isDescriptor = __webpack_require__(185); module.exports = function defineProperty(obj, prop, val) { if (typeof obj !== 'object' && typeof obj !== 'function') { @@ -52500,7 +52702,7 @@ module.exports = function defineProperty(obj, prop, val) { /***/ }), -/* 184 */ +/* 185 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -52513,9 +52715,9 @@ module.exports = function defineProperty(obj, prop, val) { -var typeOf = __webpack_require__(185); -var isAccessor = __webpack_require__(186); -var isData = __webpack_require__(187); +var typeOf = __webpack_require__(186); +var isAccessor = __webpack_require__(187); +var isData = __webpack_require__(188); module.exports = function isDescriptor(obj, key) { if (typeOf(obj) !== 'object') { @@ -52529,7 +52731,7 @@ module.exports = function isDescriptor(obj, key) { /***/ }), -/* 185 */ +/* 186 */ /***/ (function(module, exports) { var toString = Object.prototype.toString; @@ -52682,7 +52884,7 @@ function isBuffer(val) { /***/ }), -/* 186 */ +/* 187 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -52695,7 +52897,7 @@ function isBuffer(val) { -var typeOf = __webpack_require__(148); +var typeOf = __webpack_require__(149); // accessor descriptor properties var accessor = { @@ -52758,7 +52960,7 @@ module.exports = isAccessorDescriptor; /***/ }), -/* 187 */ +/* 188 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -52771,7 +52973,7 @@ module.exports = isAccessorDescriptor; -var typeOf = __webpack_require__(148); +var typeOf = __webpack_require__(149); // data descriptor properties var data = { @@ -52820,7 +53022,7 @@ module.exports = isDataDescriptor; /***/ }), -/* 188 */ +/* 189 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -52833,9 +53035,9 @@ module.exports = isDataDescriptor; -var copy = __webpack_require__(189); -var define = __webpack_require__(183); -var util = __webpack_require__(16); +var copy = __webpack_require__(190); +var define = __webpack_require__(184); +var util = __webpack_require__(17); /** * Returns a function for extending the static properties, @@ -52917,15 +53119,15 @@ module.exports = extend; /***/ }), -/* 189 */ +/* 190 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var typeOf = __webpack_require__(148); -var copyDescriptor = __webpack_require__(190); -var define = __webpack_require__(183); +var typeOf = __webpack_require__(149); +var copyDescriptor = __webpack_require__(191); +var define = __webpack_require__(184); /** * Copy static properties, prototype properties, and descriptors from one object to another. @@ -53098,7 +53300,7 @@ module.exports.has = has; /***/ }), -/* 190 */ +/* 191 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -53186,16 +53388,16 @@ function isObject(val) { /***/ }), -/* 191 */ +/* 192 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var use = __webpack_require__(192); -var define = __webpack_require__(183); -var debug = __webpack_require__(193)('snapdragon:compiler'); -var utils = __webpack_require__(196); +var use = __webpack_require__(193); +var define = __webpack_require__(184); +var debug = __webpack_require__(194)('snapdragon:compiler'); +var utils = __webpack_require__(197); /** * Create a new `Compiler` with the given `options`. @@ -53349,7 +53551,7 @@ Compiler.prototype = { // source map support if (opts.sourcemap) { - var sourcemaps = __webpack_require__(211); + var sourcemaps = __webpack_require__(212); sourcemaps(this); this.mapVisit(this.ast.nodes); this.applySourceMaps(); @@ -53370,7 +53572,7 @@ module.exports = Compiler; /***/ }), -/* 192 */ +/* 193 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -53532,7 +53734,7 @@ function define(obj, key, val) { /***/ }), -/* 193 */ +/* 194 */ /***/ (function(module, exports, __webpack_require__) { /** @@ -53541,7 +53743,7 @@ function define(obj, key, val) { * Expose `debug()` as the module. */ -exports = module.exports = __webpack_require__(194); +exports = module.exports = __webpack_require__(195); exports.log = log; exports.formatArgs = formatArgs; exports.save = save; @@ -53723,7 +53925,7 @@ function localstorage() { /***/ }), -/* 194 */ +/* 195 */ /***/ (function(module, exports, __webpack_require__) { @@ -53739,7 +53941,7 @@ exports.coerce = coerce; exports.disable = disable; exports.enable = enable; exports.enabled = enabled; -exports.humanize = __webpack_require__(195); +exports.humanize = __webpack_require__(196); /** * The currently active debug mode names, and names to skip. @@ -53931,7 +54133,7 @@ function coerce(val) { /***/ }), -/* 195 */ +/* 196 */ /***/ (function(module, exports) { /** @@ -54089,7 +54291,7 @@ function plural(ms, n, name) { /***/ }), -/* 196 */ +/* 197 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -54099,9 +54301,9 @@ function plural(ms, n, name) { * Module dependencies */ -exports.extend = __webpack_require__(140); -exports.SourceMap = __webpack_require__(197); -exports.sourceMapResolve = __webpack_require__(208); +exports.extend = __webpack_require__(141); +exports.SourceMap = __webpack_require__(198); +exports.sourceMapResolve = __webpack_require__(209); /** * Convert backslash in the given string to forward slashes @@ -54144,7 +54346,7 @@ exports.last = function(arr, n) { /***/ }), -/* 197 */ +/* 198 */ /***/ (function(module, exports, __webpack_require__) { /* @@ -54152,13 +54354,13 @@ exports.last = function(arr, n) { * Licensed under the New BSD license. See LICENSE.txt or: * http://opensource.org/licenses/BSD-3-Clause */ -exports.SourceMapGenerator = __webpack_require__(198).SourceMapGenerator; -exports.SourceMapConsumer = __webpack_require__(204).SourceMapConsumer; -exports.SourceNode = __webpack_require__(207).SourceNode; +exports.SourceMapGenerator = __webpack_require__(199).SourceMapGenerator; +exports.SourceMapConsumer = __webpack_require__(205).SourceMapConsumer; +exports.SourceNode = __webpack_require__(208).SourceNode; /***/ }), -/* 198 */ +/* 199 */ /***/ (function(module, exports, __webpack_require__) { /* -*- Mode: js; js-indent-level: 2; -*- */ @@ -54168,10 +54370,10 @@ exports.SourceNode = __webpack_require__(207).SourceNode; * http://opensource.org/licenses/BSD-3-Clause */ -var base64VLQ = __webpack_require__(199); -var util = __webpack_require__(201); -var ArraySet = __webpack_require__(202).ArraySet; -var MappingList = __webpack_require__(203).MappingList; +var base64VLQ = __webpack_require__(200); +var util = __webpack_require__(202); +var ArraySet = __webpack_require__(203).ArraySet; +var MappingList = __webpack_require__(204).MappingList; /** * An instance of the SourceMapGenerator represents a source map which is @@ -54580,7 +54782,7 @@ exports.SourceMapGenerator = SourceMapGenerator; /***/ }), -/* 199 */ +/* 200 */ /***/ (function(module, exports, __webpack_require__) { /* -*- Mode: js; js-indent-level: 2; -*- */ @@ -54620,7 +54822,7 @@ exports.SourceMapGenerator = SourceMapGenerator; * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -var base64 = __webpack_require__(200); +var base64 = __webpack_require__(201); // A single base 64 digit can contain 6 bits of data. For the base 64 variable // length quantities we use in the source map spec, the first bit is the sign, @@ -54726,7 +54928,7 @@ exports.decode = function base64VLQ_decode(aStr, aIndex, aOutParam) { /***/ }), -/* 200 */ +/* 201 */ /***/ (function(module, exports) { /* -*- Mode: js; js-indent-level: 2; -*- */ @@ -54799,7 +55001,7 @@ exports.decode = function (charCode) { /***/ }), -/* 201 */ +/* 202 */ /***/ (function(module, exports) { /* -*- Mode: js; js-indent-level: 2; -*- */ @@ -55222,7 +55424,7 @@ exports.compareByGeneratedPositionsInflated = compareByGeneratedPositionsInflate /***/ }), -/* 202 */ +/* 203 */ /***/ (function(module, exports, __webpack_require__) { /* -*- Mode: js; js-indent-level: 2; -*- */ @@ -55232,7 +55434,7 @@ exports.compareByGeneratedPositionsInflated = compareByGeneratedPositionsInflate * http://opensource.org/licenses/BSD-3-Clause */ -var util = __webpack_require__(201); +var util = __webpack_require__(202); var has = Object.prototype.hasOwnProperty; var hasNativeMap = typeof Map !== "undefined"; @@ -55349,7 +55551,7 @@ exports.ArraySet = ArraySet; /***/ }), -/* 203 */ +/* 204 */ /***/ (function(module, exports, __webpack_require__) { /* -*- Mode: js; js-indent-level: 2; -*- */ @@ -55359,7 +55561,7 @@ exports.ArraySet = ArraySet; * http://opensource.org/licenses/BSD-3-Clause */ -var util = __webpack_require__(201); +var util = __webpack_require__(202); /** * Determine whether mappingB is after mappingA with respect to generated @@ -55434,7 +55636,7 @@ exports.MappingList = MappingList; /***/ }), -/* 204 */ +/* 205 */ /***/ (function(module, exports, __webpack_require__) { /* -*- Mode: js; js-indent-level: 2; -*- */ @@ -55444,11 +55646,11 @@ exports.MappingList = MappingList; * http://opensource.org/licenses/BSD-3-Clause */ -var util = __webpack_require__(201); -var binarySearch = __webpack_require__(205); -var ArraySet = __webpack_require__(202).ArraySet; -var base64VLQ = __webpack_require__(199); -var quickSort = __webpack_require__(206).quickSort; +var util = __webpack_require__(202); +var binarySearch = __webpack_require__(206); +var ArraySet = __webpack_require__(203).ArraySet; +var base64VLQ = __webpack_require__(200); +var quickSort = __webpack_require__(207).quickSort; function SourceMapConsumer(aSourceMap) { var sourceMap = aSourceMap; @@ -56522,7 +56724,7 @@ exports.IndexedSourceMapConsumer = IndexedSourceMapConsumer; /***/ }), -/* 205 */ +/* 206 */ /***/ (function(module, exports) { /* -*- Mode: js; js-indent-level: 2; -*- */ @@ -56639,7 +56841,7 @@ exports.search = function search(aNeedle, aHaystack, aCompare, aBias) { /***/ }), -/* 206 */ +/* 207 */ /***/ (function(module, exports) { /* -*- Mode: js; js-indent-level: 2; -*- */ @@ -56759,7 +56961,7 @@ exports.quickSort = function (ary, comparator) { /***/ }), -/* 207 */ +/* 208 */ /***/ (function(module, exports, __webpack_require__) { /* -*- Mode: js; js-indent-level: 2; -*- */ @@ -56769,8 +56971,8 @@ exports.quickSort = function (ary, comparator) { * http://opensource.org/licenses/BSD-3-Clause */ -var SourceMapGenerator = __webpack_require__(198).SourceMapGenerator; -var util = __webpack_require__(201); +var SourceMapGenerator = __webpack_require__(199).SourceMapGenerator; +var util = __webpack_require__(202); // Matches a Windows-style `\r\n` newline or a `\n` newline used by all other // operating systems these days (capturing the result). @@ -57178,7 +57380,7 @@ exports.SourceNode = SourceNode; /***/ }), -/* 208 */ +/* 209 */ /***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;// Copyright 2014, 2015, 2016, 2017 Simon Lydell @@ -57190,7 +57392,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ void (function(root, factory) { if (true) { - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(209), __webpack_require__(210)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), + !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(210), __webpack_require__(211)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)) @@ -57490,7 +57692,7 @@ void (function(root, factory) { /***/ }), -/* 209 */ +/* 210 */ /***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;// Copyright 2014 Simon Lydell @@ -57553,7 +57755,7 @@ void (function(root, factory) { /***/ }), -/* 210 */ +/* 211 */ /***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;// Copyright 2014 Simon Lydell @@ -57606,16 +57808,16 @@ void (function(root, factory) { /***/ }), -/* 211 */ +/* 212 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; var fs = __webpack_require__(5); -var path = __webpack_require__(7); -var define = __webpack_require__(183); -var utils = __webpack_require__(196); +var path = __webpack_require__(6); +var define = __webpack_require__(184); +var utils = __webpack_require__(197); /** * Expose `mixin()`. @@ -57758,19 +57960,19 @@ exports.comment = function(node) { /***/ }), -/* 212 */ +/* 213 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var use = __webpack_require__(192); -var util = __webpack_require__(16); -var Cache = __webpack_require__(213); -var define = __webpack_require__(183); -var debug = __webpack_require__(193)('snapdragon:parser'); -var Position = __webpack_require__(214); -var utils = __webpack_require__(196); +var use = __webpack_require__(193); +var util = __webpack_require__(17); +var Cache = __webpack_require__(214); +var define = __webpack_require__(184); +var debug = __webpack_require__(194)('snapdragon:parser'); +var Position = __webpack_require__(215); +var utils = __webpack_require__(197); /** * Create a new `Parser` with the given `input` and `options`. @@ -58298,7 +58500,7 @@ module.exports = Parser; /***/ }), -/* 213 */ +/* 214 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -58405,13 +58607,13 @@ MapCache.prototype.del = function mapDelete(key) { /***/ }), -/* 214 */ +/* 215 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var define = __webpack_require__(183); +var define = __webpack_require__(184); /** * Store position for a node @@ -58426,14 +58628,14 @@ module.exports = function Position(start, parser) { /***/ }), -/* 215 */ +/* 216 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var nanomatch = __webpack_require__(216); -var extglob = __webpack_require__(225); +var nanomatch = __webpack_require__(217); +var extglob = __webpack_require__(226); module.exports = function(snapdragon) { var compilers = snapdragon.compiler.compilers; @@ -58510,7 +58712,7 @@ function escapeExtglobs(compiler) { /***/ }), -/* 216 */ +/* 217 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -58520,18 +58722,18 @@ function escapeExtglobs(compiler) { * Module dependencies */ -var util = __webpack_require__(16); -var toRegex = __webpack_require__(121); -var extend = __webpack_require__(134); +var util = __webpack_require__(17); +var toRegex = __webpack_require__(122); +var extend = __webpack_require__(135); /** * Local dependencies */ -var compilers = __webpack_require__(217); -var parsers = __webpack_require__(218); -var cache = __webpack_require__(219); -var utils = __webpack_require__(221); +var compilers = __webpack_require__(218); +var parsers = __webpack_require__(219); +var cache = __webpack_require__(220); +var utils = __webpack_require__(222); var MAX_LENGTH = 1024 * 64; /** @@ -59355,7 +59557,7 @@ module.exports = nanomatch; /***/ }), -/* 217 */ +/* 218 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -59701,14 +59903,14 @@ module.exports = function(nanomatch, options) { /***/ }), -/* 218 */ +/* 219 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var regexNot = __webpack_require__(138); -var toRegex = __webpack_require__(121); +var regexNot = __webpack_require__(139); +var toRegex = __webpack_require__(122); /** * Characters to use in negation regex (we want to "not" match @@ -60094,14 +60296,14 @@ module.exports.not = NOT_REGEX; /***/ }), -/* 219 */ +/* 220 */ /***/ (function(module, exports, __webpack_require__) { -module.exports = new (__webpack_require__(220))(); +module.exports = new (__webpack_require__(221))(); /***/ }), -/* 220 */ +/* 221 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -60114,7 +60316,7 @@ module.exports = new (__webpack_require__(220))(); -var MapCache = __webpack_require__(213); +var MapCache = __webpack_require__(214); /** * Create a new `FragmentCache` with an optional object to use for `caches`. @@ -60236,27 +60438,27 @@ exports = module.exports = FragmentCache; /***/ }), -/* 221 */ +/* 222 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; var utils = module.exports; -var path = __webpack_require__(7); +var path = __webpack_require__(6); /** * Module dependencies */ -var isWindows = __webpack_require__(222)(); -var Snapdragon = __webpack_require__(158); -utils.define = __webpack_require__(128); -utils.diff = __webpack_require__(223); -utils.extend = __webpack_require__(134); -utils.pick = __webpack_require__(224); -utils.typeOf = __webpack_require__(131); -utils.unique = __webpack_require__(139); +var isWindows = __webpack_require__(223)(); +var Snapdragon = __webpack_require__(159); +utils.define = __webpack_require__(129); +utils.diff = __webpack_require__(224); +utils.extend = __webpack_require__(135); +utils.pick = __webpack_require__(225); +utils.typeOf = __webpack_require__(132); +utils.unique = __webpack_require__(140); /** * Returns true if the given value is effectively an empty string @@ -60622,7 +60824,7 @@ utils.unixify = function(options) { /***/ }), -/* 222 */ +/* 223 */ /***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*! @@ -60650,7 +60852,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ /***/ }), -/* 223 */ +/* 224 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -60704,7 +60906,7 @@ function diffArray(one, two) { /***/ }), -/* 224 */ +/* 225 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -60717,7 +60919,7 @@ function diffArray(one, two) { -var isObject = __webpack_require__(129); +var isObject = __webpack_require__(130); module.exports = function pick(obj, keys) { if (!isObject(obj) && typeof obj !== 'function') { @@ -60746,7 +60948,7 @@ module.exports = function pick(obj, keys) { /***/ }), -/* 225 */ +/* 226 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -60756,18 +60958,18 @@ module.exports = function pick(obj, keys) { * Module dependencies */ -var extend = __webpack_require__(140); -var unique = __webpack_require__(139); -var toRegex = __webpack_require__(121); +var extend = __webpack_require__(141); +var unique = __webpack_require__(140); +var toRegex = __webpack_require__(122); /** * Local dependencies */ -var compilers = __webpack_require__(226); -var parsers = __webpack_require__(232); -var Extglob = __webpack_require__(234); -var utils = __webpack_require__(233); +var compilers = __webpack_require__(227); +var parsers = __webpack_require__(233); +var Extglob = __webpack_require__(235); +var utils = __webpack_require__(234); var MAX_LENGTH = 1024 * 64; /** @@ -61084,13 +61286,13 @@ module.exports = extglob; /***/ }), -/* 226 */ +/* 227 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var brackets = __webpack_require__(227); +var brackets = __webpack_require__(228); /** * Extglob compilers @@ -61260,7 +61462,7 @@ module.exports = function(extglob) { /***/ }), -/* 227 */ +/* 228 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -61270,17 +61472,17 @@ module.exports = function(extglob) { * Local dependencies */ -var compilers = __webpack_require__(228); -var parsers = __webpack_require__(230); +var compilers = __webpack_require__(229); +var parsers = __webpack_require__(231); /** * Module dependencies */ -var debug = __webpack_require__(193)('expand-brackets'); -var extend = __webpack_require__(140); -var Snapdragon = __webpack_require__(158); -var toRegex = __webpack_require__(121); +var debug = __webpack_require__(194)('expand-brackets'); +var extend = __webpack_require__(141); +var Snapdragon = __webpack_require__(159); +var toRegex = __webpack_require__(122); /** * Parses the given POSIX character class `pattern` and returns a @@ -61478,13 +61680,13 @@ module.exports = brackets; /***/ }), -/* 228 */ +/* 229 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var posix = __webpack_require__(229); +var posix = __webpack_require__(230); module.exports = function(brackets) { brackets.compiler @@ -61572,7 +61774,7 @@ module.exports = function(brackets) { /***/ }), -/* 229 */ +/* 230 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -61601,14 +61803,14 @@ module.exports = { /***/ }), -/* 230 */ +/* 231 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var utils = __webpack_require__(231); -var define = __webpack_require__(183); +var utils = __webpack_require__(232); +var define = __webpack_require__(184); /** * Text regex @@ -61827,14 +62029,14 @@ module.exports.TEXT_REGEX = TEXT_REGEX; /***/ }), -/* 231 */ +/* 232 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var toRegex = __webpack_require__(121); -var regexNot = __webpack_require__(138); +var toRegex = __webpack_require__(122); +var regexNot = __webpack_require__(139); var cached; /** @@ -61868,15 +62070,15 @@ exports.createRegex = function(pattern, include) { /***/ }), -/* 232 */ +/* 233 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var brackets = __webpack_require__(227); -var define = __webpack_require__(155); -var utils = __webpack_require__(233); +var brackets = __webpack_require__(228); +var define = __webpack_require__(156); +var utils = __webpack_require__(234); /** * Characters to use in text regex (we want to "not" match @@ -62031,14 +62233,14 @@ module.exports = parsers; /***/ }), -/* 233 */ +/* 234 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var regex = __webpack_require__(138); -var Cache = __webpack_require__(220); +var regex = __webpack_require__(139); +var Cache = __webpack_require__(221); /** * Utils @@ -62107,7 +62309,7 @@ utils.createRegex = function(str) { /***/ }), -/* 234 */ +/* 235 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -62117,16 +62319,16 @@ utils.createRegex = function(str) { * Module dependencies */ -var Snapdragon = __webpack_require__(158); -var define = __webpack_require__(155); -var extend = __webpack_require__(140); +var Snapdragon = __webpack_require__(159); +var define = __webpack_require__(156); +var extend = __webpack_require__(141); /** * Local dependencies */ -var compilers = __webpack_require__(226); -var parsers = __webpack_require__(232); +var compilers = __webpack_require__(227); +var parsers = __webpack_require__(233); /** * Customize Snapdragon parser and renderer @@ -62192,16 +62394,16 @@ module.exports = Extglob; /***/ }), -/* 235 */ +/* 236 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var extglob = __webpack_require__(225); -var nanomatch = __webpack_require__(216); -var regexNot = __webpack_require__(138); -var toRegex = __webpack_require__(121); +var extglob = __webpack_require__(226); +var nanomatch = __webpack_require__(217); +var regexNot = __webpack_require__(139); +var toRegex = __webpack_require__(122); var not; /** @@ -62282,33 +62484,33 @@ function textRegex(pattern) { /***/ }), -/* 236 */ +/* 237 */ /***/ (function(module, exports, __webpack_require__) { -module.exports = new (__webpack_require__(220))(); +module.exports = new (__webpack_require__(221))(); /***/ }), -/* 237 */ +/* 238 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; var utils = module.exports; -var path = __webpack_require__(7); +var path = __webpack_require__(6); /** * Module dependencies */ -var Snapdragon = __webpack_require__(158); -utils.define = __webpack_require__(128); -utils.diff = __webpack_require__(223); -utils.extend = __webpack_require__(134); -utils.pick = __webpack_require__(224); -utils.typeOf = __webpack_require__(131); -utils.unique = __webpack_require__(139); +var Snapdragon = __webpack_require__(159); +utils.define = __webpack_require__(129); +utils.diff = __webpack_require__(224); +utils.extend = __webpack_require__(135); +utils.pick = __webpack_require__(225); +utils.typeOf = __webpack_require__(132); +utils.unique = __webpack_require__(140); /** * Returns true if the platform is windows, or `path.sep` is `\\`. @@ -62605,7 +62807,7 @@ utils.unixify = function(options) { /***/ }), -/* 238 */ +/* 239 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -62624,9 +62826,9 @@ var __extends = (this && this.__extends) || (function () { }; })(); Object.defineProperty(exports, "__esModule", { value: true }); -var readdir = __webpack_require__(239); -var reader_1 = __webpack_require__(252); -var fs_stream_1 = __webpack_require__(256); +var readdir = __webpack_require__(240); +var reader_1 = __webpack_require__(253); +var fs_stream_1 = __webpack_require__(257); var ReaderAsync = /** @class */ (function (_super) { __extends(ReaderAsync, _super); function ReaderAsync() { @@ -62687,15 +62889,15 @@ exports.default = ReaderAsync; /***/ }), -/* 239 */ +/* 240 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const readdirSync = __webpack_require__(240); -const readdirAsync = __webpack_require__(248); -const readdirStream = __webpack_require__(251); +const readdirSync = __webpack_require__(241); +const readdirAsync = __webpack_require__(249); +const readdirStream = __webpack_require__(252); module.exports = exports = readdirAsyncPath; exports.readdir = exports.readdirAsync = exports.async = readdirAsyncPath; @@ -62779,7 +62981,7 @@ function readdirStreamStat (dir, options) { /***/ }), -/* 240 */ +/* 241 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -62787,11 +62989,11 @@ function readdirStreamStat (dir, options) { module.exports = readdirSync; -const DirectoryReader = __webpack_require__(241); +const DirectoryReader = __webpack_require__(242); let syncFacade = { - fs: __webpack_require__(246), - forEach: __webpack_require__(247), + fs: __webpack_require__(247), + forEach: __webpack_require__(248), sync: true }; @@ -62820,18 +63022,18 @@ function readdirSync (dir, options, internalOptions) { /***/ }), -/* 241 */ +/* 242 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const Readable = __webpack_require__(15).Readable; -const EventEmitter = __webpack_require__(24).EventEmitter; -const path = __webpack_require__(7); -const normalizeOptions = __webpack_require__(242); -const stat = __webpack_require__(244); -const call = __webpack_require__(245); +const Readable = __webpack_require__(16).Readable; +const EventEmitter = __webpack_require__(25).EventEmitter; +const path = __webpack_require__(6); +const normalizeOptions = __webpack_require__(243); +const stat = __webpack_require__(245); +const call = __webpack_require__(246); /** * Asynchronously reads the contents of a directory and streams the results @@ -63207,14 +63409,14 @@ module.exports = DirectoryReader; /***/ }), -/* 242 */ +/* 243 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const path = __webpack_require__(7); -const globToRegExp = __webpack_require__(243); +const path = __webpack_require__(6); +const globToRegExp = __webpack_require__(244); module.exports = normalizeOptions; @@ -63391,7 +63593,7 @@ function normalizeOptions (options, internalOptions) { /***/ }), -/* 243 */ +/* 244 */ /***/ (function(module, exports) { module.exports = function (glob, opts) { @@ -63528,13 +63730,13 @@ module.exports = function (glob, opts) { /***/ }), -/* 244 */ +/* 245 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const call = __webpack_require__(245); +const call = __webpack_require__(246); module.exports = stat; @@ -63609,7 +63811,7 @@ function symlinkStat (fs, path, lstats, callback) { /***/ }), -/* 245 */ +/* 246 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -63670,14 +63872,14 @@ function callOnce (fn) { /***/ }), -/* 246 */ +/* 247 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const fs = __webpack_require__(5); -const call = __webpack_require__(245); +const call = __webpack_require__(246); /** * A facade around {@link fs.readdirSync} that allows it to be called @@ -63741,7 +63943,7 @@ exports.lstat = function (path, callback) { /***/ }), -/* 247 */ +/* 248 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -63770,7 +63972,7 @@ function syncForEach (array, iterator, done) { /***/ }), -/* 248 */ +/* 249 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -63778,12 +63980,12 @@ function syncForEach (array, iterator, done) { module.exports = readdirAsync; -const maybe = __webpack_require__(249); -const DirectoryReader = __webpack_require__(241); +const maybe = __webpack_require__(250); +const DirectoryReader = __webpack_require__(242); let asyncFacade = { fs: __webpack_require__(5), - forEach: __webpack_require__(250), + forEach: __webpack_require__(251), async: true }; @@ -63825,7 +64027,7 @@ function readdirAsync (dir, options, callback, internalOptions) { /***/ }), -/* 249 */ +/* 250 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -63852,7 +64054,7 @@ module.exports = function maybe (cb, promise) { /***/ }), -/* 250 */ +/* 251 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -63888,7 +64090,7 @@ function asyncForEach (array, iterator, done) { /***/ }), -/* 251 */ +/* 252 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -63896,11 +64098,11 @@ function asyncForEach (array, iterator, done) { module.exports = readdirStream; -const DirectoryReader = __webpack_require__(241); +const DirectoryReader = __webpack_require__(242); let streamFacade = { fs: __webpack_require__(5), - forEach: __webpack_require__(250), + forEach: __webpack_require__(251), async: true }; @@ -63920,16 +64122,16 @@ function readdirStream (dir, options, internalOptions) { /***/ }), -/* 252 */ +/* 253 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -var path = __webpack_require__(7); -var deep_1 = __webpack_require__(253); -var entry_1 = __webpack_require__(255); -var pathUtil = __webpack_require__(254); +var path = __webpack_require__(6); +var deep_1 = __webpack_require__(254); +var entry_1 = __webpack_require__(256); +var pathUtil = __webpack_require__(255); var Reader = /** @class */ (function () { function Reader(options) { this.options = options; @@ -63995,14 +64197,14 @@ exports.default = Reader; /***/ }), -/* 253 */ +/* 254 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -var pathUtils = __webpack_require__(254); -var patternUtils = __webpack_require__(113); +var pathUtils = __webpack_require__(255); +var patternUtils = __webpack_require__(114); var DeepFilter = /** @class */ (function () { function DeepFilter(options, micromatchOptions) { this.options = options; @@ -64085,13 +64287,13 @@ exports.default = DeepFilter; /***/ }), -/* 254 */ +/* 255 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -var path = __webpack_require__(7); +var path = __webpack_require__(6); /** * Returns «true» if the last partial of the path starting with a period. */ @@ -64120,14 +64322,14 @@ exports.makeAbsolute = makeAbsolute; /***/ }), -/* 255 */ +/* 256 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -var pathUtils = __webpack_require__(254); -var patternUtils = __webpack_require__(113); +var pathUtils = __webpack_require__(255); +var patternUtils = __webpack_require__(114); var DeepFilter = /** @class */ (function () { function DeepFilter(options, micromatchOptions) { this.options = options; @@ -64212,7 +64414,7 @@ exports.default = DeepFilter; /***/ }), -/* 256 */ +/* 257 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -64231,9 +64433,9 @@ var __extends = (this && this.__extends) || (function () { }; })(); Object.defineProperty(exports, "__esModule", { value: true }); -var stream = __webpack_require__(15); -var fsStat = __webpack_require__(257); -var fs_1 = __webpack_require__(261); +var stream = __webpack_require__(16); +var fsStat = __webpack_require__(258); +var fs_1 = __webpack_require__(262); var FileSystemStream = /** @class */ (function (_super) { __extends(FileSystemStream, _super); function FileSystemStream() { @@ -64283,14 +64485,14 @@ exports.default = FileSystemStream; /***/ }), -/* 257 */ +/* 258 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const optionsManager = __webpack_require__(258); -const statProvider = __webpack_require__(260); +const optionsManager = __webpack_require__(259); +const statProvider = __webpack_require__(261); /** * Asynchronous API. */ @@ -64321,13 +64523,13 @@ exports.statSync = statSync; /***/ }), -/* 258 */ +/* 259 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const fsAdapter = __webpack_require__(259); +const fsAdapter = __webpack_require__(260); function prepare(opts) { const options = Object.assign({ fs: fsAdapter.getFileSystemAdapter(opts ? opts.fs : undefined), @@ -64340,7 +64542,7 @@ exports.prepare = prepare; /***/ }), -/* 259 */ +/* 260 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -64363,7 +64565,7 @@ exports.getFileSystemAdapter = getFileSystemAdapter; /***/ }), -/* 260 */ +/* 261 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -64415,13 +64617,13 @@ exports.isFollowedSymlink = isFollowedSymlink; /***/ }), -/* 261 */ +/* 262 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -var path = __webpack_require__(7); +var path = __webpack_require__(6); var FileSystem = /** @class */ (function () { function FileSystem(options) { this.options = options; @@ -64447,7 +64649,7 @@ exports.default = FileSystem; /***/ }), -/* 262 */ +/* 263 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -64466,10 +64668,10 @@ var __extends = (this && this.__extends) || (function () { }; })(); Object.defineProperty(exports, "__esModule", { value: true }); -var stream = __webpack_require__(15); -var readdir = __webpack_require__(239); -var reader_1 = __webpack_require__(252); -var fs_stream_1 = __webpack_require__(256); +var stream = __webpack_require__(16); +var readdir = __webpack_require__(240); +var reader_1 = __webpack_require__(253); +var fs_stream_1 = __webpack_require__(257); var TransformStream = /** @class */ (function (_super) { __extends(TransformStream, _super); function TransformStream(reader) { @@ -64537,7 +64739,7 @@ exports.default = ReaderStream; /***/ }), -/* 263 */ +/* 264 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -64556,9 +64758,9 @@ var __extends = (this && this.__extends) || (function () { }; })(); Object.defineProperty(exports, "__esModule", { value: true }); -var readdir = __webpack_require__(239); -var reader_1 = __webpack_require__(252); -var fs_sync_1 = __webpack_require__(264); +var readdir = __webpack_require__(240); +var reader_1 = __webpack_require__(253); +var fs_sync_1 = __webpack_require__(265); var ReaderSync = /** @class */ (function (_super) { __extends(ReaderSync, _super); function ReaderSync() { @@ -64618,7 +64820,7 @@ exports.default = ReaderSync; /***/ }), -/* 264 */ +/* 265 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -64637,8 +64839,8 @@ var __extends = (this && this.__extends) || (function () { }; })(); Object.defineProperty(exports, "__esModule", { value: true }); -var fsStat = __webpack_require__(257); -var fs_1 = __webpack_require__(261); +var fsStat = __webpack_require__(258); +var fs_1 = __webpack_require__(262); var FileSystemSync = /** @class */ (function (_super) { __extends(FileSystemSync, _super); function FileSystemSync() { @@ -64684,7 +64886,7 @@ exports.default = FileSystemSync; /***/ }), -/* 265 */ +/* 266 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -64700,13 +64902,13 @@ exports.flatten = flatten; /***/ }), -/* 266 */ +/* 267 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -var merge2 = __webpack_require__(267); +var merge2 = __webpack_require__(268); /** * Merge multiple streams and propagate their errors into one stream in parallel. */ @@ -64721,7 +64923,7 @@ exports.merge = merge; /***/ }), -/* 267 */ +/* 268 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -64733,7 +64935,7 @@ exports.merge = merge; * Copyright (c) 2014-2016 Teambition * Licensed under the MIT license. */ -const Stream = __webpack_require__(15) +const Stream = __webpack_require__(16) const PassThrough = Stream.PassThrough const slice = Array.prototype.slice @@ -64835,14 +65037,14 @@ function pauseStreams (streams, options) { /***/ }), -/* 268 */ +/* 269 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const path = __webpack_require__(7); -const arrify = __webpack_require__(269); -const pathType = __webpack_require__(270); +const path = __webpack_require__(6); +const arrify = __webpack_require__(270); +const pathType = __webpack_require__(271); const getExtensions = extensions => extensions.length > 1 ? `{${extensions.join(',')}}` : extensions[0]; const getPath = filepath => filepath[0] === '!' ? filepath.slice(1) : filepath; @@ -64890,7 +65092,7 @@ module.exports.sync = (input, opts) => { /***/ }), -/* 269 */ +/* 270 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -64905,13 +65107,13 @@ module.exports = function (val) { /***/ }), -/* 270 */ +/* 271 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const fs = __webpack_require__(5); -const pify = __webpack_require__(271); +const pify = __webpack_require__(272); function type(fn, fn2, fp) { if (typeof fp !== 'string') { @@ -64954,7 +65156,7 @@ exports.symlinkSync = typeSync.bind(null, 'lstatSync', 'isSymbolicLink'); /***/ }), -/* 271 */ +/* 272 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -65045,17 +65247,17 @@ module.exports = (obj, opts) => { /***/ }), -/* 272 */ +/* 273 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const fs = __webpack_require__(5); -const path = __webpack_require__(7); -const fastGlob = __webpack_require__(109); -const gitIgnore = __webpack_require__(273); -const pify = __webpack_require__(271); -const slash = __webpack_require__(274); +const path = __webpack_require__(6); +const fastGlob = __webpack_require__(110); +const gitIgnore = __webpack_require__(274); +const pify = __webpack_require__(272); +const slash = __webpack_require__(275); const DEFAULT_IGNORE = [ '**/node_modules/**', @@ -65147,7 +65349,7 @@ module.exports.sync = o => { /***/ }), -/* 273 */ +/* 274 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -65579,7 +65781,7 @@ typeof process !== 'undefined' && (process.env && process.env.IGNORE_TEST_WIN32 /***/ }), -/* 274 */ +/* 275 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -65597,7 +65799,7 @@ module.exports = function (str) { /***/ }), -/* 275 */ +/* 276 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -65611,9 +65813,9 @@ var __importStar = (this && this.__importStar) || function (mod) { }; Object.defineProperty(exports, "__esModule", { value: true }); const fslib_1 = __webpack_require__(3); -const parsers_1 = __webpack_require__(31); -const Report_1 = __webpack_require__(25); -const structUtils = __importStar(__webpack_require__(27)); +const parsers_1 = __webpack_require__(32); +const Report_1 = __webpack_require__(26); +const structUtils = __importStar(__webpack_require__(28)); const IMPORTED_PATTERNS = [ // This one come from Git urls [/^git\+https:\/\/.*\.git#.*$/, (version, $0) => $0], @@ -65692,7 +65894,7 @@ exports.YarnResolver = YarnResolver; /***/ }), -/* 276 */ +/* 277 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -65706,38 +65908,41 @@ var __importStar = (this && this.__importStar) || function (mod) { }; Object.defineProperty(exports, "__esModule", { value: true }); const fslib_1 = __webpack_require__(3); -const shell_1 = __webpack_require__(277); -const path_1 = __webpack_require__(7); -const stream_1 = __webpack_require__(15); -const tmp_1 = __webpack_require__(82); -const Manifest_1 = __webpack_require__(74); -const StreamReport_1 = __webpack_require__(279); -const execUtils = __importStar(__webpack_require__(280)); -const structUtils = __importStar(__webpack_require__(27)); +const shell_1 = __webpack_require__(278); +const path_1 = __webpack_require__(6); +const stream_1 = __webpack_require__(16); +const tmp_1 = __webpack_require__(83); +const Manifest_1 = __webpack_require__(75); +const StreamReport_1 = __webpack_require__(280); +const execUtils = __importStar(__webpack_require__(281)); +const structUtils = __importStar(__webpack_require__(28)); async function makePathWrapper(location, name, argv0, args = []) { if (process.platform === `win32`) { - await fslib_1.xfs.writeFilePromise(`${location}/${name}.cmd`, `@"${location}\\${name}.cmd" ${args.join(` `)} %*\n`); + await fslib_1.xfs.writeFilePromise(`${location}/${name}.cmd`, `"${argv0}" ${args.join(` `)} %*\n`); } else { - await fslib_1.xfs.writeFilePromise(`${location}/${name}`, `#!/usr/bin/env bash\n"${argv0}" ${args.map(arg => `'${arg.replace(/'/g, `'"'"'`)}'`).join(` `)} "$@"\n`); + await fslib_1.xfs.writeFilePromise(`${location}/${name}`, `#!/usr/bin/env bash\nexec "${argv0}" ${args.map(arg => `'${arg.replace(/'/g, `'"'"'`)}'`).join(` `)} "$@"\n`); await fslib_1.xfs.chmodPromise(`${location}/${name}`, 0o755); } } async function makeScriptEnv(project) { - const scriptEnv = Object.assign({}, process.env); + const scriptEnv = {}; + for (const key of Object.keys(process.env)) + scriptEnv[key.toUpperCase()] = process.env[key]; const binFolder = scriptEnv.BERRY_BIN_FOLDER = tmp_1.dirSync().name; // Register some binaries that must be made available in all subprocesses - // spawned by Berry - await makePathWrapper(binFolder, `run`, process.execPath, [process.argv[1], `run`]), - await makePathWrapper(binFolder, `yarn`, process.execPath, [process.argv[1]]), - await makePathWrapper(binFolder, `yarnpkg`, process.execPath, [process.argv[1]]), - await makePathWrapper(binFolder, `node`, process.execPath), - scriptEnv.PATH = scriptEnv.PATH - ? `${binFolder}${path_1.delimiter}${scriptEnv.PATH}` - : `${binFolder}`; + // spawned by Yarn + await makePathWrapper(binFolder, `run`, process.execPath, [process.argv[1], `run`]); + await makePathWrapper(binFolder, `yarn`, process.execPath, [process.argv[1]]); + await makePathWrapper(binFolder, `yarnpkg`, process.execPath, [process.argv[1]]); + await makePathWrapper(binFolder, `node`, process.execPath); + await makePathWrapper(binFolder, `node-gyp`, process.execPath, [process.argv[1], `run`, `--top-level`, `node-gyp`]); + scriptEnv.PATH = scriptEnv.PATH + ? `${binFolder}${path_1.delimiter}${scriptEnv.PATH}` + : `${binFolder}`; // Add the .pnp.js file to the Node options, so that we're sure that PnP will // be correctly setup - const pnpPath = `${project.cwd}/.pnp.js`; + const pnpPath = fslib_1.NodeFS.fromPortablePath(`${project.cwd}/.pnp.js`); const pnpRequire = `--require ${pnpPath}`; if (fslib_1.xfs.existsSync(pnpPath)) { let nodeOptions = scriptEnv.NODE_OPTIONS || ``; @@ -65835,7 +66040,8 @@ async function getPackageAccessibleBinaries(locator, { project }) { const packageFs = new fslib_1.CwdFS(packageLocation, { baseFs: zipOpenFs }); const manifest = await Manifest_1.Manifest.find(`.`, { baseFs: packageFs }); for (const [binName, file] of manifest.bin.entries()) { - binaries.set(binName, [pkg, path_1.posix.resolve(packageLocation, file)]); + const physicalPath = fslib_1.NodeFS.fromPortablePath(path_1.posix.resolve(packageLocation, file)); + binaries.set(binName, [pkg, physicalPath]); } } return binaries; @@ -65893,17 +66099,17 @@ exports.executeWorkspaceAccessibleBinary = executeWorkspaceAccessibleBinary; /***/ }), -/* 277 */ +/* 278 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const fslib_1 = __webpack_require__(3); -const parsers_1 = __webpack_require__(31); -const child_process_1 = __webpack_require__(278); -const path_1 = __webpack_require__(7); -const stream_1 = __webpack_require__(15); +const parsers_1 = __webpack_require__(32); +const child_process_1 = __webpack_require__(279); +const path_1 = __webpack_require__(6); +const stream_1 = __webpack_require__(16); function makeBuiltin(builtin) { return async (args, opts, state, mustPipe) => { if (!mustPipe) { @@ -65935,7 +66141,7 @@ function cloneState(state, mergeWith = {}) { } const BUILTINS = new Map([ [`cd`, makeBuiltin(async ([target, ...rest], opts, state) => { - const resolvedTarget = path_1.posix.resolve(state.cwd, target); + const resolvedTarget = path_1.posix.resolve(state.cwd, fslib_1.NodeFS.toPortablePath(target)); const stat = await fslib_1.xfs.statPromise(resolvedTarget); if (!stat.isDirectory()) { state.stderr.write(`cd: not a directory\n`); @@ -65947,7 +66153,7 @@ const BUILTINS = new Map([ } })], [`pwd`, makeBuiltin(async (args, opts, state) => { - state.stdout.write(`${state.cwd}\n`); + state.stdout.write(`${fslib_1.NodeFS.fromPortablePath(state.cwd)}\n`); return 0; })], [`true`, makeBuiltin(async (args, opts, state) => { @@ -65977,12 +66183,9 @@ const BUILTINS = new Map([ const normalizedEnv = {}; for (const key of Object.keys(state.environment)) normalizedEnv[key.toUpperCase()] = state.environment[key]; - // We must make sure the PATH is properly converted into the - // system-specific format - if (normalizedEnv.PATH && path_1.posix.delimiter !== path_1.delimiter) - normalizedEnv.PATH = normalizedEnv.PATH.replace(new RegExp(path_1.posix.delimiter, `g`), path_1.delimiter); const subprocess = child_process_1.spawn(ident, rest, { - cwd: state.cwd, + cwd: fslib_1.NodeFS.fromPortablePath(state.cwd), + shell: process.platform === `win32`, env: normalizedEnv, stdio, }); @@ -66374,10 +66577,8 @@ async function execute(command, args = [], { builtins = {}, cwd = process.cwd(), normalizedEnv[key.toUpperCase()] = env[key]; if (paths.length > 0) normalizedEnv.PATH = normalizedEnv.PATH - ? `${paths.join(path_1.posix.delimiter)}${path_1.posix.delimiter}${env.PATH}` - : `${paths.join(path_1.posix.delimiter)}`; - if (normalizedEnv.PATH && path_1.delimiter !== path_1.posix.delimiter) - normalizedEnv.PATH = normalizedEnv.PATH.replace(new RegExp(path_1.delimiter, `g`), path_1.posix.delimiter); + ? `${paths.join(path_1.delimiter)}${path_1.delimiter}${env.PATH}` + : `${paths.join(path_1.delimiter)}`; const normalizedBuiltins = new Map(BUILTINS); for (const [key, action] of Object.entries(builtins)) normalizedBuiltins.set(key, makeBuiltin(action)); @@ -66415,19 +66616,19 @@ exports.execute = execute; /***/ }), -/* 278 */ +/* 279 */ /***/ (function(module, exports) { module.exports = require("child_process"); /***/ }), -/* 279 */ +/* 280 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const Report_1 = __webpack_require__(25); +const Report_1 = __webpack_require__(26); class StreamReport extends Report_1.Report { constructor({ configuration, stdout }) { super(); @@ -66587,7 +66788,7 @@ exports.StreamReport = StreamReport; /***/ }), -/* 280 */ +/* 281 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -66596,7 +66797,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); -const execa_1 = __importDefault(__webpack_require__(281)); +const fslib_1 = __webpack_require__(3); +const execa_1 = __importDefault(__webpack_require__(282)); async function execFile(fileName, args, { cwd, env = process.env, stdin, stdout, stderr, paths = [] }) { const stdio = [`pipe`, `pipe`, `pipe`]; if (stdin === process.stdin) @@ -66605,7 +66807,14 @@ async function execFile(fileName, args, { cwd, env = process.env, stdin, stdout, stdio[1] = stdout; if (stderr === process.stderr) stdio[2] = stderr; - const subprocess = execa_1.default(fileName, args, { cwd, env, stdio }); + const effectiveFilename = process.platform !== `win32` + ? fileName + : `"${fileName}"`; // ?! + const subprocess = execa_1.default(effectiveFilename, args, { + cwd: fslib_1.NodeFS.fromPortablePath(cwd), + env, + stdio, + }); if (stdin !== process.stdin) stdin.pipe(subprocess.stdin); if (stdout !== process.stdout) @@ -66618,22 +66827,22 @@ exports.execFile = execFile; /***/ }), -/* 281 */ +/* 282 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const path = __webpack_require__(7); -const childProcess = __webpack_require__(278); -const crossSpawn = __webpack_require__(282); -const stripEof = __webpack_require__(296); -const npmRunPath = __webpack_require__(297); -const isStream = __webpack_require__(298); -const _getStream = __webpack_require__(299); -const pFinally = __webpack_require__(303); -const onExit = __webpack_require__(21); -const errname = __webpack_require__(304); -const stdio = __webpack_require__(305); +const path = __webpack_require__(6); +const childProcess = __webpack_require__(279); +const crossSpawn = __webpack_require__(283); +const stripEof = __webpack_require__(297); +const npmRunPath = __webpack_require__(298); +const isStream = __webpack_require__(299); +const _getStream = __webpack_require__(300); +const pFinally = __webpack_require__(304); +const onExit = __webpack_require__(22); +const errname = __webpack_require__(305); +const stdio = __webpack_require__(306); const TEN_MEGABYTES = 1000 * 1000 * 10; @@ -66986,15 +67195,15 @@ module.exports.shellSync = (cmd, opts) => handleShell(module.exports.sync, cmd, /***/ }), -/* 282 */ +/* 283 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const cp = __webpack_require__(278); -const parse = __webpack_require__(283); -const enoent = __webpack_require__(295); +const cp = __webpack_require__(279); +const parse = __webpack_require__(284); +const enoent = __webpack_require__(296); function spawn(command, args, options) { // Parse the arguments @@ -67032,18 +67241,18 @@ module.exports._enoent = enoent; /***/ }), -/* 283 */ +/* 284 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const path = __webpack_require__(7); -const niceTry = __webpack_require__(284); -const resolveCommand = __webpack_require__(285); -const escape = __webpack_require__(291); -const readShebang = __webpack_require__(292); -const semver = __webpack_require__(28); +const path = __webpack_require__(6); +const niceTry = __webpack_require__(285); +const resolveCommand = __webpack_require__(286); +const escape = __webpack_require__(292); +const readShebang = __webpack_require__(293); +const semver = __webpack_require__(29); const isWin = process.platform === 'win32'; const isExecutableRegExp = /\.(?:com|exe)$/i; @@ -67164,7 +67373,7 @@ module.exports = parse; /***/ }), -/* 284 */ +/* 285 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -67182,15 +67391,15 @@ module.exports = function(fn) { } /***/ }), -/* 285 */ +/* 286 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const path = __webpack_require__(7); -const which = __webpack_require__(286); -const pathKey = __webpack_require__(290)(); +const path = __webpack_require__(6); +const which = __webpack_require__(287); +const pathKey = __webpack_require__(291)(); function resolveCommandAttempt(parsed, withoutPathExt) { const cwd = process.cwd(); @@ -67236,7 +67445,7 @@ module.exports = resolveCommand; /***/ }), -/* 286 */ +/* 287 */ /***/ (function(module, exports, __webpack_require__) { module.exports = which @@ -67246,9 +67455,9 @@ var isWindows = process.platform === 'win32' || process.env.OSTYPE === 'cygwin' || process.env.OSTYPE === 'msys' -var path = __webpack_require__(7) +var path = __webpack_require__(6) var COLON = isWindows ? ';' : ':' -var isexe = __webpack_require__(287) +var isexe = __webpack_require__(288) function getNotFoundError (cmd) { var er = new Error('not found: ' + cmd) @@ -67377,15 +67586,15 @@ function whichSync (cmd, opt) { /***/ }), -/* 287 */ +/* 288 */ /***/ (function(module, exports, __webpack_require__) { var fs = __webpack_require__(5) var core if (process.platform === 'win32' || global.TESTING_WINDOWS) { - core = __webpack_require__(288) -} else { core = __webpack_require__(289) +} else { + core = __webpack_require__(290) } module.exports = isexe @@ -67440,7 +67649,7 @@ function sync (path, options) { /***/ }), -/* 288 */ +/* 289 */ /***/ (function(module, exports, __webpack_require__) { module.exports = isexe @@ -67488,7 +67697,7 @@ function sync (path, options) { /***/ }), -/* 289 */ +/* 290 */ /***/ (function(module, exports, __webpack_require__) { module.exports = isexe @@ -67535,7 +67744,7 @@ function checkMode (stat, options) { /***/ }), -/* 290 */ +/* 291 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -67555,7 +67764,7 @@ module.exports = opts => { /***/ }), -/* 291 */ +/* 292 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -67607,14 +67816,14 @@ module.exports.argument = escapeArgument; /***/ }), -/* 292 */ +/* 293 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const fs = __webpack_require__(5); -const shebangCommand = __webpack_require__(293); +const shebangCommand = __webpack_require__(294); function readShebang(command) { // Read the first 150 bytes from the file @@ -67646,12 +67855,12 @@ module.exports = readShebang; /***/ }), -/* 293 */ +/* 294 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var shebangRegex = __webpack_require__(294); +var shebangRegex = __webpack_require__(295); module.exports = function (str) { var match = str.match(shebangRegex); @@ -67672,7 +67881,7 @@ module.exports = function (str) { /***/ }), -/* 294 */ +/* 295 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -67681,7 +67890,7 @@ module.exports = /^#!.*/; /***/ }), -/* 295 */ +/* 296 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -67747,7 +67956,7 @@ module.exports = { /***/ }), -/* 296 */ +/* 297 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -67769,13 +67978,13 @@ module.exports = function (x) { /***/ }), -/* 297 */ +/* 298 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const path = __webpack_require__(7); -const pathKey = __webpack_require__(290); +const path = __webpack_require__(6); +const pathKey = __webpack_require__(291); module.exports = opts => { opts = Object.assign({ @@ -67815,7 +68024,7 @@ module.exports.env = opts => { /***/ }), -/* 298 */ +/* 299 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -67843,13 +68052,13 @@ isStream.transform = function (stream) { /***/ }), -/* 299 */ +/* 300 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const pump = __webpack_require__(300); -const bufferStream = __webpack_require__(302); +const pump = __webpack_require__(301); +const bufferStream = __webpack_require__(303); class MaxBufferError extends Error { constructor() { @@ -67900,11 +68109,11 @@ module.exports.MaxBufferError = MaxBufferError; /***/ }), -/* 300 */ +/* 301 */ /***/ (function(module, exports, __webpack_require__) { -var once = __webpack_require__(108) -var eos = __webpack_require__(301) +var once = __webpack_require__(109) +var eos = __webpack_require__(302) var fs = __webpack_require__(5) // we only need fs to get the ReadStream and WriteStream prototypes var noop = function () {} @@ -67988,10 +68197,10 @@ module.exports = pump /***/ }), -/* 301 */ +/* 302 */ /***/ (function(module, exports, __webpack_require__) { -var once = __webpack_require__(108); +var once = __webpack_require__(109); var noop = function() {}; @@ -68076,12 +68285,12 @@ var eos = function(stream, opts, callback) { module.exports = eos; /***/ }), -/* 302 */ +/* 303 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const {PassThrough} = __webpack_require__(15); +const {PassThrough} = __webpack_require__(16); module.exports = options => { options = Object.assign({}, options); @@ -68134,7 +68343,7 @@ module.exports = options => { /***/ }), -/* 303 */ +/* 304 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -68156,14 +68365,14 @@ module.exports = (promise, onFinally) => { /***/ }), -/* 304 */ +/* 305 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; // Older verions of Node.js might not have `util.getSystemErrorName()`. // In that case, fall back to a deprecated internal. -const util = __webpack_require__(16); +const util = __webpack_require__(17); let uv; @@ -68202,7 +68411,7 @@ function errname(uv, code) { /***/ }), -/* 305 */ +/* 306 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -68250,7 +68459,7 @@ module.exports = opts => { /***/ }), -/* 306 */ +/* 307 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -68259,9 +68468,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); -const got_1 = __importDefault(__webpack_require__(307)); -const tunnel_1 = __importDefault(__webpack_require__(349)); -const url_1 = __webpack_require__(311); +const got_1 = __importDefault(__webpack_require__(308)); +const tunnel_1 = __importDefault(__webpack_require__(350)); +const url_1 = __webpack_require__(312); const cache = new Map(); function parseProxy(specifier) { const url = new url_1.URL(specifier); @@ -68298,13 +68507,13 @@ exports.get = get; /***/ }), -/* 307 */ +/* 308 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const pkg = __webpack_require__(308); -const create = __webpack_require__(309); +const pkg = __webpack_require__(309); +const create = __webpack_require__(310); const defaults = { options: { @@ -68365,23 +68574,23 @@ module.exports = got; /***/ }), -/* 308 */ +/* 309 */ /***/ (function(module) { module.exports = {"name":"got","version":"9.6.0","description":"Simplified HTTP requests","license":"MIT","repository":"sindresorhus/got","main":"source","engines":{"node":">=8.6"},"scripts":{"test":"xo && nyc ava","release":"np"},"files":["source"],"keywords":["http","https","get","got","url","uri","request","util","utility","simple","curl","wget","fetch","net","network","electron"],"dependencies":{"@sindresorhus/is":"^0.14.0","@szmarczak/http-timer":"^1.1.2","cacheable-request":"^6.0.0","decompress-response":"^3.3.0","duplexer3":"^0.1.4","get-stream":"^4.1.0","lowercase-keys":"^1.0.1","mimic-response":"^1.0.1","p-cancelable":"^1.0.0","to-readable-stream":"^1.0.0","url-parse-lax":"^3.0.0"},"devDependencies":{"ava":"^1.1.0","coveralls":"^3.0.0","delay":"^4.1.0","form-data":"^2.3.3","get-port":"^4.0.0","np":"^3.1.0","nyc":"^13.1.0","p-event":"^2.1.0","pem":"^1.13.2","proxyquire":"^2.0.1","sinon":"^7.2.2","slow-stream":"0.0.4","tempfile":"^2.0.0","tempy":"^0.2.1","tough-cookie":"^3.0.0","xo":"^0.24.0"},"ava":{"concurrency":4},"browser":{"decompress-response":false,"electron":false}}; /***/ }), -/* 309 */ +/* 310 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const errors = __webpack_require__(310); -const asStream = __webpack_require__(315); -const asPromise = __webpack_require__(342); -const normalizeArguments = __webpack_require__(345); -const merge = __webpack_require__(343); -const deepFreeze = __webpack_require__(348); +const errors = __webpack_require__(311); +const asStream = __webpack_require__(316); +const asPromise = __webpack_require__(343); +const normalizeArguments = __webpack_require__(346); +const merge = __webpack_require__(344); +const deepFreeze = __webpack_require__(349); const getPromiseOrStream = options => options.stream ? asStream(options) : asPromise(options); @@ -68457,15 +68666,15 @@ module.exports = create; /***/ }), -/* 310 */ +/* 311 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const urlLib = __webpack_require__(311); -const http = __webpack_require__(312); -const PCancelable = __webpack_require__(313); -const is = __webpack_require__(314); +const urlLib = __webpack_require__(312); +const http = __webpack_require__(313); +const PCancelable = __webpack_require__(314); +const is = __webpack_require__(315); class GotError extends Error { constructor(message, error, options) { @@ -68571,19 +68780,19 @@ module.exports.CancelError = PCancelable.CancelError; /***/ }), -/* 311 */ +/* 312 */ /***/ (function(module, exports) { module.exports = require("url"); /***/ }), -/* 312 */ +/* 313 */ /***/ (function(module, exports) { module.exports = require("http"); /***/ }), -/* 313 */ +/* 314 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -68691,7 +68900,7 @@ module.exports.CancelError = CancelError; /***/ }), -/* 314 */ +/* 315 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -68703,7 +68912,7 @@ module.exports.CancelError = CancelError; Object.defineProperty(exports, "__esModule", { value: true }); // TODO: Use the `URL` global when targeting Node.js 10 // tslint:disable-next-line -const URLGlobal = typeof URL === 'undefined' ? __webpack_require__(311).URL : URL; +const URLGlobal = typeof URL === 'undefined' ? __webpack_require__(312).URL : URL; const toString = Object.prototype.toString; const isOfType = (type) => (value) => typeof value === type; const isBuffer = (input) => !is.nullOrUndefined(input) && !is.nullOrUndefined(input.constructor) && is.function_(input.constructor.isBuffer) && input.constructor.isBuffer(input); @@ -68942,15 +69151,15 @@ module.exports.default = is; //# sourceMappingURL=index.js.map /***/ }), -/* 315 */ +/* 316 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const {PassThrough} = __webpack_require__(15); -const duplexer3 = __webpack_require__(316); -const requestAsEventEmitter = __webpack_require__(317); -const {HTTPError, ReadError} = __webpack_require__(310); +const {PassThrough} = __webpack_require__(16); +const duplexer3 = __webpack_require__(317); +const requestAsEventEmitter = __webpack_require__(318); +const {HTTPError, ReadError} = __webpack_require__(311); module.exports = options => { const input = new PassThrough(); @@ -69042,13 +69251,13 @@ module.exports = options => { /***/ }), -/* 316 */ +/* 317 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var stream = __webpack_require__(15); +var stream = __webpack_require__(16); function DuplexWrapper(options, writable, readable) { if (typeof readable === "undefined") { @@ -69125,27 +69334,27 @@ module.exports.DuplexWrapper = DuplexWrapper; /***/ }), -/* 317 */ +/* 318 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const {URL} = __webpack_require__(311); // TODO: Use the `URL` global when targeting Node.js 10 -const util = __webpack_require__(16); -const EventEmitter = __webpack_require__(24); -const http = __webpack_require__(312); -const https = __webpack_require__(318); -const urlLib = __webpack_require__(311); -const CacheableRequest = __webpack_require__(319); -const toReadableStream = __webpack_require__(329); -const is = __webpack_require__(314); -const timer = __webpack_require__(330); -const timedOut = __webpack_require__(332); -const getBodySize = __webpack_require__(334); -const getResponse = __webpack_require__(336); -const progress = __webpack_require__(339); -const {CacheError, UnsupportedProtocolError, MaxRedirectsError, RequestError, TimeoutError} = __webpack_require__(310); -const urlToOptions = __webpack_require__(340); +const {URL} = __webpack_require__(312); // TODO: Use the `URL` global when targeting Node.js 10 +const util = __webpack_require__(17); +const EventEmitter = __webpack_require__(25); +const http = __webpack_require__(313); +const https = __webpack_require__(319); +const urlLib = __webpack_require__(312); +const CacheableRequest = __webpack_require__(320); +const toReadableStream = __webpack_require__(330); +const is = __webpack_require__(315); +const timer = __webpack_require__(331); +const timedOut = __webpack_require__(333); +const getBodySize = __webpack_require__(335); +const getResponse = __webpack_require__(337); +const progress = __webpack_require__(340); +const {CacheError, UnsupportedProtocolError, MaxRedirectsError, RequestError, TimeoutError} = __webpack_require__(311); +const urlToOptions = __webpack_require__(341); const getMethodRedirectCodes = new Set([300, 301, 302, 303, 304, 305, 307, 308]); const allMethodRedirectCodes = new Set([300, 303, 307, 308]); @@ -69200,7 +69409,7 @@ module.exports = (options, input) => { /* istanbul ignore next: electron.net is broken */ if (options.useElectronNet && process.versions.electron) { - const r = ({x: __webpack_require__(341)})['yx'.slice(1)]; // Trick webpack + const r = ({x: __webpack_require__(342)})['yx'.slice(1)]; // Trick webpack const electron = r('electron'); fn = electron.net || electron.remote.net; } @@ -69444,27 +69653,27 @@ module.exports = (options, input) => { /***/ }), -/* 318 */ +/* 319 */ /***/ (function(module, exports) { module.exports = require("https"); /***/ }), -/* 319 */ +/* 320 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const EventEmitter = __webpack_require__(24); -const urlLib = __webpack_require__(311); -const normalizeUrl = __webpack_require__(320); -const getStream = __webpack_require__(299); -const CachePolicy = __webpack_require__(321); -const Response = __webpack_require__(322); -const lowercaseKeys = __webpack_require__(323); -const cloneResponse = __webpack_require__(324); -const Keyv = __webpack_require__(326); +const EventEmitter = __webpack_require__(25); +const urlLib = __webpack_require__(312); +const normalizeUrl = __webpack_require__(321); +const getStream = __webpack_require__(300); +const CachePolicy = __webpack_require__(322); +const Response = __webpack_require__(323); +const lowercaseKeys = __webpack_require__(324); +const cloneResponse = __webpack_require__(325); +const Keyv = __webpack_require__(327); class CacheableRequest { constructor(request, cacheAdapter) { @@ -69701,13 +69910,13 @@ module.exports = CacheableRequest; /***/ }), -/* 320 */ +/* 321 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; // TODO: Use the `URL` global when targeting Node.js 10 -const URLParser = typeof URL === 'undefined' ? __webpack_require__(311).URL : URL; +const URLParser = typeof URL === 'undefined' ? __webpack_require__(312).URL : URL; const testParameter = (name, filters) => { return filters.some(filter => filter instanceof RegExp ? filter.test(name) : filter === name); @@ -69847,7 +70056,7 @@ module.exports = (urlString, opts) => { /***/ }), -/* 321 */ +/* 322 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -70371,14 +70580,14 @@ module.exports = class CachePolicy { /***/ }), -/* 322 */ +/* 323 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const Readable = __webpack_require__(15).Readable; -const lowercaseKeys = __webpack_require__(323); +const Readable = __webpack_require__(16).Readable; +const lowercaseKeys = __webpack_require__(324); class Response extends Readable { constructor(statusCode, headers, body, url) { @@ -70412,7 +70621,7 @@ module.exports = Response; /***/ }), -/* 323 */ +/* 324 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -70430,14 +70639,14 @@ module.exports = function (obj) { /***/ }), -/* 324 */ +/* 325 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const PassThrough = __webpack_require__(15).PassThrough; -const mimicResponse = __webpack_require__(325); +const PassThrough = __webpack_require__(16).PassThrough; +const mimicResponse = __webpack_require__(326); const cloneResponse = response => { if (!(response && response.pipe)) { @@ -70454,7 +70663,7 @@ module.exports = cloneResponse; /***/ }), -/* 325 */ +/* 326 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -70493,14 +70702,14 @@ module.exports = (fromStream, toStream) => { /***/ }), -/* 326 */ +/* 327 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const EventEmitter = __webpack_require__(24); -const JSONB = __webpack_require__(327); +const EventEmitter = __webpack_require__(25); +const JSONB = __webpack_require__(328); const loadStore = opts => { const adapters = { @@ -70514,7 +70723,7 @@ const loadStore = opts => { }; if (opts.adapter || opts.uri) { const adapter = opts.adapter || /^[^:]*/.exec(opts.uri)[0]; - return new (__webpack_require__(328)(adapters[adapter]))(opts); + return new (__webpack_require__(329)(adapters[adapter]))(opts); } return new Map(); }; @@ -70603,7 +70812,7 @@ module.exports = Keyv; /***/ }), -/* 327 */ +/* 328 */ /***/ (function(module, exports) { //TODO: handle reviver/dehydrate function like normal @@ -70667,7 +70876,7 @@ exports.parse = function (s) { /***/ }), -/* 328 */ +/* 329 */ /***/ (function(module, exports) { function webpackEmptyContext(req) { @@ -70678,15 +70887,15 @@ function webpackEmptyContext(req) { webpackEmptyContext.keys = function() { return []; }; webpackEmptyContext.resolve = webpackEmptyContext; module.exports = webpackEmptyContext; -webpackEmptyContext.id = 328; +webpackEmptyContext.id = 329; /***/ }), -/* 329 */ +/* 330 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const {Readable} = __webpack_require__(15); +const {Readable} = __webpack_require__(16); module.exports = input => ( new Readable({ @@ -70699,12 +70908,12 @@ module.exports = input => ( /***/ }), -/* 330 */ +/* 331 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const deferToConnect = __webpack_require__(331); +const deferToConnect = __webpack_require__(332); module.exports = request => { const timings = { @@ -70805,7 +71014,7 @@ module.exports = request => { /***/ }), -/* 331 */ +/* 332 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -70829,12 +71038,12 @@ module.exports = (socket, method, ...args) => { /***/ }), -/* 332 */ +/* 333 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const net = __webpack_require__(333); +const net = __webpack_require__(334); class TimeoutError extends Error { constructor(threshold, event) { @@ -70996,21 +71205,21 @@ module.exports.TimeoutError = TimeoutError; /***/ }), -/* 333 */ +/* 334 */ /***/ (function(module, exports) { module.exports = require("net"); /***/ }), -/* 334 */ +/* 335 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const fs = __webpack_require__(5); -const util = __webpack_require__(16); -const is = __webpack_require__(314); -const isFormData = __webpack_require__(335); +const util = __webpack_require__(17); +const is = __webpack_require__(315); +const isFormData = __webpack_require__(336); module.exports = async options => { const {body} = options; @@ -71041,26 +71250,26 @@ module.exports = async options => { /***/ }), -/* 335 */ +/* 336 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const is = __webpack_require__(314); +const is = __webpack_require__(315); module.exports = body => is.nodeStream(body) && is.function(body.getBoundary); /***/ }), -/* 336 */ +/* 337 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const decompressResponse = __webpack_require__(337); -const is = __webpack_require__(314); -const mimicResponse = __webpack_require__(325); -const progress = __webpack_require__(339); +const decompressResponse = __webpack_require__(338); +const is = __webpack_require__(315); +const mimicResponse = __webpack_require__(326); +const progress = __webpack_require__(340); module.exports = (response, options, emitter) => { const downloadBodySize = Number(response.headers['content-length']) || null; @@ -71090,14 +71299,14 @@ module.exports = (response, options, emitter) => { /***/ }), -/* 337 */ +/* 338 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const PassThrough = __webpack_require__(15).PassThrough; -const zlib = __webpack_require__(338); -const mimicResponse = __webpack_require__(325); +const PassThrough = __webpack_require__(16).PassThrough; +const zlib = __webpack_require__(339); +const mimicResponse = __webpack_require__(326); module.exports = response => { // TODO: Use Array#includes when targeting Node.js 6 @@ -71126,18 +71335,18 @@ module.exports = response => { /***/ }), -/* 338 */ +/* 339 */ /***/ (function(module, exports) { module.exports = require("zlib"); /***/ }), -/* 339 */ +/* 340 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const {Transform} = __webpack_require__(15); +const {Transform} = __webpack_require__(16); module.exports = { download(response, emitter, downloadBodySize) { @@ -71235,12 +71444,12 @@ module.exports = { /***/ }), -/* 340 */ +/* 341 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const is = __webpack_require__(314); +const is = __webpack_require__(315); module.exports = url => { const options = { @@ -71267,7 +71476,7 @@ module.exports = url => { /***/ }), -/* 341 */ +/* 342 */ /***/ (function(module, exports) { function webpackEmptyContext(req) { @@ -71278,22 +71487,22 @@ function webpackEmptyContext(req) { webpackEmptyContext.keys = function() { return []; }; webpackEmptyContext.resolve = webpackEmptyContext; module.exports = webpackEmptyContext; -webpackEmptyContext.id = 341; +webpackEmptyContext.id = 342; /***/ }), -/* 342 */ +/* 343 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const EventEmitter = __webpack_require__(24); -const getStream = __webpack_require__(299); -const is = __webpack_require__(314); -const PCancelable = __webpack_require__(313); -const requestAsEventEmitter = __webpack_require__(317); -const {HTTPError, ParseError, ReadError} = __webpack_require__(310); -const {options: mergeOptions} = __webpack_require__(343); -const {reNormalize} = __webpack_require__(345); +const EventEmitter = __webpack_require__(25); +const getStream = __webpack_require__(300); +const is = __webpack_require__(315); +const PCancelable = __webpack_require__(314); +const requestAsEventEmitter = __webpack_require__(318); +const {HTTPError, ParseError, ReadError} = __webpack_require__(311); +const {options: mergeOptions} = __webpack_require__(344); +const {reNormalize} = __webpack_require__(346); const asPromise = options => { const proxy = new EventEmitter(); @@ -71396,14 +71605,14 @@ module.exports = asPromise; /***/ }), -/* 343 */ +/* 344 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const {URL} = __webpack_require__(311); -const is = __webpack_require__(314); -const knownHookEvents = __webpack_require__(344); +const {URL} = __webpack_require__(312); +const is = __webpack_require__(315); +const knownHookEvents = __webpack_require__(345); const merge = (target, ...sources) => { for (const source of sources) { @@ -71476,7 +71685,7 @@ module.exports.instances = mergeInstances; /***/ }), -/* 344 */ +/* 345 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -71493,20 +71702,20 @@ module.exports = [ /***/ }), -/* 345 */ +/* 346 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const {URL, URLSearchParams} = __webpack_require__(311); // TODO: Use the `URL` global when targeting Node.js 10 -const urlLib = __webpack_require__(311); -const is = __webpack_require__(314); -const urlParseLax = __webpack_require__(346); -const lowercaseKeys = __webpack_require__(323); -const urlToOptions = __webpack_require__(340); -const isFormData = __webpack_require__(335); -const merge = __webpack_require__(343); -const knownHookEvents = __webpack_require__(344); +const {URL, URLSearchParams} = __webpack_require__(312); // TODO: Use the `URL` global when targeting Node.js 10 +const urlLib = __webpack_require__(312); +const is = __webpack_require__(315); +const urlParseLax = __webpack_require__(347); +const lowercaseKeys = __webpack_require__(324); +const urlToOptions = __webpack_require__(341); +const isFormData = __webpack_require__(336); +const merge = __webpack_require__(344); +const knownHookEvents = __webpack_require__(345); const retryAfterStatusCodes = new Set([413, 429, 503]); @@ -71765,13 +71974,13 @@ module.exports.reNormalize = reNormalize; /***/ }), -/* 346 */ +/* 347 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const url = __webpack_require__(311); -const prependHttp = __webpack_require__(347); +const url = __webpack_require__(312); +const prependHttp = __webpack_require__(348); module.exports = (input, options) => { if (typeof input !== 'string') { @@ -71784,7 +71993,7 @@ module.exports = (input, options) => { /***/ }), -/* 347 */ +/* 348 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -71806,12 +72015,12 @@ module.exports = (url, opts) => { /***/ }), -/* 348 */ +/* 349 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const is = __webpack_require__(314); +const is = __webpack_require__(315); module.exports = function deepFreeze(object) { for (const [key, value] of Object.entries(object)) { @@ -71825,26 +72034,26 @@ module.exports = function deepFreeze(object) { /***/ }), -/* 349 */ +/* 350 */ /***/ (function(module, exports, __webpack_require__) { -module.exports = __webpack_require__(350); +module.exports = __webpack_require__(351); /***/ }), -/* 350 */ +/* 351 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var net = __webpack_require__(333); -var tls = __webpack_require__(351); -var http = __webpack_require__(312); -var https = __webpack_require__(318); -var events = __webpack_require__(24); -var assert = __webpack_require__(22); -var util = __webpack_require__(16); +var net = __webpack_require__(334); +var tls = __webpack_require__(352); +var http = __webpack_require__(313); +var https = __webpack_require__(319); +var events = __webpack_require__(25); +var assert = __webpack_require__(23); +var util = __webpack_require__(17); exports.httpOverHttp = httpOverHttp; @@ -72103,22 +72312,22 @@ exports.debug = debug; // for test /***/ }), -/* 351 */ +/* 352 */ /***/ (function(module, exports) { module.exports = require("tls"); /***/ }), -/* 352 */ +/* 353 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const fslib_1 = __webpack_require__(3); -const path_1 = __webpack_require__(7); -const tar_1 = __webpack_require__(353); -const tmp_1 = __webpack_require__(82); +const path_1 = __webpack_require__(6); +const tar_1 = __webpack_require__(354); +const tmp_1 = __webpack_require__(83); ; async function makeArchiveFromDirectory(source, { baseFs = new fslib_1.NodeFS(), prefixPath = `/` } = {}) { const zipFs = new fslib_1.ZipFS(tmp_1.tmpNameSync(), { create: true }); @@ -72204,45 +72413,45 @@ exports.makeArchive = makeArchive; /***/ }), -/* 353 */ +/* 354 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; // high-level commands -exports.c = exports.create = __webpack_require__(354) -exports.r = exports.replace = __webpack_require__(378) -exports.t = exports.list = __webpack_require__(376) -exports.u = exports.update = __webpack_require__(379) -exports.x = exports.extract = __webpack_require__(380) +exports.c = exports.create = __webpack_require__(355) +exports.r = exports.replace = __webpack_require__(379) +exports.t = exports.list = __webpack_require__(377) +exports.u = exports.update = __webpack_require__(380) +exports.x = exports.extract = __webpack_require__(381) // classes -exports.Pack = __webpack_require__(356) -exports.Unpack = __webpack_require__(381) -exports.Parse = __webpack_require__(377) -exports.ReadEntry = __webpack_require__(366) -exports.WriteEntry = __webpack_require__(368) -exports.Header = __webpack_require__(370) -exports.Pax = __webpack_require__(369) -exports.types = __webpack_require__(367) +exports.Pack = __webpack_require__(357) +exports.Unpack = __webpack_require__(382) +exports.Parse = __webpack_require__(378) +exports.ReadEntry = __webpack_require__(367) +exports.WriteEntry = __webpack_require__(369) +exports.Header = __webpack_require__(371) +exports.Pax = __webpack_require__(370) +exports.types = __webpack_require__(368) /***/ }), -/* 354 */ +/* 355 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; // tar -c -const hlo = __webpack_require__(355) +const hlo = __webpack_require__(356) -const Pack = __webpack_require__(356) +const Pack = __webpack_require__(357) const fs = __webpack_require__(5) -const fsm = __webpack_require__(375) -const t = __webpack_require__(376) -const path = __webpack_require__(7) +const fsm = __webpack_require__(376) +const t = __webpack_require__(377) +const path = __webpack_require__(6) const c = module.exports = (opt_, files, cb) => { if (typeof files === 'function') @@ -72341,7 +72550,7 @@ const create = (opt, files) => { /***/ }), -/* 355 */ +/* 356 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -72377,13 +72586,13 @@ const parse = module.exports = opt => opt ? Object.keys(opt).map(k => [ /***/ }), -/* 356 */ +/* 357 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const Buffer = __webpack_require__(357) +const Buffer = __webpack_require__(358) // A readable tar stream creator // Technically, this is a transform stream that you write paths into, @@ -72407,13 +72616,13 @@ class PackJob { } } -const MiniPass = __webpack_require__(360) -const zlib = __webpack_require__(364) -const ReadEntry = __webpack_require__(366) -const WriteEntry = __webpack_require__(368) +const MiniPass = __webpack_require__(361) +const zlib = __webpack_require__(365) +const ReadEntry = __webpack_require__(367) +const WriteEntry = __webpack_require__(369) const WriteEntrySync = WriteEntry.Sync const WriteEntryTar = WriteEntry.Tar -const Yallist = __webpack_require__(361) +const Yallist = __webpack_require__(362) const EOF = Buffer.alloc(1024) const ONSTAT = Symbol('onStat') const ENDED = Symbol('ended') @@ -72437,8 +72646,8 @@ const WRITE = Symbol('write') const ONDRAIN = Symbol('ondrain') const fs = __webpack_require__(5) -const path = __webpack_require__(7) -const warner = __webpack_require__(372) +const path = __webpack_require__(6) +const warner = __webpack_require__(373) const Pack = warner(class Pack extends MiniPass { constructor (opt) { @@ -72788,7 +72997,7 @@ module.exports = Pack /***/ }), -/* 357 */ +/* 358 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -72800,17 +73009,17 @@ module.exports = Pack let B = Buffer /* istanbul ignore next */ if (!B.alloc) { - B = __webpack_require__(358).Buffer + B = __webpack_require__(359).Buffer } module.exports = B /***/ }), -/* 358 */ +/* 359 */ /***/ (function(module, exports, __webpack_require__) { /* eslint-disable node/no-deprecated-api */ -var buffer = __webpack_require__(359) +var buffer = __webpack_require__(360) var Buffer = buffer.Buffer // alternative to using Object.keys for old browsers @@ -72874,19 +73083,19 @@ SafeBuffer.allocUnsafeSlow = function (size) { /***/ }), -/* 359 */ +/* 360 */ /***/ (function(module, exports) { module.exports = require("buffer"); /***/ }), -/* 360 */ +/* 361 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const EE = __webpack_require__(24) -const Yallist = __webpack_require__(361) +const EE = __webpack_require__(25) +const Yallist = __webpack_require__(362) const EOF = Symbol('EOF') const MAYBE_EMIT_END = Symbol('maybeEmitEnd') const EMITTED_END = Symbol('emittedEnd') @@ -72897,7 +73106,7 @@ const doIter = process.env._MP_NO_ITERATOR_SYMBOLS_ !== '1' const ASYNCITERATOR = doIter && Symbol.asyncIterator || Symbol('asyncIterator not implemented') const ITERATOR = doIter && Symbol.iterator || Symbol('iterator not implemented') const FLUSHCHUNK = Symbol('flushChunk') -const SD = __webpack_require__(363).StringDecoder +const SD = __webpack_require__(364).StringDecoder const ENCODING = Symbol('encoding') const DECODER = Symbol('decoder') const FLOWING = Symbol('flowing') @@ -72913,7 +73122,7 @@ const OBJECTMODE = Symbol('objectMode') let B = Buffer /* istanbul ignore next */ if (!B.alloc) { - B = __webpack_require__(358).Buffer + B = __webpack_require__(359).Buffer } module.exports = class MiniPass extends EE { @@ -73262,7 +73471,7 @@ module.exports = class MiniPass extends EE { /***/ }), -/* 361 */ +/* 362 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -73640,12 +73849,12 @@ function Node (value, prev, next, list) { try { // add if support for Symbol.iterator is present - __webpack_require__(362)(Yallist) + __webpack_require__(363)(Yallist) } catch (er) {} /***/ }), -/* 362 */ +/* 363 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -73660,24 +73869,24 @@ module.exports = function (Yallist) { /***/ }), -/* 363 */ +/* 364 */ /***/ (function(module, exports) { module.exports = require("string_decoder"); /***/ }), -/* 364 */ +/* 365 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const assert = __webpack_require__(22) -const Buffer = __webpack_require__(359).Buffer -const realZlib = __webpack_require__(338) +const assert = __webpack_require__(23) +const Buffer = __webpack_require__(360).Buffer +const realZlib = __webpack_require__(339) -const constants = exports.constants = __webpack_require__(365) -const MiniPass = __webpack_require__(360) +const constants = exports.constants = __webpack_require__(366) +const MiniPass = __webpack_require__(361) const OriginalBufferConcat = Buffer.concat @@ -74008,7 +74217,7 @@ exports.Unzip = Unzip /***/ }), -/* 365 */ +/* 366 */ /***/ (function(module, exports) { module.exports = Object.freeze({ @@ -74060,13 +74269,13 @@ module.exports = Object.freeze({ /***/ }), -/* 366 */ +/* 367 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const types = __webpack_require__(367) -const MiniPass = __webpack_require__(360) +const types = __webpack_require__(368) +const MiniPass = __webpack_require__(361) const SLURP = Symbol('slurp') module.exports = class ReadEntry extends MiniPass { @@ -74161,7 +74370,7 @@ module.exports = class ReadEntry extends MiniPass { /***/ }), -/* 367 */ +/* 368 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -74212,20 +74421,20 @@ exports.code = new Map(Array.from(exports.name).map(kv => [kv[1], kv[0]])) /***/ }), -/* 368 */ +/* 369 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const Buffer = __webpack_require__(357) -const MiniPass = __webpack_require__(360) -const Pax = __webpack_require__(369) -const Header = __webpack_require__(370) -const ReadEntry = __webpack_require__(366) +const Buffer = __webpack_require__(358) +const MiniPass = __webpack_require__(361) +const Pax = __webpack_require__(370) +const Header = __webpack_require__(371) +const ReadEntry = __webpack_require__(367) const fs = __webpack_require__(5) -const path = __webpack_require__(7) +const path = __webpack_require__(6) -const types = __webpack_require__(367) +const types = __webpack_require__(368) const maxReadSize = 16 * 1024 * 1024 const PROCESS = Symbol('process') const FILE = Symbol('file') @@ -74242,10 +74451,10 @@ const OPENFILE = Symbol('openfile') const ONOPENFILE = Symbol('onopenfile') const CLOSE = Symbol('close') const MODE = Symbol('mode') -const warner = __webpack_require__(372) -const winchars = __webpack_require__(373) +const warner = __webpack_require__(373) +const winchars = __webpack_require__(374) -const modeFix = __webpack_require__(374) +const modeFix = __webpack_require__(375) const WriteEntry = warner(class WriteEntry extends MiniPass { constructor (p, opt) { @@ -74641,14 +74850,14 @@ module.exports = WriteEntry /***/ }), -/* 369 */ +/* 370 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const Buffer = __webpack_require__(357) -const Header = __webpack_require__(370) -const path = __webpack_require__(7) +const Buffer = __webpack_require__(358) +const Header = __webpack_require__(371) +const path = __webpack_require__(6) class Pax { constructor (obj, global) { @@ -74794,7 +75003,7 @@ module.exports = Pax /***/ }), -/* 370 */ +/* 371 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -74804,10 +75013,10 @@ module.exports = Pax // the data could not be faithfully encoded in a simple header. // (Also, check header.needPax to see if it needs a pax header.) -const Buffer = __webpack_require__(357) -const types = __webpack_require__(367) -const pathModule = __webpack_require__(7).posix -const large = __webpack_require__(371) +const Buffer = __webpack_require__(358) +const types = __webpack_require__(368) +const pathModule = __webpack_require__(6).posix +const large = __webpack_require__(372) const SLURP = Symbol('slurp') const TYPE = Symbol('type') @@ -75090,7 +75299,7 @@ module.exports = Header /***/ }), -/* 371 */ +/* 372 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -75189,7 +75398,7 @@ const twosComp = byte => ((0xff ^ byte) + 1) & 0xff /***/ }), -/* 372 */ +/* 373 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -75210,7 +75419,7 @@ module.exports = Base => class extends Base { /***/ }), -/* 373 */ +/* 374 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -75240,7 +75449,7 @@ module.exports = { /***/ }), -/* 374 */ +/* 375 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -75261,13 +75470,13 @@ module.exports = (mode, isDir) => { /***/ }), -/* 375 */ +/* 376 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const MiniPass = __webpack_require__(360) -const EE = __webpack_require__(24).EventEmitter +const MiniPass = __webpack_require__(361) +const EE = __webpack_require__(25).EventEmitter const fs = __webpack_require__(5) // for writev @@ -75654,23 +75863,23 @@ exports.WriteStreamSync = WriteStreamSync /***/ }), -/* 376 */ +/* 377 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const Buffer = __webpack_require__(357) +const Buffer = __webpack_require__(358) // XXX: This shares a lot in common with extract.js // maybe some DRY opportunity here? // tar -t -const hlo = __webpack_require__(355) -const Parser = __webpack_require__(377) +const hlo = __webpack_require__(356) +const Parser = __webpack_require__(378) const fs = __webpack_require__(5) -const fsm = __webpack_require__(375) -const path = __webpack_require__(7) +const fsm = __webpack_require__(376) +const path = __webpack_require__(6) const t = module.exports = (opt_, files, cb) => { if (typeof opt_ === 'function') @@ -75791,7 +76000,7 @@ const list = opt => new Parser(opt) /***/ }), -/* 377 */ +/* 378 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -75817,16 +76026,16 @@ const list = opt => new Parser(opt) // // ignored entries get .resume() called on them straight away -const warner = __webpack_require__(372) -const path = __webpack_require__(7) -const Header = __webpack_require__(370) -const EE = __webpack_require__(24) -const Yallist = __webpack_require__(361) +const warner = __webpack_require__(373) +const path = __webpack_require__(6) +const Header = __webpack_require__(371) +const EE = __webpack_require__(25) +const Yallist = __webpack_require__(362) const maxMetaEntrySize = 1024 * 1024 -const Entry = __webpack_require__(366) -const Pax = __webpack_require__(369) -const zlib = __webpack_require__(364) -const Buffer = __webpack_require__(357) +const Entry = __webpack_require__(367) +const Pax = __webpack_require__(370) +const zlib = __webpack_require__(365) +const Buffer = __webpack_require__(358) const gzipHeader = Buffer.from([0x1f, 0x8b]) const STATE = Symbol('state') @@ -76221,21 +76430,21 @@ module.exports = warner(class Parser extends EE { /***/ }), -/* 378 */ +/* 379 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const Buffer = __webpack_require__(357) +const Buffer = __webpack_require__(358) // tar -r -const hlo = __webpack_require__(355) -const Pack = __webpack_require__(356) -const Parse = __webpack_require__(377) +const hlo = __webpack_require__(356) +const Pack = __webpack_require__(357) +const Parse = __webpack_require__(378) const fs = __webpack_require__(5) -const fsm = __webpack_require__(375) -const t = __webpack_require__(376) -const path = __webpack_require__(7) +const fsm = __webpack_require__(376) +const t = __webpack_require__(377) +const path = __webpack_require__(6) // starting at the head of the file, read a Header // If the checksum is invalid, that's our position to start writing @@ -76243,7 +76452,7 @@ const path = __webpack_require__(7) // and try again. // Write the new Pack stream starting there. -const Header = __webpack_require__(370) +const Header = __webpack_require__(371) const r = module.exports = (opt_, files, cb) => { const opt = hlo(opt_) @@ -76448,7 +76657,7 @@ const addFilesAsync = (p, files) => { /***/ }), -/* 379 */ +/* 380 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -76456,8 +76665,8 @@ const addFilesAsync = (p, files) => { // tar -u -const hlo = __webpack_require__(355) -const r = __webpack_require__(378) +const hlo = __webpack_require__(356) +const r = __webpack_require__(379) // just call tar.r with the filter and mtimeCache const u = module.exports = (opt_, files, cb) => { @@ -76491,18 +76700,18 @@ const mtimeFilter = opt => { /***/ }), -/* 380 */ +/* 381 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; // tar -x -const hlo = __webpack_require__(355) -const Unpack = __webpack_require__(381) +const hlo = __webpack_require__(356) +const Unpack = __webpack_require__(382) const fs = __webpack_require__(5) -const fsm = __webpack_require__(375) -const path = __webpack_require__(7) +const fsm = __webpack_require__(376) +const path = __webpack_require__(6) const x = module.exports = (opt_, files, cb) => { if (typeof opt_ === 'function') @@ -76610,21 +76819,21 @@ const extract = opt => { /***/ }), -/* 381 */ +/* 382 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const assert = __webpack_require__(22) -const EE = __webpack_require__(24).EventEmitter -const Parser = __webpack_require__(377) +const assert = __webpack_require__(23) +const EE = __webpack_require__(25).EventEmitter +const Parser = __webpack_require__(378) const fs = __webpack_require__(5) -const fsm = __webpack_require__(375) -const path = __webpack_require__(7) -const mkdir = __webpack_require__(382) +const fsm = __webpack_require__(376) +const path = __webpack_require__(6) +const mkdir = __webpack_require__(383) const mkdirSync = mkdir.sync -const wc = __webpack_require__(373) +const wc = __webpack_require__(374) const ONENTRY = Symbol('onEntry') const CHECKFS = Symbol('checkFs') @@ -76649,7 +76858,7 @@ const SKIP = Symbol('skip') const DOCHOWN = Symbol('doChown') const UID = Symbol('uid') const GID = Symbol('gid') -const crypto = __webpack_require__(14) +const crypto = __webpack_require__(15) // Unlinks on Windows are not atomic. // @@ -77238,7 +77447,7 @@ module.exports = Unpack /***/ }), -/* 382 */ +/* 383 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -77248,10 +77457,10 @@ module.exports = Unpack // TODO: This should probably be a class, not functionally // passing around state in a gazillion args. -const mkdirp = __webpack_require__(383) +const mkdirp = __webpack_require__(384) const fs = __webpack_require__(5) -const path = __webpack_require__(7) -const chownr = __webpack_require__(384) +const path = __webpack_require__(6) +const chownr = __webpack_require__(385) class SymlinkError extends Error { constructor (symlink, path) { @@ -77451,10 +77660,10 @@ const mkdirSync = module.exports.sync = (dir, opt) => { /***/ }), -/* 383 */ +/* 384 */ /***/ (function(module, exports, __webpack_require__) { -var path = __webpack_require__(7); +var path = __webpack_require__(6); var fs = __webpack_require__(5); var _0777 = parseInt('0777', 8); @@ -77555,13 +77764,13 @@ mkdirP.sync = function sync (p, opts, made) { /***/ }), -/* 384 */ +/* 385 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const fs = __webpack_require__(5) -const path = __webpack_require__(7) +const path = __webpack_require__(6) /* istanbul ignore next */ const LCHOWN = fs.lchown ? 'lchown' : 'chown' @@ -77650,7 +77859,7 @@ chownr.sync = chownrSync /***/ }), -/* 385 */ +/* 386 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -77658,28 +77867,28 @@ chownr.sync = chownrSync // Load modules -const Hoek = __webpack_require__(386); -const Any = __webpack_require__(388); -const Cast = __webpack_require__(394); -const Errors = __webpack_require__(391); -const Lazy = __webpack_require__(397); -const Ref = __webpack_require__(390); -const Settings = __webpack_require__(389); +const Hoek = __webpack_require__(387); +const Any = __webpack_require__(389); +const Cast = __webpack_require__(395); +const Errors = __webpack_require__(392); +const Lazy = __webpack_require__(398); +const Ref = __webpack_require__(391); +const Settings = __webpack_require__(390); // Declare internals const internals = { - alternatives: __webpack_require__(396), - array: __webpack_require__(398), - boolean: __webpack_require__(399), - binary: __webpack_require__(400), - date: __webpack_require__(401), - func: __webpack_require__(402), - number: __webpack_require__(408), - object: __webpack_require__(403), - string: __webpack_require__(409), - symbol: __webpack_require__(415) + alternatives: __webpack_require__(397), + array: __webpack_require__(399), + boolean: __webpack_require__(400), + binary: __webpack_require__(401), + date: __webpack_require__(402), + func: __webpack_require__(403), + number: __webpack_require__(409), + object: __webpack_require__(404), + string: __webpack_require__(410), + symbol: __webpack_require__(416) }; internals.callWithDefaults = function (schema, args) { @@ -78094,7 +78303,7 @@ internals.root = function () { root.extensionsSchema = internals.array.items([internals.object, internals.func.arity(1)]).strict(); - root.version = __webpack_require__(416).version; + root.version = __webpack_require__(417).version; return root; }; @@ -78104,7 +78313,7 @@ module.exports = internals.root(); /***/ }), -/* 386 */ +/* 387 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -78112,12 +78321,12 @@ module.exports = internals.root(); // Load modules -const Assert = __webpack_require__(22); -const Crypto = __webpack_require__(14); -const Path = __webpack_require__(7); -const Util = __webpack_require__(16); +const Assert = __webpack_require__(23); +const Crypto = __webpack_require__(15); +const Path = __webpack_require__(6); +const Util = __webpack_require__(17); -const Escape = __webpack_require__(387); +const Escape = __webpack_require__(388); // Declare internals @@ -79065,7 +79274,7 @@ exports.block = function () { /***/ }), -/* 387 */ +/* 388 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -79240,7 +79449,7 @@ internals.safeCharCodes = (function () { /***/ }), -/* 388 */ +/* 389 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -79248,10 +79457,10 @@ internals.safeCharCodes = (function () { // Load modules -const Hoek = __webpack_require__(386); -const Settings = __webpack_require__(389); -const Ref = __webpack_require__(390); -const Errors = __webpack_require__(391); +const Hoek = __webpack_require__(387); +const Settings = __webpack_require__(390); +const Ref = __webpack_require__(391); +const Errors = __webpack_require__(392); let Alternatives = null; // Delay-loaded to prevent circular dependencies let Cast = null; @@ -79259,7 +79468,7 @@ let Cast = null; // Declare internals const internals = { - Set: __webpack_require__(393) + Set: __webpack_require__(394) }; @@ -79283,7 +79492,7 @@ module.exports = internals.Any = class { constructor() { - Cast = Cast || __webpack_require__(394); + Cast = Cast || __webpack_require__(395); this.isJoi = true; this._type = 'any'; @@ -79342,7 +79551,7 @@ module.exports = internals.Any = class { checkOptions(options) { - const Schemas = __webpack_require__(395); + const Schemas = __webpack_require__(396); const result = Schemas.options.validate(options); if (result.error) { throw new Error(result.error.details[0].message); @@ -79647,7 +79856,7 @@ module.exports = internals.Any = class { const then = options.hasOwnProperty('then') ? this.concat(Cast.schema(this._currentJoi, options.then)) : undefined; const otherwise = options.hasOwnProperty('otherwise') ? this.concat(Cast.schema(this._currentJoi, options.otherwise)) : undefined; - Alternatives = Alternatives || __webpack_require__(396); + Alternatives = Alternatives || __webpack_require__(397); const alternativeOptions = { then, otherwise }; if (Object.prototype.hasOwnProperty.call(options, 'is')) { @@ -80136,7 +80345,7 @@ internals._try = function (fn, args) { /***/ }), -/* 389 */ +/* 390 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -80144,7 +80353,7 @@ internals._try = function (fn, args) { // Load modules -const Hoek = __webpack_require__(386); +const Hoek = __webpack_require__(387); // Declare internals @@ -80178,7 +80387,7 @@ exports.concat = function (target, source) { /***/ }), -/* 390 */ +/* 391 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -80186,7 +80395,7 @@ exports.concat = function (target, source) { // Load modules -const Hoek = __webpack_require__(386); +const Hoek = __webpack_require__(387); // Declare internals @@ -80238,7 +80447,7 @@ exports.push = function (array, ref) { /***/ }), -/* 391 */ +/* 392 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -80246,8 +80455,8 @@ exports.push = function (array, ref) { // Load modules -const Hoek = __webpack_require__(386); -const Language = __webpack_require__(392); +const Hoek = __webpack_require__(387); +const Language = __webpack_require__(393); // Declare internals @@ -80608,7 +80817,7 @@ internals.annotate = function (stripColorCodes) { /***/ }), -/* 392 */ +/* 393 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -80780,13 +80989,13 @@ exports.errors = { /***/ }), -/* 393 */ +/* 394 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const Ref = __webpack_require__(390); +const Ref = __webpack_require__(391); const internals = {}; @@ -80965,7 +81174,7 @@ module.exports = class InternalSet { /***/ }), -/* 394 */ +/* 395 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -80973,8 +81182,8 @@ module.exports = class InternalSet { // Load modules -const Hoek = __webpack_require__(386); -const Ref = __webpack_require__(390); +const Hoek = __webpack_require__(387); +const Ref = __webpack_require__(391); // Type modules are delay-loaded to prevent circular dependencies @@ -81036,7 +81245,7 @@ exports.ref = function (id) { /***/ }), -/* 395 */ +/* 396 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -81044,7 +81253,7 @@ exports.ref = function (id) { // Load modules -const Joi = __webpack_require__(385); +const Joi = __webpack_require__(386); // Declare internals @@ -81068,7 +81277,7 @@ exports.options = Joi.object({ /***/ }), -/* 396 */ +/* 397 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -81076,10 +81285,10 @@ exports.options = Joi.object({ // Load modules -const Hoek = __webpack_require__(386); -const Any = __webpack_require__(388); -const Cast = __webpack_require__(394); -const Ref = __webpack_require__(390); +const Hoek = __webpack_require__(387); +const Any = __webpack_require__(389); +const Cast = __webpack_require__(395); +const Ref = __webpack_require__(391); // Declare internals @@ -81268,7 +81477,7 @@ module.exports = new internals.Alternatives(); /***/ }), -/* 397 */ +/* 398 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -81276,8 +81485,8 @@ module.exports = new internals.Alternatives(); // Load modules -const Any = __webpack_require__(388); -const Hoek = __webpack_require__(386); +const Any = __webpack_require__(389); +const Hoek = __webpack_require__(387); // Declare internals @@ -81328,7 +81537,7 @@ module.exports = new internals.Lazy(); /***/ }), -/* 398 */ +/* 399 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -81336,10 +81545,10 @@ module.exports = new internals.Lazy(); // Load modules -const Any = __webpack_require__(388); -const Cast = __webpack_require__(394); -const Ref = __webpack_require__(390); -const Hoek = __webpack_require__(386); +const Any = __webpack_require__(389); +const Cast = __webpack_require__(395); +const Ref = __webpack_require__(391); +const Hoek = __webpack_require__(387); // Declare internals @@ -82004,7 +82213,7 @@ module.exports = new internals.Array(); /***/ }), -/* 399 */ +/* 400 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -82012,14 +82221,14 @@ module.exports = new internals.Array(); // Load modules -const Any = __webpack_require__(388); -const Hoek = __webpack_require__(386); +const Any = __webpack_require__(389); +const Hoek = __webpack_require__(387); // Declare internals const internals = { - Set: __webpack_require__(393) + Set: __webpack_require__(394) }; @@ -82109,7 +82318,7 @@ module.exports = new internals.Boolean(); /***/ }), -/* 400 */ +/* 401 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -82117,8 +82326,8 @@ module.exports = new internals.Boolean(); // Load modules -const Any = __webpack_require__(388); -const Hoek = __webpack_require__(386); +const Any = __webpack_require__(389); +const Hoek = __webpack_require__(387); // Declare internals @@ -82216,7 +82425,7 @@ module.exports = new internals.Binary(); /***/ }), -/* 401 */ +/* 402 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -82224,9 +82433,9 @@ module.exports = new internals.Binary(); // Load modules -const Any = __webpack_require__(388); -const Ref = __webpack_require__(390); -const Hoek = __webpack_require__(386); +const Any = __webpack_require__(389); +const Ref = __webpack_require__(391); +const Hoek = __webpack_require__(387); // Declare internals @@ -82402,7 +82611,7 @@ module.exports = new internals.Date(); /***/ }), -/* 402 */ +/* 403 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -82410,9 +82619,9 @@ module.exports = new internals.Date(); // Load modules -const Hoek = __webpack_require__(386); -const ObjectType = __webpack_require__(403); -const Ref = __webpack_require__(390); +const Hoek = __webpack_require__(387); +const ObjectType = __webpack_require__(404); +const Ref = __webpack_require__(391); // Declare internals @@ -82499,7 +82708,7 @@ module.exports = new internals.Func(); /***/ }), -/* 403 */ +/* 404 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -82507,11 +82716,11 @@ module.exports = new internals.Func(); // Load modules -const Hoek = __webpack_require__(386); -const Topo = __webpack_require__(404); -const Any = __webpack_require__(388); -const Errors = __webpack_require__(391); -const Cast = __webpack_require__(394); +const Hoek = __webpack_require__(387); +const Topo = __webpack_require__(405); +const Any = __webpack_require__(389); +const Errors = __webpack_require__(392); +const Cast = __webpack_require__(395); // Declare internals @@ -83434,7 +83643,7 @@ module.exports = new internals.Object(); /***/ }), -/* 404 */ +/* 405 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -83442,7 +83651,7 @@ module.exports = new internals.Object(); // Load modules -const Hoek = __webpack_require__(405); +const Hoek = __webpack_require__(406); // Declare internals @@ -83669,7 +83878,7 @@ internals.mergeSort = (a, b) => { /***/ }), -/* 405 */ +/* 406 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -83677,12 +83886,12 @@ internals.mergeSort = (a, b) => { // Load modules -const Assert = __webpack_require__(22); -const Crypto = __webpack_require__(14); -const Path = __webpack_require__(7); +const Assert = __webpack_require__(23); +const Crypto = __webpack_require__(15); +const Path = __webpack_require__(6); -const DeepEqual = __webpack_require__(406); -const Escape = __webpack_require__(407); +const DeepEqual = __webpack_require__(407); +const Escape = __webpack_require__(408); // Declare internals @@ -84356,7 +84565,7 @@ exports.block = function () { /***/ }), -/* 406 */ +/* 407 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -84678,7 +84887,7 @@ module.exports = function (obj, ref, options) { /***/ }), -/* 407 */ +/* 408 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -84812,7 +85021,7 @@ internals.safeCharCodes = (function () { /***/ }), -/* 408 */ +/* 409 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -84820,9 +85029,9 @@ internals.safeCharCodes = (function () { // Load modules -const Any = __webpack_require__(388); -const Ref = __webpack_require__(390); -const Hoek = __webpack_require__(386); +const Any = __webpack_require__(389); +const Ref = __webpack_require__(391); +const Hoek = __webpack_require__(387); // Declare internals @@ -85004,7 +85213,7 @@ module.exports = new internals.Number(); /***/ }), -/* 409 */ +/* 410 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -85012,14 +85221,14 @@ module.exports = new internals.Number(); // Load modules -const Net = __webpack_require__(333); -const Hoek = __webpack_require__(386); +const Net = __webpack_require__(334); +const Hoek = __webpack_require__(387); let Isemail; // Loaded on demand -const Any = __webpack_require__(388); -const Ref = __webpack_require__(390); -const JoiDate = __webpack_require__(401); -const Uri = __webpack_require__(410); -const Ip = __webpack_require__(412); +const Any = __webpack_require__(389); +const Ref = __webpack_require__(391); +const JoiDate = __webpack_require__(402); +const Uri = __webpack_require__(411); +const Ip = __webpack_require__(413); // Declare internals @@ -85208,7 +85417,7 @@ internals.String = class extends Any { return this._test('email', isEmailOptions, function (value, state, options) { - Isemail = Isemail || __webpack_require__(413); + Isemail = Isemail || __webpack_require__(414); try { const result = Isemail.validate(value, isEmailOptions); @@ -85713,7 +85922,7 @@ module.exports = new internals.String(); /***/ }), -/* 410 */ +/* 411 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -85721,7 +85930,7 @@ module.exports = new internals.String(); // Load Modules -const RFC3986 = __webpack_require__(411); +const RFC3986 = __webpack_require__(412); // Declare internals @@ -85766,7 +85975,7 @@ module.exports = internals.Uri; /***/ }), -/* 411 */ +/* 412 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -85992,7 +86201,7 @@ module.exports = internals.rfc3986; /***/ }), -/* 412 */ +/* 413 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -86000,7 +86209,7 @@ module.exports = internals.rfc3986; // Load modules -const RFC3986 = __webpack_require__(411); +const RFC3986 = __webpack_require__(412); // Declare internals @@ -86053,7 +86262,7 @@ module.exports = internals.Ip; /***/ }), -/* 413 */ +/* 414 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -86061,8 +86270,8 @@ module.exports = internals.Ip; // Load modules -const Punycode = __webpack_require__(414); -const Util = __webpack_require__(16); +const Punycode = __webpack_require__(415); +const Util = __webpack_require__(17); // Declare internals @@ -87559,13 +87768,13 @@ exports.normalize = internals.normalize; /***/ }), -/* 414 */ +/* 415 */ /***/ (function(module, exports) { module.exports = require("punycode"); /***/ }), -/* 415 */ +/* 416 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -87573,10 +87782,10 @@ module.exports = require("punycode"); // Load modules -const Util = __webpack_require__(16); +const Util = __webpack_require__(17); -const Any = __webpack_require__(388); -const Hoek = __webpack_require__(386); +const Any = __webpack_require__(389); +const Hoek = __webpack_require__(387); // Declare internals @@ -87665,13 +87874,13 @@ module.exports = new internals.Symbol(); /***/ }), -/* 416 */ +/* 417 */ /***/ (function(module) { module.exports = {"name":"joi","description":"Object schema validation","version":"13.7.0","homepage":"https://github.com/hapijs/joi","repository":"git://github.com/hapijs/joi","main":"lib/index.js","keywords":["hapi","schema","validation"],"engines":{"node":">=8.9.0"},"dependencies":{"hoek":"5.x.x","isemail":"3.x.x","topo":"3.x.x"},"devDependencies":{"code":"5.x.x","hapitoc":"1.x.x","lab":"15.x.x"},"scripts":{"test":"lab -t 100 -a code -L","test-debug":"lab -a code","test-cov-html":"lab -r html -o coverage.html -a code","toc":"hapitoc","version":"npm run toc && git add API.md README.md"},"license":"BSD-3-Clause"}; /***/ }), -/* 417 */ +/* 418 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -87681,30 +87890,30 @@ var __importDefault = (this && this.__importDefault) || function (mod) { }; Object.defineProperty(exports, "__esModule", { value: true }); // @ts-ignore -const pluginConfiguration_raw_js_1 = __importDefault(__webpack_require__(418)); +const pluginConfiguration_raw_js_1 = __importDefault(__webpack_require__(419)); exports.pluginConfiguration = pluginConfiguration_raw_js_1.default; /***/ }), -/* 418 */ +/* 419 */ /***/ (function(module, exports, __webpack_require__) { module.exports = { modules: new Map([ - ["@berry/cli", __webpack_require__(419)], + ["@berry/cli", __webpack_require__(420)], ["@berry/core", __webpack_require__(1)], ["@berry/fslib", __webpack_require__(3)], - ["@berry/parsers", __webpack_require__(31)], - ["@berry/shell", __webpack_require__(277)], - ["@berry/plugin-essentials", __webpack_require__(421)], - ["@berry/plugin-init", __webpack_require__(717)], - ["@berry/plugin-constraints", __webpack_require__(719)], - ["@berry/plugin-file", __webpack_require__(725)], - ["@berry/plugin-github", __webpack_require__(732)], - ["@berry/plugin-http", __webpack_require__(736)], - ["@berry/plugin-link", __webpack_require__(740)], - ["@berry/plugin-npm", __webpack_require__(746)], - ["@berry/plugin-pnp", __webpack_require__(752)], + ["@berry/parsers", __webpack_require__(32)], + ["@berry/shell", __webpack_require__(278)], + ["@berry/plugin-essentials", __webpack_require__(422)], + ["@berry/plugin-init", __webpack_require__(718)], + ["@berry/plugin-constraints", __webpack_require__(720)], + ["@berry/plugin-file", __webpack_require__(726)], + ["@berry/plugin-github", __webpack_require__(733)], + ["@berry/plugin-http", __webpack_require__(737)], + ["@berry/plugin-link", __webpack_require__(741)], + ["@berry/plugin-npm", __webpack_require__(747)], + ["@berry/plugin-pnp", __webpack_require__(753)], ]), plugins: new Set([ @@ -87723,24 +87932,24 @@ module.exports = { /***/ }), -/* 419 */ +/* 420 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -var WorkspaceRequiredError_1 = __webpack_require__(420); +var WorkspaceRequiredError_1 = __webpack_require__(421); exports.WorkspaceRequiredError = WorkspaceRequiredError_1.WorkspaceRequiredError; /***/ }), -/* 420 */ +/* 421 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const concierge_1 = __webpack_require__(38); +const concierge_1 = __webpack_require__(39); class WorkspaceRequiredError extends concierge_1.UsageError { constructor(cwd) { super(`This command can only be run from within a workspace of your project.`); @@ -87750,7 +87959,7 @@ exports.WorkspaceRequiredError = WorkspaceRequiredError; /***/ }), -/* 421 */ +/* 422 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -87767,25 +87976,25 @@ var __importStar = (this && this.__importStar) || function (mod) { }; Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); -const clean_1 = __importDefault(__webpack_require__(422)); -const set_1 = __importDefault(__webpack_require__(423)); -const set_resolution_1 = __importDefault(__webpack_require__(424)); -const set_version_1 = __importDefault(__webpack_require__(425)); -const foreach_1 = __importDefault(__webpack_require__(426)); -const list_1 = __importDefault(__webpack_require__(427)); -const _entry_1 = __importDefault(__webpack_require__(428)); -const add_1 = __importDefault(__webpack_require__(429)); -const bin_1 = __importDefault(__webpack_require__(706)); -const config_1 = __importDefault(__webpack_require__(707)); -const help_1 = __importDefault(__webpack_require__(708)); -const install_1 = __importDefault(__webpack_require__(709)); -const link_1 = __importDefault(__webpack_require__(710)); -const node_1 = __importDefault(__webpack_require__(711)); -const remove_1 = __importDefault(__webpack_require__(712)); -const run_1 = __importDefault(__webpack_require__(713)); -const up_1 = __importDefault(__webpack_require__(714)); -const why_1 = __importDefault(__webpack_require__(715)); -const suggestUtils = __importStar(__webpack_require__(705)); +const clean_1 = __importDefault(__webpack_require__(423)); +const set_1 = __importDefault(__webpack_require__(424)); +const set_resolution_1 = __importDefault(__webpack_require__(425)); +const set_version_1 = __importDefault(__webpack_require__(426)); +const foreach_1 = __importDefault(__webpack_require__(427)); +const list_1 = __importDefault(__webpack_require__(428)); +const _entry_1 = __importDefault(__webpack_require__(429)); +const add_1 = __importDefault(__webpack_require__(430)); +const bin_1 = __importDefault(__webpack_require__(707)); +const config_1 = __importDefault(__webpack_require__(708)); +const help_1 = __importDefault(__webpack_require__(709)); +const install_1 = __importDefault(__webpack_require__(710)); +const link_1 = __importDefault(__webpack_require__(711)); +const node_1 = __importDefault(__webpack_require__(712)); +const remove_1 = __importDefault(__webpack_require__(713)); +const run_1 = __importDefault(__webpack_require__(714)); +const up_1 = __importDefault(__webpack_require__(715)); +const why_1 = __importDefault(__webpack_require__(716)); +const suggestUtils = __importStar(__webpack_require__(706)); exports.suggestUtils = suggestUtils; ; const plugin = { @@ -87821,7 +88030,7 @@ exports.default = plugin; /***/ }), -/* 422 */ +/* 423 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -87831,7 +88040,7 @@ const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); const core_3 = __webpack_require__(1); const fslib_1 = __webpack_require__(3); -const path_1 = __webpack_require__(7); +const path_1 = __webpack_require__(6); const PRESERVED_FILES = new Set([ `.gitignore`, ]); @@ -87897,14 +88106,14 @@ exports.default = (concierge, pluginConfiguration) => concierge /***/ }), -/* 423 */ +/* 424 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); -const concierge_1 = __webpack_require__(38); +const concierge_1 = __webpack_require__(39); exports.default = (concierge, pluginConfiguration) => concierge .command(`config set `) .describe(`change a configuration settings`) @@ -87922,13 +88131,13 @@ exports.default = (concierge, pluginConfiguration) => concierge /***/ }), -/* 424 */ +/* 425 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const cli_1 = __webpack_require__(419); +const cli_1 = __webpack_require__(420); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); exports.default = (concierge, pluginConfiguration) => concierge @@ -87961,7 +88170,7 @@ exports.default = (concierge, pluginConfiguration) => concierge /***/ }), -/* 425 */ +/* 426 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -87973,9 +88182,9 @@ Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); const fslib_1 = __webpack_require__(3); -const joi_1 = __importDefault(__webpack_require__(385)); -const path_1 = __webpack_require__(7); -const semver_1 = __importDefault(__webpack_require__(28)); +const joi_1 = __importDefault(__webpack_require__(386)); +const path_1 = __webpack_require__(6); +const semver_1 = __importDefault(__webpack_require__(29)); const BUNDLE_REGEXP = /^yarn-[0-9]+\.[0-9]+\.[0-9]+\.js$/; function getBundleAsset(release) { return release.assets.find(asset => { @@ -88066,9 +88275,9 @@ exports.default = (concierge, pluginConfiguration) => concierge stdout.write(`Downloading ${configuration.format(bundleUrl, `green`)}...\n`); const bundle = await core_2.httpUtils.get(bundleUrl, configuration); const executablePath = `.berry/releases/berry-${bundleVersion}.js`; - const absoluteExecutablePath = path_1.resolve(project.cwd, executablePath); + const absoluteExecutablePath = path_1.posix.resolve(project.cwd, executablePath); stdout.write(`Saving it into ${configuration.format(executablePath, `magenta`)}...\n`); - await fslib_1.xfs.mkdirpPromise(path_1.dirname(absoluteExecutablePath)); + await fslib_1.xfs.mkdirpPromise(path_1.posix.dirname(absoluteExecutablePath)); await fslib_1.xfs.writeFilePromise(absoluteExecutablePath, bundle); await fslib_1.xfs.chmodPromise(absoluteExecutablePath, 0o755); await core_1.Configuration.updateConfiguration(project.cwd, { @@ -88078,7 +88287,7 @@ exports.default = (concierge, pluginConfiguration) => concierge /***/ }), -/* 426 */ +/* 427 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -88110,7 +88319,7 @@ exports.default = (concierge, pluginConfiguration) => concierge /***/ }), -/* 427 */ +/* 428 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -88131,7 +88340,7 @@ exports.default = (concierge, pluginConfiguration) => concierge /***/ }), -/* 428 */ +/* 429 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -88146,14 +88355,14 @@ var __rest = (this && this.__rest) || function (s, e) { return t; }; Object.defineProperty(exports, "__esModule", { value: true }); -const path_1 = __webpack_require__(7); +const path_1 = __webpack_require__(6); +const fslib_1 = __webpack_require__(3); exports.default = (concierge) => concierge .command(`entry [... args]`) .describe(`select whether to use install or run`) .flags({ proxyArguments: true, defaultCommand: true, hiddenCommand: true }) .action(async (_a) => { var { cwd, version, args, stdout } = _a, env = __rest(_a, ["cwd", "version", "args", "stdout"]); - let newCwd; // berry --version if (args.length === 1 && args[0] === `--version`) { stdout.write(`v2.0.0\n`); @@ -88168,7 +88377,8 @@ exports.default = (concierge) => concierge // berry ~/projects/foo install } else if (args.length !== 0 && args[0].match(/[\\\/]/)) { - return await concierge.run(null, args.slice(1), Object.assign({ cwd: path_1.posix.resolve(cwd, args[0]), stdout }, env)); + const newCwd = path_1.posix.resolve(cwd, fslib_1.NodeFS.toPortablePath(args[0])); + return await concierge.run(null, args.slice(1), Object.assign({ cwd: newCwd, stdout }, env)); // berry start } else { @@ -88178,7 +88388,7 @@ exports.default = (concierge) => concierge /***/ }), -/* 429 */ +/* 430 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -88194,12 +88404,12 @@ var __importStar = (this && this.__importStar) || function (mod) { return result; }; Object.defineProperty(exports, "__esModule", { value: true }); -const cli_1 = __webpack_require__(419); +const cli_1 = __webpack_require__(420); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); const core_3 = __webpack_require__(1); -const inquirer_1 = __importDefault(__webpack_require__(430)); -const suggestUtils = __importStar(__webpack_require__(705)); +const inquirer_1 = __importDefault(__webpack_require__(431)); +const suggestUtils = __importStar(__webpack_require__(706)); exports.default = (concierge, pluginConfiguration) => concierge .command(`add [... packages] [-E,--exact] [-T,--tilde] [-D,--dev] [-P,--peer] [-i,--interactive]`) .describe(`add dependencies to the project`) @@ -88335,7 +88545,7 @@ exports.default = (concierge, pluginConfiguration) => concierge /***/ }), -/* 430 */ +/* 431 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -88353,11 +88563,11 @@ var inquirer = module.exports; inquirer.prompts = {}; -inquirer.Separator = __webpack_require__(431); +inquirer.Separator = __webpack_require__(432); inquirer.ui = { - BottomBar: __webpack_require__(433), - Prompt: __webpack_require__(440) + BottomBar: __webpack_require__(434), + Prompt: __webpack_require__(441) }; /** @@ -88393,15 +88603,15 @@ inquirer.createPromptModule = function(opt) { */ promptModule.restoreDefaultPrompts = function() { - this.registerPrompt('list', __webpack_require__(644)); - this.registerPrompt('input', __webpack_require__(663)); - this.registerPrompt('number', __webpack_require__(664)); - this.registerPrompt('confirm', __webpack_require__(665)); - this.registerPrompt('rawlist', __webpack_require__(666)); - this.registerPrompt('expand', __webpack_require__(667)); - this.registerPrompt('checkbox', __webpack_require__(668)); - this.registerPrompt('password', __webpack_require__(669)); - this.registerPrompt('editor', __webpack_require__(670)); + this.registerPrompt('list', __webpack_require__(645)); + this.registerPrompt('input', __webpack_require__(664)); + this.registerPrompt('number', __webpack_require__(665)); + this.registerPrompt('confirm', __webpack_require__(666)); + this.registerPrompt('rawlist', __webpack_require__(667)); + this.registerPrompt('expand', __webpack_require__(668)); + this.registerPrompt('checkbox', __webpack_require__(669)); + this.registerPrompt('password', __webpack_require__(670)); + this.registerPrompt('editor', __webpack_require__(671)); }; promptModule.restoreDefaultPrompts(); @@ -88428,13 +88638,13 @@ inquirer.restoreDefaultPrompts = function() { /***/ }), -/* 431 */ +/* 432 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var chalk = __webpack_require__(53); -var figures = __webpack_require__(432); +var chalk = __webpack_require__(54); +var figures = __webpack_require__(433); /** * Separator object @@ -88472,12 +88682,12 @@ module.exports = Separator; /***/ }), -/* 432 */ +/* 433 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const escapeStringRegexp = __webpack_require__(43); +const escapeStringRegexp = __webpack_require__(44); const platform = process.platform; @@ -88626,7 +88836,7 @@ module.exports = Object.assign(fn, figures); /***/ }), -/* 433 */ +/* 434 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -88635,10 +88845,10 @@ module.exports = Object.assign(fn, figures); * Sticky bottom bar user interface */ -var through = __webpack_require__(434); -var Base = __webpack_require__(435); -var rlUtils = __webpack_require__(438); -var _ = __webpack_require__(50); +var through = __webpack_require__(435); +var Base = __webpack_require__(436); +var rlUtils = __webpack_require__(439); +var _ = __webpack_require__(51); class BottomBar extends Base { constructor(opt) { @@ -88732,10 +88942,10 @@ module.exports = BottomBar; /***/ }), -/* 434 */ +/* 435 */ /***/ (function(module, exports, __webpack_require__) { -var Stream = __webpack_require__(15) +var Stream = __webpack_require__(16) // through // @@ -88846,14 +89056,14 @@ function through (write, end, opts) { /***/ }), -/* 435 */ +/* 436 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var _ = __webpack_require__(50); -var MuteStream = __webpack_require__(436); -var readline = __webpack_require__(437); +var _ = __webpack_require__(51); +var MuteStream = __webpack_require__(437); +var readline = __webpack_require__(438); /** * Base interface class other can inherits from @@ -88935,10 +89145,10 @@ module.exports = UI; /***/ }), -/* 436 */ +/* 437 */ /***/ (function(module, exports, __webpack_require__) { -var Stream = __webpack_require__(15) +var Stream = __webpack_require__(16) module.exports = MuteStream @@ -89086,18 +89296,18 @@ MuteStream.prototype.close = proxy('close') /***/ }), -/* 437 */ +/* 438 */ /***/ (function(module, exports) { module.exports = require("readline"); /***/ }), -/* 438 */ +/* 439 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var ansiEscapes = __webpack_require__(439); +var ansiEscapes = __webpack_require__(440); /** * Move cursor left by `x` @@ -89150,7 +89360,7 @@ exports.clearLine = function(rl, len) { /***/ }), -/* 439 */ +/* 440 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -89279,17 +89489,17 @@ x.iTerm.setCwd = cwd => OSC + '50;CurrentDir=' + (cwd || process.cwd()) + BEL; /***/ }), -/* 440 */ +/* 441 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var _ = __webpack_require__(50); -var { defer, empty, from, of } = __webpack_require__(441); -var { concatMap, filter, publish, reduce } = __webpack_require__(541); -var runAsync = __webpack_require__(641); -var utils = __webpack_require__(643); -var Base = __webpack_require__(435); +var _ = __webpack_require__(51); +var { defer, empty, from, of } = __webpack_require__(442); +var { concatMap, filter, publish, reduce } = __webpack_require__(542); +var runAsync = __webpack_require__(642); +var utils = __webpack_require__(644); +var Base = __webpack_require__(436); /** * Base interface class other can inherits from @@ -89409,168 +89619,168 @@ module.exports = PromptUI; /***/ }), -/* 441 */ +/* 442 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); -/* harmony import */ var _internal_Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(442); +/* harmony import */ var _internal_Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Observable", function() { return _internal_Observable__WEBPACK_IMPORTED_MODULE_0__["Observable"]; }); -/* harmony import */ var _internal_observable_ConnectableObservable__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(461); +/* harmony import */ var _internal_observable_ConnectableObservable__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(462); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "ConnectableObservable", function() { return _internal_observable_ConnectableObservable__WEBPACK_IMPORTED_MODULE_1__["ConnectableObservable"]; }); -/* harmony import */ var _internal_operators_groupBy__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(466); +/* harmony import */ var _internal_operators_groupBy__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(467); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "GroupedObservable", function() { return _internal_operators_groupBy__WEBPACK_IMPORTED_MODULE_2__["GroupedObservable"]; }); -/* harmony import */ var _internal_symbol_observable__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(458); +/* harmony import */ var _internal_symbol_observable__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(459); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "observable", function() { return _internal_symbol_observable__WEBPACK_IMPORTED_MODULE_3__["observable"]; }); -/* harmony import */ var _internal_Subject__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(462); +/* harmony import */ var _internal_Subject__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(463); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Subject", function() { return _internal_Subject__WEBPACK_IMPORTED_MODULE_4__["Subject"]; }); -/* harmony import */ var _internal_BehaviorSubject__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(467); +/* harmony import */ var _internal_BehaviorSubject__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(468); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "BehaviorSubject", function() { return _internal_BehaviorSubject__WEBPACK_IMPORTED_MODULE_5__["BehaviorSubject"]; }); -/* harmony import */ var _internal_ReplaySubject__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(468); +/* harmony import */ var _internal_ReplaySubject__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(469); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "ReplaySubject", function() { return _internal_ReplaySubject__WEBPACK_IMPORTED_MODULE_6__["ReplaySubject"]; }); -/* harmony import */ var _internal_AsyncSubject__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(485); +/* harmony import */ var _internal_AsyncSubject__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(486); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "AsyncSubject", function() { return _internal_AsyncSubject__WEBPACK_IMPORTED_MODULE_7__["AsyncSubject"]; }); -/* harmony import */ var _internal_scheduler_asap__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(486); +/* harmony import */ var _internal_scheduler_asap__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(487); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "asapScheduler", function() { return _internal_scheduler_asap__WEBPACK_IMPORTED_MODULE_8__["asap"]; }); -/* harmony import */ var _internal_scheduler_async__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(490); +/* harmony import */ var _internal_scheduler_async__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(491); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "asyncScheduler", function() { return _internal_scheduler_async__WEBPACK_IMPORTED_MODULE_9__["async"]; }); -/* harmony import */ var _internal_scheduler_queue__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(469); +/* harmony import */ var _internal_scheduler_queue__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(470); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "queueScheduler", function() { return _internal_scheduler_queue__WEBPACK_IMPORTED_MODULE_10__["queue"]; }); -/* harmony import */ var _internal_scheduler_animationFrame__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(491); +/* harmony import */ var _internal_scheduler_animationFrame__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(492); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "animationFrameScheduler", function() { return _internal_scheduler_animationFrame__WEBPACK_IMPORTED_MODULE_11__["animationFrame"]; }); -/* harmony import */ var _internal_scheduler_VirtualTimeScheduler__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(494); +/* harmony import */ var _internal_scheduler_VirtualTimeScheduler__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(495); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "VirtualTimeScheduler", function() { return _internal_scheduler_VirtualTimeScheduler__WEBPACK_IMPORTED_MODULE_12__["VirtualTimeScheduler"]; }); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "VirtualAction", function() { return _internal_scheduler_VirtualTimeScheduler__WEBPACK_IMPORTED_MODULE_12__["VirtualAction"]; }); -/* harmony import */ var _internal_Scheduler__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(475); +/* harmony import */ var _internal_Scheduler__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(476); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Scheduler", function() { return _internal_Scheduler__WEBPACK_IMPORTED_MODULE_13__["Scheduler"]; }); -/* harmony import */ var _internal_Subscription__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(450); +/* harmony import */ var _internal_Subscription__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(451); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Subscription", function() { return _internal_Subscription__WEBPACK_IMPORTED_MODULE_14__["Subscription"]; }); -/* harmony import */ var _internal_Subscriber__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(444); +/* harmony import */ var _internal_Subscriber__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(445); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Subscriber", function() { return _internal_Subscriber__WEBPACK_IMPORTED_MODULE_15__["Subscriber"]; }); -/* harmony import */ var _internal_Notification__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(477); +/* harmony import */ var _internal_Notification__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(478); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Notification", function() { return _internal_Notification__WEBPACK_IMPORTED_MODULE_16__["Notification"]; }); -/* harmony import */ var _internal_util_pipe__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(459); +/* harmony import */ var _internal_util_pipe__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(460); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "pipe", function() { return _internal_util_pipe__WEBPACK_IMPORTED_MODULE_17__["pipe"]; }); -/* harmony import */ var _internal_util_noop__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(460); +/* harmony import */ var _internal_util_noop__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(461); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "noop", function() { return _internal_util_noop__WEBPACK_IMPORTED_MODULE_18__["noop"]; }); -/* harmony import */ var _internal_util_identity__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(495); +/* harmony import */ var _internal_util_identity__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(496); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "identity", function() { return _internal_util_identity__WEBPACK_IMPORTED_MODULE_19__["identity"]; }); -/* harmony import */ var _internal_util_isObservable__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(496); +/* harmony import */ var _internal_util_isObservable__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(497); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "isObservable", function() { return _internal_util_isObservable__WEBPACK_IMPORTED_MODULE_20__["isObservable"]; }); -/* harmony import */ var _internal_util_ArgumentOutOfRangeError__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(497); +/* harmony import */ var _internal_util_ArgumentOutOfRangeError__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(498); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "ArgumentOutOfRangeError", function() { return _internal_util_ArgumentOutOfRangeError__WEBPACK_IMPORTED_MODULE_21__["ArgumentOutOfRangeError"]; }); -/* harmony import */ var _internal_util_EmptyError__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(498); +/* harmony import */ var _internal_util_EmptyError__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(499); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "EmptyError", function() { return _internal_util_EmptyError__WEBPACK_IMPORTED_MODULE_22__["EmptyError"]; }); -/* harmony import */ var _internal_util_ObjectUnsubscribedError__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(463); +/* harmony import */ var _internal_util_ObjectUnsubscribedError__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(464); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "ObjectUnsubscribedError", function() { return _internal_util_ObjectUnsubscribedError__WEBPACK_IMPORTED_MODULE_23__["ObjectUnsubscribedError"]; }); -/* harmony import */ var _internal_util_UnsubscriptionError__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(455); +/* harmony import */ var _internal_util_UnsubscriptionError__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(456); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "UnsubscriptionError", function() { return _internal_util_UnsubscriptionError__WEBPACK_IMPORTED_MODULE_24__["UnsubscriptionError"]; }); -/* harmony import */ var _internal_util_TimeoutError__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(499); +/* harmony import */ var _internal_util_TimeoutError__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(500); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "TimeoutError", function() { return _internal_util_TimeoutError__WEBPACK_IMPORTED_MODULE_25__["TimeoutError"]; }); -/* harmony import */ var _internal_observable_bindCallback__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(500); +/* harmony import */ var _internal_observable_bindCallback__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(501); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "bindCallback", function() { return _internal_observable_bindCallback__WEBPACK_IMPORTED_MODULE_26__["bindCallback"]; }); -/* harmony import */ var _internal_observable_bindNodeCallback__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(502); +/* harmony import */ var _internal_observable_bindNodeCallback__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(503); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "bindNodeCallback", function() { return _internal_observable_bindNodeCallback__WEBPACK_IMPORTED_MODULE_27__["bindNodeCallback"]; }); -/* harmony import */ var _internal_observable_combineLatest__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(503); +/* harmony import */ var _internal_observable_combineLatest__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(504); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "combineLatest", function() { return _internal_observable_combineLatest__WEBPACK_IMPORTED_MODULE_28__["combineLatest"]; }); -/* harmony import */ var _internal_observable_concat__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(514); +/* harmony import */ var _internal_observable_concat__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(515); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "concat", function() { return _internal_observable_concat__WEBPACK_IMPORTED_MODULE_29__["concat"]; }); -/* harmony import */ var _internal_observable_defer__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(524); +/* harmony import */ var _internal_observable_defer__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(525); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "defer", function() { return _internal_observable_defer__WEBPACK_IMPORTED_MODULE_30__["defer"]; }); -/* harmony import */ var _internal_observable_empty__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(478); +/* harmony import */ var _internal_observable_empty__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(479); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "empty", function() { return _internal_observable_empty__WEBPACK_IMPORTED_MODULE_31__["empty"]; }); -/* harmony import */ var _internal_observable_forkJoin__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(525); +/* harmony import */ var _internal_observable_forkJoin__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(526); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "forkJoin", function() { return _internal_observable_forkJoin__WEBPACK_IMPORTED_MODULE_32__["forkJoin"]; }); -/* harmony import */ var _internal_observable_from__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(515); +/* harmony import */ var _internal_observable_from__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(516); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "from", function() { return _internal_observable_from__WEBPACK_IMPORTED_MODULE_33__["from"]; }); -/* harmony import */ var _internal_observable_fromEvent__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(526); +/* harmony import */ var _internal_observable_fromEvent__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(527); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "fromEvent", function() { return _internal_observable_fromEvent__WEBPACK_IMPORTED_MODULE_34__["fromEvent"]; }); -/* harmony import */ var _internal_observable_fromEventPattern__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(527); +/* harmony import */ var _internal_observable_fromEventPattern__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(528); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "fromEventPattern", function() { return _internal_observable_fromEventPattern__WEBPACK_IMPORTED_MODULE_35__["fromEventPattern"]; }); -/* harmony import */ var _internal_observable_generate__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(528); +/* harmony import */ var _internal_observable_generate__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(529); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "generate", function() { return _internal_observable_generate__WEBPACK_IMPORTED_MODULE_36__["generate"]; }); -/* harmony import */ var _internal_observable_iif__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(529); +/* harmony import */ var _internal_observable_iif__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(530); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "iif", function() { return _internal_observable_iif__WEBPACK_IMPORTED_MODULE_37__["iif"]; }); -/* harmony import */ var _internal_observable_interval__WEBPACK_IMPORTED_MODULE_38__ = __webpack_require__(530); +/* harmony import */ var _internal_observable_interval__WEBPACK_IMPORTED_MODULE_38__ = __webpack_require__(531); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "interval", function() { return _internal_observable_interval__WEBPACK_IMPORTED_MODULE_38__["interval"]; }); -/* harmony import */ var _internal_observable_merge__WEBPACK_IMPORTED_MODULE_39__ = __webpack_require__(532); +/* harmony import */ var _internal_observable_merge__WEBPACK_IMPORTED_MODULE_39__ = __webpack_require__(533); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "merge", function() { return _internal_observable_merge__WEBPACK_IMPORTED_MODULE_39__["merge"]; }); -/* harmony import */ var _internal_observable_never__WEBPACK_IMPORTED_MODULE_40__ = __webpack_require__(533); +/* harmony import */ var _internal_observable_never__WEBPACK_IMPORTED_MODULE_40__ = __webpack_require__(534); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "never", function() { return _internal_observable_never__WEBPACK_IMPORTED_MODULE_40__["never"]; }); -/* harmony import */ var _internal_observable_of__WEBPACK_IMPORTED_MODULE_41__ = __webpack_require__(479); +/* harmony import */ var _internal_observable_of__WEBPACK_IMPORTED_MODULE_41__ = __webpack_require__(480); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "of", function() { return _internal_observable_of__WEBPACK_IMPORTED_MODULE_41__["of"]; }); -/* harmony import */ var _internal_observable_onErrorResumeNext__WEBPACK_IMPORTED_MODULE_42__ = __webpack_require__(534); +/* harmony import */ var _internal_observable_onErrorResumeNext__WEBPACK_IMPORTED_MODULE_42__ = __webpack_require__(535); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "onErrorResumeNext", function() { return _internal_observable_onErrorResumeNext__WEBPACK_IMPORTED_MODULE_42__["onErrorResumeNext"]; }); -/* harmony import */ var _internal_observable_pairs__WEBPACK_IMPORTED_MODULE_43__ = __webpack_require__(535); +/* harmony import */ var _internal_observable_pairs__WEBPACK_IMPORTED_MODULE_43__ = __webpack_require__(536); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "pairs", function() { return _internal_observable_pairs__WEBPACK_IMPORTED_MODULE_43__["pairs"]; }); -/* harmony import */ var _internal_observable_race__WEBPACK_IMPORTED_MODULE_44__ = __webpack_require__(536); +/* harmony import */ var _internal_observable_race__WEBPACK_IMPORTED_MODULE_44__ = __webpack_require__(537); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "race", function() { return _internal_observable_race__WEBPACK_IMPORTED_MODULE_44__["race"]; }); -/* harmony import */ var _internal_observable_range__WEBPACK_IMPORTED_MODULE_45__ = __webpack_require__(537); +/* harmony import */ var _internal_observable_range__WEBPACK_IMPORTED_MODULE_45__ = __webpack_require__(538); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "range", function() { return _internal_observable_range__WEBPACK_IMPORTED_MODULE_45__["range"]; }); -/* harmony import */ var _internal_observable_throwError__WEBPACK_IMPORTED_MODULE_46__ = __webpack_require__(484); +/* harmony import */ var _internal_observable_throwError__WEBPACK_IMPORTED_MODULE_46__ = __webpack_require__(485); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "throwError", function() { return _internal_observable_throwError__WEBPACK_IMPORTED_MODULE_46__["throwError"]; }); -/* harmony import */ var _internal_observable_timer__WEBPACK_IMPORTED_MODULE_47__ = __webpack_require__(538); +/* harmony import */ var _internal_observable_timer__WEBPACK_IMPORTED_MODULE_47__ = __webpack_require__(539); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "timer", function() { return _internal_observable_timer__WEBPACK_IMPORTED_MODULE_47__["timer"]; }); -/* harmony import */ var _internal_observable_using__WEBPACK_IMPORTED_MODULE_48__ = __webpack_require__(539); +/* harmony import */ var _internal_observable_using__WEBPACK_IMPORTED_MODULE_48__ = __webpack_require__(540); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "using", function() { return _internal_observable_using__WEBPACK_IMPORTED_MODULE_48__["using"]; }); -/* harmony import */ var _internal_observable_zip__WEBPACK_IMPORTED_MODULE_49__ = __webpack_require__(540); +/* harmony import */ var _internal_observable_zip__WEBPACK_IMPORTED_MODULE_49__ = __webpack_require__(541); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "zip", function() { return _internal_observable_zip__WEBPACK_IMPORTED_MODULE_49__["zip"]; }); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "EMPTY", function() { return _internal_observable_empty__WEBPACK_IMPORTED_MODULE_31__["EMPTY"]; }); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "NEVER", function() { return _internal_observable_never__WEBPACK_IMPORTED_MODULE_40__["NEVER"]; }); -/* harmony import */ var _internal_config__WEBPACK_IMPORTED_MODULE_50__ = __webpack_require__(448); +/* harmony import */ var _internal_config__WEBPACK_IMPORTED_MODULE_50__ = __webpack_require__(449); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "config", function() { return _internal_config__WEBPACK_IMPORTED_MODULE_50__["config"]; }); /** PURE_IMPORTS_START PURE_IMPORTS_END */ @@ -89631,17 +89841,17 @@ __webpack_require__.r(__webpack_exports__); /***/ }), -/* 442 */ +/* 443 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Observable", function() { return Observable; }); -/* harmony import */ var _util_canReportError__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); -/* harmony import */ var _util_toSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(457); -/* harmony import */ var _internal_symbol_observable__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(458); -/* harmony import */ var _util_pipe__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(459); -/* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(448); +/* harmony import */ var _util_canReportError__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(444); +/* harmony import */ var _util_toSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(458); +/* harmony import */ var _internal_symbol_observable__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(459); +/* harmony import */ var _util_pipe__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(460); +/* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(449); /** PURE_IMPORTS_START _util_canReportError,_util_toSubscriber,_internal_symbol_observable,_util_pipe,_config PURE_IMPORTS_END */ @@ -89761,13 +89971,13 @@ function getPromiseCtor(promiseCtor) { /***/ }), -/* 443 */ +/* 444 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "canReportError", function() { return canReportError; }); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(444); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); /** PURE_IMPORTS_START _Subscriber PURE_IMPORTS_END */ function canReportError(observer) { @@ -89789,20 +89999,20 @@ function canReportError(observer) { /***/ }), -/* 444 */ +/* 445 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Subscriber", function() { return Subscriber; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SafeSubscriber", function() { return SafeSubscriber; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _util_isFunction__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(446); -/* harmony import */ var _Observer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(447); -/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(450); -/* harmony import */ var _internal_symbol_rxSubscriber__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(456); -/* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(448); -/* harmony import */ var _util_hostReportError__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(449); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _util_isFunction__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(447); +/* harmony import */ var _Observer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(448); +/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(451); +/* harmony import */ var _internal_symbol_rxSubscriber__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(457); +/* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(449); +/* harmony import */ var _util_hostReportError__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(450); /** PURE_IMPORTS_START tslib,_util_isFunction,_Observer,_Subscription,_internal_symbol_rxSubscriber,_config,_util_hostReportError PURE_IMPORTS_END */ @@ -90043,7 +90253,7 @@ var SafeSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 445 */ +/* 446 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -90256,7 +90466,7 @@ function __importDefault(mod) { /***/ }), -/* 446 */ +/* 447 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -90270,14 +90480,14 @@ function isFunction(x) { /***/ }), -/* 447 */ +/* 448 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "empty", function() { return empty; }); -/* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(448); -/* harmony import */ var _util_hostReportError__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(449); +/* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(449); +/* harmony import */ var _util_hostReportError__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(450); /** PURE_IMPORTS_START _config,_util_hostReportError PURE_IMPORTS_END */ @@ -90298,7 +90508,7 @@ var empty = { /***/ }), -/* 448 */ +/* 449 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -90326,7 +90536,7 @@ var config = { /***/ }), -/* 449 */ +/* 450 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -90340,18 +90550,18 @@ function hostReportError(err) { /***/ }), -/* 450 */ +/* 451 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Subscription", function() { return Subscription; }); -/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(451); -/* harmony import */ var _util_isObject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(452); -/* harmony import */ var _util_isFunction__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(446); -/* harmony import */ var _util_tryCatch__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(453); -/* harmony import */ var _util_errorObject__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(454); -/* harmony import */ var _util_UnsubscriptionError__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(455); +/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(452); +/* harmony import */ var _util_isObject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(453); +/* harmony import */ var _util_isFunction__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(447); +/* harmony import */ var _util_tryCatch__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(454); +/* harmony import */ var _util_errorObject__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(455); +/* harmony import */ var _util_UnsubscriptionError__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(456); /** PURE_IMPORTS_START _util_isArray,_util_isObject,_util_isFunction,_util_tryCatch,_util_errorObject,_util_UnsubscriptionError PURE_IMPORTS_END */ @@ -90487,7 +90697,7 @@ function flattenUnsubscriptionErrors(errors) { /***/ }), -/* 451 */ +/* 452 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -90499,7 +90709,7 @@ var isArray = Array.isArray || (function (x) { return x && typeof x.length === ' /***/ }), -/* 452 */ +/* 453 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -90513,13 +90723,13 @@ function isObject(x) { /***/ }), -/* 453 */ +/* 454 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "tryCatch", function() { return tryCatch; }); -/* harmony import */ var _errorObject__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(454); +/* harmony import */ var _errorObject__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(455); /** PURE_IMPORTS_START _errorObject PURE_IMPORTS_END */ var tryCatchTarget; @@ -90540,7 +90750,7 @@ function tryCatch(fn) { /***/ }), -/* 454 */ +/* 455 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -90552,7 +90762,7 @@ var errorObject = { e: {} }; /***/ }), -/* 455 */ +/* 456 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -90573,7 +90783,7 @@ var UnsubscriptionError = UnsubscriptionErrorImpl; /***/ }), -/* 456 */ +/* 457 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -90589,15 +90799,15 @@ var $$rxSubscriber = rxSubscriber; /***/ }), -/* 457 */ +/* 458 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "toSubscriber", function() { return toSubscriber; }); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(444); -/* harmony import */ var _symbol_rxSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(456); -/* harmony import */ var _Observer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(447); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); +/* harmony import */ var _symbol_rxSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(457); +/* harmony import */ var _Observer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(448); /** PURE_IMPORTS_START _Subscriber,_symbol_rxSubscriber,_Observer PURE_IMPORTS_END */ @@ -90620,7 +90830,7 @@ function toSubscriber(nextOrObserver, error, complete) { /***/ }), -/* 458 */ +/* 459 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -90632,14 +90842,14 @@ var observable = typeof Symbol === 'function' && Symbol.observable || '@@observa /***/ }), -/* 459 */ +/* 460 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "pipe", function() { return pipe; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "pipeFromArray", function() { return pipeFromArray; }); -/* harmony import */ var _noop__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(460); +/* harmony import */ var _noop__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(461); /** PURE_IMPORTS_START _noop PURE_IMPORTS_END */ function pipe() { @@ -90664,7 +90874,7 @@ function pipeFromArray(fns) { /***/ }), -/* 460 */ +/* 461 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -90676,19 +90886,19 @@ function noop() { } /***/ }), -/* 461 */ +/* 462 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ConnectableObservable", function() { return ConnectableObservable; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "connectableObservableDescriptor", function() { return connectableObservableDescriptor; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(462); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(442); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(444); -/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(450); -/* harmony import */ var _operators_refCount__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(465); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(463); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(443); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(445); +/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(451); +/* harmony import */ var _operators_refCount__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(466); /** PURE_IMPORTS_START tslib,_Subject,_Observable,_Subscriber,_Subscription,_operators_refCount PURE_IMPORTS_END */ @@ -90835,7 +91045,7 @@ var RefCountSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 462 */ +/* 463 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -90843,13 +91053,13 @@ __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SubjectSubscriber", function() { return SubjectSubscriber; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Subject", function() { return Subject; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AnonymousSubject", function() { return AnonymousSubject; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(442); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(444); -/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(450); -/* harmony import */ var _util_ObjectUnsubscribedError__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(463); -/* harmony import */ var _SubjectSubscription__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(464); -/* harmony import */ var _internal_symbol_rxSubscriber__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(456); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(443); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(445); +/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(451); +/* harmony import */ var _util_ObjectUnsubscribedError__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(464); +/* harmony import */ var _SubjectSubscription__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(465); +/* harmony import */ var _internal_symbol_rxSubscriber__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(457); /** PURE_IMPORTS_START tslib,_Observable,_Subscriber,_Subscription,_util_ObjectUnsubscribedError,_SubjectSubscription,_internal_symbol_rxSubscriber PURE_IMPORTS_END */ @@ -91011,7 +91221,7 @@ var AnonymousSubject = /*@__PURE__*/ (function (_super) { /***/ }), -/* 463 */ +/* 464 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -91030,14 +91240,14 @@ var ObjectUnsubscribedError = ObjectUnsubscribedErrorImpl; /***/ }), -/* 464 */ +/* 465 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SubjectSubscription", function() { return SubjectSubscription; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(450); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(451); /** PURE_IMPORTS_START tslib,_Subscription PURE_IMPORTS_END */ @@ -91073,14 +91283,14 @@ var SubjectSubscription = /*@__PURE__*/ (function (_super) { /***/ }), -/* 465 */ +/* 466 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "refCount", function() { return refCount; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); /** PURE_IMPORTS_START tslib,_Subscriber PURE_IMPORTS_END */ @@ -91142,18 +91352,18 @@ var RefCountSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 466 */ +/* 467 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "groupBy", function() { return groupBy; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "GroupedObservable", function() { return GroupedObservable; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); -/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(450); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(442); -/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(462); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); +/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(451); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(443); +/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(463); /** PURE_IMPORTS_START tslib,_Subscriber,_Subscription,_Observable,_Subject PURE_IMPORTS_END */ @@ -91339,15 +91549,15 @@ var InnerRefCountSubscription = /*@__PURE__*/ (function (_super) { /***/ }), -/* 467 */ +/* 468 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "BehaviorSubject", function() { return BehaviorSubject; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(462); -/* harmony import */ var _util_ObjectUnsubscribedError__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(463); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(463); +/* harmony import */ var _util_ObjectUnsubscribedError__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(464); /** PURE_IMPORTS_START tslib,_Subject,_util_ObjectUnsubscribedError PURE_IMPORTS_END */ @@ -91394,19 +91604,19 @@ var BehaviorSubject = /*@__PURE__*/ (function (_super) { /***/ }), -/* 468 */ +/* 469 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ReplaySubject", function() { return ReplaySubject; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(462); -/* harmony import */ var _scheduler_queue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(469); -/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(450); -/* harmony import */ var _operators_observeOn__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(476); -/* harmony import */ var _util_ObjectUnsubscribedError__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(463); -/* harmony import */ var _SubjectSubscription__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(464); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(463); +/* harmony import */ var _scheduler_queue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(470); +/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(451); +/* harmony import */ var _operators_observeOn__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(477); +/* harmony import */ var _util_ObjectUnsubscribedError__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(464); +/* harmony import */ var _SubjectSubscription__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(465); /** PURE_IMPORTS_START tslib,_Subject,_scheduler_queue,_Subscription,_operators_observeOn,_util_ObjectUnsubscribedError,_SubjectSubscription PURE_IMPORTS_END */ @@ -91527,14 +91737,14 @@ var ReplayEvent = /*@__PURE__*/ (function () { /***/ }), -/* 469 */ +/* 470 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "queue", function() { return queue; }); -/* harmony import */ var _QueueAction__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(470); -/* harmony import */ var _QueueScheduler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(473); +/* harmony import */ var _QueueAction__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(471); +/* harmony import */ var _QueueScheduler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(474); /** PURE_IMPORTS_START _QueueAction,_QueueScheduler PURE_IMPORTS_END */ @@ -91543,14 +91753,14 @@ var queue = /*@__PURE__*/ new _QueueScheduler__WEBPACK_IMPORTED_MODULE_1__["Queu /***/ }), -/* 470 */ +/* 471 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "QueueAction", function() { return QueueAction; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _AsyncAction__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(471); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _AsyncAction__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(472); /** PURE_IMPORTS_START tslib,_AsyncAction PURE_IMPORTS_END */ @@ -91595,14 +91805,14 @@ var QueueAction = /*@__PURE__*/ (function (_super) { /***/ }), -/* 471 */ +/* 472 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AsyncAction", function() { return AsyncAction; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Action__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(472); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Action__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(473); /** PURE_IMPORTS_START tslib,_Action PURE_IMPORTS_END */ @@ -91700,14 +91910,14 @@ var AsyncAction = /*@__PURE__*/ (function (_super) { /***/ }), -/* 472 */ +/* 473 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Action", function() { return Action; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(450); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(451); /** PURE_IMPORTS_START tslib,_Subscription PURE_IMPORTS_END */ @@ -91729,14 +91939,14 @@ var Action = /*@__PURE__*/ (function (_super) { /***/ }), -/* 473 */ +/* 474 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "QueueScheduler", function() { return QueueScheduler; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _AsyncScheduler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(474); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _AsyncScheduler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(475); /** PURE_IMPORTS_START tslib,_AsyncScheduler PURE_IMPORTS_END */ @@ -91752,14 +91962,14 @@ var QueueScheduler = /*@__PURE__*/ (function (_super) { /***/ }), -/* 474 */ +/* 475 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AsyncScheduler", function() { return AsyncScheduler; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Scheduler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(475); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Scheduler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(476); /** PURE_IMPORTS_START tslib,_Scheduler PURE_IMPORTS_END */ @@ -91821,7 +92031,7 @@ var AsyncScheduler = /*@__PURE__*/ (function (_super) { /***/ }), -/* 475 */ +/* 476 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -91849,7 +92059,7 @@ var Scheduler = /*@__PURE__*/ (function () { /***/ }), -/* 476 */ +/* 477 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -91858,9 +92068,9 @@ __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ObserveOnOperator", function() { return ObserveOnOperator; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ObserveOnSubscriber", function() { return ObserveOnSubscriber; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ObserveOnMessage", function() { return ObserveOnMessage; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); -/* harmony import */ var _Notification__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(477); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); +/* harmony import */ var _Notification__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(478); /** PURE_IMPORTS_START tslib,_Subscriber,_Notification PURE_IMPORTS_END */ @@ -91933,15 +92143,15 @@ var ObserveOnMessage = /*@__PURE__*/ (function () { /***/ }), -/* 477 */ +/* 478 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Notification", function() { return Notification; }); -/* harmony import */ var _observable_empty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(478); -/* harmony import */ var _observable_of__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(479); -/* harmony import */ var _observable_throwError__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(484); +/* harmony import */ var _observable_empty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(479); +/* harmony import */ var _observable_of__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(480); +/* harmony import */ var _observable_throwError__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(485); /** PURE_IMPORTS_START _observable_empty,_observable_of,_observable_throwError PURE_IMPORTS_END */ @@ -92015,7 +92225,7 @@ var Notification = /*@__PURE__*/ (function () { /***/ }), -/* 478 */ +/* 479 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -92023,7 +92233,7 @@ __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "EMPTY", function() { return EMPTY; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "empty", function() { return empty; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "emptyScheduled", function() { return emptyScheduled; }); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(442); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); /** PURE_IMPORTS_START _Observable PURE_IMPORTS_END */ var EMPTY = /*@__PURE__*/ new _Observable__WEBPACK_IMPORTED_MODULE_0__["Observable"](function (subscriber) { return subscriber.complete(); }); @@ -92037,16 +92247,16 @@ function emptyScheduled(scheduler) { /***/ }), -/* 479 */ +/* 480 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "of", function() { return of; }); -/* harmony import */ var _util_isScheduler__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(480); -/* harmony import */ var _fromArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(481); -/* harmony import */ var _empty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(478); -/* harmony import */ var _scalar__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(483); +/* harmony import */ var _util_isScheduler__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(481); +/* harmony import */ var _fromArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(482); +/* harmony import */ var _empty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(479); +/* harmony import */ var _scalar__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(484); /** PURE_IMPORTS_START _util_isScheduler,_fromArray,_empty,_scalar PURE_IMPORTS_END */ @@ -92077,7 +92287,7 @@ function of() { /***/ }), -/* 480 */ +/* 481 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -92091,15 +92301,15 @@ function isScheduler(value) { /***/ }), -/* 481 */ +/* 482 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "fromArray", function() { return fromArray; }); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(442); -/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(450); -/* harmony import */ var _util_subscribeToArray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(482); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); +/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(451); +/* harmony import */ var _util_subscribeToArray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(483); /** PURE_IMPORTS_START _Observable,_Subscription,_util_subscribeToArray PURE_IMPORTS_END */ @@ -92130,7 +92340,7 @@ function fromArray(input, scheduler) { /***/ }), -/* 482 */ +/* 483 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -92151,13 +92361,13 @@ var subscribeToArray = function (array) { /***/ }), -/* 483 */ +/* 484 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "scalar", function() { return scalar; }); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(442); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); /** PURE_IMPORTS_START _Observable PURE_IMPORTS_END */ function scalar(value) { @@ -92173,13 +92383,13 @@ function scalar(value) { /***/ }), -/* 484 */ +/* 485 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "throwError", function() { return throwError; }); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(442); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); /** PURE_IMPORTS_START _Observable PURE_IMPORTS_END */ function throwError(error, scheduler) { @@ -92198,15 +92408,15 @@ function dispatch(_a) { /***/ }), -/* 485 */ +/* 486 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AsyncSubject", function() { return AsyncSubject; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(462); -/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(450); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(463); +/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(451); /** PURE_IMPORTS_START tslib,_Subject,_Subscription PURE_IMPORTS_END */ @@ -92257,14 +92467,14 @@ var AsyncSubject = /*@__PURE__*/ (function (_super) { /***/ }), -/* 486 */ +/* 487 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "asap", function() { return asap; }); -/* harmony import */ var _AsapAction__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(487); -/* harmony import */ var _AsapScheduler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(489); +/* harmony import */ var _AsapAction__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(488); +/* harmony import */ var _AsapScheduler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(490); /** PURE_IMPORTS_START _AsapAction,_AsapScheduler PURE_IMPORTS_END */ @@ -92273,15 +92483,15 @@ var asap = /*@__PURE__*/ new _AsapScheduler__WEBPACK_IMPORTED_MODULE_1__["AsapSc /***/ }), -/* 487 */ +/* 488 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AsapAction", function() { return AsapAction; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _util_Immediate__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(488); -/* harmony import */ var _AsyncAction__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(471); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _util_Immediate__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(489); +/* harmony import */ var _AsyncAction__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(472); /** PURE_IMPORTS_START tslib,_util_Immediate,_AsyncAction PURE_IMPORTS_END */ @@ -92324,7 +92534,7 @@ var AsapAction = /*@__PURE__*/ (function (_super) { /***/ }), -/* 488 */ +/* 489 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -92354,14 +92564,14 @@ var Immediate = { /***/ }), -/* 489 */ +/* 490 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AsapScheduler", function() { return AsapScheduler; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _AsyncScheduler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(474); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _AsyncScheduler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(475); /** PURE_IMPORTS_START tslib,_AsyncScheduler PURE_IMPORTS_END */ @@ -92398,14 +92608,14 @@ var AsapScheduler = /*@__PURE__*/ (function (_super) { /***/ }), -/* 490 */ +/* 491 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "async", function() { return async; }); -/* harmony import */ var _AsyncAction__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(471); -/* harmony import */ var _AsyncScheduler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(474); +/* harmony import */ var _AsyncAction__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(472); +/* harmony import */ var _AsyncScheduler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(475); /** PURE_IMPORTS_START _AsyncAction,_AsyncScheduler PURE_IMPORTS_END */ @@ -92414,14 +92624,14 @@ var async = /*@__PURE__*/ new _AsyncScheduler__WEBPACK_IMPORTED_MODULE_1__["Asyn /***/ }), -/* 491 */ +/* 492 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "animationFrame", function() { return animationFrame; }); -/* harmony import */ var _AnimationFrameAction__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(492); -/* harmony import */ var _AnimationFrameScheduler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(493); +/* harmony import */ var _AnimationFrameAction__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(493); +/* harmony import */ var _AnimationFrameScheduler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(494); /** PURE_IMPORTS_START _AnimationFrameAction,_AnimationFrameScheduler PURE_IMPORTS_END */ @@ -92430,14 +92640,14 @@ var animationFrame = /*@__PURE__*/ new _AnimationFrameScheduler__WEBPACK_IMPORTE /***/ }), -/* 492 */ +/* 493 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AnimationFrameAction", function() { return AnimationFrameAction; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _AsyncAction__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(471); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _AsyncAction__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(472); /** PURE_IMPORTS_START tslib,_AsyncAction PURE_IMPORTS_END */ @@ -92479,14 +92689,14 @@ var AnimationFrameAction = /*@__PURE__*/ (function (_super) { /***/ }), -/* 493 */ +/* 494 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AnimationFrameScheduler", function() { return AnimationFrameScheduler; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _AsyncScheduler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(474); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _AsyncScheduler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(475); /** PURE_IMPORTS_START tslib,_AsyncScheduler PURE_IMPORTS_END */ @@ -92523,16 +92733,16 @@ var AnimationFrameScheduler = /*@__PURE__*/ (function (_super) { /***/ }), -/* 494 */ +/* 495 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "VirtualTimeScheduler", function() { return VirtualTimeScheduler; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "VirtualAction", function() { return VirtualAction; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _AsyncAction__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(471); -/* harmony import */ var _AsyncScheduler__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(474); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _AsyncAction__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(472); +/* harmony import */ var _AsyncScheduler__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(475); /** PURE_IMPORTS_START tslib,_AsyncAction,_AsyncScheduler PURE_IMPORTS_END */ @@ -92644,7 +92854,7 @@ var VirtualAction = /*@__PURE__*/ (function (_super) { /***/ }), -/* 495 */ +/* 496 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -92658,13 +92868,13 @@ function identity(x) { /***/ }), -/* 496 */ +/* 497 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "isObservable", function() { return isObservable; }); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(442); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); /** PURE_IMPORTS_START _Observable PURE_IMPORTS_END */ function isObservable(obj) { @@ -92674,7 +92884,7 @@ function isObservable(obj) { /***/ }), -/* 497 */ +/* 498 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -92693,7 +92903,7 @@ var ArgumentOutOfRangeError = ArgumentOutOfRangeErrorImpl; /***/ }), -/* 498 */ +/* 499 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -92712,7 +92922,7 @@ var EmptyError = EmptyErrorImpl; /***/ }), -/* 499 */ +/* 500 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -92731,18 +92941,18 @@ var TimeoutError = TimeoutErrorImpl; /***/ }), -/* 500 */ +/* 501 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "bindCallback", function() { return bindCallback; }); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(442); -/* harmony import */ var _AsyncSubject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(485); -/* harmony import */ var _operators_map__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(501); -/* harmony import */ var _util_canReportError__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(443); -/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(451); -/* harmony import */ var _util_isScheduler__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(480); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); +/* harmony import */ var _AsyncSubject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(486); +/* harmony import */ var _operators_map__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(502); +/* harmony import */ var _util_canReportError__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(444); +/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(452); +/* harmony import */ var _util_isScheduler__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(481); /** PURE_IMPORTS_START _Observable,_AsyncSubject,_operators_map,_util_canReportError,_util_isArray,_util_isScheduler PURE_IMPORTS_END */ @@ -92851,15 +93061,15 @@ function dispatchError(state) { /***/ }), -/* 501 */ +/* 502 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "map", function() { return map; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MapOperator", function() { return MapOperator; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); /** PURE_IMPORTS_START tslib,_Subscriber PURE_IMPORTS_END */ @@ -92908,18 +93118,18 @@ var MapSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 502 */ +/* 503 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "bindNodeCallback", function() { return bindNodeCallback; }); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(442); -/* harmony import */ var _AsyncSubject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(485); -/* harmony import */ var _operators_map__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(501); -/* harmony import */ var _util_canReportError__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(443); -/* harmony import */ var _util_isScheduler__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(480); -/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(451); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); +/* harmony import */ var _AsyncSubject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(486); +/* harmony import */ var _operators_map__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(502); +/* harmony import */ var _util_canReportError__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(444); +/* harmony import */ var _util_isScheduler__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(481); +/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(452); /** PURE_IMPORTS_START _Observable,_AsyncSubject,_operators_map,_util_canReportError,_util_isScheduler,_util_isArray PURE_IMPORTS_END */ @@ -93036,7 +93246,7 @@ function dispatchError(arg) { /***/ }), -/* 503 */ +/* 504 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -93044,12 +93254,12 @@ __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "combineLatest", function() { return combineLatest; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "CombineLatestOperator", function() { return CombineLatestOperator; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "CombineLatestSubscriber", function() { return CombineLatestSubscriber; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _util_isScheduler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(480); -/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(451); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(504); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(505); -/* harmony import */ var _fromArray__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(481); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _util_isScheduler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(481); +/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(452); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(505); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(506); +/* harmony import */ var _fromArray__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(482); /** PURE_IMPORTS_START tslib,_util_isScheduler,_util_isArray,_OuterSubscriber,_util_subscribeToResult,_fromArray PURE_IMPORTS_END */ @@ -93154,14 +93364,14 @@ var CombineLatestSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 504 */ +/* 505 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "OuterSubscriber", function() { return OuterSubscriber; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); /** PURE_IMPORTS_START tslib,_Subscriber PURE_IMPORTS_END */ @@ -93186,14 +93396,14 @@ var OuterSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 505 */ +/* 506 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "subscribeToResult", function() { return subscribeToResult; }); -/* harmony import */ var _InnerSubscriber__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(506); -/* harmony import */ var _subscribeTo__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(507); +/* harmony import */ var _InnerSubscriber__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(507); +/* harmony import */ var _subscribeTo__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(508); /** PURE_IMPORTS_START _InnerSubscriber,_subscribeTo PURE_IMPORTS_END */ @@ -93210,14 +93420,14 @@ function subscribeToResult(outerSubscriber, result, outerValue, outerIndex, dest /***/ }), -/* 506 */ +/* 507 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "InnerSubscriber", function() { return InnerSubscriber; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); /** PURE_IMPORTS_START tslib,_Subscriber PURE_IMPORTS_END */ @@ -93249,22 +93459,22 @@ var InnerSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 507 */ +/* 508 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "subscribeTo", function() { return subscribeTo; }); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(442); -/* harmony import */ var _subscribeToArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(482); -/* harmony import */ var _subscribeToPromise__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(508); -/* harmony import */ var _subscribeToIterable__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(509); -/* harmony import */ var _subscribeToObservable__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(511); -/* harmony import */ var _isArrayLike__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(512); -/* harmony import */ var _isPromise__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(513); -/* harmony import */ var _isObject__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(452); -/* harmony import */ var _symbol_iterator__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(510); -/* harmony import */ var _symbol_observable__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(458); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); +/* harmony import */ var _subscribeToArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(483); +/* harmony import */ var _subscribeToPromise__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(509); +/* harmony import */ var _subscribeToIterable__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(510); +/* harmony import */ var _subscribeToObservable__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(512); +/* harmony import */ var _isArrayLike__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(513); +/* harmony import */ var _isPromise__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(514); +/* harmony import */ var _isObject__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(453); +/* harmony import */ var _symbol_iterator__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(511); +/* harmony import */ var _symbol_observable__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(459); /** PURE_IMPORTS_START _Observable,_subscribeToArray,_subscribeToPromise,_subscribeToIterable,_subscribeToObservable,_isArrayLike,_isPromise,_isObject,_symbol_iterator,_symbol_observable PURE_IMPORTS_END */ @@ -93312,13 +93522,13 @@ var subscribeTo = function (result) { /***/ }), -/* 508 */ +/* 509 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "subscribeToPromise", function() { return subscribeToPromise; }); -/* harmony import */ var _hostReportError__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(449); +/* harmony import */ var _hostReportError__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(450); /** PURE_IMPORTS_START _hostReportError PURE_IMPORTS_END */ var subscribeToPromise = function (promise) { @@ -93337,13 +93547,13 @@ var subscribeToPromise = function (promise) { /***/ }), -/* 509 */ +/* 510 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "subscribeToIterable", function() { return subscribeToIterable; }); -/* harmony import */ var _symbol_iterator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(510); +/* harmony import */ var _symbol_iterator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(511); /** PURE_IMPORTS_START _symbol_iterator PURE_IMPORTS_END */ var subscribeToIterable = function (iterable) { @@ -93374,7 +93584,7 @@ var subscribeToIterable = function (iterable) { /***/ }), -/* 510 */ +/* 511 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -93395,13 +93605,13 @@ var $$iterator = iterator; /***/ }), -/* 511 */ +/* 512 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "subscribeToObservable", function() { return subscribeToObservable; }); -/* harmony import */ var _symbol_observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(458); +/* harmony import */ var _symbol_observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(459); /** PURE_IMPORTS_START _symbol_observable PURE_IMPORTS_END */ var subscribeToObservable = function (obj) { @@ -93419,7 +93629,7 @@ var subscribeToObservable = function (obj) { /***/ }), -/* 512 */ +/* 513 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -93431,7 +93641,7 @@ var isArrayLike = (function (x) { return x && typeof x.length === 'number' && ty /***/ }), -/* 513 */ +/* 514 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -93445,16 +93655,16 @@ function isPromise(value) { /***/ }), -/* 514 */ +/* 515 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "concat", function() { return concat; }); -/* harmony import */ var _util_isScheduler__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(480); -/* harmony import */ var _of__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(479); -/* harmony import */ var _from__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(515); -/* harmony import */ var _operators_concatAll__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(521); +/* harmony import */ var _util_isScheduler__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(481); +/* harmony import */ var _of__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(480); +/* harmony import */ var _from__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(516); +/* harmony import */ var _operators_concatAll__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(522); /** PURE_IMPORTS_START _util_isScheduler,_of,_from,_operators_concatAll PURE_IMPORTS_END */ @@ -93474,22 +93684,22 @@ function concat() { /***/ }), -/* 515 */ +/* 516 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "from", function() { return from; }); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(442); -/* harmony import */ var _util_isPromise__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(513); -/* harmony import */ var _util_isArrayLike__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(512); -/* harmony import */ var _util_isInteropObservable__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(516); -/* harmony import */ var _util_isIterable__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(517); -/* harmony import */ var _fromArray__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(481); -/* harmony import */ var _fromPromise__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(518); -/* harmony import */ var _fromIterable__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(519); -/* harmony import */ var _fromObservable__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(520); -/* harmony import */ var _util_subscribeTo__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(507); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); +/* harmony import */ var _util_isPromise__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(514); +/* harmony import */ var _util_isArrayLike__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(513); +/* harmony import */ var _util_isInteropObservable__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(517); +/* harmony import */ var _util_isIterable__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(518); +/* harmony import */ var _fromArray__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(482); +/* harmony import */ var _fromPromise__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(519); +/* harmony import */ var _fromIterable__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(520); +/* harmony import */ var _fromObservable__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(521); +/* harmony import */ var _util_subscribeTo__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(508); /** PURE_IMPORTS_START _Observable,_util_isPromise,_util_isArrayLike,_util_isInteropObservable,_util_isIterable,_fromArray,_fromPromise,_fromIterable,_fromObservable,_util_subscribeTo PURE_IMPORTS_END */ @@ -93528,13 +93738,13 @@ function from(input, scheduler) { /***/ }), -/* 516 */ +/* 517 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "isInteropObservable", function() { return isInteropObservable; }); -/* harmony import */ var _symbol_observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(458); +/* harmony import */ var _symbol_observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(459); /** PURE_IMPORTS_START _symbol_observable PURE_IMPORTS_END */ function isInteropObservable(input) { @@ -93544,13 +93754,13 @@ function isInteropObservable(input) { /***/ }), -/* 517 */ +/* 518 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "isIterable", function() { return isIterable; }); -/* harmony import */ var _symbol_iterator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(510); +/* harmony import */ var _symbol_iterator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(511); /** PURE_IMPORTS_START _symbol_iterator PURE_IMPORTS_END */ function isIterable(input) { @@ -93560,15 +93770,15 @@ function isIterable(input) { /***/ }), -/* 518 */ +/* 519 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "fromPromise", function() { return fromPromise; }); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(442); -/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(450); -/* harmony import */ var _util_subscribeToPromise__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(508); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); +/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(451); +/* harmony import */ var _util_subscribeToPromise__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(509); /** PURE_IMPORTS_START _Observable,_Subscription,_util_subscribeToPromise PURE_IMPORTS_END */ @@ -93598,16 +93808,16 @@ function fromPromise(input, scheduler) { /***/ }), -/* 519 */ +/* 520 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "fromIterable", function() { return fromIterable; }); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(442); -/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(450); -/* harmony import */ var _symbol_iterator__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(510); -/* harmony import */ var _util_subscribeToIterable__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(509); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); +/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(451); +/* harmony import */ var _symbol_iterator__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(511); +/* harmony import */ var _util_subscribeToIterable__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(510); /** PURE_IMPORTS_START _Observable,_Subscription,_symbol_iterator,_util_subscribeToIterable PURE_IMPORTS_END */ @@ -93663,16 +93873,16 @@ function fromIterable(input, scheduler) { /***/ }), -/* 520 */ +/* 521 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "fromObservable", function() { return fromObservable; }); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(442); -/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(450); -/* harmony import */ var _symbol_observable__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(458); -/* harmony import */ var _util_subscribeToObservable__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(511); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); +/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(451); +/* harmony import */ var _symbol_observable__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(459); +/* harmony import */ var _util_subscribeToObservable__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(512); /** PURE_IMPORTS_START _Observable,_Subscription,_symbol_observable,_util_subscribeToObservable PURE_IMPORTS_END */ @@ -93701,13 +93911,13 @@ function fromObservable(input, scheduler) { /***/ }), -/* 521 */ +/* 522 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "concatAll", function() { return concatAll; }); -/* harmony import */ var _mergeAll__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(522); +/* harmony import */ var _mergeAll__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(523); /** PURE_IMPORTS_START _mergeAll PURE_IMPORTS_END */ function concatAll() { @@ -93717,14 +93927,14 @@ function concatAll() { /***/ }), -/* 522 */ +/* 523 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "mergeAll", function() { return mergeAll; }); -/* harmony import */ var _mergeMap__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(523); -/* harmony import */ var _util_identity__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(495); +/* harmony import */ var _mergeMap__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(524); +/* harmony import */ var _util_identity__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(496); /** PURE_IMPORTS_START _mergeMap,_util_identity PURE_IMPORTS_END */ @@ -93738,7 +93948,7 @@ function mergeAll(concurrent) { /***/ }), -/* 523 */ +/* 524 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -93746,12 +93956,12 @@ __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "mergeMap", function() { return mergeMap; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MergeMapOperator", function() { return MergeMapOperator; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MergeMapSubscriber", function() { return MergeMapSubscriber; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(505); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(504); -/* harmony import */ var _InnerSubscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(506); -/* harmony import */ var _map__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(501); -/* harmony import */ var _observable_from__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(515); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(506); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(505); +/* harmony import */ var _InnerSubscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(507); +/* harmony import */ var _map__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(502); +/* harmony import */ var _observable_from__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(516); /** PURE_IMPORTS_START tslib,_util_subscribeToResult,_OuterSubscriber,_InnerSubscriber,_map,_observable_from PURE_IMPORTS_END */ @@ -93855,15 +94065,15 @@ var MergeMapSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 524 */ +/* 525 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "defer", function() { return defer; }); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(442); -/* harmony import */ var _from__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(515); -/* harmony import */ var _empty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(478); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); +/* harmony import */ var _from__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(516); +/* harmony import */ var _empty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(479); /** PURE_IMPORTS_START _Observable,_from,_empty PURE_IMPORTS_END */ @@ -93886,19 +94096,19 @@ function defer(observableFactory) { /***/ }), -/* 525 */ +/* 526 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "forkJoin", function() { return forkJoin; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(442); -/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(451); -/* harmony import */ var _empty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(478); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(505); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(504); -/* harmony import */ var _operators_map__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(501); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(443); +/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(452); +/* harmony import */ var _empty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(479); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(506); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(505); +/* harmony import */ var _operators_map__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(502); /** PURE_IMPORTS_START tslib,_Observable,_util_isArray,_empty,_util_subscribeToResult,_OuterSubscriber,_operators_map PURE_IMPORTS_END */ @@ -93976,16 +94186,16 @@ var ForkJoinSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 526 */ +/* 527 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "fromEvent", function() { return fromEvent; }); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(442); -/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(451); -/* harmony import */ var _util_isFunction__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(446); -/* harmony import */ var _operators_map__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(501); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); +/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(452); +/* harmony import */ var _util_isFunction__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(447); +/* harmony import */ var _operators_map__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(502); /** PURE_IMPORTS_START _Observable,_util_isArray,_util_isFunction,_operators_map PURE_IMPORTS_END */ @@ -94052,16 +94262,16 @@ function isEventTarget(sourceObj) { /***/ }), -/* 527 */ +/* 528 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "fromEventPattern", function() { return fromEventPattern; }); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(442); -/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(451); -/* harmony import */ var _util_isFunction__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(446); -/* harmony import */ var _operators_map__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(501); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); +/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(452); +/* harmony import */ var _util_isFunction__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(447); +/* harmony import */ var _operators_map__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(502); /** PURE_IMPORTS_START _Observable,_util_isArray,_util_isFunction,_operators_map PURE_IMPORTS_END */ @@ -94097,15 +94307,15 @@ function fromEventPattern(addHandler, removeHandler, resultSelector) { /***/ }), -/* 528 */ +/* 529 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "generate", function() { return generate; }); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(442); -/* harmony import */ var _util_identity__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(495); -/* harmony import */ var _util_isScheduler__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(480); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); +/* harmony import */ var _util_identity__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(496); +/* harmony import */ var _util_isScheduler__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(481); /** PURE_IMPORTS_START _Observable,_util_identity,_util_isScheduler PURE_IMPORTS_END */ @@ -94234,14 +94444,14 @@ function dispatch(state) { /***/ }), -/* 529 */ +/* 530 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "iif", function() { return iif; }); -/* harmony import */ var _defer__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(524); -/* harmony import */ var _empty__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(478); +/* harmony import */ var _defer__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(525); +/* harmony import */ var _empty__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(479); /** PURE_IMPORTS_START _defer,_empty PURE_IMPORTS_END */ @@ -94258,15 +94468,15 @@ function iif(condition, trueResult, falseResult) { /***/ }), -/* 530 */ +/* 531 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "interval", function() { return interval; }); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(442); -/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(490); -/* harmony import */ var _util_isNumeric__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(531); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); +/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(491); +/* harmony import */ var _util_isNumeric__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(532); /** PURE_IMPORTS_START _Observable,_scheduler_async,_util_isNumeric PURE_IMPORTS_END */ @@ -94298,13 +94508,13 @@ function dispatch(state) { /***/ }), -/* 531 */ +/* 532 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "isNumeric", function() { return isNumeric; }); -/* harmony import */ var _isArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(451); +/* harmony import */ var _isArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(452); /** PURE_IMPORTS_START _isArray PURE_IMPORTS_END */ function isNumeric(val) { @@ -94314,16 +94524,16 @@ function isNumeric(val) { /***/ }), -/* 532 */ +/* 533 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "merge", function() { return merge; }); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(442); -/* harmony import */ var _util_isScheduler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(480); -/* harmony import */ var _operators_mergeAll__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(522); -/* harmony import */ var _fromArray__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(481); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); +/* harmony import */ var _util_isScheduler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(481); +/* harmony import */ var _operators_mergeAll__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(523); +/* harmony import */ var _fromArray__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(482); /** PURE_IMPORTS_START _Observable,_util_isScheduler,_operators_mergeAll,_fromArray PURE_IMPORTS_END */ @@ -94355,15 +94565,15 @@ function merge() { /***/ }), -/* 533 */ +/* 534 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "NEVER", function() { return NEVER; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "never", function() { return never; }); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(442); -/* harmony import */ var _util_noop__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(460); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); +/* harmony import */ var _util_noop__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(461); /** PURE_IMPORTS_START _Observable,_util_noop PURE_IMPORTS_END */ @@ -94375,16 +94585,16 @@ function never() { /***/ }), -/* 534 */ +/* 535 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "onErrorResumeNext", function() { return onErrorResumeNext; }); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(442); -/* harmony import */ var _from__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(515); -/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(451); -/* harmony import */ var _empty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(478); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); +/* harmony import */ var _from__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(516); +/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(452); +/* harmony import */ var _empty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(479); /** PURE_IMPORTS_START _Observable,_from,_util_isArray,_empty PURE_IMPORTS_END */ @@ -94415,15 +94625,15 @@ function onErrorResumeNext() { /***/ }), -/* 535 */ +/* 536 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "pairs", function() { return pairs; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "dispatch", function() { return dispatch; }); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(442); -/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(450); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); +/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(451); /** PURE_IMPORTS_START _Observable,_Subscription PURE_IMPORTS_END */ @@ -94466,7 +94676,7 @@ function dispatch(state) { /***/ }), -/* 536 */ +/* 537 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -94474,11 +94684,11 @@ __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "race", function() { return race; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "RaceOperator", function() { return RaceOperator; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "RaceSubscriber", function() { return RaceSubscriber; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(451); -/* harmony import */ var _fromArray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(481); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(504); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(505); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(452); +/* harmony import */ var _fromArray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(482); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(505); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(506); /** PURE_IMPORTS_START tslib,_util_isArray,_fromArray,_OuterSubscriber,_util_subscribeToResult PURE_IMPORTS_END */ @@ -94560,14 +94770,14 @@ var RaceSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 537 */ +/* 538 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "range", function() { return range; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "dispatch", function() { return dispatch; }); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(442); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); /** PURE_IMPORTS_START _Observable PURE_IMPORTS_END */ function range(start, count, scheduler) { @@ -94618,16 +94828,16 @@ function dispatch(state) { /***/ }), -/* 538 */ +/* 539 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "timer", function() { return timer; }); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(442); -/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(490); -/* harmony import */ var _util_isNumeric__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(531); -/* harmony import */ var _util_isScheduler__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(480); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); +/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(491); +/* harmony import */ var _util_isNumeric__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(532); +/* harmony import */ var _util_isScheduler__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(481); /** PURE_IMPORTS_START _Observable,_scheduler_async,_util_isNumeric,_util_isScheduler PURE_IMPORTS_END */ @@ -94672,15 +94882,15 @@ function dispatch(state) { /***/ }), -/* 539 */ +/* 540 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "using", function() { return using; }); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(442); -/* harmony import */ var _from__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(515); -/* harmony import */ var _empty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(478); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443); +/* harmony import */ var _from__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(516); +/* harmony import */ var _empty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(479); /** PURE_IMPORTS_START _Observable,_from,_empty PURE_IMPORTS_END */ @@ -94717,7 +94927,7 @@ function using(resourceFactory, observableFactory) { /***/ }), -/* 540 */ +/* 541 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -94725,13 +94935,13 @@ __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "zip", function() { return zip; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ZipOperator", function() { return ZipOperator; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ZipSubscriber", function() { return ZipSubscriber; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _fromArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(481); -/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(451); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(444); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(504); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(505); -/* harmony import */ var _internal_symbol_iterator__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(510); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _fromArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(482); +/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(452); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(445); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(505); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(506); +/* harmony import */ var _internal_symbol_iterator__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(511); /** PURE_IMPORTS_START tslib,_fromArray,_util_isArray,_Subscriber,_OuterSubscriber,_util_subscribeToResult,_.._internal_symbol_iterator PURE_IMPORTS_END */ @@ -94953,320 +95163,320 @@ var ZipBufferIterator = /*@__PURE__*/ (function (_super) { /***/ }), -/* 541 */ +/* 542 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); -/* harmony import */ var _internal_operators_audit__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(542); +/* harmony import */ var _internal_operators_audit__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(543); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "audit", function() { return _internal_operators_audit__WEBPACK_IMPORTED_MODULE_0__["audit"]; }); -/* harmony import */ var _internal_operators_auditTime__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(543); +/* harmony import */ var _internal_operators_auditTime__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(544); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "auditTime", function() { return _internal_operators_auditTime__WEBPACK_IMPORTED_MODULE_1__["auditTime"]; }); -/* harmony import */ var _internal_operators_buffer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(544); +/* harmony import */ var _internal_operators_buffer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(545); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "buffer", function() { return _internal_operators_buffer__WEBPACK_IMPORTED_MODULE_2__["buffer"]; }); -/* harmony import */ var _internal_operators_bufferCount__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(545); +/* harmony import */ var _internal_operators_bufferCount__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(546); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "bufferCount", function() { return _internal_operators_bufferCount__WEBPACK_IMPORTED_MODULE_3__["bufferCount"]; }); -/* harmony import */ var _internal_operators_bufferTime__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(546); +/* harmony import */ var _internal_operators_bufferTime__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(547); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "bufferTime", function() { return _internal_operators_bufferTime__WEBPACK_IMPORTED_MODULE_4__["bufferTime"]; }); -/* harmony import */ var _internal_operators_bufferToggle__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(547); +/* harmony import */ var _internal_operators_bufferToggle__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(548); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "bufferToggle", function() { return _internal_operators_bufferToggle__WEBPACK_IMPORTED_MODULE_5__["bufferToggle"]; }); -/* harmony import */ var _internal_operators_bufferWhen__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(548); +/* harmony import */ var _internal_operators_bufferWhen__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(549); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "bufferWhen", function() { return _internal_operators_bufferWhen__WEBPACK_IMPORTED_MODULE_6__["bufferWhen"]; }); -/* harmony import */ var _internal_operators_catchError__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(549); +/* harmony import */ var _internal_operators_catchError__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(550); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "catchError", function() { return _internal_operators_catchError__WEBPACK_IMPORTED_MODULE_7__["catchError"]; }); -/* harmony import */ var _internal_operators_combineAll__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(550); +/* harmony import */ var _internal_operators_combineAll__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(551); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "combineAll", function() { return _internal_operators_combineAll__WEBPACK_IMPORTED_MODULE_8__["combineAll"]; }); -/* harmony import */ var _internal_operators_combineLatest__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(551); +/* harmony import */ var _internal_operators_combineLatest__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(552); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "combineLatest", function() { return _internal_operators_combineLatest__WEBPACK_IMPORTED_MODULE_9__["combineLatest"]; }); -/* harmony import */ var _internal_operators_concat__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(552); +/* harmony import */ var _internal_operators_concat__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(553); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "concat", function() { return _internal_operators_concat__WEBPACK_IMPORTED_MODULE_10__["concat"]; }); -/* harmony import */ var _internal_operators_concatAll__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(521); +/* harmony import */ var _internal_operators_concatAll__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(522); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "concatAll", function() { return _internal_operators_concatAll__WEBPACK_IMPORTED_MODULE_11__["concatAll"]; }); -/* harmony import */ var _internal_operators_concatMap__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(553); +/* harmony import */ var _internal_operators_concatMap__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(554); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "concatMap", function() { return _internal_operators_concatMap__WEBPACK_IMPORTED_MODULE_12__["concatMap"]; }); -/* harmony import */ var _internal_operators_concatMapTo__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(554); +/* harmony import */ var _internal_operators_concatMapTo__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(555); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "concatMapTo", function() { return _internal_operators_concatMapTo__WEBPACK_IMPORTED_MODULE_13__["concatMapTo"]; }); -/* harmony import */ var _internal_operators_count__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(555); +/* harmony import */ var _internal_operators_count__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(556); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "count", function() { return _internal_operators_count__WEBPACK_IMPORTED_MODULE_14__["count"]; }); -/* harmony import */ var _internal_operators_debounce__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(556); +/* harmony import */ var _internal_operators_debounce__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(557); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "debounce", function() { return _internal_operators_debounce__WEBPACK_IMPORTED_MODULE_15__["debounce"]; }); -/* harmony import */ var _internal_operators_debounceTime__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(557); +/* harmony import */ var _internal_operators_debounceTime__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(558); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "debounceTime", function() { return _internal_operators_debounceTime__WEBPACK_IMPORTED_MODULE_16__["debounceTime"]; }); -/* harmony import */ var _internal_operators_defaultIfEmpty__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(558); +/* harmony import */ var _internal_operators_defaultIfEmpty__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(559); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "defaultIfEmpty", function() { return _internal_operators_defaultIfEmpty__WEBPACK_IMPORTED_MODULE_17__["defaultIfEmpty"]; }); -/* harmony import */ var _internal_operators_delay__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(559); +/* harmony import */ var _internal_operators_delay__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(560); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "delay", function() { return _internal_operators_delay__WEBPACK_IMPORTED_MODULE_18__["delay"]; }); -/* harmony import */ var _internal_operators_delayWhen__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(561); +/* harmony import */ var _internal_operators_delayWhen__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(562); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "delayWhen", function() { return _internal_operators_delayWhen__WEBPACK_IMPORTED_MODULE_19__["delayWhen"]; }); -/* harmony import */ var _internal_operators_dematerialize__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(562); +/* harmony import */ var _internal_operators_dematerialize__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(563); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "dematerialize", function() { return _internal_operators_dematerialize__WEBPACK_IMPORTED_MODULE_20__["dematerialize"]; }); -/* harmony import */ var _internal_operators_distinct__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(563); +/* harmony import */ var _internal_operators_distinct__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(564); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "distinct", function() { return _internal_operators_distinct__WEBPACK_IMPORTED_MODULE_21__["distinct"]; }); -/* harmony import */ var _internal_operators_distinctUntilChanged__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(564); +/* harmony import */ var _internal_operators_distinctUntilChanged__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(565); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "distinctUntilChanged", function() { return _internal_operators_distinctUntilChanged__WEBPACK_IMPORTED_MODULE_22__["distinctUntilChanged"]; }); -/* harmony import */ var _internal_operators_distinctUntilKeyChanged__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(565); +/* harmony import */ var _internal_operators_distinctUntilKeyChanged__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(566); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "distinctUntilKeyChanged", function() { return _internal_operators_distinctUntilKeyChanged__WEBPACK_IMPORTED_MODULE_23__["distinctUntilKeyChanged"]; }); -/* harmony import */ var _internal_operators_elementAt__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(566); +/* harmony import */ var _internal_operators_elementAt__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(567); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "elementAt", function() { return _internal_operators_elementAt__WEBPACK_IMPORTED_MODULE_24__["elementAt"]; }); -/* harmony import */ var _internal_operators_endWith__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(571); +/* harmony import */ var _internal_operators_endWith__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(572); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "endWith", function() { return _internal_operators_endWith__WEBPACK_IMPORTED_MODULE_25__["endWith"]; }); -/* harmony import */ var _internal_operators_every__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(572); +/* harmony import */ var _internal_operators_every__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(573); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "every", function() { return _internal_operators_every__WEBPACK_IMPORTED_MODULE_26__["every"]; }); -/* harmony import */ var _internal_operators_exhaust__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(573); +/* harmony import */ var _internal_operators_exhaust__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(574); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "exhaust", function() { return _internal_operators_exhaust__WEBPACK_IMPORTED_MODULE_27__["exhaust"]; }); -/* harmony import */ var _internal_operators_exhaustMap__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(574); +/* harmony import */ var _internal_operators_exhaustMap__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(575); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "exhaustMap", function() { return _internal_operators_exhaustMap__WEBPACK_IMPORTED_MODULE_28__["exhaustMap"]; }); -/* harmony import */ var _internal_operators_expand__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(575); +/* harmony import */ var _internal_operators_expand__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(576); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "expand", function() { return _internal_operators_expand__WEBPACK_IMPORTED_MODULE_29__["expand"]; }); -/* harmony import */ var _internal_operators_filter__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(567); +/* harmony import */ var _internal_operators_filter__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(568); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "filter", function() { return _internal_operators_filter__WEBPACK_IMPORTED_MODULE_30__["filter"]; }); -/* harmony import */ var _internal_operators_finalize__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(576); +/* harmony import */ var _internal_operators_finalize__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(577); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "finalize", function() { return _internal_operators_finalize__WEBPACK_IMPORTED_MODULE_31__["finalize"]; }); -/* harmony import */ var _internal_operators_find__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(577); +/* harmony import */ var _internal_operators_find__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(578); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "find", function() { return _internal_operators_find__WEBPACK_IMPORTED_MODULE_32__["find"]; }); -/* harmony import */ var _internal_operators_findIndex__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(578); +/* harmony import */ var _internal_operators_findIndex__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(579); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "findIndex", function() { return _internal_operators_findIndex__WEBPACK_IMPORTED_MODULE_33__["findIndex"]; }); -/* harmony import */ var _internal_operators_first__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(579); +/* harmony import */ var _internal_operators_first__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(580); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "first", function() { return _internal_operators_first__WEBPACK_IMPORTED_MODULE_34__["first"]; }); -/* harmony import */ var _internal_operators_groupBy__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(466); +/* harmony import */ var _internal_operators_groupBy__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(467); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "groupBy", function() { return _internal_operators_groupBy__WEBPACK_IMPORTED_MODULE_35__["groupBy"]; }); -/* harmony import */ var _internal_operators_ignoreElements__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(580); +/* harmony import */ var _internal_operators_ignoreElements__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(581); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "ignoreElements", function() { return _internal_operators_ignoreElements__WEBPACK_IMPORTED_MODULE_36__["ignoreElements"]; }); -/* harmony import */ var _internal_operators_isEmpty__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(581); +/* harmony import */ var _internal_operators_isEmpty__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(582); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "isEmpty", function() { return _internal_operators_isEmpty__WEBPACK_IMPORTED_MODULE_37__["isEmpty"]; }); -/* harmony import */ var _internal_operators_last__WEBPACK_IMPORTED_MODULE_38__ = __webpack_require__(582); +/* harmony import */ var _internal_operators_last__WEBPACK_IMPORTED_MODULE_38__ = __webpack_require__(583); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "last", function() { return _internal_operators_last__WEBPACK_IMPORTED_MODULE_38__["last"]; }); -/* harmony import */ var _internal_operators_map__WEBPACK_IMPORTED_MODULE_39__ = __webpack_require__(501); +/* harmony import */ var _internal_operators_map__WEBPACK_IMPORTED_MODULE_39__ = __webpack_require__(502); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "map", function() { return _internal_operators_map__WEBPACK_IMPORTED_MODULE_39__["map"]; }); -/* harmony import */ var _internal_operators_mapTo__WEBPACK_IMPORTED_MODULE_40__ = __webpack_require__(584); +/* harmony import */ var _internal_operators_mapTo__WEBPACK_IMPORTED_MODULE_40__ = __webpack_require__(585); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "mapTo", function() { return _internal_operators_mapTo__WEBPACK_IMPORTED_MODULE_40__["mapTo"]; }); -/* harmony import */ var _internal_operators_materialize__WEBPACK_IMPORTED_MODULE_41__ = __webpack_require__(585); +/* harmony import */ var _internal_operators_materialize__WEBPACK_IMPORTED_MODULE_41__ = __webpack_require__(586); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "materialize", function() { return _internal_operators_materialize__WEBPACK_IMPORTED_MODULE_41__["materialize"]; }); -/* harmony import */ var _internal_operators_max__WEBPACK_IMPORTED_MODULE_42__ = __webpack_require__(586); +/* harmony import */ var _internal_operators_max__WEBPACK_IMPORTED_MODULE_42__ = __webpack_require__(587); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "max", function() { return _internal_operators_max__WEBPACK_IMPORTED_MODULE_42__["max"]; }); -/* harmony import */ var _internal_operators_merge__WEBPACK_IMPORTED_MODULE_43__ = __webpack_require__(589); +/* harmony import */ var _internal_operators_merge__WEBPACK_IMPORTED_MODULE_43__ = __webpack_require__(590); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "merge", function() { return _internal_operators_merge__WEBPACK_IMPORTED_MODULE_43__["merge"]; }); -/* harmony import */ var _internal_operators_mergeAll__WEBPACK_IMPORTED_MODULE_44__ = __webpack_require__(522); +/* harmony import */ var _internal_operators_mergeAll__WEBPACK_IMPORTED_MODULE_44__ = __webpack_require__(523); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "mergeAll", function() { return _internal_operators_mergeAll__WEBPACK_IMPORTED_MODULE_44__["mergeAll"]; }); -/* harmony import */ var _internal_operators_mergeMap__WEBPACK_IMPORTED_MODULE_45__ = __webpack_require__(523); +/* harmony import */ var _internal_operators_mergeMap__WEBPACK_IMPORTED_MODULE_45__ = __webpack_require__(524); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "mergeMap", function() { return _internal_operators_mergeMap__WEBPACK_IMPORTED_MODULE_45__["mergeMap"]; }); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "flatMap", function() { return _internal_operators_mergeMap__WEBPACK_IMPORTED_MODULE_45__["mergeMap"]; }); -/* harmony import */ var _internal_operators_mergeMapTo__WEBPACK_IMPORTED_MODULE_46__ = __webpack_require__(590); +/* harmony import */ var _internal_operators_mergeMapTo__WEBPACK_IMPORTED_MODULE_46__ = __webpack_require__(591); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "mergeMapTo", function() { return _internal_operators_mergeMapTo__WEBPACK_IMPORTED_MODULE_46__["mergeMapTo"]; }); -/* harmony import */ var _internal_operators_mergeScan__WEBPACK_IMPORTED_MODULE_47__ = __webpack_require__(591); +/* harmony import */ var _internal_operators_mergeScan__WEBPACK_IMPORTED_MODULE_47__ = __webpack_require__(592); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "mergeScan", function() { return _internal_operators_mergeScan__WEBPACK_IMPORTED_MODULE_47__["mergeScan"]; }); -/* harmony import */ var _internal_operators_min__WEBPACK_IMPORTED_MODULE_48__ = __webpack_require__(592); +/* harmony import */ var _internal_operators_min__WEBPACK_IMPORTED_MODULE_48__ = __webpack_require__(593); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "min", function() { return _internal_operators_min__WEBPACK_IMPORTED_MODULE_48__["min"]; }); -/* harmony import */ var _internal_operators_multicast__WEBPACK_IMPORTED_MODULE_49__ = __webpack_require__(593); +/* harmony import */ var _internal_operators_multicast__WEBPACK_IMPORTED_MODULE_49__ = __webpack_require__(594); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "multicast", function() { return _internal_operators_multicast__WEBPACK_IMPORTED_MODULE_49__["multicast"]; }); -/* harmony import */ var _internal_operators_observeOn__WEBPACK_IMPORTED_MODULE_50__ = __webpack_require__(476); +/* harmony import */ var _internal_operators_observeOn__WEBPACK_IMPORTED_MODULE_50__ = __webpack_require__(477); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "observeOn", function() { return _internal_operators_observeOn__WEBPACK_IMPORTED_MODULE_50__["observeOn"]; }); -/* harmony import */ var _internal_operators_onErrorResumeNext__WEBPACK_IMPORTED_MODULE_51__ = __webpack_require__(594); +/* harmony import */ var _internal_operators_onErrorResumeNext__WEBPACK_IMPORTED_MODULE_51__ = __webpack_require__(595); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "onErrorResumeNext", function() { return _internal_operators_onErrorResumeNext__WEBPACK_IMPORTED_MODULE_51__["onErrorResumeNext"]; }); -/* harmony import */ var _internal_operators_pairwise__WEBPACK_IMPORTED_MODULE_52__ = __webpack_require__(595); +/* harmony import */ var _internal_operators_pairwise__WEBPACK_IMPORTED_MODULE_52__ = __webpack_require__(596); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "pairwise", function() { return _internal_operators_pairwise__WEBPACK_IMPORTED_MODULE_52__["pairwise"]; }); -/* harmony import */ var _internal_operators_partition__WEBPACK_IMPORTED_MODULE_53__ = __webpack_require__(596); +/* harmony import */ var _internal_operators_partition__WEBPACK_IMPORTED_MODULE_53__ = __webpack_require__(597); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "partition", function() { return _internal_operators_partition__WEBPACK_IMPORTED_MODULE_53__["partition"]; }); -/* harmony import */ var _internal_operators_pluck__WEBPACK_IMPORTED_MODULE_54__ = __webpack_require__(598); +/* harmony import */ var _internal_operators_pluck__WEBPACK_IMPORTED_MODULE_54__ = __webpack_require__(599); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "pluck", function() { return _internal_operators_pluck__WEBPACK_IMPORTED_MODULE_54__["pluck"]; }); -/* harmony import */ var _internal_operators_publish__WEBPACK_IMPORTED_MODULE_55__ = __webpack_require__(599); +/* harmony import */ var _internal_operators_publish__WEBPACK_IMPORTED_MODULE_55__ = __webpack_require__(600); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "publish", function() { return _internal_operators_publish__WEBPACK_IMPORTED_MODULE_55__["publish"]; }); -/* harmony import */ var _internal_operators_publishBehavior__WEBPACK_IMPORTED_MODULE_56__ = __webpack_require__(600); +/* harmony import */ var _internal_operators_publishBehavior__WEBPACK_IMPORTED_MODULE_56__ = __webpack_require__(601); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "publishBehavior", function() { return _internal_operators_publishBehavior__WEBPACK_IMPORTED_MODULE_56__["publishBehavior"]; }); -/* harmony import */ var _internal_operators_publishLast__WEBPACK_IMPORTED_MODULE_57__ = __webpack_require__(601); +/* harmony import */ var _internal_operators_publishLast__WEBPACK_IMPORTED_MODULE_57__ = __webpack_require__(602); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "publishLast", function() { return _internal_operators_publishLast__WEBPACK_IMPORTED_MODULE_57__["publishLast"]; }); -/* harmony import */ var _internal_operators_publishReplay__WEBPACK_IMPORTED_MODULE_58__ = __webpack_require__(602); +/* harmony import */ var _internal_operators_publishReplay__WEBPACK_IMPORTED_MODULE_58__ = __webpack_require__(603); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "publishReplay", function() { return _internal_operators_publishReplay__WEBPACK_IMPORTED_MODULE_58__["publishReplay"]; }); -/* harmony import */ var _internal_operators_race__WEBPACK_IMPORTED_MODULE_59__ = __webpack_require__(603); +/* harmony import */ var _internal_operators_race__WEBPACK_IMPORTED_MODULE_59__ = __webpack_require__(604); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "race", function() { return _internal_operators_race__WEBPACK_IMPORTED_MODULE_59__["race"]; }); -/* harmony import */ var _internal_operators_reduce__WEBPACK_IMPORTED_MODULE_60__ = __webpack_require__(587); +/* harmony import */ var _internal_operators_reduce__WEBPACK_IMPORTED_MODULE_60__ = __webpack_require__(588); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "reduce", function() { return _internal_operators_reduce__WEBPACK_IMPORTED_MODULE_60__["reduce"]; }); -/* harmony import */ var _internal_operators_repeat__WEBPACK_IMPORTED_MODULE_61__ = __webpack_require__(604); +/* harmony import */ var _internal_operators_repeat__WEBPACK_IMPORTED_MODULE_61__ = __webpack_require__(605); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "repeat", function() { return _internal_operators_repeat__WEBPACK_IMPORTED_MODULE_61__["repeat"]; }); -/* harmony import */ var _internal_operators_repeatWhen__WEBPACK_IMPORTED_MODULE_62__ = __webpack_require__(605); +/* harmony import */ var _internal_operators_repeatWhen__WEBPACK_IMPORTED_MODULE_62__ = __webpack_require__(606); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "repeatWhen", function() { return _internal_operators_repeatWhen__WEBPACK_IMPORTED_MODULE_62__["repeatWhen"]; }); -/* harmony import */ var _internal_operators_retry__WEBPACK_IMPORTED_MODULE_63__ = __webpack_require__(606); +/* harmony import */ var _internal_operators_retry__WEBPACK_IMPORTED_MODULE_63__ = __webpack_require__(607); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "retry", function() { return _internal_operators_retry__WEBPACK_IMPORTED_MODULE_63__["retry"]; }); -/* harmony import */ var _internal_operators_retryWhen__WEBPACK_IMPORTED_MODULE_64__ = __webpack_require__(607); +/* harmony import */ var _internal_operators_retryWhen__WEBPACK_IMPORTED_MODULE_64__ = __webpack_require__(608); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "retryWhen", function() { return _internal_operators_retryWhen__WEBPACK_IMPORTED_MODULE_64__["retryWhen"]; }); -/* harmony import */ var _internal_operators_refCount__WEBPACK_IMPORTED_MODULE_65__ = __webpack_require__(465); +/* harmony import */ var _internal_operators_refCount__WEBPACK_IMPORTED_MODULE_65__ = __webpack_require__(466); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "refCount", function() { return _internal_operators_refCount__WEBPACK_IMPORTED_MODULE_65__["refCount"]; }); -/* harmony import */ var _internal_operators_sample__WEBPACK_IMPORTED_MODULE_66__ = __webpack_require__(608); +/* harmony import */ var _internal_operators_sample__WEBPACK_IMPORTED_MODULE_66__ = __webpack_require__(609); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "sample", function() { return _internal_operators_sample__WEBPACK_IMPORTED_MODULE_66__["sample"]; }); -/* harmony import */ var _internal_operators_sampleTime__WEBPACK_IMPORTED_MODULE_67__ = __webpack_require__(609); +/* harmony import */ var _internal_operators_sampleTime__WEBPACK_IMPORTED_MODULE_67__ = __webpack_require__(610); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "sampleTime", function() { return _internal_operators_sampleTime__WEBPACK_IMPORTED_MODULE_67__["sampleTime"]; }); -/* harmony import */ var _internal_operators_scan__WEBPACK_IMPORTED_MODULE_68__ = __webpack_require__(588); +/* harmony import */ var _internal_operators_scan__WEBPACK_IMPORTED_MODULE_68__ = __webpack_require__(589); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "scan", function() { return _internal_operators_scan__WEBPACK_IMPORTED_MODULE_68__["scan"]; }); -/* harmony import */ var _internal_operators_sequenceEqual__WEBPACK_IMPORTED_MODULE_69__ = __webpack_require__(610); +/* harmony import */ var _internal_operators_sequenceEqual__WEBPACK_IMPORTED_MODULE_69__ = __webpack_require__(611); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "sequenceEqual", function() { return _internal_operators_sequenceEqual__WEBPACK_IMPORTED_MODULE_69__["sequenceEqual"]; }); -/* harmony import */ var _internal_operators_share__WEBPACK_IMPORTED_MODULE_70__ = __webpack_require__(611); +/* harmony import */ var _internal_operators_share__WEBPACK_IMPORTED_MODULE_70__ = __webpack_require__(612); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "share", function() { return _internal_operators_share__WEBPACK_IMPORTED_MODULE_70__["share"]; }); -/* harmony import */ var _internal_operators_shareReplay__WEBPACK_IMPORTED_MODULE_71__ = __webpack_require__(612); +/* harmony import */ var _internal_operators_shareReplay__WEBPACK_IMPORTED_MODULE_71__ = __webpack_require__(613); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "shareReplay", function() { return _internal_operators_shareReplay__WEBPACK_IMPORTED_MODULE_71__["shareReplay"]; }); -/* harmony import */ var _internal_operators_single__WEBPACK_IMPORTED_MODULE_72__ = __webpack_require__(613); +/* harmony import */ var _internal_operators_single__WEBPACK_IMPORTED_MODULE_72__ = __webpack_require__(614); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "single", function() { return _internal_operators_single__WEBPACK_IMPORTED_MODULE_72__["single"]; }); -/* harmony import */ var _internal_operators_skip__WEBPACK_IMPORTED_MODULE_73__ = __webpack_require__(614); +/* harmony import */ var _internal_operators_skip__WEBPACK_IMPORTED_MODULE_73__ = __webpack_require__(615); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "skip", function() { return _internal_operators_skip__WEBPACK_IMPORTED_MODULE_73__["skip"]; }); -/* harmony import */ var _internal_operators_skipLast__WEBPACK_IMPORTED_MODULE_74__ = __webpack_require__(615); +/* harmony import */ var _internal_operators_skipLast__WEBPACK_IMPORTED_MODULE_74__ = __webpack_require__(616); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "skipLast", function() { return _internal_operators_skipLast__WEBPACK_IMPORTED_MODULE_74__["skipLast"]; }); -/* harmony import */ var _internal_operators_skipUntil__WEBPACK_IMPORTED_MODULE_75__ = __webpack_require__(616); +/* harmony import */ var _internal_operators_skipUntil__WEBPACK_IMPORTED_MODULE_75__ = __webpack_require__(617); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "skipUntil", function() { return _internal_operators_skipUntil__WEBPACK_IMPORTED_MODULE_75__["skipUntil"]; }); -/* harmony import */ var _internal_operators_skipWhile__WEBPACK_IMPORTED_MODULE_76__ = __webpack_require__(617); +/* harmony import */ var _internal_operators_skipWhile__WEBPACK_IMPORTED_MODULE_76__ = __webpack_require__(618); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "skipWhile", function() { return _internal_operators_skipWhile__WEBPACK_IMPORTED_MODULE_76__["skipWhile"]; }); -/* harmony import */ var _internal_operators_startWith__WEBPACK_IMPORTED_MODULE_77__ = __webpack_require__(618); +/* harmony import */ var _internal_operators_startWith__WEBPACK_IMPORTED_MODULE_77__ = __webpack_require__(619); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "startWith", function() { return _internal_operators_startWith__WEBPACK_IMPORTED_MODULE_77__["startWith"]; }); -/* harmony import */ var _internal_operators_subscribeOn__WEBPACK_IMPORTED_MODULE_78__ = __webpack_require__(619); +/* harmony import */ var _internal_operators_subscribeOn__WEBPACK_IMPORTED_MODULE_78__ = __webpack_require__(620); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "subscribeOn", function() { return _internal_operators_subscribeOn__WEBPACK_IMPORTED_MODULE_78__["subscribeOn"]; }); -/* harmony import */ var _internal_operators_switchAll__WEBPACK_IMPORTED_MODULE_79__ = __webpack_require__(621); +/* harmony import */ var _internal_operators_switchAll__WEBPACK_IMPORTED_MODULE_79__ = __webpack_require__(622); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "switchAll", function() { return _internal_operators_switchAll__WEBPACK_IMPORTED_MODULE_79__["switchAll"]; }); -/* harmony import */ var _internal_operators_switchMap__WEBPACK_IMPORTED_MODULE_80__ = __webpack_require__(622); +/* harmony import */ var _internal_operators_switchMap__WEBPACK_IMPORTED_MODULE_80__ = __webpack_require__(623); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "switchMap", function() { return _internal_operators_switchMap__WEBPACK_IMPORTED_MODULE_80__["switchMap"]; }); -/* harmony import */ var _internal_operators_switchMapTo__WEBPACK_IMPORTED_MODULE_81__ = __webpack_require__(623); +/* harmony import */ var _internal_operators_switchMapTo__WEBPACK_IMPORTED_MODULE_81__ = __webpack_require__(624); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "switchMapTo", function() { return _internal_operators_switchMapTo__WEBPACK_IMPORTED_MODULE_81__["switchMapTo"]; }); -/* harmony import */ var _internal_operators_take__WEBPACK_IMPORTED_MODULE_82__ = __webpack_require__(570); +/* harmony import */ var _internal_operators_take__WEBPACK_IMPORTED_MODULE_82__ = __webpack_require__(571); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "take", function() { return _internal_operators_take__WEBPACK_IMPORTED_MODULE_82__["take"]; }); -/* harmony import */ var _internal_operators_takeLast__WEBPACK_IMPORTED_MODULE_83__ = __webpack_require__(583); +/* harmony import */ var _internal_operators_takeLast__WEBPACK_IMPORTED_MODULE_83__ = __webpack_require__(584); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "takeLast", function() { return _internal_operators_takeLast__WEBPACK_IMPORTED_MODULE_83__["takeLast"]; }); -/* harmony import */ var _internal_operators_takeUntil__WEBPACK_IMPORTED_MODULE_84__ = __webpack_require__(624); +/* harmony import */ var _internal_operators_takeUntil__WEBPACK_IMPORTED_MODULE_84__ = __webpack_require__(625); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "takeUntil", function() { return _internal_operators_takeUntil__WEBPACK_IMPORTED_MODULE_84__["takeUntil"]; }); -/* harmony import */ var _internal_operators_takeWhile__WEBPACK_IMPORTED_MODULE_85__ = __webpack_require__(625); +/* harmony import */ var _internal_operators_takeWhile__WEBPACK_IMPORTED_MODULE_85__ = __webpack_require__(626); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "takeWhile", function() { return _internal_operators_takeWhile__WEBPACK_IMPORTED_MODULE_85__["takeWhile"]; }); -/* harmony import */ var _internal_operators_tap__WEBPACK_IMPORTED_MODULE_86__ = __webpack_require__(569); +/* harmony import */ var _internal_operators_tap__WEBPACK_IMPORTED_MODULE_86__ = __webpack_require__(570); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "tap", function() { return _internal_operators_tap__WEBPACK_IMPORTED_MODULE_86__["tap"]; }); -/* harmony import */ var _internal_operators_throttle__WEBPACK_IMPORTED_MODULE_87__ = __webpack_require__(626); +/* harmony import */ var _internal_operators_throttle__WEBPACK_IMPORTED_MODULE_87__ = __webpack_require__(627); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "throttle", function() { return _internal_operators_throttle__WEBPACK_IMPORTED_MODULE_87__["throttle"]; }); -/* harmony import */ var _internal_operators_throttleTime__WEBPACK_IMPORTED_MODULE_88__ = __webpack_require__(627); +/* harmony import */ var _internal_operators_throttleTime__WEBPACK_IMPORTED_MODULE_88__ = __webpack_require__(628); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "throttleTime", function() { return _internal_operators_throttleTime__WEBPACK_IMPORTED_MODULE_88__["throttleTime"]; }); -/* harmony import */ var _internal_operators_throwIfEmpty__WEBPACK_IMPORTED_MODULE_89__ = __webpack_require__(568); +/* harmony import */ var _internal_operators_throwIfEmpty__WEBPACK_IMPORTED_MODULE_89__ = __webpack_require__(569); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "throwIfEmpty", function() { return _internal_operators_throwIfEmpty__WEBPACK_IMPORTED_MODULE_89__["throwIfEmpty"]; }); -/* harmony import */ var _internal_operators_timeInterval__WEBPACK_IMPORTED_MODULE_90__ = __webpack_require__(628); +/* harmony import */ var _internal_operators_timeInterval__WEBPACK_IMPORTED_MODULE_90__ = __webpack_require__(629); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "timeInterval", function() { return _internal_operators_timeInterval__WEBPACK_IMPORTED_MODULE_90__["timeInterval"]; }); -/* harmony import */ var _internal_operators_timeout__WEBPACK_IMPORTED_MODULE_91__ = __webpack_require__(629); +/* harmony import */ var _internal_operators_timeout__WEBPACK_IMPORTED_MODULE_91__ = __webpack_require__(630); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "timeout", function() { return _internal_operators_timeout__WEBPACK_IMPORTED_MODULE_91__["timeout"]; }); -/* harmony import */ var _internal_operators_timeoutWith__WEBPACK_IMPORTED_MODULE_92__ = __webpack_require__(630); +/* harmony import */ var _internal_operators_timeoutWith__WEBPACK_IMPORTED_MODULE_92__ = __webpack_require__(631); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "timeoutWith", function() { return _internal_operators_timeoutWith__WEBPACK_IMPORTED_MODULE_92__["timeoutWith"]; }); -/* harmony import */ var _internal_operators_timestamp__WEBPACK_IMPORTED_MODULE_93__ = __webpack_require__(631); +/* harmony import */ var _internal_operators_timestamp__WEBPACK_IMPORTED_MODULE_93__ = __webpack_require__(632); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "timestamp", function() { return _internal_operators_timestamp__WEBPACK_IMPORTED_MODULE_93__["timestamp"]; }); -/* harmony import */ var _internal_operators_toArray__WEBPACK_IMPORTED_MODULE_94__ = __webpack_require__(632); +/* harmony import */ var _internal_operators_toArray__WEBPACK_IMPORTED_MODULE_94__ = __webpack_require__(633); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "toArray", function() { return _internal_operators_toArray__WEBPACK_IMPORTED_MODULE_94__["toArray"]; }); -/* harmony import */ var _internal_operators_window__WEBPACK_IMPORTED_MODULE_95__ = __webpack_require__(633); +/* harmony import */ var _internal_operators_window__WEBPACK_IMPORTED_MODULE_95__ = __webpack_require__(634); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "window", function() { return _internal_operators_window__WEBPACK_IMPORTED_MODULE_95__["window"]; }); -/* harmony import */ var _internal_operators_windowCount__WEBPACK_IMPORTED_MODULE_96__ = __webpack_require__(634); +/* harmony import */ var _internal_operators_windowCount__WEBPACK_IMPORTED_MODULE_96__ = __webpack_require__(635); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "windowCount", function() { return _internal_operators_windowCount__WEBPACK_IMPORTED_MODULE_96__["windowCount"]; }); -/* harmony import */ var _internal_operators_windowTime__WEBPACK_IMPORTED_MODULE_97__ = __webpack_require__(635); +/* harmony import */ var _internal_operators_windowTime__WEBPACK_IMPORTED_MODULE_97__ = __webpack_require__(636); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "windowTime", function() { return _internal_operators_windowTime__WEBPACK_IMPORTED_MODULE_97__["windowTime"]; }); -/* harmony import */ var _internal_operators_windowToggle__WEBPACK_IMPORTED_MODULE_98__ = __webpack_require__(636); +/* harmony import */ var _internal_operators_windowToggle__WEBPACK_IMPORTED_MODULE_98__ = __webpack_require__(637); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "windowToggle", function() { return _internal_operators_windowToggle__WEBPACK_IMPORTED_MODULE_98__["windowToggle"]; }); -/* harmony import */ var _internal_operators_windowWhen__WEBPACK_IMPORTED_MODULE_99__ = __webpack_require__(637); +/* harmony import */ var _internal_operators_windowWhen__WEBPACK_IMPORTED_MODULE_99__ = __webpack_require__(638); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "windowWhen", function() { return _internal_operators_windowWhen__WEBPACK_IMPORTED_MODULE_99__["windowWhen"]; }); -/* harmony import */ var _internal_operators_withLatestFrom__WEBPACK_IMPORTED_MODULE_100__ = __webpack_require__(638); +/* harmony import */ var _internal_operators_withLatestFrom__WEBPACK_IMPORTED_MODULE_100__ = __webpack_require__(639); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "withLatestFrom", function() { return _internal_operators_withLatestFrom__WEBPACK_IMPORTED_MODULE_100__["withLatestFrom"]; }); -/* harmony import */ var _internal_operators_zip__WEBPACK_IMPORTED_MODULE_101__ = __webpack_require__(639); +/* harmony import */ var _internal_operators_zip__WEBPACK_IMPORTED_MODULE_101__ = __webpack_require__(640); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "zip", function() { return _internal_operators_zip__WEBPACK_IMPORTED_MODULE_101__["zip"]; }); -/* harmony import */ var _internal_operators_zipAll__WEBPACK_IMPORTED_MODULE_102__ = __webpack_require__(640); +/* harmony import */ var _internal_operators_zipAll__WEBPACK_IMPORTED_MODULE_102__ = __webpack_require__(641); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "zipAll", function() { return _internal_operators_zipAll__WEBPACK_IMPORTED_MODULE_102__["zipAll"]; }); /** PURE_IMPORTS_START PURE_IMPORTS_END */ @@ -95378,17 +95588,17 @@ __webpack_require__.r(__webpack_exports__); /***/ }), -/* 542 */ +/* 543 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "audit", function() { return audit; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _util_tryCatch__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(453); -/* harmony import */ var _util_errorObject__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(454); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(504); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(505); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _util_tryCatch__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(454); +/* harmony import */ var _util_errorObject__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(455); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(505); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(506); /** PURE_IMPORTS_START tslib,_util_tryCatch,_util_errorObject,_OuterSubscriber,_util_subscribeToResult PURE_IMPORTS_END */ @@ -95461,15 +95671,15 @@ var AuditSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 543 */ +/* 544 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "auditTime", function() { return auditTime; }); -/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(490); -/* harmony import */ var _audit__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(542); -/* harmony import */ var _observable_timer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(538); +/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(491); +/* harmony import */ var _audit__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(543); +/* harmony import */ var _observable_timer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(539); /** PURE_IMPORTS_START _scheduler_async,_audit,_observable_timer PURE_IMPORTS_END */ @@ -95484,15 +95694,15 @@ function auditTime(duration, scheduler) { /***/ }), -/* 544 */ +/* 545 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "buffer", function() { return buffer; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(504); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(505); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(505); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(506); /** PURE_IMPORTS_START tslib,_OuterSubscriber,_util_subscribeToResult PURE_IMPORTS_END */ @@ -95533,14 +95743,14 @@ var BufferSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 545 */ +/* 546 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "bufferCount", function() { return bufferCount; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); /** PURE_IMPORTS_START tslib,_Subscriber PURE_IMPORTS_END */ @@ -95634,16 +95844,16 @@ var BufferSkipCountSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 546 */ +/* 547 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "bufferTime", function() { return bufferTime; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(490); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(444); -/* harmony import */ var _util_isScheduler__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(480); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(491); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(445); +/* harmony import */ var _util_isScheduler__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(481); /** PURE_IMPORTS_START tslib,_scheduler_async,_Subscriber,_util_isScheduler PURE_IMPORTS_END */ @@ -95795,16 +96005,16 @@ function dispatchBufferClose(arg) { /***/ }), -/* 547 */ +/* 548 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "bufferToggle", function() { return bufferToggle; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(450); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(505); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(504); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(451); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(506); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(505); /** PURE_IMPORTS_START tslib,_Subscription,_util_subscribeToResult,_OuterSubscriber PURE_IMPORTS_END */ @@ -95915,18 +96125,18 @@ var BufferToggleSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 548 */ +/* 549 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "bufferWhen", function() { return bufferWhen; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(450); -/* harmony import */ var _util_tryCatch__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(453); -/* harmony import */ var _util_errorObject__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(454); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(504); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(505); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(451); +/* harmony import */ var _util_tryCatch__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(454); +/* harmony import */ var _util_errorObject__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(455); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(505); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(506); /** PURE_IMPORTS_START tslib,_Subscription,_util_tryCatch,_util_errorObject,_OuterSubscriber,_util_subscribeToResult PURE_IMPORTS_END */ @@ -96012,16 +96222,16 @@ var BufferWhenSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 549 */ +/* 550 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "catchError", function() { return catchError; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(504); -/* harmony import */ var _InnerSubscriber__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(506); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(505); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(505); +/* harmony import */ var _InnerSubscriber__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(507); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(506); /** PURE_IMPORTS_START tslib,_OuterSubscriber,_InnerSubscriber,_util_subscribeToResult PURE_IMPORTS_END */ @@ -96073,13 +96283,13 @@ var CatchSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 550 */ +/* 551 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "combineAll", function() { return combineAll; }); -/* harmony import */ var _observable_combineLatest__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(503); +/* harmony import */ var _observable_combineLatest__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(504); /** PURE_IMPORTS_START _observable_combineLatest PURE_IMPORTS_END */ function combineAll(project) { @@ -96089,15 +96299,15 @@ function combineAll(project) { /***/ }), -/* 551 */ +/* 552 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "combineLatest", function() { return combineLatest; }); -/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(451); -/* harmony import */ var _observable_combineLatest__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(503); -/* harmony import */ var _observable_from__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(515); +/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(452); +/* harmony import */ var _observable_combineLatest__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(504); +/* harmony import */ var _observable_from__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(516); /** PURE_IMPORTS_START _util_isArray,_observable_combineLatest,_observable_from PURE_IMPORTS_END */ @@ -96121,13 +96331,13 @@ function combineLatest() { /***/ }), -/* 552 */ +/* 553 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "concat", function() { return concat; }); -/* harmony import */ var _observable_concat__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(514); +/* harmony import */ var _observable_concat__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(515); /** PURE_IMPORTS_START _observable_concat PURE_IMPORTS_END */ function concat() { @@ -96141,13 +96351,13 @@ function concat() { /***/ }), -/* 553 */ +/* 554 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "concatMap", function() { return concatMap; }); -/* harmony import */ var _mergeMap__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(523); +/* harmony import */ var _mergeMap__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(524); /** PURE_IMPORTS_START _mergeMap PURE_IMPORTS_END */ function concatMap(project, resultSelector) { @@ -96157,13 +96367,13 @@ function concatMap(project, resultSelector) { /***/ }), -/* 554 */ +/* 555 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "concatMapTo", function() { return concatMapTo; }); -/* harmony import */ var _concatMap__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(553); +/* harmony import */ var _concatMap__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(554); /** PURE_IMPORTS_START _concatMap PURE_IMPORTS_END */ function concatMapTo(innerObservable, resultSelector) { @@ -96173,14 +96383,14 @@ function concatMapTo(innerObservable, resultSelector) { /***/ }), -/* 555 */ +/* 556 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "count", function() { return count; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); /** PURE_IMPORTS_START tslib,_Subscriber PURE_IMPORTS_END */ @@ -96238,15 +96448,15 @@ var CountSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 556 */ +/* 557 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "debounce", function() { return debounce; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(504); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(505); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(505); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(506); /** PURE_IMPORTS_START tslib,_OuterSubscriber,_util_subscribeToResult PURE_IMPORTS_END */ @@ -96326,15 +96536,15 @@ var DebounceSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 557 */ +/* 558 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "debounceTime", function() { return debounceTime; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); -/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(490); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); +/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(491); /** PURE_IMPORTS_START tslib,_Subscriber,_scheduler_async PURE_IMPORTS_END */ @@ -96402,14 +96612,14 @@ function dispatchNext(subscriber) { /***/ }), -/* 558 */ +/* 559 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "defaultIfEmpty", function() { return defaultIfEmpty; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); /** PURE_IMPORTS_START tslib,_Subscriber PURE_IMPORTS_END */ @@ -96452,17 +96662,17 @@ var DefaultIfEmptySubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 559 */ +/* 560 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "delay", function() { return delay; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(490); -/* harmony import */ var _util_isDate__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(560); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(444); -/* harmony import */ var _Notification__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(477); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(491); +/* harmony import */ var _util_isDate__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(561); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(445); +/* harmony import */ var _Notification__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(478); /** PURE_IMPORTS_START tslib,_scheduler_async,_util_isDate,_Subscriber,_Notification PURE_IMPORTS_END */ @@ -96559,7 +96769,7 @@ var DelayMessage = /*@__PURE__*/ (function () { /***/ }), -/* 560 */ +/* 561 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -96573,17 +96783,17 @@ function isDate(value) { /***/ }), -/* 561 */ +/* 562 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "delayWhen", function() { return delayWhen; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(442); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(504); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(505); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(443); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(505); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(506); /** PURE_IMPORTS_START tslib,_Subscriber,_Observable,_OuterSubscriber,_util_subscribeToResult PURE_IMPORTS_END */ @@ -96719,14 +96929,14 @@ var SubscriptionDelaySubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 562 */ +/* 563 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "dematerialize", function() { return dematerialize; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); /** PURE_IMPORTS_START tslib,_Subscriber PURE_IMPORTS_END */ @@ -96757,16 +96967,16 @@ var DeMaterializeSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 563 */ +/* 564 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "distinct", function() { return distinct; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DistinctSubscriber", function() { return DistinctSubscriber; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(504); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(505); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(505); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(506); /** PURE_IMPORTS_START tslib,_OuterSubscriber,_util_subscribeToResult PURE_IMPORTS_END */ @@ -96835,16 +97045,16 @@ var DistinctSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 564 */ +/* 565 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "distinctUntilChanged", function() { return distinctUntilChanged; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); -/* harmony import */ var _util_tryCatch__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(453); -/* harmony import */ var _util_errorObject__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(454); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); +/* harmony import */ var _util_tryCatch__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(454); +/* harmony import */ var _util_errorObject__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(455); /** PURE_IMPORTS_START tslib,_Subscriber,_util_tryCatch,_util_errorObject PURE_IMPORTS_END */ @@ -96907,13 +97117,13 @@ var DistinctUntilChangedSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 565 */ +/* 566 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "distinctUntilKeyChanged", function() { return distinctUntilKeyChanged; }); -/* harmony import */ var _distinctUntilChanged__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(564); +/* harmony import */ var _distinctUntilChanged__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(565); /** PURE_IMPORTS_START _distinctUntilChanged PURE_IMPORTS_END */ function distinctUntilKeyChanged(key, compare) { @@ -96923,17 +97133,17 @@ function distinctUntilKeyChanged(key, compare) { /***/ }), -/* 566 */ +/* 567 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "elementAt", function() { return elementAt; }); -/* harmony import */ var _util_ArgumentOutOfRangeError__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(497); -/* harmony import */ var _filter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(567); -/* harmony import */ var _throwIfEmpty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(568); -/* harmony import */ var _defaultIfEmpty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(558); -/* harmony import */ var _take__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(570); +/* harmony import */ var _util_ArgumentOutOfRangeError__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(498); +/* harmony import */ var _filter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(568); +/* harmony import */ var _throwIfEmpty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(569); +/* harmony import */ var _defaultIfEmpty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(559); +/* harmony import */ var _take__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(571); /** PURE_IMPORTS_START _util_ArgumentOutOfRangeError,_filter,_throwIfEmpty,_defaultIfEmpty,_take PURE_IMPORTS_END */ @@ -96955,14 +97165,14 @@ function elementAt(index, defaultValue) { /***/ }), -/* 567 */ +/* 568 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "filter", function() { return filter; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); /** PURE_IMPORTS_START tslib,_Subscriber PURE_IMPORTS_END */ @@ -97009,14 +97219,14 @@ var FilterSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 568 */ +/* 569 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "throwIfEmpty", function() { return throwIfEmpty; }); -/* harmony import */ var _tap__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(569); -/* harmony import */ var _util_EmptyError__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(498); +/* harmony import */ var _tap__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(570); +/* harmony import */ var _util_EmptyError__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(499); /** PURE_IMPORTS_START _tap,_util_EmptyError PURE_IMPORTS_END */ @@ -97041,16 +97251,16 @@ function defaultErrorFactory() { /***/ }), -/* 569 */ +/* 570 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "tap", function() { return tap; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); -/* harmony import */ var _util_noop__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(460); -/* harmony import */ var _util_isFunction__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(446); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); +/* harmony import */ var _util_noop__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(461); +/* harmony import */ var _util_isFunction__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(447); /** PURE_IMPORTS_START tslib,_Subscriber,_util_noop,_util_isFunction PURE_IMPORTS_END */ @@ -97129,16 +97339,16 @@ var TapSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 570 */ +/* 571 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "take", function() { return take; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); -/* harmony import */ var _util_ArgumentOutOfRangeError__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(497); -/* harmony import */ var _observable_empty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(478); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); +/* harmony import */ var _util_ArgumentOutOfRangeError__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(498); +/* harmony import */ var _observable_empty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(479); /** PURE_IMPORTS_START tslib,_Subscriber,_util_ArgumentOutOfRangeError,_observable_empty PURE_IMPORTS_END */ @@ -97191,17 +97401,17 @@ var TakeSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 571 */ +/* 572 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "endWith", function() { return endWith; }); -/* harmony import */ var _observable_fromArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(481); -/* harmony import */ var _observable_scalar__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(483); -/* harmony import */ var _observable_empty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(478); -/* harmony import */ var _observable_concat__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(514); -/* harmony import */ var _util_isScheduler__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(480); +/* harmony import */ var _observable_fromArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(482); +/* harmony import */ var _observable_scalar__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(484); +/* harmony import */ var _observable_empty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(479); +/* harmony import */ var _observable_concat__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(515); +/* harmony import */ var _util_isScheduler__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(481); /** PURE_IMPORTS_START _observable_fromArray,_observable_scalar,_observable_empty,_observable_concat,_util_isScheduler PURE_IMPORTS_END */ @@ -97237,14 +97447,14 @@ function endWith() { /***/ }), -/* 572 */ +/* 573 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "every", function() { return every; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); /** PURE_IMPORTS_START tslib,_Subscriber PURE_IMPORTS_END */ @@ -97299,15 +97509,15 @@ var EverySubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 573 */ +/* 574 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "exhaust", function() { return exhaust; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(504); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(505); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(505); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(506); /** PURE_IMPORTS_START tslib,_OuterSubscriber,_util_subscribeToResult PURE_IMPORTS_END */ @@ -97356,18 +97566,18 @@ var SwitchFirstSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 574 */ +/* 575 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "exhaustMap", function() { return exhaustMap; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(504); -/* harmony import */ var _InnerSubscriber__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(506); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(505); -/* harmony import */ var _map__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(501); -/* harmony import */ var _observable_from__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(515); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(505); +/* harmony import */ var _InnerSubscriber__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(507); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(506); +/* harmony import */ var _map__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(502); +/* harmony import */ var _observable_from__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(516); /** PURE_IMPORTS_START tslib,_OuterSubscriber,_InnerSubscriber,_util_subscribeToResult,_map,_observable_from PURE_IMPORTS_END */ @@ -97453,7 +97663,7 @@ var ExhaustMapSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 575 */ +/* 576 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -97461,11 +97671,11 @@ __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "expand", function() { return expand; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ExpandOperator", function() { return ExpandOperator; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ExpandSubscriber", function() { return ExpandSubscriber; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _util_tryCatch__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(453); -/* harmony import */ var _util_errorObject__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(454); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(504); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(505); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _util_tryCatch__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(454); +/* harmony import */ var _util_errorObject__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(455); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(505); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(506); /** PURE_IMPORTS_START tslib,_util_tryCatch,_util_errorObject,_OuterSubscriber,_util_subscribeToResult PURE_IMPORTS_END */ @@ -97573,15 +97783,15 @@ var ExpandSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 576 */ +/* 577 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "finalize", function() { return finalize; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); -/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(450); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); +/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(451); /** PURE_IMPORTS_START tslib,_Subscriber,_Subscription PURE_IMPORTS_END */ @@ -97611,7 +97821,7 @@ var FinallySubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 577 */ +/* 578 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -97619,8 +97829,8 @@ __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "find", function() { return find; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "FindValueOperator", function() { return FindValueOperator; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "FindValueSubscriber", function() { return FindValueSubscriber; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); /** PURE_IMPORTS_START tslib,_Subscriber PURE_IMPORTS_END */ @@ -97683,13 +97893,13 @@ var FindValueSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 578 */ +/* 579 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "findIndex", function() { return findIndex; }); -/* harmony import */ var _operators_find__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(577); +/* harmony import */ var _operators_find__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(578); /** PURE_IMPORTS_START _operators_find PURE_IMPORTS_END */ function findIndex(predicate, thisArg) { @@ -97699,18 +97909,18 @@ function findIndex(predicate, thisArg) { /***/ }), -/* 579 */ +/* 580 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "first", function() { return first; }); -/* harmony import */ var _util_EmptyError__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(498); -/* harmony import */ var _filter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(567); -/* harmony import */ var _take__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(570); -/* harmony import */ var _defaultIfEmpty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(558); -/* harmony import */ var _throwIfEmpty__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(568); -/* harmony import */ var _util_identity__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(495); +/* harmony import */ var _util_EmptyError__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(499); +/* harmony import */ var _filter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(568); +/* harmony import */ var _take__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(571); +/* harmony import */ var _defaultIfEmpty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(559); +/* harmony import */ var _throwIfEmpty__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(569); +/* harmony import */ var _util_identity__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(496); /** PURE_IMPORTS_START _util_EmptyError,_filter,_take,_defaultIfEmpty,_throwIfEmpty,_util_identity PURE_IMPORTS_END */ @@ -97726,14 +97936,14 @@ function first(predicate, defaultValue) { /***/ }), -/* 580 */ +/* 581 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ignoreElements", function() { return ignoreElements; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); /** PURE_IMPORTS_START tslib,_Subscriber PURE_IMPORTS_END */ @@ -97763,14 +97973,14 @@ var IgnoreElementsSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 581 */ +/* 582 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "isEmpty", function() { return isEmpty; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); /** PURE_IMPORTS_START tslib,_Subscriber PURE_IMPORTS_END */ @@ -97807,18 +98017,18 @@ var IsEmptySubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 582 */ +/* 583 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "last", function() { return last; }); -/* harmony import */ var _util_EmptyError__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(498); -/* harmony import */ var _filter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(567); -/* harmony import */ var _takeLast__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(583); -/* harmony import */ var _throwIfEmpty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(568); -/* harmony import */ var _defaultIfEmpty__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(558); -/* harmony import */ var _util_identity__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(495); +/* harmony import */ var _util_EmptyError__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(499); +/* harmony import */ var _filter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(568); +/* harmony import */ var _takeLast__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(584); +/* harmony import */ var _throwIfEmpty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(569); +/* harmony import */ var _defaultIfEmpty__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(559); +/* harmony import */ var _util_identity__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(496); /** PURE_IMPORTS_START _util_EmptyError,_filter,_takeLast,_throwIfEmpty,_defaultIfEmpty,_util_identity PURE_IMPORTS_END */ @@ -97834,16 +98044,16 @@ function last(predicate, defaultValue) { /***/ }), -/* 583 */ +/* 584 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "takeLast", function() { return takeLast; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); -/* harmony import */ var _util_ArgumentOutOfRangeError__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(497); -/* harmony import */ var _observable_empty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(478); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); +/* harmony import */ var _util_ArgumentOutOfRangeError__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(498); +/* harmony import */ var _observable_empty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(479); /** PURE_IMPORTS_START tslib,_Subscriber,_util_ArgumentOutOfRangeError,_observable_empty PURE_IMPORTS_END */ @@ -97911,14 +98121,14 @@ var TakeLastSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 584 */ +/* 585 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "mapTo", function() { return mapTo; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); /** PURE_IMPORTS_START tslib,_Subscriber PURE_IMPORTS_END */ @@ -97950,15 +98160,15 @@ var MapToSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 585 */ +/* 586 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "materialize", function() { return materialize; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); -/* harmony import */ var _Notification__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(477); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); +/* harmony import */ var _Notification__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(478); /** PURE_IMPORTS_START tslib,_Subscriber,_Notification PURE_IMPORTS_END */ @@ -98000,13 +98210,13 @@ var MaterializeSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 586 */ +/* 587 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "max", function() { return max; }); -/* harmony import */ var _reduce__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(587); +/* harmony import */ var _reduce__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(588); /** PURE_IMPORTS_START _reduce PURE_IMPORTS_END */ function max(comparer) { @@ -98019,16 +98229,16 @@ function max(comparer) { /***/ }), -/* 587 */ +/* 588 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "reduce", function() { return reduce; }); -/* harmony import */ var _scan__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(588); -/* harmony import */ var _takeLast__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(583); -/* harmony import */ var _defaultIfEmpty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(558); -/* harmony import */ var _util_pipe__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(459); +/* harmony import */ var _scan__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(589); +/* harmony import */ var _takeLast__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(584); +/* harmony import */ var _defaultIfEmpty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(559); +/* harmony import */ var _util_pipe__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(460); /** PURE_IMPORTS_START _scan,_takeLast,_defaultIfEmpty,_util_pipe PURE_IMPORTS_END */ @@ -98048,14 +98258,14 @@ function reduce(accumulator, seed) { /***/ }), -/* 588 */ +/* 589 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "scan", function() { return scan; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); /** PURE_IMPORTS_START tslib,_Subscriber PURE_IMPORTS_END */ @@ -98130,13 +98340,13 @@ var ScanSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 589 */ +/* 590 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "merge", function() { return merge; }); -/* harmony import */ var _observable_merge__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(532); +/* harmony import */ var _observable_merge__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(533); /** PURE_IMPORTS_START _observable_merge PURE_IMPORTS_END */ function merge() { @@ -98150,13 +98360,13 @@ function merge() { /***/ }), -/* 590 */ +/* 591 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "mergeMapTo", function() { return mergeMapTo; }); -/* harmony import */ var _mergeMap__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(523); +/* harmony import */ var _mergeMap__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(524); /** PURE_IMPORTS_START _mergeMap PURE_IMPORTS_END */ function mergeMapTo(innerObservable, resultSelector, concurrent) { @@ -98175,7 +98385,7 @@ function mergeMapTo(innerObservable, resultSelector, concurrent) { /***/ }), -/* 591 */ +/* 592 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -98183,12 +98393,12 @@ __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "mergeScan", function() { return mergeScan; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MergeScanOperator", function() { return MergeScanOperator; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MergeScanSubscriber", function() { return MergeScanSubscriber; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _util_tryCatch__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(453); -/* harmony import */ var _util_errorObject__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(454); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(505); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(504); -/* harmony import */ var _InnerSubscriber__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(506); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _util_tryCatch__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(454); +/* harmony import */ var _util_errorObject__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(455); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(506); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(505); +/* harmony import */ var _InnerSubscriber__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(507); /** PURE_IMPORTS_START tslib,_util_tryCatch,_util_errorObject,_util_subscribeToResult,_OuterSubscriber,_InnerSubscriber PURE_IMPORTS_END */ @@ -98289,13 +98499,13 @@ var MergeScanSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 592 */ +/* 593 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "min", function() { return min; }); -/* harmony import */ var _reduce__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(587); +/* harmony import */ var _reduce__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(588); /** PURE_IMPORTS_START _reduce PURE_IMPORTS_END */ function min(comparer) { @@ -98308,14 +98518,14 @@ function min(comparer) { /***/ }), -/* 593 */ +/* 594 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "multicast", function() { return multicast; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MulticastOperator", function() { return MulticastOperator; }); -/* harmony import */ var _observable_ConnectableObservable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(461); +/* harmony import */ var _observable_ConnectableObservable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(462); /** PURE_IMPORTS_START _observable_ConnectableObservable PURE_IMPORTS_END */ function multicast(subjectOrSubjectFactory, selector) { @@ -98357,19 +98567,19 @@ var MulticastOperator = /*@__PURE__*/ (function () { /***/ }), -/* 594 */ +/* 595 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "onErrorResumeNext", function() { return onErrorResumeNext; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "onErrorResumeNextStatic", function() { return onErrorResumeNextStatic; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _observable_from__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(515); -/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(451); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(504); -/* harmony import */ var _InnerSubscriber__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(506); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(505); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _observable_from__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(516); +/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(452); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(505); +/* harmony import */ var _InnerSubscriber__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(507); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(506); /** PURE_IMPORTS_START tslib,_observable_from,_util_isArray,_OuterSubscriber,_InnerSubscriber,_util_subscribeToResult PURE_IMPORTS_END */ @@ -98448,14 +98658,14 @@ var OnErrorResumeNextSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 595 */ +/* 596 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "pairwise", function() { return pairwise; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); /** PURE_IMPORTS_START tslib,_Subscriber PURE_IMPORTS_END */ @@ -98492,14 +98702,14 @@ var PairwiseSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 596 */ +/* 597 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "partition", function() { return partition; }); -/* harmony import */ var _util_not__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(597); -/* harmony import */ var _filter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(567); +/* harmony import */ var _util_not__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(598); +/* harmony import */ var _filter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(568); /** PURE_IMPORTS_START _util_not,_filter PURE_IMPORTS_END */ @@ -98515,7 +98725,7 @@ function partition(predicate, thisArg) { /***/ }), -/* 597 */ +/* 598 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -98534,13 +98744,13 @@ function not(pred, thisArg) { /***/ }), -/* 598 */ +/* 599 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "pluck", function() { return pluck; }); -/* harmony import */ var _map__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(501); +/* harmony import */ var _map__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(502); /** PURE_IMPORTS_START _map PURE_IMPORTS_END */ function pluck() { @@ -98574,14 +98784,14 @@ function plucker(props, length) { /***/ }), -/* 599 */ +/* 600 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "publish", function() { return publish; }); -/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(462); -/* harmony import */ var _multicast__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(593); +/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(463); +/* harmony import */ var _multicast__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(594); /** PURE_IMPORTS_START _Subject,_multicast PURE_IMPORTS_END */ @@ -98594,14 +98804,14 @@ function publish(selector) { /***/ }), -/* 600 */ +/* 601 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "publishBehavior", function() { return publishBehavior; }); -/* harmony import */ var _BehaviorSubject__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(467); -/* harmony import */ var _multicast__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(593); +/* harmony import */ var _BehaviorSubject__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(468); +/* harmony import */ var _multicast__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(594); /** PURE_IMPORTS_START _BehaviorSubject,_multicast PURE_IMPORTS_END */ @@ -98612,14 +98822,14 @@ function publishBehavior(value) { /***/ }), -/* 601 */ +/* 602 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "publishLast", function() { return publishLast; }); -/* harmony import */ var _AsyncSubject__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(485); -/* harmony import */ var _multicast__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(593); +/* harmony import */ var _AsyncSubject__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(486); +/* harmony import */ var _multicast__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(594); /** PURE_IMPORTS_START _AsyncSubject,_multicast PURE_IMPORTS_END */ @@ -98630,14 +98840,14 @@ function publishLast() { /***/ }), -/* 602 */ +/* 603 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "publishReplay", function() { return publishReplay; }); -/* harmony import */ var _ReplaySubject__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(468); -/* harmony import */ var _multicast__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(593); +/* harmony import */ var _ReplaySubject__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(469); +/* harmony import */ var _multicast__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(594); /** PURE_IMPORTS_START _ReplaySubject,_multicast PURE_IMPORTS_END */ @@ -98653,14 +98863,14 @@ function publishReplay(bufferSize, windowTime, selectorOrScheduler, scheduler) { /***/ }), -/* 603 */ +/* 604 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "race", function() { return race; }); -/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(451); -/* harmony import */ var _observable_race__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(536); +/* harmony import */ var _util_isArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(452); +/* harmony import */ var _observable_race__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(537); /** PURE_IMPORTS_START _util_isArray,_observable_race PURE_IMPORTS_END */ @@ -98680,15 +98890,15 @@ function race() { /***/ }), -/* 604 */ +/* 605 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "repeat", function() { return repeat; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); -/* harmony import */ var _observable_empty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(478); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); +/* harmony import */ var _observable_empty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(479); /** PURE_IMPORTS_START tslib,_Subscriber,_observable_empty PURE_IMPORTS_END */ @@ -98745,18 +98955,18 @@ var RepeatSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 605 */ +/* 606 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "repeatWhen", function() { return repeatWhen; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(462); -/* harmony import */ var _util_tryCatch__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(453); -/* harmony import */ var _util_errorObject__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(454); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(504); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(505); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(463); +/* harmony import */ var _util_tryCatch__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(454); +/* harmony import */ var _util_errorObject__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(455); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(505); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(506); /** PURE_IMPORTS_START tslib,_Subject,_util_tryCatch,_util_errorObject,_OuterSubscriber,_util_subscribeToResult PURE_IMPORTS_END */ @@ -98841,14 +99051,14 @@ var RepeatWhenSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 606 */ +/* 607 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "retry", function() { return retry; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); /** PURE_IMPORTS_START tslib,_Subscriber PURE_IMPORTS_END */ @@ -98894,18 +99104,18 @@ var RetrySubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 607 */ +/* 608 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "retryWhen", function() { return retryWhen; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(462); -/* harmony import */ var _util_tryCatch__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(453); -/* harmony import */ var _util_errorObject__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(454); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(504); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(505); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(463); +/* harmony import */ var _util_tryCatch__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(454); +/* harmony import */ var _util_errorObject__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(455); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(505); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(506); /** PURE_IMPORTS_START tslib,_Subject,_util_tryCatch,_util_errorObject,_OuterSubscriber,_util_subscribeToResult PURE_IMPORTS_END */ @@ -98983,15 +99193,15 @@ var RetryWhenSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 608 */ +/* 609 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "sample", function() { return sample; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(504); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(505); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(505); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(506); /** PURE_IMPORTS_START tslib,_OuterSubscriber,_util_subscribeToResult PURE_IMPORTS_END */ @@ -99040,15 +99250,15 @@ var SampleSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 609 */ +/* 610 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "sampleTime", function() { return sampleTime; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); -/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(490); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); +/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(491); /** PURE_IMPORTS_START tslib,_Subscriber,_scheduler_async PURE_IMPORTS_END */ @@ -99100,7 +99310,7 @@ function dispatchNotification(state) { /***/ }), -/* 610 */ +/* 611 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -99108,10 +99318,10 @@ __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "sequenceEqual", function() { return sequenceEqual; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SequenceEqualOperator", function() { return SequenceEqualOperator; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SequenceEqualSubscriber", function() { return SequenceEqualSubscriber; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); -/* harmony import */ var _util_tryCatch__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(453); -/* harmony import */ var _util_errorObject__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(454); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); +/* harmony import */ var _util_tryCatch__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(454); +/* harmony import */ var _util_errorObject__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(455); /** PURE_IMPORTS_START tslib,_Subscriber,_util_tryCatch,_util_errorObject PURE_IMPORTS_END */ @@ -99230,15 +99440,15 @@ var SequenceEqualCompareToSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 611 */ +/* 612 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "share", function() { return share; }); -/* harmony import */ var _multicast__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(593); -/* harmony import */ var _refCount__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(465); -/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(462); +/* harmony import */ var _multicast__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(594); +/* harmony import */ var _refCount__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(466); +/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(463); /** PURE_IMPORTS_START _multicast,_refCount,_Subject PURE_IMPORTS_END */ @@ -99253,13 +99463,13 @@ function share() { /***/ }), -/* 612 */ +/* 613 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "shareReplay", function() { return shareReplay; }); -/* harmony import */ var _ReplaySubject__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(468); +/* harmony import */ var _ReplaySubject__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(469); /** PURE_IMPORTS_START _ReplaySubject PURE_IMPORTS_END */ function shareReplay(bufferSize, windowTime, scheduler) { @@ -99308,15 +99518,15 @@ function shareReplayOperator(bufferSize, windowTime, scheduler) { /***/ }), -/* 613 */ +/* 614 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "single", function() { return single; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); -/* harmony import */ var _util_EmptyError__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(498); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); +/* harmony import */ var _util_EmptyError__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(499); /** PURE_IMPORTS_START tslib,_Subscriber,_util_EmptyError PURE_IMPORTS_END */ @@ -99388,14 +99598,14 @@ var SingleSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 614 */ +/* 615 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "skip", function() { return skip; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); /** PURE_IMPORTS_START tslib,_Subscriber PURE_IMPORTS_END */ @@ -99430,15 +99640,15 @@ var SkipSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 615 */ +/* 616 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "skipLast", function() { return skipLast; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); -/* harmony import */ var _util_ArgumentOutOfRangeError__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(497); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); +/* harmony import */ var _util_ArgumentOutOfRangeError__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(498); /** PURE_IMPORTS_START tslib,_Subscriber,_util_ArgumentOutOfRangeError PURE_IMPORTS_END */ @@ -99492,16 +99702,16 @@ var SkipLastSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 616 */ +/* 617 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "skipUntil", function() { return skipUntil; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(504); -/* harmony import */ var _InnerSubscriber__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(506); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(505); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(505); +/* harmony import */ var _InnerSubscriber__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(507); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(506); /** PURE_IMPORTS_START tslib,_OuterSubscriber,_InnerSubscriber,_util_subscribeToResult PURE_IMPORTS_END */ @@ -99549,14 +99759,14 @@ var SkipUntilSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 617 */ +/* 618 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "skipWhile", function() { return skipWhile; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); /** PURE_IMPORTS_START tslib,_Subscriber PURE_IMPORTS_END */ @@ -99605,17 +99815,17 @@ var SkipWhileSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 618 */ +/* 619 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "startWith", function() { return startWith; }); -/* harmony import */ var _observable_fromArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(481); -/* harmony import */ var _observable_scalar__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(483); -/* harmony import */ var _observable_empty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(478); -/* harmony import */ var _observable_concat__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(514); -/* harmony import */ var _util_isScheduler__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(480); +/* harmony import */ var _observable_fromArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(482); +/* harmony import */ var _observable_scalar__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(484); +/* harmony import */ var _observable_empty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(479); +/* harmony import */ var _observable_concat__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(515); +/* harmony import */ var _util_isScheduler__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(481); /** PURE_IMPORTS_START _observable_fromArray,_observable_scalar,_observable_empty,_observable_concat,_util_isScheduler PURE_IMPORTS_END */ @@ -99651,13 +99861,13 @@ function startWith() { /***/ }), -/* 619 */ +/* 620 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "subscribeOn", function() { return subscribeOn; }); -/* harmony import */ var _observable_SubscribeOnObservable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(620); +/* harmony import */ var _observable_SubscribeOnObservable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(621); /** PURE_IMPORTS_START _observable_SubscribeOnObservable PURE_IMPORTS_END */ function subscribeOn(scheduler, delay) { @@ -99682,16 +99892,16 @@ var SubscribeOnOperator = /*@__PURE__*/ (function () { /***/ }), -/* 620 */ +/* 621 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SubscribeOnObservable", function() { return SubscribeOnObservable; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(442); -/* harmony import */ var _scheduler_asap__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(486); -/* harmony import */ var _util_isNumeric__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(531); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Observable__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(443); +/* harmony import */ var _scheduler_asap__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(487); +/* harmony import */ var _util_isNumeric__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(532); /** PURE_IMPORTS_START tslib,_Observable,_scheduler_asap,_util_isNumeric PURE_IMPORTS_END */ @@ -99746,14 +99956,14 @@ var SubscribeOnObservable = /*@__PURE__*/ (function (_super) { /***/ }), -/* 621 */ +/* 622 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "switchAll", function() { return switchAll; }); -/* harmony import */ var _switchMap__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(622); -/* harmony import */ var _util_identity__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(495); +/* harmony import */ var _switchMap__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(623); +/* harmony import */ var _util_identity__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(496); /** PURE_IMPORTS_START _switchMap,_util_identity PURE_IMPORTS_END */ @@ -99764,18 +99974,18 @@ function switchAll() { /***/ }), -/* 622 */ +/* 623 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "switchMap", function() { return switchMap; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(504); -/* harmony import */ var _InnerSubscriber__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(506); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(505); -/* harmony import */ var _map__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(501); -/* harmony import */ var _observable_from__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(515); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(505); +/* harmony import */ var _InnerSubscriber__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(507); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(506); +/* harmony import */ var _map__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(502); +/* harmony import */ var _observable_from__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(516); /** PURE_IMPORTS_START tslib,_OuterSubscriber,_InnerSubscriber,_util_subscribeToResult,_map,_observable_from PURE_IMPORTS_END */ @@ -99855,13 +100065,13 @@ var SwitchMapSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 623 */ +/* 624 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "switchMapTo", function() { return switchMapTo; }); -/* harmony import */ var _switchMap__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(622); +/* harmony import */ var _switchMap__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(623); /** PURE_IMPORTS_START _switchMap PURE_IMPORTS_END */ function switchMapTo(innerObservable, resultSelector) { @@ -99871,15 +100081,15 @@ function switchMapTo(innerObservable, resultSelector) { /***/ }), -/* 624 */ +/* 625 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "takeUntil", function() { return takeUntil; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(504); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(505); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(505); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(506); /** PURE_IMPORTS_START tslib,_OuterSubscriber,_util_subscribeToResult PURE_IMPORTS_END */ @@ -99921,14 +100131,14 @@ var TakeUntilSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 625 */ +/* 626 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "takeWhile", function() { return takeWhile; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); /** PURE_IMPORTS_START tslib,_Subscriber PURE_IMPORTS_END */ @@ -99979,16 +100189,16 @@ var TakeWhileSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 626 */ +/* 627 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "defaultThrottleConfig", function() { return defaultThrottleConfig; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "throttle", function() { return throttle; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(504); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(505); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(505); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(506); /** PURE_IMPORTS_START tslib,_OuterSubscriber,_util_subscribeToResult PURE_IMPORTS_END */ @@ -100083,16 +100293,16 @@ var ThrottleSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 627 */ +/* 628 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "throttleTime", function() { return throttleTime; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); -/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(490); -/* harmony import */ var _throttle__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(626); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); +/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(491); +/* harmony import */ var _throttle__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(627); /** PURE_IMPORTS_START tslib,_Subscriber,_scheduler_async,_throttle PURE_IMPORTS_END */ @@ -100177,17 +100387,17 @@ function dispatchNext(arg) { /***/ }), -/* 628 */ +/* 629 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "timeInterval", function() { return timeInterval; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "TimeInterval", function() { return TimeInterval; }); -/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(490); -/* harmony import */ var _scan__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(588); -/* harmony import */ var _observable_defer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(524); -/* harmony import */ var _map__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(501); +/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(491); +/* harmony import */ var _scan__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(589); +/* harmony import */ var _observable_defer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(525); +/* harmony import */ var _map__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(502); /** PURE_IMPORTS_START _scheduler_async,_scan,_observable_defer,_map PURE_IMPORTS_END */ @@ -100221,16 +100431,16 @@ var TimeInterval = /*@__PURE__*/ (function () { /***/ }), -/* 629 */ +/* 630 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "timeout", function() { return timeout; }); -/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(490); -/* harmony import */ var _util_TimeoutError__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(499); -/* harmony import */ var _timeoutWith__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(630); -/* harmony import */ var _observable_throwError__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(484); +/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(491); +/* harmony import */ var _util_TimeoutError__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(500); +/* harmony import */ var _timeoutWith__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(631); +/* harmony import */ var _observable_throwError__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(485); /** PURE_IMPORTS_START _scheduler_async,_util_TimeoutError,_timeoutWith,_observable_throwError PURE_IMPORTS_END */ @@ -100246,17 +100456,17 @@ function timeout(due, scheduler) { /***/ }), -/* 630 */ +/* 631 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "timeoutWith", function() { return timeoutWith; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(490); -/* harmony import */ var _util_isDate__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(560); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(504); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(505); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(491); +/* harmony import */ var _util_isDate__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(561); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(505); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(506); /** PURE_IMPORTS_START tslib,_scheduler_async,_util_isDate,_OuterSubscriber,_util_subscribeToResult PURE_IMPORTS_END */ @@ -100328,15 +100538,15 @@ var TimeoutWithSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 631 */ +/* 632 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "timestamp", function() { return timestamp; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Timestamp", function() { return Timestamp; }); -/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(490); -/* harmony import */ var _map__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(501); +/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(491); +/* harmony import */ var _map__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(502); /** PURE_IMPORTS_START _scheduler_async,_map PURE_IMPORTS_END */ @@ -100358,13 +100568,13 @@ var Timestamp = /*@__PURE__*/ (function () { /***/ }), -/* 632 */ +/* 633 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "toArray", function() { return toArray; }); -/* harmony import */ var _reduce__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(587); +/* harmony import */ var _reduce__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(588); /** PURE_IMPORTS_START _reduce PURE_IMPORTS_END */ function toArrayReducer(arr, item, index) { @@ -100381,16 +100591,16 @@ function toArray() { /***/ }), -/* 633 */ +/* 634 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "window", function() { return window; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(462); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(504); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(505); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(463); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(505); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(506); /** PURE_IMPORTS_START tslib,_Subject,_OuterSubscriber,_util_subscribeToResult PURE_IMPORTS_END */ @@ -100461,15 +100671,15 @@ var WindowSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 634 */ +/* 635 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "windowCount", function() { return windowCount; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(444); -/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(462); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(445); +/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(463); /** PURE_IMPORTS_START tslib,_Subscriber,_Subject PURE_IMPORTS_END */ @@ -100551,18 +100761,18 @@ var WindowCountSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 635 */ +/* 636 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "windowTime", function() { return windowTime; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(462); -/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(490); -/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(444); -/* harmony import */ var _util_isNumeric__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(531); -/* harmony import */ var _util_isScheduler__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(480); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(463); +/* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(491); +/* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(445); +/* harmony import */ var _util_isNumeric__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(532); +/* harmony import */ var _util_isScheduler__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(481); /** PURE_IMPORTS_START tslib,_Subject,_scheduler_async,_Subscriber,_util_isNumeric,_util_isScheduler PURE_IMPORTS_END */ @@ -100721,19 +100931,19 @@ function dispatchWindowClose(state) { /***/ }), -/* 636 */ +/* 637 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "windowToggle", function() { return windowToggle; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(462); -/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(450); -/* harmony import */ var _util_tryCatch__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(453); -/* harmony import */ var _util_errorObject__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(454); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(504); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(505); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(463); +/* harmony import */ var _Subscription__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(451); +/* harmony import */ var _util_tryCatch__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(454); +/* harmony import */ var _util_errorObject__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(455); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(505); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(506); /** PURE_IMPORTS_START tslib,_Subject,_Subscription,_util_tryCatch,_util_errorObject,_OuterSubscriber,_util_subscribeToResult PURE_IMPORTS_END */ @@ -100867,18 +101077,18 @@ var WindowToggleSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 637 */ +/* 638 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "windowWhen", function() { return windowWhen; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(462); -/* harmony import */ var _util_tryCatch__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(453); -/* harmony import */ var _util_errorObject__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(454); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(504); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(505); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(463); +/* harmony import */ var _util_tryCatch__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(454); +/* harmony import */ var _util_errorObject__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(455); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(505); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(506); /** PURE_IMPORTS_START tslib,_Subject,_util_tryCatch,_util_errorObject,_OuterSubscriber,_util_subscribeToResult PURE_IMPORTS_END */ @@ -100966,15 +101176,15 @@ var WindowSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 638 */ +/* 639 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "withLatestFrom", function() { return withLatestFrom; }); -/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(445); -/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(504); -/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(505); +/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(446); +/* harmony import */ var _OuterSubscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(505); +/* harmony import */ var _util_subscribeToResult__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(506); /** PURE_IMPORTS_START tslib,_OuterSubscriber,_util_subscribeToResult PURE_IMPORTS_END */ @@ -101061,13 +101271,13 @@ var WithLatestFromSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 639 */ +/* 640 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "zip", function() { return zip; }); -/* harmony import */ var _observable_zip__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(540); +/* harmony import */ var _observable_zip__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(541); /** PURE_IMPORTS_START _observable_zip PURE_IMPORTS_END */ function zip() { @@ -101083,13 +101293,13 @@ function zip() { /***/ }), -/* 640 */ +/* 641 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "zipAll", function() { return zipAll; }); -/* harmony import */ var _observable_zip__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(540); +/* harmony import */ var _observable_zip__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(541); /** PURE_IMPORTS_START _observable_zip PURE_IMPORTS_END */ function zipAll(project) { @@ -101099,13 +101309,13 @@ function zipAll(project) { /***/ }), -/* 641 */ +/* 642 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var isPromise = __webpack_require__(642); +var isPromise = __webpack_require__(643); /** * Return a function that will run a function asynchronously or synchronously @@ -101167,7 +101377,7 @@ runAsync.cb = function (func, cb) { /***/ }), -/* 642 */ +/* 643 */ /***/ (function(module, exports) { module.exports = isPromise; @@ -101178,14 +101388,14 @@ function isPromise(obj) { /***/ }), -/* 643 */ +/* 644 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var _ = __webpack_require__(50); -var { from, of } = __webpack_require__(441); -var runAsync = __webpack_require__(641); +var _ = __webpack_require__(51); +var { from, of } = __webpack_require__(442); +var runAsync = __webpack_require__(642); /** * Resolve a question property value if it is passed as a function. @@ -101211,7 +101421,7 @@ exports.fetchAsyncQuestionProperty = function(question, prop, answers) { /***/ }), -/* 644 */ +/* 645 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -101220,15 +101430,15 @@ exports.fetchAsyncQuestionProperty = function(question, prop, answers) { * `list` type prompt */ -var _ = __webpack_require__(50); -var chalk = __webpack_require__(53); -var figures = __webpack_require__(432); -var cliCursor = __webpack_require__(645); -var runAsync = __webpack_require__(641); -var { flatMap, map, take, takeUntil } = __webpack_require__(541); -var Base = __webpack_require__(649); -var observe = __webpack_require__(661); -var Paginator = __webpack_require__(662); +var _ = __webpack_require__(51); +var chalk = __webpack_require__(54); +var figures = __webpack_require__(433); +var cliCursor = __webpack_require__(646); +var runAsync = __webpack_require__(642); +var { flatMap, map, take, takeUntil } = __webpack_require__(542); +var Base = __webpack_require__(650); +var observe = __webpack_require__(662); +var Paginator = __webpack_require__(663); class ListPrompt extends Base { constructor(questions, rl, answers) { @@ -101400,12 +101610,12 @@ module.exports = ListPrompt; /***/ }), -/* 645 */ +/* 646 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const restoreCursor = __webpack_require__(646); +const restoreCursor = __webpack_require__(647); let hidden = false; @@ -101446,13 +101656,13 @@ exports.toggle = (force, stream) => { /***/ }), -/* 646 */ +/* 647 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const onetime = __webpack_require__(647); -const signalExit = __webpack_require__(21); +const onetime = __webpack_require__(648); +const signalExit = __webpack_require__(22); module.exports = onetime(() => { signalExit(() => { @@ -101462,12 +101672,12 @@ module.exports = onetime(() => { /***/ }), -/* 647 */ +/* 648 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const mimicFn = __webpack_require__(648); +const mimicFn = __webpack_require__(649); module.exports = (fn, opts) => { // TODO: Remove this in v3 @@ -101508,7 +101718,7 @@ module.exports = (fn, opts) => { /***/ }), -/* 648 */ +/* 649 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -101524,7 +101734,7 @@ module.exports = (to, from) => { /***/ }), -/* 649 */ +/* 650 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -101534,12 +101744,12 @@ module.exports = (to, from) => { * Should be extended by prompt types. */ -var _ = __webpack_require__(50); -var chalk = __webpack_require__(53); -var runAsync = __webpack_require__(641); -var { filter, flatMap, share, take, takeUntil } = __webpack_require__(541); -var Choices = __webpack_require__(650); -var ScreenManager = __webpack_require__(652); +var _ = __webpack_require__(51); +var chalk = __webpack_require__(54); +var runAsync = __webpack_require__(642); +var { filter, flatMap, share, take, takeUntil } = __webpack_require__(542); +var Choices = __webpack_require__(651); +var ScreenManager = __webpack_require__(653); class Prompt { constructor(question, rl, answers) { @@ -101679,15 +101889,15 @@ module.exports = Prompt; /***/ }), -/* 650 */ +/* 651 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var assert = __webpack_require__(22); -var _ = __webpack_require__(50); -var Separator = __webpack_require__(431); -var Choice = __webpack_require__(651); +var assert = __webpack_require__(23); +var _ = __webpack_require__(51); +var Separator = __webpack_require__(432); +var Choice = __webpack_require__(652); /** * Choices collection @@ -101800,12 +102010,12 @@ module.exports = class Choices { /***/ }), -/* 651 */ +/* 652 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var _ = __webpack_require__(50); +var _ = __webpack_require__(51); /** * Choice object @@ -101844,16 +102054,16 @@ module.exports = class Choice { /***/ }), -/* 652 */ +/* 653 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var _ = __webpack_require__(50); -var util = __webpack_require__(438); -var cliWidth = __webpack_require__(653); -var stripAnsi = __webpack_require__(655); -var stringWidth = __webpack_require__(657); +var _ = __webpack_require__(51); +var util = __webpack_require__(439); +var cliWidth = __webpack_require__(654); +var stripAnsi = __webpack_require__(656); +var stringWidth = __webpack_require__(658); function height(content) { return content.split('\n').length; @@ -101989,7 +102199,7 @@ module.exports = ScreenManager; /***/ }), -/* 653 */ +/* 654 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -102001,7 +102211,7 @@ function normalizeOpts(options) { var defaultOpts = { defaultWidth: 0, output: process.stdout, - tty: __webpack_require__(654) + tty: __webpack_require__(655) }; if (!options) { @@ -102045,24 +102255,24 @@ function cliWidth(options) { /***/ }), -/* 654 */ +/* 655 */ /***/ (function(module, exports) { module.exports = require("tty"); /***/ }), -/* 655 */ +/* 656 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const ansiRegex = __webpack_require__(656); +const ansiRegex = __webpack_require__(657); module.exports = input => typeof input === 'string' ? input.replace(ansiRegex(), '') : input; /***/ }), -/* 656 */ +/* 657 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -102083,13 +102293,13 @@ module.exports = options => { /***/ }), -/* 657 */ +/* 658 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const stripAnsi = __webpack_require__(658); -const isFullwidthCodePoint = __webpack_require__(660); +const stripAnsi = __webpack_require__(659); +const isFullwidthCodePoint = __webpack_require__(661); module.exports = str => { if (typeof str !== 'string' || str.length === 0) { @@ -102126,18 +102336,18 @@ module.exports = str => { /***/ }), -/* 658 */ +/* 659 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const ansiRegex = __webpack_require__(659); +const ansiRegex = __webpack_require__(660); module.exports = input => typeof input === 'string' ? input.replace(ansiRegex(), '') : input; /***/ }), -/* 659 */ +/* 660 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -102154,7 +102364,7 @@ module.exports = () => { /***/ }), -/* 660 */ +/* 661 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -102207,13 +102417,13 @@ module.exports = x => { /***/ }), -/* 661 */ +/* 662 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var { fromEvent } = __webpack_require__(441); -var { filter, map, share } = __webpack_require__(541); +var { fromEvent } = __webpack_require__(442); +var { filter, map, share } = __webpack_require__(542); function normalizeKeypressEvents(value, key) { return { value: value, key: key || {} }; @@ -102267,14 +102477,14 @@ module.exports = function(rl) { /***/ }), -/* 662 */ +/* 663 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var _ = __webpack_require__(50); -var chalk = __webpack_require__(53); +var _ = __webpack_require__(51); +var chalk = __webpack_require__(54); /** * The paginator keeps track of a pointer index in a list and returns @@ -102327,7 +102537,7 @@ module.exports = Paginator; /***/ }), -/* 663 */ +/* 664 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -102336,10 +102546,10 @@ module.exports = Paginator; * `input` type prompt */ -var chalk = __webpack_require__(53); -var { map, takeUntil } = __webpack_require__(541); -var Base = __webpack_require__(649); -var observe = __webpack_require__(661); +var chalk = __webpack_require__(54); +var { map, takeUntil } = __webpack_require__(542); +var Base = __webpack_require__(650); +var observe = __webpack_require__(662); class InputPrompt extends Base { /** @@ -102444,7 +102654,7 @@ module.exports = InputPrompt; /***/ }), -/* 664 */ +/* 665 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -102453,7 +102663,7 @@ module.exports = InputPrompt; * `input` type prompt */ -var Input = __webpack_require__(663); +var Input = __webpack_require__(664); /** * Extention of the Input prompt specifically for use with number inputs. @@ -102479,7 +102689,7 @@ module.exports = NumberPrompt; /***/ }), -/* 665 */ +/* 666 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -102488,11 +102698,11 @@ module.exports = NumberPrompt; * `confirm` type prompt */ -var _ = __webpack_require__(50); -var chalk = __webpack_require__(53); -var { take, takeUntil } = __webpack_require__(541); -var Base = __webpack_require__(649); -var observe = __webpack_require__(661); +var _ = __webpack_require__(51); +var chalk = __webpack_require__(54); +var { take, takeUntil } = __webpack_require__(542); +var Base = __webpack_require__(650); +var observe = __webpack_require__(662); class ConfirmPrompt extends Base { constructor(questions, rl, answers) { @@ -102586,7 +102796,7 @@ module.exports = ConfirmPrompt; /***/ }), -/* 666 */ +/* 667 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -102595,13 +102805,13 @@ module.exports = ConfirmPrompt; * `rawlist` type prompt */ -var _ = __webpack_require__(50); -var chalk = __webpack_require__(53); -var { map, takeUntil } = __webpack_require__(541); -var Base = __webpack_require__(649); -var Separator = __webpack_require__(431); -var observe = __webpack_require__(661); -var Paginator = __webpack_require__(662); +var _ = __webpack_require__(51); +var chalk = __webpack_require__(54); +var { map, takeUntil } = __webpack_require__(542); +var Base = __webpack_require__(650); +var Separator = __webpack_require__(432); +var observe = __webpack_require__(662); +var Paginator = __webpack_require__(663); class RawListPrompt extends Base { constructor(questions, rl, answers) { @@ -102806,7 +103016,7 @@ module.exports = RawListPrompt; /***/ }), -/* 667 */ +/* 668 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -102815,13 +103025,13 @@ module.exports = RawListPrompt; * `rawlist` type prompt */ -var _ = __webpack_require__(50); -var chalk = __webpack_require__(53); -var { map, takeUntil } = __webpack_require__(541); -var Base = __webpack_require__(649); -var Separator = __webpack_require__(431); -var observe = __webpack_require__(661); -var Paginator = __webpack_require__(662); +var _ = __webpack_require__(51); +var chalk = __webpack_require__(54); +var { map, takeUntil } = __webpack_require__(542); +var Base = __webpack_require__(650); +var Separator = __webpack_require__(432); +var observe = __webpack_require__(662); +var Paginator = __webpack_require__(663); class ExpandPrompt extends Base { constructor(questions, rl, answers) { @@ -103080,7 +103290,7 @@ module.exports = ExpandPrompt; /***/ }), -/* 668 */ +/* 669 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -103089,14 +103299,14 @@ module.exports = ExpandPrompt; * `list` type prompt */ -var _ = __webpack_require__(50); -var chalk = __webpack_require__(53); -var cliCursor = __webpack_require__(645); -var figures = __webpack_require__(432); -var { map, takeUntil } = __webpack_require__(541); -var Base = __webpack_require__(649); -var observe = __webpack_require__(661); -var Paginator = __webpack_require__(662); +var _ = __webpack_require__(51); +var chalk = __webpack_require__(54); +var cliCursor = __webpack_require__(646); +var figures = __webpack_require__(433); +var { map, takeUntil } = __webpack_require__(542); +var Base = __webpack_require__(650); +var observe = __webpack_require__(662); +var Paginator = __webpack_require__(663); class CheckboxPrompt extends Base { constructor(questions, rl, answers) { @@ -103340,7 +103550,7 @@ module.exports = CheckboxPrompt; /***/ }), -/* 669 */ +/* 670 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -103349,10 +103559,10 @@ module.exports = CheckboxPrompt; * `password` type prompt */ -var chalk = __webpack_require__(53); -var { map, takeUntil } = __webpack_require__(541); -var Base = __webpack_require__(649); -var observe = __webpack_require__(661); +var chalk = __webpack_require__(54); +var { map, takeUntil } = __webpack_require__(542); +var Base = __webpack_require__(650); +var observe = __webpack_require__(662); function mask(input, maskChar) { input = String(input); @@ -103454,7 +103664,7 @@ module.exports = PasswordPrompt; /***/ }), -/* 670 */ +/* 671 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -103463,11 +103673,11 @@ module.exports = PasswordPrompt; * `editor` type prompt */ -var chalk = __webpack_require__(53); -var editAsync = __webpack_require__(671).editAsync; -var Base = __webpack_require__(649); -var observe = __webpack_require__(661); -var { Subject } = __webpack_require__(441); +var chalk = __webpack_require__(54); +var editAsync = __webpack_require__(672).editAsync; +var Base = __webpack_require__(650); +var observe = __webpack_require__(662); +var { Subject } = __webpack_require__(442); class EditorPrompt extends Base { /** @@ -103561,7 +103771,7 @@ module.exports = EditorPrompt; /***/ }), -/* 671 */ +/* 672 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -103573,18 +103783,18 @@ module.exports = EditorPrompt; * MIT 2018 */ Object.defineProperty(exports, "__esModule", { value: true }); -var chardet_1 = __webpack_require__(672); -var child_process_1 = __webpack_require__(278); +var chardet_1 = __webpack_require__(673); +var child_process_1 = __webpack_require__(279); var fs_1 = __webpack_require__(5); -var iconv_lite_1 = __webpack_require__(679); -var tmp_1 = __webpack_require__(82); -var CreateFileError_1 = __webpack_require__(701); +var iconv_lite_1 = __webpack_require__(680); +var tmp_1 = __webpack_require__(83); +var CreateFileError_1 = __webpack_require__(702); exports.CreateFileError = CreateFileError_1.CreateFileError; -var LaunchEditorError_1 = __webpack_require__(702); +var LaunchEditorError_1 = __webpack_require__(703); exports.LaunchEditorError = LaunchEditorError_1.LaunchEditorError; -var ReadFileError_1 = __webpack_require__(703); +var ReadFileError_1 = __webpack_require__(704); exports.ReadFileError = ReadFileError_1.ReadFileError; -var RemoveFileError_1 = __webpack_require__(704); +var RemoveFileError_1 = __webpack_require__(705); exports.RemoveFileError = RemoveFileError_1.RemoveFileError; function edit(text) { if (text === void 0) { text = ""; } @@ -103753,17 +103963,17 @@ exports.ExternalEditor = ExternalEditor; /***/ }), -/* 672 */ +/* 673 */ /***/ (function(module, exports, __webpack_require__) { var fs = __webpack_require__(5); -var utf8 = __webpack_require__(673), - unicode = __webpack_require__(675), - mbcs = __webpack_require__(676), - sbcs = __webpack_require__(677), - iso2022 = __webpack_require__(678); +var utf8 = __webpack_require__(674), + unicode = __webpack_require__(676), + mbcs = __webpack_require__(677), + sbcs = __webpack_require__(678), + iso2022 = __webpack_require__(679); var self = this; @@ -103910,11 +104120,11 @@ module.exports.detectFileAllSync = function(filepath, opts) { /***/ }), -/* 673 */ +/* 674 */ /***/ (function(module, exports, __webpack_require__) { -var Match = __webpack_require__ (674); +var Match = __webpack_require__ (675); /** * Charset recognizer for UTF-8 @@ -104000,7 +104210,7 @@ module.exports = function() { /***/ }), -/* 674 */ +/* 675 */ /***/ (function(module, exports) { @@ -104012,13 +104222,13 @@ module.exports = function(det, rec, confidence, name, lang) { /***/ }), -/* 675 */ +/* 676 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var util = __webpack_require__(16), - Match = __webpack_require__ (674); +var util = __webpack_require__(17), + Match = __webpack_require__ (675); /** * This class matches UTF-16 and UTF-32, both big- and little-endian. The @@ -104131,11 +104341,11 @@ util.inherits(module.exports.UTF_32LE, UTF_32); /***/ }), -/* 676 */ +/* 677 */ /***/ (function(module, exports, __webpack_require__) { -var util = __webpack_require__(16), - Match = __webpack_require__ (674); +var util = __webpack_require__(17), + Match = __webpack_require__ (675); /** * Binary search implementation (recursive) @@ -104639,11 +104849,11 @@ util.inherits(module.exports.gb_18030, mbcs); /***/ }), -/* 677 */ +/* 678 */ /***/ (function(module, exports, __webpack_require__) { -var util = __webpack_require__(16), - Match = __webpack_require__ (674); +var util = __webpack_require__(17), + Match = __webpack_require__ (675); /** * This class recognizes single-byte encodings. Because the encoding scheme is so @@ -105552,11 +105762,11 @@ util.inherits(module.exports.ISO_8859_7, sbcs); /***/ }), -/* 678 */ +/* 679 */ /***/ (function(module, exports, __webpack_require__) { -var util = __webpack_require__(16), - Match = __webpack_require__ (674); +var util = __webpack_require__(17), + Match = __webpack_require__ (675); /** @@ -105699,7 +105909,7 @@ util.inherits(module.exports.ISO_2022_CN, ISO_2022); /***/ }), -/* 679 */ +/* 680 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -105707,9 +105917,9 @@ util.inherits(module.exports.ISO_2022_CN, ISO_2022); // Some environments don't have global Buffer (e.g. React Native). // Solution would be installing npm modules "buffer" and "stream" explicitly. -var Buffer = __webpack_require__(680).Buffer; +var Buffer = __webpack_require__(681).Buffer; -var bomHandling = __webpack_require__(681), +var bomHandling = __webpack_require__(682), iconv = module.exports; // All codecs and aliases are kept here, keyed by encoding name/alias. @@ -105767,7 +105977,7 @@ iconv.fromEncoding = iconv.decode; iconv._codecDataCache = {}; iconv.getCodec = function getCodec(encoding) { if (!iconv.encodings) - iconv.encodings = __webpack_require__(682); // Lazy load all encoding definitions. + iconv.encodings = __webpack_require__(683); // Lazy load all encoding definitions. // Canonicalize encoding name: strip all non-alphanumeric chars and appended year. var enc = iconv._canonicalizeEncoding(encoding); @@ -105846,18 +106056,18 @@ if (nodeVer) { // Load streaming support in Node v0.10+ var nodeVerArr = nodeVer.split(".").map(Number); if (nodeVerArr[0] > 0 || nodeVerArr[1] >= 10) { - __webpack_require__(699)(iconv); + __webpack_require__(700)(iconv); } // Load Node primitive extensions. - __webpack_require__(700)(iconv); + __webpack_require__(701)(iconv); } if (false) {} /***/ }), -/* 680 */ +/* 681 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -105865,7 +106075,7 @@ if (false) {} -var buffer = __webpack_require__(359) +var buffer = __webpack_require__(360) var Buffer = buffer.Buffer var safer = {} @@ -105941,7 +106151,7 @@ module.exports = safer /***/ }), -/* 681 */ +/* 682 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -106000,7 +106210,7 @@ StripBOMWrapper.prototype.end = function() { /***/ }), -/* 682 */ +/* 683 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -106009,7 +106219,6 @@ StripBOMWrapper.prototype.end = function() { // Update this array if you add/rename/remove files in this directory. // We support Browserify by skipping automatic module discovery and requiring modules directly. var modules = [ - __webpack_require__(683), __webpack_require__(684), __webpack_require__(685), __webpack_require__(686), @@ -106017,6 +106226,7 @@ var modules = [ __webpack_require__(688), __webpack_require__(689), __webpack_require__(690), + __webpack_require__(691), ]; // Put all encoding/alias/codec definitions to single object and export it. @@ -106029,12 +106239,12 @@ for (var i = 0; i < modules.length; i++) { /***/ }), -/* 683 */ +/* 684 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var Buffer = __webpack_require__(680).Buffer; +var Buffer = __webpack_require__(681).Buffer; // Export Node.js internal encodings. @@ -106081,7 +106291,7 @@ InternalCodec.prototype.decoder = InternalDecoder; //------------------------------------------------------------------------------ // We use node.js internal decoder. Its signature is the same as ours. -var StringDecoder = __webpack_require__(363).StringDecoder; +var StringDecoder = __webpack_require__(364).StringDecoder; if (!StringDecoder.prototype.end) // Node v0.8 doesn't have this method. StringDecoder.prototype.end = function() {}; @@ -106224,12 +106434,12 @@ InternalDecoderCesu8.prototype.end = function() { /***/ }), -/* 684 */ +/* 685 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var Buffer = __webpack_require__(680).Buffer; +var Buffer = __webpack_require__(681).Buffer; // Note: UTF16-LE (or UCS2) codec is Node.js native. See encodings/internal.js @@ -106408,12 +106618,12 @@ function detectEncoding(buf, defaultEncoding) { /***/ }), -/* 685 */ +/* 686 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var Buffer = __webpack_require__(680).Buffer; +var Buffer = __webpack_require__(681).Buffer; // UTF-7 codec, according to https://tools.ietf.org/html/rfc2152 // See also below a UTF-7-IMAP codec, according to http://tools.ietf.org/html/rfc3501#section-5.1.3 @@ -106705,12 +106915,12 @@ Utf7IMAPDecoder.prototype.end = function() { /***/ }), -/* 686 */ +/* 687 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var Buffer = __webpack_require__(680).Buffer; +var Buffer = __webpack_require__(681).Buffer; // Single-byte codec. Needs a 'chars' string parameter that contains 256 or 128 chars that // correspond to encoded bytes (if 128 - then lower half is ASCII). @@ -106784,7 +106994,7 @@ SBCSDecoder.prototype.end = function() { /***/ }), -/* 687 */ +/* 688 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -106965,7 +107175,7 @@ module.exports = { /***/ }), -/* 688 */ +/* 689 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -107422,12 +107632,12 @@ module.exports = { } /***/ }), -/* 689 */ +/* 690 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var Buffer = __webpack_require__(680).Buffer; +var Buffer = __webpack_require__(681).Buffer; // Multibyte codec. In this scheme, a character is represented by 1 or more bytes. // Our codec supports UTF-16 surrogates, extensions for GB18030 and unicode sequences. @@ -107984,7 +108194,7 @@ function findIdx(table, val) { /***/ }), -/* 690 */ +/* 691 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -108030,7 +108240,7 @@ module.exports = { 'shiftjis': { type: '_dbcs', - table: function() { return __webpack_require__(691) }, + table: function() { return __webpack_require__(692) }, encodeAdd: {'\u00a5': 0x5C, '\u203E': 0x7E}, encodeSkipVals: [{from: 0xED40, to: 0xF940}], }, @@ -108047,7 +108257,7 @@ module.exports = { 'eucjp': { type: '_dbcs', - table: function() { return __webpack_require__(692) }, + table: function() { return __webpack_require__(693) }, encodeAdd: {'\u00a5': 0x5C, '\u203E': 0x7E}, }, @@ -108074,13 +108284,13 @@ module.exports = { '936': 'cp936', 'cp936': { type: '_dbcs', - table: function() { return __webpack_require__(693) }, + table: function() { return __webpack_require__(694) }, }, // GBK (~22000 chars) is an extension of CP936 that added user-mapped chars and some other. 'gbk': { type: '_dbcs', - table: function() { return __webpack_require__(693).concat(__webpack_require__(694)) }, + table: function() { return __webpack_require__(694).concat(__webpack_require__(695)) }, }, 'xgbk': 'gbk', 'isoir58': 'gbk', @@ -108092,8 +108302,8 @@ module.exports = { // http://www.khngai.com/chinese/charmap/tblgbk.php?page=0 'gb18030': { type: '_dbcs', - table: function() { return __webpack_require__(693).concat(__webpack_require__(694)) }, - gb18030: function() { return __webpack_require__(695) }, + table: function() { return __webpack_require__(694).concat(__webpack_require__(695)) }, + gb18030: function() { return __webpack_require__(696) }, encodeSkipVals: [0x80], encodeAdd: {'€': 0xA2E3}, }, @@ -108108,7 +108318,7 @@ module.exports = { '949': 'cp949', 'cp949': { type: '_dbcs', - table: function() { return __webpack_require__(696) }, + table: function() { return __webpack_require__(697) }, }, 'cseuckr': 'cp949', @@ -108149,14 +108359,14 @@ module.exports = { '950': 'cp950', 'cp950': { type: '_dbcs', - table: function() { return __webpack_require__(697) }, + table: function() { return __webpack_require__(698) }, }, // Big5 has many variations and is an extension of cp950. We use Encoding Standard's as a consensus. 'big5': 'big5hkscs', 'big5hkscs': { type: '_dbcs', - table: function() { return __webpack_require__(697).concat(__webpack_require__(698)) }, + table: function() { return __webpack_require__(698).concat(__webpack_require__(699)) }, encodeSkipVals: [0xa2cc], }, @@ -108167,62 +108377,62 @@ module.exports = { /***/ }), -/* 691 */ +/* 692 */ /***/ (function(module) { module.exports = [["0","\u0000",128],["a1","。",62],["8140"," 、。,.・:;?!゛゜´`¨^ ̄_ヽヾゝゞ〃仝々〆〇ー―‐/\~∥|…‥‘’“”()〔〕[]{}〈",9,"+-±×"],["8180","÷=≠<>≦≧∞∴♂♀°′″℃¥$¢£%#&*@§☆★○●◎◇◆□■△▲▽▼※〒→←↑↓〓"],["81b8","∈∋⊆⊇⊂⊃∪∩"],["81c8","∧∨¬⇒⇔∀∃"],["81da","∠⊥⌒∂∇≡≒≪≫√∽∝∵∫∬"],["81f0","ʼn♯♭♪†‡¶"],["81fc","◯"],["824f","0",9],["8260","A",25],["8281","a",25],["829f","ぁ",82],["8340","ァ",62],["8380","ム",22],["839f","Α",16,"Σ",6],["83bf","α",16,"σ",6],["8440","А",5,"ЁЖ",25],["8470","а",5,"ёж",7],["8480","о",17],["849f","─│┌┐┘└├┬┤┴┼━┃┏┓┛┗┣┳┫┻╋┠┯┨┷┿┝┰┥┸╂"],["8740","①",19,"Ⅰ",9],["875f","㍉㌔㌢㍍㌘㌧㌃㌶㍑㍗㌍㌦㌣㌫㍊㌻㎜㎝㎞㎎㎏㏄㎡"],["877e","㍻"],["8780","〝〟№㏍℡㊤",4,"㈱㈲㈹㍾㍽㍼≒≡∫∮∑√⊥∠∟⊿∵∩∪"],["889f","亜唖娃阿哀愛挨姶逢葵茜穐悪握渥旭葦芦鯵梓圧斡扱宛姐虻飴絢綾鮎或粟袷安庵按暗案闇鞍杏以伊位依偉囲夷委威尉惟意慰易椅為畏異移維緯胃萎衣謂違遺医井亥域育郁磯一壱溢逸稲茨芋鰯允印咽員因姻引飲淫胤蔭"],["8940","院陰隠韻吋右宇烏羽迂雨卯鵜窺丑碓臼渦嘘唄欝蔚鰻姥厩浦瓜閏噂云運雲荏餌叡営嬰影映曳栄永泳洩瑛盈穎頴英衛詠鋭液疫益駅悦謁越閲榎厭円"],["8980","園堰奄宴延怨掩援沿演炎焔煙燕猿縁艶苑薗遠鉛鴛塩於汚甥凹央奥往応押旺横欧殴王翁襖鴬鴎黄岡沖荻億屋憶臆桶牡乙俺卸恩温穏音下化仮何伽価佳加可嘉夏嫁家寡科暇果架歌河火珂禍禾稼箇花苛茄荷華菓蝦課嘩貨迦過霞蚊俄峨我牙画臥芽蛾賀雅餓駕介会解回塊壊廻快怪悔恢懐戒拐改"],["8a40","魁晦械海灰界皆絵芥蟹開階貝凱劾外咳害崖慨概涯碍蓋街該鎧骸浬馨蛙垣柿蛎鈎劃嚇各廓拡撹格核殻獲確穫覚角赫較郭閣隔革学岳楽額顎掛笠樫"],["8a80","橿梶鰍潟割喝恰括活渇滑葛褐轄且鰹叶椛樺鞄株兜竃蒲釜鎌噛鴨栢茅萱粥刈苅瓦乾侃冠寒刊勘勧巻喚堪姦完官寛干幹患感慣憾換敢柑桓棺款歓汗漢澗潅環甘監看竿管簡緩缶翰肝艦莞観諌貫還鑑間閑関陥韓館舘丸含岸巌玩癌眼岩翫贋雁頑顔願企伎危喜器基奇嬉寄岐希幾忌揮机旗既期棋棄"],["8b40","機帰毅気汽畿祈季稀紀徽規記貴起軌輝飢騎鬼亀偽儀妓宜戯技擬欺犠疑祇義蟻誼議掬菊鞠吉吃喫桔橘詰砧杵黍却客脚虐逆丘久仇休及吸宮弓急救"],["8b80","朽求汲泣灸球究窮笈級糾給旧牛去居巨拒拠挙渠虚許距鋸漁禦魚亨享京供侠僑兇競共凶協匡卿叫喬境峡強彊怯恐恭挟教橋況狂狭矯胸脅興蕎郷鏡響饗驚仰凝尭暁業局曲極玉桐粁僅勤均巾錦斤欣欽琴禁禽筋緊芹菌衿襟謹近金吟銀九倶句区狗玖矩苦躯駆駈駒具愚虞喰空偶寓遇隅串櫛釧屑屈"],["8c40","掘窟沓靴轡窪熊隈粂栗繰桑鍬勲君薫訓群軍郡卦袈祁係傾刑兄啓圭珪型契形径恵慶慧憩掲携敬景桂渓畦稽系経継繋罫茎荊蛍計詣警軽頚鶏芸迎鯨"],["8c80","劇戟撃激隙桁傑欠決潔穴結血訣月件倹倦健兼券剣喧圏堅嫌建憲懸拳捲検権牽犬献研硯絹県肩見謙賢軒遣鍵険顕験鹸元原厳幻弦減源玄現絃舷言諺限乎個古呼固姑孤己庫弧戸故枯湖狐糊袴股胡菰虎誇跨鈷雇顧鼓五互伍午呉吾娯後御悟梧檎瑚碁語誤護醐乞鯉交佼侯候倖光公功効勾厚口向"],["8d40","后喉坑垢好孔孝宏工巧巷幸広庚康弘恒慌抗拘控攻昂晃更杭校梗構江洪浩港溝甲皇硬稿糠紅紘絞綱耕考肯肱腔膏航荒行衡講貢購郊酵鉱砿鋼閤降"],["8d80","項香高鴻剛劫号合壕拷濠豪轟麹克刻告国穀酷鵠黒獄漉腰甑忽惚骨狛込此頃今困坤墾婚恨懇昏昆根梱混痕紺艮魂些佐叉唆嵯左差査沙瑳砂詐鎖裟坐座挫債催再最哉塞妻宰彩才採栽歳済災采犀砕砦祭斎細菜裁載際剤在材罪財冴坂阪堺榊肴咲崎埼碕鷺作削咋搾昨朔柵窄策索錯桜鮭笹匙冊刷"],["8e40","察拶撮擦札殺薩雑皐鯖捌錆鮫皿晒三傘参山惨撒散桟燦珊産算纂蚕讃賛酸餐斬暫残仕仔伺使刺司史嗣四士始姉姿子屍市師志思指支孜斯施旨枝止"],["8e80","死氏獅祉私糸紙紫肢脂至視詞詩試誌諮資賜雌飼歯事似侍児字寺慈持時次滋治爾璽痔磁示而耳自蒔辞汐鹿式識鴫竺軸宍雫七叱執失嫉室悉湿漆疾質実蔀篠偲柴芝屡蕊縞舎写射捨赦斜煮社紗者謝車遮蛇邪借勺尺杓灼爵酌釈錫若寂弱惹主取守手朱殊狩珠種腫趣酒首儒受呪寿授樹綬需囚収周"],["8f40","宗就州修愁拾洲秀秋終繍習臭舟蒐衆襲讐蹴輯週酋酬集醜什住充十従戎柔汁渋獣縦重銃叔夙宿淑祝縮粛塾熟出術述俊峻春瞬竣舜駿准循旬楯殉淳"],["8f80","準潤盾純巡遵醇順処初所暑曙渚庶緒署書薯藷諸助叙女序徐恕鋤除傷償勝匠升召哨商唱嘗奨妾娼宵将小少尚庄床廠彰承抄招掌捷昇昌昭晶松梢樟樵沼消渉湘焼焦照症省硝礁祥称章笑粧紹肖菖蒋蕉衝裳訟証詔詳象賞醤鉦鍾鐘障鞘上丈丞乗冗剰城場壌嬢常情擾条杖浄状畳穣蒸譲醸錠嘱埴飾"],["9040","拭植殖燭織職色触食蝕辱尻伸信侵唇娠寝審心慎振新晋森榛浸深申疹真神秦紳臣芯薪親診身辛進針震人仁刃塵壬尋甚尽腎訊迅陣靭笥諏須酢図厨"],["9080","逗吹垂帥推水炊睡粋翠衰遂酔錐錘随瑞髄崇嵩数枢趨雛据杉椙菅頗雀裾澄摺寸世瀬畝是凄制勢姓征性成政整星晴棲栖正清牲生盛精聖声製西誠誓請逝醒青静斉税脆隻席惜戚斥昔析石積籍績脊責赤跡蹟碩切拙接摂折設窃節説雪絶舌蝉仙先千占宣専尖川戦扇撰栓栴泉浅洗染潜煎煽旋穿箭線"],["9140","繊羨腺舛船薦詮賎践選遷銭銑閃鮮前善漸然全禅繕膳糎噌塑岨措曾曽楚狙疏疎礎祖租粗素組蘇訴阻遡鼠僧創双叢倉喪壮奏爽宋層匝惣想捜掃挿掻"],["9180","操早曹巣槍槽漕燥争痩相窓糟総綜聡草荘葬蒼藻装走送遭鎗霜騒像増憎臓蔵贈造促側則即息捉束測足速俗属賊族続卒袖其揃存孫尊損村遜他多太汰詑唾堕妥惰打柁舵楕陀駄騨体堆対耐岱帯待怠態戴替泰滞胎腿苔袋貸退逮隊黛鯛代台大第醍題鷹滝瀧卓啄宅托択拓沢濯琢託鐸濁諾茸凧蛸只"],["9240","叩但達辰奪脱巽竪辿棚谷狸鱈樽誰丹単嘆坦担探旦歎淡湛炭短端箪綻耽胆蛋誕鍛団壇弾断暖檀段男談値知地弛恥智池痴稚置致蜘遅馳築畜竹筑蓄"],["9280","逐秩窒茶嫡着中仲宙忠抽昼柱注虫衷註酎鋳駐樗瀦猪苧著貯丁兆凋喋寵帖帳庁弔張彫徴懲挑暢朝潮牒町眺聴脹腸蝶調諜超跳銚長頂鳥勅捗直朕沈珍賃鎮陳津墜椎槌追鎚痛通塚栂掴槻佃漬柘辻蔦綴鍔椿潰坪壷嬬紬爪吊釣鶴亭低停偵剃貞呈堤定帝底庭廷弟悌抵挺提梯汀碇禎程締艇訂諦蹄逓"],["9340","邸鄭釘鼎泥摘擢敵滴的笛適鏑溺哲徹撤轍迭鉄典填天展店添纏甜貼転顛点伝殿澱田電兎吐堵塗妬屠徒斗杜渡登菟賭途都鍍砥砺努度土奴怒倒党冬"],["9380","凍刀唐塔塘套宕島嶋悼投搭東桃梼棟盗淘湯涛灯燈当痘祷等答筒糖統到董蕩藤討謄豆踏逃透鐙陶頭騰闘働動同堂導憧撞洞瞳童胴萄道銅峠鴇匿得徳涜特督禿篤毒独読栃橡凸突椴届鳶苫寅酉瀞噸屯惇敦沌豚遁頓呑曇鈍奈那内乍凪薙謎灘捺鍋楢馴縄畷南楠軟難汝二尼弐迩匂賑肉虹廿日乳入"],["9440","如尿韮任妊忍認濡禰祢寧葱猫熱年念捻撚燃粘乃廼之埜嚢悩濃納能脳膿農覗蚤巴把播覇杷波派琶破婆罵芭馬俳廃拝排敗杯盃牌背肺輩配倍培媒梅"],["9480","楳煤狽買売賠陪這蝿秤矧萩伯剥博拍柏泊白箔粕舶薄迫曝漠爆縛莫駁麦函箱硲箸肇筈櫨幡肌畑畠八鉢溌発醗髪伐罰抜筏閥鳩噺塙蛤隼伴判半反叛帆搬斑板氾汎版犯班畔繁般藩販範釆煩頒飯挽晩番盤磐蕃蛮匪卑否妃庇彼悲扉批披斐比泌疲皮碑秘緋罷肥被誹費避非飛樋簸備尾微枇毘琵眉美"],["9540","鼻柊稗匹疋髭彦膝菱肘弼必畢筆逼桧姫媛紐百謬俵彪標氷漂瓢票表評豹廟描病秒苗錨鋲蒜蛭鰭品彬斌浜瀕貧賓頻敏瓶不付埠夫婦富冨布府怖扶敷"],["9580","斧普浮父符腐膚芙譜負賦赴阜附侮撫武舞葡蕪部封楓風葺蕗伏副復幅服福腹複覆淵弗払沸仏物鮒分吻噴墳憤扮焚奮粉糞紛雰文聞丙併兵塀幣平弊柄並蔽閉陛米頁僻壁癖碧別瞥蔑箆偏変片篇編辺返遍便勉娩弁鞭保舗鋪圃捕歩甫補輔穂募墓慕戊暮母簿菩倣俸包呆報奉宝峰峯崩庖抱捧放方朋"],["9640","法泡烹砲縫胞芳萌蓬蜂褒訪豊邦鋒飽鳳鵬乏亡傍剖坊妨帽忘忙房暴望某棒冒紡肪膨謀貌貿鉾防吠頬北僕卜墨撲朴牧睦穆釦勃没殆堀幌奔本翻凡盆"],["9680","摩磨魔麻埋妹昧枚毎哩槙幕膜枕鮪柾鱒桝亦俣又抹末沫迄侭繭麿万慢満漫蔓味未魅巳箕岬密蜜湊蓑稔脈妙粍民眠務夢無牟矛霧鵡椋婿娘冥名命明盟迷銘鳴姪牝滅免棉綿緬面麺摸模茂妄孟毛猛盲網耗蒙儲木黙目杢勿餅尤戻籾貰問悶紋門匁也冶夜爺耶野弥矢厄役約薬訳躍靖柳薮鑓愉愈油癒"],["9740","諭輸唯佑優勇友宥幽悠憂揖有柚湧涌猶猷由祐裕誘遊邑郵雄融夕予余与誉輿預傭幼妖容庸揚揺擁曜楊様洋溶熔用窯羊耀葉蓉要謡踊遥陽養慾抑欲"],["9780","沃浴翌翼淀羅螺裸来莱頼雷洛絡落酪乱卵嵐欄濫藍蘭覧利吏履李梨理璃痢裏裡里離陸律率立葎掠略劉流溜琉留硫粒隆竜龍侶慮旅虜了亮僚両凌寮料梁涼猟療瞭稜糧良諒遼量陵領力緑倫厘林淋燐琳臨輪隣鱗麟瑠塁涙累類令伶例冷励嶺怜玲礼苓鈴隷零霊麗齢暦歴列劣烈裂廉恋憐漣煉簾練聯"],["9840","蓮連錬呂魯櫓炉賂路露労婁廊弄朗楼榔浪漏牢狼篭老聾蝋郎六麓禄肋録論倭和話歪賄脇惑枠鷲亙亘鰐詫藁蕨椀湾碗腕"],["989f","弌丐丕个丱丶丼丿乂乖乘亂亅豫亊舒弍于亞亟亠亢亰亳亶从仍仄仆仂仗仞仭仟价伉佚估佛佝佗佇佶侈侏侘佻佩佰侑佯來侖儘俔俟俎俘俛俑俚俐俤俥倚倨倔倪倥倅伜俶倡倩倬俾俯們倆偃假會偕偐偈做偖偬偸傀傚傅傴傲"],["9940","僉僊傳僂僖僞僥僭僣僮價僵儉儁儂儖儕儔儚儡儺儷儼儻儿兀兒兌兔兢竸兩兪兮冀冂囘册冉冏冑冓冕冖冤冦冢冩冪冫决冱冲冰况冽凅凉凛几處凩凭"],["9980","凰凵凾刄刋刔刎刧刪刮刳刹剏剄剋剌剞剔剪剴剩剳剿剽劍劔劒剱劈劑辨辧劬劭劼劵勁勍勗勞勣勦飭勠勳勵勸勹匆匈甸匍匐匏匕匚匣匯匱匳匸區卆卅丗卉卍凖卞卩卮夘卻卷厂厖厠厦厥厮厰厶參簒雙叟曼燮叮叨叭叺吁吽呀听吭吼吮吶吩吝呎咏呵咎呟呱呷呰咒呻咀呶咄咐咆哇咢咸咥咬哄哈咨"],["9a40","咫哂咤咾咼哘哥哦唏唔哽哮哭哺哢唹啀啣啌售啜啅啖啗唸唳啝喙喀咯喊喟啻啾喘喞單啼喃喩喇喨嗚嗅嗟嗄嗜嗤嗔嘔嗷嘖嗾嗽嘛嗹噎噐營嘴嘶嘲嘸"],["9a80","噫噤嘯噬噪嚆嚀嚊嚠嚔嚏嚥嚮嚶嚴囂嚼囁囃囀囈囎囑囓囗囮囹圀囿圄圉圈國圍圓團圖嗇圜圦圷圸坎圻址坏坩埀垈坡坿垉垓垠垳垤垪垰埃埆埔埒埓堊埖埣堋堙堝塲堡塢塋塰毀塒堽塹墅墹墟墫墺壞墻墸墮壅壓壑壗壙壘壥壜壤壟壯壺壹壻壼壽夂夊夐夛梦夥夬夭夲夸夾竒奕奐奎奚奘奢奠奧奬奩"],["9b40","奸妁妝佞侫妣妲姆姨姜妍姙姚娥娟娑娜娉娚婀婬婉娵娶婢婪媚媼媾嫋嫂媽嫣嫗嫦嫩嫖嫺嫻嬌嬋嬖嬲嫐嬪嬶嬾孃孅孀孑孕孚孛孥孩孰孳孵學斈孺宀"],["9b80","它宦宸寃寇寉寔寐寤實寢寞寥寫寰寶寳尅將專對尓尠尢尨尸尹屁屆屎屓屐屏孱屬屮乢屶屹岌岑岔妛岫岻岶岼岷峅岾峇峙峩峽峺峭嶌峪崋崕崗嵜崟崛崑崔崢崚崙崘嵌嵒嵎嵋嵬嵳嵶嶇嶄嶂嶢嶝嶬嶮嶽嶐嶷嶼巉巍巓巒巖巛巫已巵帋帚帙帑帛帶帷幄幃幀幎幗幔幟幢幤幇幵并幺麼广庠廁廂廈廐廏"],["9c40","廖廣廝廚廛廢廡廨廩廬廱廳廰廴廸廾弃弉彝彜弋弑弖弩弭弸彁彈彌彎弯彑彖彗彙彡彭彳彷徃徂彿徊很徑徇從徙徘徠徨徭徼忖忻忤忸忱忝悳忿怡恠"],["9c80","怙怐怩怎怱怛怕怫怦怏怺恚恁恪恷恟恊恆恍恣恃恤恂恬恫恙悁悍惧悃悚悄悛悖悗悒悧悋惡悸惠惓悴忰悽惆悵惘慍愕愆惶惷愀惴惺愃愡惻惱愍愎慇愾愨愧慊愿愼愬愴愽慂慄慳慷慘慙慚慫慴慯慥慱慟慝慓慵憙憖憇憬憔憚憊憑憫憮懌懊應懷懈懃懆憺懋罹懍懦懣懶懺懴懿懽懼懾戀戈戉戍戌戔戛"],["9d40","戞戡截戮戰戲戳扁扎扞扣扛扠扨扼抂抉找抒抓抖拔抃抔拗拑抻拏拿拆擔拈拜拌拊拂拇抛拉挌拮拱挧挂挈拯拵捐挾捍搜捏掖掎掀掫捶掣掏掉掟掵捫"],["9d80","捩掾揩揀揆揣揉插揶揄搖搴搆搓搦搶攝搗搨搏摧摯摶摎攪撕撓撥撩撈撼據擒擅擇撻擘擂擱擧舉擠擡抬擣擯攬擶擴擲擺攀擽攘攜攅攤攣攫攴攵攷收攸畋效敖敕敍敘敞敝敲數斂斃變斛斟斫斷旃旆旁旄旌旒旛旙无旡旱杲昊昃旻杳昵昶昴昜晏晄晉晁晞晝晤晧晨晟晢晰暃暈暎暉暄暘暝曁暹曉暾暼"],["9e40","曄暸曖曚曠昿曦曩曰曵曷朏朖朞朦朧霸朮朿朶杁朸朷杆杞杠杙杣杤枉杰枩杼杪枌枋枦枡枅枷柯枴柬枳柩枸柤柞柝柢柮枹柎柆柧檜栞框栩桀桍栲桎"],["9e80","梳栫桙档桷桿梟梏梭梔條梛梃檮梹桴梵梠梺椏梍桾椁棊椈棘椢椦棡椌棍棔棧棕椶椒椄棗棣椥棹棠棯椨椪椚椣椡棆楹楷楜楸楫楔楾楮椹楴椽楙椰楡楞楝榁楪榲榮槐榿槁槓榾槎寨槊槝榻槃榧樮榑榠榜榕榴槞槨樂樛槿權槹槲槧樅榱樞槭樔槫樊樒櫁樣樓橄樌橲樶橸橇橢橙橦橈樸樢檐檍檠檄檢檣"],["9f40","檗蘗檻櫃櫂檸檳檬櫞櫑櫟檪櫚櫪櫻欅蘖櫺欒欖鬱欟欸欷盜欹飮歇歃歉歐歙歔歛歟歡歸歹歿殀殄殃殍殘殕殞殤殪殫殯殲殱殳殷殼毆毋毓毟毬毫毳毯"],["9f80","麾氈氓气氛氤氣汞汕汢汪沂沍沚沁沛汾汨汳沒沐泄泱泓沽泗泅泝沮沱沾沺泛泯泙泪洟衍洶洫洽洸洙洵洳洒洌浣涓浤浚浹浙涎涕濤涅淹渕渊涵淇淦涸淆淬淞淌淨淒淅淺淙淤淕淪淮渭湮渮渙湲湟渾渣湫渫湶湍渟湃渺湎渤滿渝游溂溪溘滉溷滓溽溯滄溲滔滕溏溥滂溟潁漑灌滬滸滾漿滲漱滯漲滌"],["e040","漾漓滷澆潺潸澁澀潯潛濳潭澂潼潘澎澑濂潦澳澣澡澤澹濆澪濟濕濬濔濘濱濮濛瀉瀋濺瀑瀁瀏濾瀛瀚潴瀝瀘瀟瀰瀾瀲灑灣炙炒炯烱炬炸炳炮烟烋烝"],["e080","烙焉烽焜焙煥煕熈煦煢煌煖煬熏燻熄熕熨熬燗熹熾燒燉燔燎燠燬燧燵燼燹燿爍爐爛爨爭爬爰爲爻爼爿牀牆牋牘牴牾犂犁犇犒犖犢犧犹犲狃狆狄狎狒狢狠狡狹狷倏猗猊猜猖猝猴猯猩猥猾獎獏默獗獪獨獰獸獵獻獺珈玳珎玻珀珥珮珞璢琅瑯琥珸琲琺瑕琿瑟瑙瑁瑜瑩瑰瑣瑪瑶瑾璋璞璧瓊瓏瓔珱"],["e140","瓠瓣瓧瓩瓮瓲瓰瓱瓸瓷甄甃甅甌甎甍甕甓甞甦甬甼畄畍畊畉畛畆畚畩畤畧畫畭畸當疆疇畴疊疉疂疔疚疝疥疣痂疳痃疵疽疸疼疱痍痊痒痙痣痞痾痿"],["e180","痼瘁痰痺痲痳瘋瘍瘉瘟瘧瘠瘡瘢瘤瘴瘰瘻癇癈癆癜癘癡癢癨癩癪癧癬癰癲癶癸發皀皃皈皋皎皖皓皙皚皰皴皸皹皺盂盍盖盒盞盡盥盧盪蘯盻眈眇眄眩眤眞眥眦眛眷眸睇睚睨睫睛睥睿睾睹瞎瞋瞑瞠瞞瞰瞶瞹瞿瞼瞽瞻矇矍矗矚矜矣矮矼砌砒礦砠礪硅碎硴碆硼碚碌碣碵碪碯磑磆磋磔碾碼磅磊磬"],["e240","磧磚磽磴礇礒礑礙礬礫祀祠祗祟祚祕祓祺祿禊禝禧齋禪禮禳禹禺秉秕秧秬秡秣稈稍稘稙稠稟禀稱稻稾稷穃穗穉穡穢穩龝穰穹穽窈窗窕窘窖窩竈窰"],["e280","窶竅竄窿邃竇竊竍竏竕竓站竚竝竡竢竦竭竰笂笏笊笆笳笘笙笞笵笨笶筐筺笄筍笋筌筅筵筥筴筧筰筱筬筮箝箘箟箍箜箚箋箒箏筝箙篋篁篌篏箴篆篝篩簑簔篦篥籠簀簇簓篳篷簗簍篶簣簧簪簟簷簫簽籌籃籔籏籀籐籘籟籤籖籥籬籵粃粐粤粭粢粫粡粨粳粲粱粮粹粽糀糅糂糘糒糜糢鬻糯糲糴糶糺紆"],["e340","紂紜紕紊絅絋紮紲紿紵絆絳絖絎絲絨絮絏絣經綉絛綏絽綛綺綮綣綵緇綽綫總綢綯緜綸綟綰緘緝緤緞緻緲緡縅縊縣縡縒縱縟縉縋縢繆繦縻縵縹繃縷"],["e380","縲縺繧繝繖繞繙繚繹繪繩繼繻纃緕繽辮繿纈纉續纒纐纓纔纖纎纛纜缸缺罅罌罍罎罐网罕罔罘罟罠罨罩罧罸羂羆羃羈羇羌羔羞羝羚羣羯羲羹羮羶羸譱翅翆翊翕翔翡翦翩翳翹飜耆耄耋耒耘耙耜耡耨耿耻聊聆聒聘聚聟聢聨聳聲聰聶聹聽聿肄肆肅肛肓肚肭冐肬胛胥胙胝胄胚胖脉胯胱脛脩脣脯腋"],["e440","隋腆脾腓腑胼腱腮腥腦腴膃膈膊膀膂膠膕膤膣腟膓膩膰膵膾膸膽臀臂膺臉臍臑臙臘臈臚臟臠臧臺臻臾舁舂舅與舊舍舐舖舩舫舸舳艀艙艘艝艚艟艤"],["e480","艢艨艪艫舮艱艷艸艾芍芒芫芟芻芬苡苣苟苒苴苳苺莓范苻苹苞茆苜茉苙茵茴茖茲茱荀茹荐荅茯茫茗茘莅莚莪莟莢莖茣莎莇莊荼莵荳荵莠莉莨菴萓菫菎菽萃菘萋菁菷萇菠菲萍萢萠莽萸蔆菻葭萪萼蕚蒄葷葫蒭葮蒂葩葆萬葯葹萵蓊葢蒹蒿蒟蓙蓍蒻蓚蓐蓁蓆蓖蒡蔡蓿蓴蔗蔘蔬蔟蔕蔔蓼蕀蕣蕘蕈"],["e540","蕁蘂蕋蕕薀薤薈薑薊薨蕭薔薛藪薇薜蕷蕾薐藉薺藏薹藐藕藝藥藜藹蘊蘓蘋藾藺蘆蘢蘚蘰蘿虍乕虔號虧虱蚓蚣蚩蚪蚋蚌蚶蚯蛄蛆蚰蛉蠣蚫蛔蛞蛩蛬"],["e580","蛟蛛蛯蜒蜆蜈蜀蜃蛻蜑蜉蜍蛹蜊蜴蜿蜷蜻蜥蜩蜚蝠蝟蝸蝌蝎蝴蝗蝨蝮蝙蝓蝣蝪蠅螢螟螂螯蟋螽蟀蟐雖螫蟄螳蟇蟆螻蟯蟲蟠蠏蠍蟾蟶蟷蠎蟒蠑蠖蠕蠢蠡蠱蠶蠹蠧蠻衄衂衒衙衞衢衫袁衾袞衵衽袵衲袂袗袒袮袙袢袍袤袰袿袱裃裄裔裘裙裝裹褂裼裴裨裲褄褌褊褓襃褞褥褪褫襁襄褻褶褸襌褝襠襞"],["e640","襦襤襭襪襯襴襷襾覃覈覊覓覘覡覩覦覬覯覲覺覽覿觀觚觜觝觧觴觸訃訖訐訌訛訝訥訶詁詛詒詆詈詼詭詬詢誅誂誄誨誡誑誥誦誚誣諄諍諂諚諫諳諧"],["e680","諤諱謔諠諢諷諞諛謌謇謚諡謖謐謗謠謳鞫謦謫謾謨譁譌譏譎證譖譛譚譫譟譬譯譴譽讀讌讎讒讓讖讙讚谺豁谿豈豌豎豐豕豢豬豸豺貂貉貅貊貍貎貔豼貘戝貭貪貽貲貳貮貶賈賁賤賣賚賽賺賻贄贅贊贇贏贍贐齎贓賍贔贖赧赭赱赳趁趙跂趾趺跏跚跖跌跛跋跪跫跟跣跼踈踉跿踝踞踐踟蹂踵踰踴蹊"],["e740","蹇蹉蹌蹐蹈蹙蹤蹠踪蹣蹕蹶蹲蹼躁躇躅躄躋躊躓躑躔躙躪躡躬躰軆躱躾軅軈軋軛軣軼軻軫軾輊輅輕輒輙輓輜輟輛輌輦輳輻輹轅轂輾轌轉轆轎轗轜"],["e780","轢轣轤辜辟辣辭辯辷迚迥迢迪迯邇迴逅迹迺逑逕逡逍逞逖逋逧逶逵逹迸遏遐遑遒逎遉逾遖遘遞遨遯遶隨遲邂遽邁邀邊邉邏邨邯邱邵郢郤扈郛鄂鄒鄙鄲鄰酊酖酘酣酥酩酳酲醋醉醂醢醫醯醪醵醴醺釀釁釉釋釐釖釟釡釛釼釵釶鈞釿鈔鈬鈕鈑鉞鉗鉅鉉鉤鉈銕鈿鉋鉐銜銖銓銛鉚鋏銹銷鋩錏鋺鍄錮"],["e840","錙錢錚錣錺錵錻鍜鍠鍼鍮鍖鎰鎬鎭鎔鎹鏖鏗鏨鏥鏘鏃鏝鏐鏈鏤鐚鐔鐓鐃鐇鐐鐶鐫鐵鐡鐺鑁鑒鑄鑛鑠鑢鑞鑪鈩鑰鑵鑷鑽鑚鑼鑾钁鑿閂閇閊閔閖閘閙"],["e880","閠閨閧閭閼閻閹閾闊濶闃闍闌闕闔闖關闡闥闢阡阨阮阯陂陌陏陋陷陜陞陝陟陦陲陬隍隘隕隗險隧隱隲隰隴隶隸隹雎雋雉雍襍雜霍雕雹霄霆霈霓霎霑霏霖霙霤霪霰霹霽霾靄靆靈靂靉靜靠靤靦靨勒靫靱靹鞅靼鞁靺鞆鞋鞏鞐鞜鞨鞦鞣鞳鞴韃韆韈韋韜韭齏韲竟韶韵頏頌頸頤頡頷頽顆顏顋顫顯顰"],["e940","顱顴顳颪颯颱颶飄飃飆飩飫餃餉餒餔餘餡餝餞餤餠餬餮餽餾饂饉饅饐饋饑饒饌饕馗馘馥馭馮馼駟駛駝駘駑駭駮駱駲駻駸騁騏騅駢騙騫騷驅驂驀驃"],["e980","騾驕驍驛驗驟驢驥驤驩驫驪骭骰骼髀髏髑髓體髞髟髢髣髦髯髫髮髴髱髷髻鬆鬘鬚鬟鬢鬣鬥鬧鬨鬩鬪鬮鬯鬲魄魃魏魍魎魑魘魴鮓鮃鮑鮖鮗鮟鮠鮨鮴鯀鯊鮹鯆鯏鯑鯒鯣鯢鯤鯔鯡鰺鯲鯱鯰鰕鰔鰉鰓鰌鰆鰈鰒鰊鰄鰮鰛鰥鰤鰡鰰鱇鰲鱆鰾鱚鱠鱧鱶鱸鳧鳬鳰鴉鴈鳫鴃鴆鴪鴦鶯鴣鴟鵄鴕鴒鵁鴿鴾鵆鵈"],["ea40","鵝鵞鵤鵑鵐鵙鵲鶉鶇鶫鵯鵺鶚鶤鶩鶲鷄鷁鶻鶸鶺鷆鷏鷂鷙鷓鷸鷦鷭鷯鷽鸚鸛鸞鹵鹹鹽麁麈麋麌麒麕麑麝麥麩麸麪麭靡黌黎黏黐黔黜點黝黠黥黨黯"],["ea80","黴黶黷黹黻黼黽鼇鼈皷鼕鼡鼬鼾齊齒齔齣齟齠齡齦齧齬齪齷齲齶龕龜龠堯槇遙瑤凜熙"],["ed40","纊褜鍈銈蓜俉炻昱棈鋹曻彅丨仡仼伀伃伹佖侒侊侚侔俍偀倢俿倞偆偰偂傔僴僘兊兤冝冾凬刕劜劦勀勛匀匇匤卲厓厲叝﨎咜咊咩哿喆坙坥垬埈埇﨏"],["ed80","塚增墲夋奓奛奝奣妤妺孖寀甯寘寬尞岦岺峵崧嵓﨑嵂嵭嶸嶹巐弡弴彧德忞恝悅悊惞惕愠惲愑愷愰憘戓抦揵摠撝擎敎昀昕昻昉昮昞昤晥晗晙晴晳暙暠暲暿曺朎朗杦枻桒柀栁桄棏﨓楨﨔榘槢樰橫橆橳橾櫢櫤毖氿汜沆汯泚洄涇浯涖涬淏淸淲淼渹湜渧渼溿澈澵濵瀅瀇瀨炅炫焏焄煜煆煇凞燁燾犱"],["ee40","犾猤猪獷玽珉珖珣珒琇珵琦琪琩琮瑢璉璟甁畯皂皜皞皛皦益睆劯砡硎硤硺礰礼神祥禔福禛竑竧靖竫箞精絈絜綷綠緖繒罇羡羽茁荢荿菇菶葈蒴蕓蕙"],["ee80","蕫﨟薰蘒﨡蠇裵訒訷詹誧誾諟諸諶譓譿賰賴贒赶﨣軏﨤逸遧郞都鄕鄧釚釗釞釭釮釤釥鈆鈐鈊鈺鉀鈼鉎鉙鉑鈹鉧銧鉷鉸鋧鋗鋙鋐﨧鋕鋠鋓錥錡鋻﨨錞鋿錝錂鍰鍗鎤鏆鏞鏸鐱鑅鑈閒隆﨩隝隯霳霻靃靍靏靑靕顗顥飯飼餧館馞驎髙髜魵魲鮏鮱鮻鰀鵰鵫鶴鸙黑"],["eeef","ⅰ",9,"¬¦'""],["f040","",62],["f080","",124],["f140","",62],["f180","",124],["f240","",62],["f280","",124],["f340","",62],["f380","",124],["f440","",62],["f480","",124],["f540","",62],["f580","",124],["f640","",62],["f680","",124],["f740","",62],["f780","",124],["f840","",62],["f880","",124],["f940",""],["fa40","ⅰ",9,"Ⅰ",9,"¬¦'"㈱№℡∵纊褜鍈銈蓜俉炻昱棈鋹曻彅丨仡仼伀伃伹佖侒侊侚侔俍偀倢俿倞偆偰偂傔僴僘兊"],["fa80","兤冝冾凬刕劜劦勀勛匀匇匤卲厓厲叝﨎咜咊咩哿喆坙坥垬埈埇﨏塚增墲夋奓奛奝奣妤妺孖寀甯寘寬尞岦岺峵崧嵓﨑嵂嵭嶸嶹巐弡弴彧德忞恝悅悊惞惕愠惲愑愷愰憘戓抦揵摠撝擎敎昀昕昻昉昮昞昤晥晗晙晴晳暙暠暲暿曺朎朗杦枻桒柀栁桄棏﨓楨﨔榘槢樰橫橆橳橾櫢櫤毖氿汜沆汯泚洄涇浯"],["fb40","涖涬淏淸淲淼渹湜渧渼溿澈澵濵瀅瀇瀨炅炫焏焄煜煆煇凞燁燾犱犾猤猪獷玽珉珖珣珒琇珵琦琪琩琮瑢璉璟甁畯皂皜皞皛皦益睆劯砡硎硤硺礰礼神"],["fb80","祥禔福禛竑竧靖竫箞精絈絜綷綠緖繒罇羡羽茁荢荿菇菶葈蒴蕓蕙蕫﨟薰蘒﨡蠇裵訒訷詹誧誾諟諸諶譓譿賰賴贒赶﨣軏﨤逸遧郞都鄕鄧釚釗釞釭釮釤釥鈆鈐鈊鈺鉀鈼鉎鉙鉑鈹鉧銧鉷鉸鋧鋗鋙鋐﨧鋕鋠鋓錥錡鋻﨨錞鋿錝錂鍰鍗鎤鏆鏞鏸鐱鑅鑈閒隆﨩隝隯霳霻靃靍靏靑靕顗顥飯飼餧館馞驎髙"],["fc40","髜魵魲鮏鮱鮻鰀鵰鵫鶴鸙黑"]]; /***/ }), -/* 692 */ +/* 693 */ /***/ (function(module) { module.exports = [["0","\u0000",127],["8ea1","。",62],["a1a1"," 、。,.・:;?!゛゜´`¨^ ̄_ヽヾゝゞ〃仝々〆〇ー―‐/\~∥|…‥‘’“”()〔〕[]{}〈",9,"+-±×÷=≠<>≦≧∞∴♂♀°′″℃¥$¢£%#&*@§☆★○●◎◇"],["a2a1","◆□■△▲▽▼※〒→←↑↓〓"],["a2ba","∈∋⊆⊇⊂⊃∪∩"],["a2ca","∧∨¬⇒⇔∀∃"],["a2dc","∠⊥⌒∂∇≡≒≪≫√∽∝∵∫∬"],["a2f2","ʼn♯♭♪†‡¶"],["a2fe","◯"],["a3b0","0",9],["a3c1","A",25],["a3e1","a",25],["a4a1","ぁ",82],["a5a1","ァ",85],["a6a1","Α",16,"Σ",6],["a6c1","α",16,"σ",6],["a7a1","А",5,"ЁЖ",25],["a7d1","а",5,"ёж",25],["a8a1","─│┌┐┘└├┬┤┴┼━┃┏┓┛┗┣┳┫┻╋┠┯┨┷┿┝┰┥┸╂"],["ada1","①",19,"Ⅰ",9],["adc0","㍉㌔㌢㍍㌘㌧㌃㌶㍑㍗㌍㌦㌣㌫㍊㌻㎜㎝㎞㎎㎏㏄㎡"],["addf","㍻〝〟№㏍℡㊤",4,"㈱㈲㈹㍾㍽㍼≒≡∫∮∑√⊥∠∟⊿∵∩∪"],["b0a1","亜唖娃阿哀愛挨姶逢葵茜穐悪握渥旭葦芦鯵梓圧斡扱宛姐虻飴絢綾鮎或粟袷安庵按暗案闇鞍杏以伊位依偉囲夷委威尉惟意慰易椅為畏異移維緯胃萎衣謂違遺医井亥域育郁磯一壱溢逸稲茨芋鰯允印咽員因姻引飲淫胤蔭"],["b1a1","院陰隠韻吋右宇烏羽迂雨卯鵜窺丑碓臼渦嘘唄欝蔚鰻姥厩浦瓜閏噂云運雲荏餌叡営嬰影映曳栄永泳洩瑛盈穎頴英衛詠鋭液疫益駅悦謁越閲榎厭円園堰奄宴延怨掩援沿演炎焔煙燕猿縁艶苑薗遠鉛鴛塩於汚甥凹央奥往応"],["b2a1","押旺横欧殴王翁襖鴬鴎黄岡沖荻億屋憶臆桶牡乙俺卸恩温穏音下化仮何伽価佳加可嘉夏嫁家寡科暇果架歌河火珂禍禾稼箇花苛茄荷華菓蝦課嘩貨迦過霞蚊俄峨我牙画臥芽蛾賀雅餓駕介会解回塊壊廻快怪悔恢懐戒拐改"],["b3a1","魁晦械海灰界皆絵芥蟹開階貝凱劾外咳害崖慨概涯碍蓋街該鎧骸浬馨蛙垣柿蛎鈎劃嚇各廓拡撹格核殻獲確穫覚角赫較郭閣隔革学岳楽額顎掛笠樫橿梶鰍潟割喝恰括活渇滑葛褐轄且鰹叶椛樺鞄株兜竃蒲釜鎌噛鴨栢茅萱"],["b4a1","粥刈苅瓦乾侃冠寒刊勘勧巻喚堪姦完官寛干幹患感慣憾換敢柑桓棺款歓汗漢澗潅環甘監看竿管簡緩缶翰肝艦莞観諌貫還鑑間閑関陥韓館舘丸含岸巌玩癌眼岩翫贋雁頑顔願企伎危喜器基奇嬉寄岐希幾忌揮机旗既期棋棄"],["b5a1","機帰毅気汽畿祈季稀紀徽規記貴起軌輝飢騎鬼亀偽儀妓宜戯技擬欺犠疑祇義蟻誼議掬菊鞠吉吃喫桔橘詰砧杵黍却客脚虐逆丘久仇休及吸宮弓急救朽求汲泣灸球究窮笈級糾給旧牛去居巨拒拠挙渠虚許距鋸漁禦魚亨享京"],["b6a1","供侠僑兇競共凶協匡卿叫喬境峡強彊怯恐恭挟教橋況狂狭矯胸脅興蕎郷鏡響饗驚仰凝尭暁業局曲極玉桐粁僅勤均巾錦斤欣欽琴禁禽筋緊芹菌衿襟謹近金吟銀九倶句区狗玖矩苦躯駆駈駒具愚虞喰空偶寓遇隅串櫛釧屑屈"],["b7a1","掘窟沓靴轡窪熊隈粂栗繰桑鍬勲君薫訓群軍郡卦袈祁係傾刑兄啓圭珪型契形径恵慶慧憩掲携敬景桂渓畦稽系経継繋罫茎荊蛍計詣警軽頚鶏芸迎鯨劇戟撃激隙桁傑欠決潔穴結血訣月件倹倦健兼券剣喧圏堅嫌建憲懸拳捲"],["b8a1","検権牽犬献研硯絹県肩見謙賢軒遣鍵険顕験鹸元原厳幻弦減源玄現絃舷言諺限乎個古呼固姑孤己庫弧戸故枯湖狐糊袴股胡菰虎誇跨鈷雇顧鼓五互伍午呉吾娯後御悟梧檎瑚碁語誤護醐乞鯉交佼侯候倖光公功効勾厚口向"],["b9a1","后喉坑垢好孔孝宏工巧巷幸広庚康弘恒慌抗拘控攻昂晃更杭校梗構江洪浩港溝甲皇硬稿糠紅紘絞綱耕考肯肱腔膏航荒行衡講貢購郊酵鉱砿鋼閤降項香高鴻剛劫号合壕拷濠豪轟麹克刻告国穀酷鵠黒獄漉腰甑忽惚骨狛込"],["baa1","此頃今困坤墾婚恨懇昏昆根梱混痕紺艮魂些佐叉唆嵯左差査沙瑳砂詐鎖裟坐座挫債催再最哉塞妻宰彩才採栽歳済災采犀砕砦祭斎細菜裁載際剤在材罪財冴坂阪堺榊肴咲崎埼碕鷺作削咋搾昨朔柵窄策索錯桜鮭笹匙冊刷"],["bba1","察拶撮擦札殺薩雑皐鯖捌錆鮫皿晒三傘参山惨撒散桟燦珊産算纂蚕讃賛酸餐斬暫残仕仔伺使刺司史嗣四士始姉姿子屍市師志思指支孜斯施旨枝止死氏獅祉私糸紙紫肢脂至視詞詩試誌諮資賜雌飼歯事似侍児字寺慈持時"],["bca1","次滋治爾璽痔磁示而耳自蒔辞汐鹿式識鴫竺軸宍雫七叱執失嫉室悉湿漆疾質実蔀篠偲柴芝屡蕊縞舎写射捨赦斜煮社紗者謝車遮蛇邪借勺尺杓灼爵酌釈錫若寂弱惹主取守手朱殊狩珠種腫趣酒首儒受呪寿授樹綬需囚収周"],["bda1","宗就州修愁拾洲秀秋終繍習臭舟蒐衆襲讐蹴輯週酋酬集醜什住充十従戎柔汁渋獣縦重銃叔夙宿淑祝縮粛塾熟出術述俊峻春瞬竣舜駿准循旬楯殉淳準潤盾純巡遵醇順処初所暑曙渚庶緒署書薯藷諸助叙女序徐恕鋤除傷償"],["bea1","勝匠升召哨商唱嘗奨妾娼宵将小少尚庄床廠彰承抄招掌捷昇昌昭晶松梢樟樵沼消渉湘焼焦照症省硝礁祥称章笑粧紹肖菖蒋蕉衝裳訟証詔詳象賞醤鉦鍾鐘障鞘上丈丞乗冗剰城場壌嬢常情擾条杖浄状畳穣蒸譲醸錠嘱埴飾"],["bfa1","拭植殖燭織職色触食蝕辱尻伸信侵唇娠寝審心慎振新晋森榛浸深申疹真神秦紳臣芯薪親診身辛進針震人仁刃塵壬尋甚尽腎訊迅陣靭笥諏須酢図厨逗吹垂帥推水炊睡粋翠衰遂酔錐錘随瑞髄崇嵩数枢趨雛据杉椙菅頗雀裾"],["c0a1","澄摺寸世瀬畝是凄制勢姓征性成政整星晴棲栖正清牲生盛精聖声製西誠誓請逝醒青静斉税脆隻席惜戚斥昔析石積籍績脊責赤跡蹟碩切拙接摂折設窃節説雪絶舌蝉仙先千占宣専尖川戦扇撰栓栴泉浅洗染潜煎煽旋穿箭線"],["c1a1","繊羨腺舛船薦詮賎践選遷銭銑閃鮮前善漸然全禅繕膳糎噌塑岨措曾曽楚狙疏疎礎祖租粗素組蘇訴阻遡鼠僧創双叢倉喪壮奏爽宋層匝惣想捜掃挿掻操早曹巣槍槽漕燥争痩相窓糟総綜聡草荘葬蒼藻装走送遭鎗霜騒像増憎"],["c2a1","臓蔵贈造促側則即息捉束測足速俗属賊族続卒袖其揃存孫尊損村遜他多太汰詑唾堕妥惰打柁舵楕陀駄騨体堆対耐岱帯待怠態戴替泰滞胎腿苔袋貸退逮隊黛鯛代台大第醍題鷹滝瀧卓啄宅托択拓沢濯琢託鐸濁諾茸凧蛸只"],["c3a1","叩但達辰奪脱巽竪辿棚谷狸鱈樽誰丹単嘆坦担探旦歎淡湛炭短端箪綻耽胆蛋誕鍛団壇弾断暖檀段男談値知地弛恥智池痴稚置致蜘遅馳築畜竹筑蓄逐秩窒茶嫡着中仲宙忠抽昼柱注虫衷註酎鋳駐樗瀦猪苧著貯丁兆凋喋寵"],["c4a1","帖帳庁弔張彫徴懲挑暢朝潮牒町眺聴脹腸蝶調諜超跳銚長頂鳥勅捗直朕沈珍賃鎮陳津墜椎槌追鎚痛通塚栂掴槻佃漬柘辻蔦綴鍔椿潰坪壷嬬紬爪吊釣鶴亭低停偵剃貞呈堤定帝底庭廷弟悌抵挺提梯汀碇禎程締艇訂諦蹄逓"],["c5a1","邸鄭釘鼎泥摘擢敵滴的笛適鏑溺哲徹撤轍迭鉄典填天展店添纏甜貼転顛点伝殿澱田電兎吐堵塗妬屠徒斗杜渡登菟賭途都鍍砥砺努度土奴怒倒党冬凍刀唐塔塘套宕島嶋悼投搭東桃梼棟盗淘湯涛灯燈当痘祷等答筒糖統到"],["c6a1","董蕩藤討謄豆踏逃透鐙陶頭騰闘働動同堂導憧撞洞瞳童胴萄道銅峠鴇匿得徳涜特督禿篤毒独読栃橡凸突椴届鳶苫寅酉瀞噸屯惇敦沌豚遁頓呑曇鈍奈那内乍凪薙謎灘捺鍋楢馴縄畷南楠軟難汝二尼弐迩匂賑肉虹廿日乳入"],["c7a1","如尿韮任妊忍認濡禰祢寧葱猫熱年念捻撚燃粘乃廼之埜嚢悩濃納能脳膿農覗蚤巴把播覇杷波派琶破婆罵芭馬俳廃拝排敗杯盃牌背肺輩配倍培媒梅楳煤狽買売賠陪這蝿秤矧萩伯剥博拍柏泊白箔粕舶薄迫曝漠爆縛莫駁麦"],["c8a1","函箱硲箸肇筈櫨幡肌畑畠八鉢溌発醗髪伐罰抜筏閥鳩噺塙蛤隼伴判半反叛帆搬斑板氾汎版犯班畔繁般藩販範釆煩頒飯挽晩番盤磐蕃蛮匪卑否妃庇彼悲扉批披斐比泌疲皮碑秘緋罷肥被誹費避非飛樋簸備尾微枇毘琵眉美"],["c9a1","鼻柊稗匹疋髭彦膝菱肘弼必畢筆逼桧姫媛紐百謬俵彪標氷漂瓢票表評豹廟描病秒苗錨鋲蒜蛭鰭品彬斌浜瀕貧賓頻敏瓶不付埠夫婦富冨布府怖扶敷斧普浮父符腐膚芙譜負賦赴阜附侮撫武舞葡蕪部封楓風葺蕗伏副復幅服"],["caa1","福腹複覆淵弗払沸仏物鮒分吻噴墳憤扮焚奮粉糞紛雰文聞丙併兵塀幣平弊柄並蔽閉陛米頁僻壁癖碧別瞥蔑箆偏変片篇編辺返遍便勉娩弁鞭保舗鋪圃捕歩甫補輔穂募墓慕戊暮母簿菩倣俸包呆報奉宝峰峯崩庖抱捧放方朋"],["cba1","法泡烹砲縫胞芳萌蓬蜂褒訪豊邦鋒飽鳳鵬乏亡傍剖坊妨帽忘忙房暴望某棒冒紡肪膨謀貌貿鉾防吠頬北僕卜墨撲朴牧睦穆釦勃没殆堀幌奔本翻凡盆摩磨魔麻埋妹昧枚毎哩槙幕膜枕鮪柾鱒桝亦俣又抹末沫迄侭繭麿万慢満"],["cca1","漫蔓味未魅巳箕岬密蜜湊蓑稔脈妙粍民眠務夢無牟矛霧鵡椋婿娘冥名命明盟迷銘鳴姪牝滅免棉綿緬面麺摸模茂妄孟毛猛盲網耗蒙儲木黙目杢勿餅尤戻籾貰問悶紋門匁也冶夜爺耶野弥矢厄役約薬訳躍靖柳薮鑓愉愈油癒"],["cda1","諭輸唯佑優勇友宥幽悠憂揖有柚湧涌猶猷由祐裕誘遊邑郵雄融夕予余与誉輿預傭幼妖容庸揚揺擁曜楊様洋溶熔用窯羊耀葉蓉要謡踊遥陽養慾抑欲沃浴翌翼淀羅螺裸来莱頼雷洛絡落酪乱卵嵐欄濫藍蘭覧利吏履李梨理璃"],["cea1","痢裏裡里離陸律率立葎掠略劉流溜琉留硫粒隆竜龍侶慮旅虜了亮僚両凌寮料梁涼猟療瞭稜糧良諒遼量陵領力緑倫厘林淋燐琳臨輪隣鱗麟瑠塁涙累類令伶例冷励嶺怜玲礼苓鈴隷零霊麗齢暦歴列劣烈裂廉恋憐漣煉簾練聯"],["cfa1","蓮連錬呂魯櫓炉賂路露労婁廊弄朗楼榔浪漏牢狼篭老聾蝋郎六麓禄肋録論倭和話歪賄脇惑枠鷲亙亘鰐詫藁蕨椀湾碗腕"],["d0a1","弌丐丕个丱丶丼丿乂乖乘亂亅豫亊舒弍于亞亟亠亢亰亳亶从仍仄仆仂仗仞仭仟价伉佚估佛佝佗佇佶侈侏侘佻佩佰侑佯來侖儘俔俟俎俘俛俑俚俐俤俥倚倨倔倪倥倅伜俶倡倩倬俾俯們倆偃假會偕偐偈做偖偬偸傀傚傅傴傲"],["d1a1","僉僊傳僂僖僞僥僭僣僮價僵儉儁儂儖儕儔儚儡儺儷儼儻儿兀兒兌兔兢竸兩兪兮冀冂囘册冉冏冑冓冕冖冤冦冢冩冪冫决冱冲冰况冽凅凉凛几處凩凭凰凵凾刄刋刔刎刧刪刮刳刹剏剄剋剌剞剔剪剴剩剳剿剽劍劔劒剱劈劑辨"],["d2a1","辧劬劭劼劵勁勍勗勞勣勦飭勠勳勵勸勹匆匈甸匍匐匏匕匚匣匯匱匳匸區卆卅丗卉卍凖卞卩卮夘卻卷厂厖厠厦厥厮厰厶參簒雙叟曼燮叮叨叭叺吁吽呀听吭吼吮吶吩吝呎咏呵咎呟呱呷呰咒呻咀呶咄咐咆哇咢咸咥咬哄哈咨"],["d3a1","咫哂咤咾咼哘哥哦唏唔哽哮哭哺哢唹啀啣啌售啜啅啖啗唸唳啝喙喀咯喊喟啻啾喘喞單啼喃喩喇喨嗚嗅嗟嗄嗜嗤嗔嘔嗷嘖嗾嗽嘛嗹噎噐營嘴嘶嘲嘸噫噤嘯噬噪嚆嚀嚊嚠嚔嚏嚥嚮嚶嚴囂嚼囁囃囀囈囎囑囓囗囮囹圀囿圄圉"],["d4a1","圈國圍圓團圖嗇圜圦圷圸坎圻址坏坩埀垈坡坿垉垓垠垳垤垪垰埃埆埔埒埓堊埖埣堋堙堝塲堡塢塋塰毀塒堽塹墅墹墟墫墺壞墻墸墮壅壓壑壗壙壘壥壜壤壟壯壺壹壻壼壽夂夊夐夛梦夥夬夭夲夸夾竒奕奐奎奚奘奢奠奧奬奩"],["d5a1","奸妁妝佞侫妣妲姆姨姜妍姙姚娥娟娑娜娉娚婀婬婉娵娶婢婪媚媼媾嫋嫂媽嫣嫗嫦嫩嫖嫺嫻嬌嬋嬖嬲嫐嬪嬶嬾孃孅孀孑孕孚孛孥孩孰孳孵學斈孺宀它宦宸寃寇寉寔寐寤實寢寞寥寫寰寶寳尅將專對尓尠尢尨尸尹屁屆屎屓"],["d6a1","屐屏孱屬屮乢屶屹岌岑岔妛岫岻岶岼岷峅岾峇峙峩峽峺峭嶌峪崋崕崗嵜崟崛崑崔崢崚崙崘嵌嵒嵎嵋嵬嵳嵶嶇嶄嶂嶢嶝嶬嶮嶽嶐嶷嶼巉巍巓巒巖巛巫已巵帋帚帙帑帛帶帷幄幃幀幎幗幔幟幢幤幇幵并幺麼广庠廁廂廈廐廏"],["d7a1","廖廣廝廚廛廢廡廨廩廬廱廳廰廴廸廾弃弉彝彜弋弑弖弩弭弸彁彈彌彎弯彑彖彗彙彡彭彳彷徃徂彿徊很徑徇從徙徘徠徨徭徼忖忻忤忸忱忝悳忿怡恠怙怐怩怎怱怛怕怫怦怏怺恚恁恪恷恟恊恆恍恣恃恤恂恬恫恙悁悍惧悃悚"],["d8a1","悄悛悖悗悒悧悋惡悸惠惓悴忰悽惆悵惘慍愕愆惶惷愀惴惺愃愡惻惱愍愎慇愾愨愧慊愿愼愬愴愽慂慄慳慷慘慙慚慫慴慯慥慱慟慝慓慵憙憖憇憬憔憚憊憑憫憮懌懊應懷懈懃懆憺懋罹懍懦懣懶懺懴懿懽懼懾戀戈戉戍戌戔戛"],["d9a1","戞戡截戮戰戲戳扁扎扞扣扛扠扨扼抂抉找抒抓抖拔抃抔拗拑抻拏拿拆擔拈拜拌拊拂拇抛拉挌拮拱挧挂挈拯拵捐挾捍搜捏掖掎掀掫捶掣掏掉掟掵捫捩掾揩揀揆揣揉插揶揄搖搴搆搓搦搶攝搗搨搏摧摯摶摎攪撕撓撥撩撈撼"],["daa1","據擒擅擇撻擘擂擱擧舉擠擡抬擣擯攬擶擴擲擺攀擽攘攜攅攤攣攫攴攵攷收攸畋效敖敕敍敘敞敝敲數斂斃變斛斟斫斷旃旆旁旄旌旒旛旙无旡旱杲昊昃旻杳昵昶昴昜晏晄晉晁晞晝晤晧晨晟晢晰暃暈暎暉暄暘暝曁暹曉暾暼"],["dba1","曄暸曖曚曠昿曦曩曰曵曷朏朖朞朦朧霸朮朿朶杁朸朷杆杞杠杙杣杤枉杰枩杼杪枌枋枦枡枅枷柯枴柬枳柩枸柤柞柝柢柮枹柎柆柧檜栞框栩桀桍栲桎梳栫桙档桷桿梟梏梭梔條梛梃檮梹桴梵梠梺椏梍桾椁棊椈棘椢椦棡椌棍"],["dca1","棔棧棕椶椒椄棗棣椥棹棠棯椨椪椚椣椡棆楹楷楜楸楫楔楾楮椹楴椽楙椰楡楞楝榁楪榲榮槐榿槁槓榾槎寨槊槝榻槃榧樮榑榠榜榕榴槞槨樂樛槿權槹槲槧樅榱樞槭樔槫樊樒櫁樣樓橄樌橲樶橸橇橢橙橦橈樸樢檐檍檠檄檢檣"],["dda1","檗蘗檻櫃櫂檸檳檬櫞櫑櫟檪櫚櫪櫻欅蘖櫺欒欖鬱欟欸欷盜欹飮歇歃歉歐歙歔歛歟歡歸歹歿殀殄殃殍殘殕殞殤殪殫殯殲殱殳殷殼毆毋毓毟毬毫毳毯麾氈氓气氛氤氣汞汕汢汪沂沍沚沁沛汾汨汳沒沐泄泱泓沽泗泅泝沮沱沾"],["dea1","沺泛泯泙泪洟衍洶洫洽洸洙洵洳洒洌浣涓浤浚浹浙涎涕濤涅淹渕渊涵淇淦涸淆淬淞淌淨淒淅淺淙淤淕淪淮渭湮渮渙湲湟渾渣湫渫湶湍渟湃渺湎渤滿渝游溂溪溘滉溷滓溽溯滄溲滔滕溏溥滂溟潁漑灌滬滸滾漿滲漱滯漲滌"],["dfa1","漾漓滷澆潺潸澁澀潯潛濳潭澂潼潘澎澑濂潦澳澣澡澤澹濆澪濟濕濬濔濘濱濮濛瀉瀋濺瀑瀁瀏濾瀛瀚潴瀝瀘瀟瀰瀾瀲灑灣炙炒炯烱炬炸炳炮烟烋烝烙焉烽焜焙煥煕熈煦煢煌煖煬熏燻熄熕熨熬燗熹熾燒燉燔燎燠燬燧燵燼"],["e0a1","燹燿爍爐爛爨爭爬爰爲爻爼爿牀牆牋牘牴牾犂犁犇犒犖犢犧犹犲狃狆狄狎狒狢狠狡狹狷倏猗猊猜猖猝猴猯猩猥猾獎獏默獗獪獨獰獸獵獻獺珈玳珎玻珀珥珮珞璢琅瑯琥珸琲琺瑕琿瑟瑙瑁瑜瑩瑰瑣瑪瑶瑾璋璞璧瓊瓏瓔珱"],["e1a1","瓠瓣瓧瓩瓮瓲瓰瓱瓸瓷甄甃甅甌甎甍甕甓甞甦甬甼畄畍畊畉畛畆畚畩畤畧畫畭畸當疆疇畴疊疉疂疔疚疝疥疣痂疳痃疵疽疸疼疱痍痊痒痙痣痞痾痿痼瘁痰痺痲痳瘋瘍瘉瘟瘧瘠瘡瘢瘤瘴瘰瘻癇癈癆癜癘癡癢癨癩癪癧癬癰"],["e2a1","癲癶癸發皀皃皈皋皎皖皓皙皚皰皴皸皹皺盂盍盖盒盞盡盥盧盪蘯盻眈眇眄眩眤眞眥眦眛眷眸睇睚睨睫睛睥睿睾睹瞎瞋瞑瞠瞞瞰瞶瞹瞿瞼瞽瞻矇矍矗矚矜矣矮矼砌砒礦砠礪硅碎硴碆硼碚碌碣碵碪碯磑磆磋磔碾碼磅磊磬"],["e3a1","磧磚磽磴礇礒礑礙礬礫祀祠祗祟祚祕祓祺祿禊禝禧齋禪禮禳禹禺秉秕秧秬秡秣稈稍稘稙稠稟禀稱稻稾稷穃穗穉穡穢穩龝穰穹穽窈窗窕窘窖窩竈窰窶竅竄窿邃竇竊竍竏竕竓站竚竝竡竢竦竭竰笂笏笊笆笳笘笙笞笵笨笶筐"],["e4a1","筺笄筍笋筌筅筵筥筴筧筰筱筬筮箝箘箟箍箜箚箋箒箏筝箙篋篁篌篏箴篆篝篩簑簔篦篥籠簀簇簓篳篷簗簍篶簣簧簪簟簷簫簽籌籃籔籏籀籐籘籟籤籖籥籬籵粃粐粤粭粢粫粡粨粳粲粱粮粹粽糀糅糂糘糒糜糢鬻糯糲糴糶糺紆"],["e5a1","紂紜紕紊絅絋紮紲紿紵絆絳絖絎絲絨絮絏絣經綉絛綏絽綛綺綮綣綵緇綽綫總綢綯緜綸綟綰緘緝緤緞緻緲緡縅縊縣縡縒縱縟縉縋縢繆繦縻縵縹繃縷縲縺繧繝繖繞繙繚繹繪繩繼繻纃緕繽辮繿纈纉續纒纐纓纔纖纎纛纜缸缺"],["e6a1","罅罌罍罎罐网罕罔罘罟罠罨罩罧罸羂羆羃羈羇羌羔羞羝羚羣羯羲羹羮羶羸譱翅翆翊翕翔翡翦翩翳翹飜耆耄耋耒耘耙耜耡耨耿耻聊聆聒聘聚聟聢聨聳聲聰聶聹聽聿肄肆肅肛肓肚肭冐肬胛胥胙胝胄胚胖脉胯胱脛脩脣脯腋"],["e7a1","隋腆脾腓腑胼腱腮腥腦腴膃膈膊膀膂膠膕膤膣腟膓膩膰膵膾膸膽臀臂膺臉臍臑臙臘臈臚臟臠臧臺臻臾舁舂舅與舊舍舐舖舩舫舸舳艀艙艘艝艚艟艤艢艨艪艫舮艱艷艸艾芍芒芫芟芻芬苡苣苟苒苴苳苺莓范苻苹苞茆苜茉苙"],["e8a1","茵茴茖茲茱荀茹荐荅茯茫茗茘莅莚莪莟莢莖茣莎莇莊荼莵荳荵莠莉莨菴萓菫菎菽萃菘萋菁菷萇菠菲萍萢萠莽萸蔆菻葭萪萼蕚蒄葷葫蒭葮蒂葩葆萬葯葹萵蓊葢蒹蒿蒟蓙蓍蒻蓚蓐蓁蓆蓖蒡蔡蓿蓴蔗蔘蔬蔟蔕蔔蓼蕀蕣蕘蕈"],["e9a1","蕁蘂蕋蕕薀薤薈薑薊薨蕭薔薛藪薇薜蕷蕾薐藉薺藏薹藐藕藝藥藜藹蘊蘓蘋藾藺蘆蘢蘚蘰蘿虍乕虔號虧虱蚓蚣蚩蚪蚋蚌蚶蚯蛄蛆蚰蛉蠣蚫蛔蛞蛩蛬蛟蛛蛯蜒蜆蜈蜀蜃蛻蜑蜉蜍蛹蜊蜴蜿蜷蜻蜥蜩蜚蝠蝟蝸蝌蝎蝴蝗蝨蝮蝙"],["eaa1","蝓蝣蝪蠅螢螟螂螯蟋螽蟀蟐雖螫蟄螳蟇蟆螻蟯蟲蟠蠏蠍蟾蟶蟷蠎蟒蠑蠖蠕蠢蠡蠱蠶蠹蠧蠻衄衂衒衙衞衢衫袁衾袞衵衽袵衲袂袗袒袮袙袢袍袤袰袿袱裃裄裔裘裙裝裹褂裼裴裨裲褄褌褊褓襃褞褥褪褫襁襄褻褶褸襌褝襠襞"],["eba1","襦襤襭襪襯襴襷襾覃覈覊覓覘覡覩覦覬覯覲覺覽覿觀觚觜觝觧觴觸訃訖訐訌訛訝訥訶詁詛詒詆詈詼詭詬詢誅誂誄誨誡誑誥誦誚誣諄諍諂諚諫諳諧諤諱謔諠諢諷諞諛謌謇謚諡謖謐謗謠謳鞫謦謫謾謨譁譌譏譎證譖譛譚譫"],["eca1","譟譬譯譴譽讀讌讎讒讓讖讙讚谺豁谿豈豌豎豐豕豢豬豸豺貂貉貅貊貍貎貔豼貘戝貭貪貽貲貳貮貶賈賁賤賣賚賽賺賻贄贅贊贇贏贍贐齎贓賍贔贖赧赭赱赳趁趙跂趾趺跏跚跖跌跛跋跪跫跟跣跼踈踉跿踝踞踐踟蹂踵踰踴蹊"],["eda1","蹇蹉蹌蹐蹈蹙蹤蹠踪蹣蹕蹶蹲蹼躁躇躅躄躋躊躓躑躔躙躪躡躬躰軆躱躾軅軈軋軛軣軼軻軫軾輊輅輕輒輙輓輜輟輛輌輦輳輻輹轅轂輾轌轉轆轎轗轜轢轣轤辜辟辣辭辯辷迚迥迢迪迯邇迴逅迹迺逑逕逡逍逞逖逋逧逶逵逹迸"],["eea1","遏遐遑遒逎遉逾遖遘遞遨遯遶隨遲邂遽邁邀邊邉邏邨邯邱邵郢郤扈郛鄂鄒鄙鄲鄰酊酖酘酣酥酩酳酲醋醉醂醢醫醯醪醵醴醺釀釁釉釋釐釖釟釡釛釼釵釶鈞釿鈔鈬鈕鈑鉞鉗鉅鉉鉤鉈銕鈿鉋鉐銜銖銓銛鉚鋏銹銷鋩錏鋺鍄錮"],["efa1","錙錢錚錣錺錵錻鍜鍠鍼鍮鍖鎰鎬鎭鎔鎹鏖鏗鏨鏥鏘鏃鏝鏐鏈鏤鐚鐔鐓鐃鐇鐐鐶鐫鐵鐡鐺鑁鑒鑄鑛鑠鑢鑞鑪鈩鑰鑵鑷鑽鑚鑼鑾钁鑿閂閇閊閔閖閘閙閠閨閧閭閼閻閹閾闊濶闃闍闌闕闔闖關闡闥闢阡阨阮阯陂陌陏陋陷陜陞"],["f0a1","陝陟陦陲陬隍隘隕隗險隧隱隲隰隴隶隸隹雎雋雉雍襍雜霍雕雹霄霆霈霓霎霑霏霖霙霤霪霰霹霽霾靄靆靈靂靉靜靠靤靦靨勒靫靱靹鞅靼鞁靺鞆鞋鞏鞐鞜鞨鞦鞣鞳鞴韃韆韈韋韜韭齏韲竟韶韵頏頌頸頤頡頷頽顆顏顋顫顯顰"],["f1a1","顱顴顳颪颯颱颶飄飃飆飩飫餃餉餒餔餘餡餝餞餤餠餬餮餽餾饂饉饅饐饋饑饒饌饕馗馘馥馭馮馼駟駛駝駘駑駭駮駱駲駻駸騁騏騅駢騙騫騷驅驂驀驃騾驕驍驛驗驟驢驥驤驩驫驪骭骰骼髀髏髑髓體髞髟髢髣髦髯髫髮髴髱髷"],["f2a1","髻鬆鬘鬚鬟鬢鬣鬥鬧鬨鬩鬪鬮鬯鬲魄魃魏魍魎魑魘魴鮓鮃鮑鮖鮗鮟鮠鮨鮴鯀鯊鮹鯆鯏鯑鯒鯣鯢鯤鯔鯡鰺鯲鯱鯰鰕鰔鰉鰓鰌鰆鰈鰒鰊鰄鰮鰛鰥鰤鰡鰰鱇鰲鱆鰾鱚鱠鱧鱶鱸鳧鳬鳰鴉鴈鳫鴃鴆鴪鴦鶯鴣鴟鵄鴕鴒鵁鴿鴾鵆鵈"],["f3a1","鵝鵞鵤鵑鵐鵙鵲鶉鶇鶫鵯鵺鶚鶤鶩鶲鷄鷁鶻鶸鶺鷆鷏鷂鷙鷓鷸鷦鷭鷯鷽鸚鸛鸞鹵鹹鹽麁麈麋麌麒麕麑麝麥麩麸麪麭靡黌黎黏黐黔黜點黝黠黥黨黯黴黶黷黹黻黼黽鼇鼈皷鼕鼡鼬鼾齊齒齔齣齟齠齡齦齧齬齪齷齲齶龕龜龠"],["f4a1","堯槇遙瑤凜熙"],["f9a1","纊褜鍈銈蓜俉炻昱棈鋹曻彅丨仡仼伀伃伹佖侒侊侚侔俍偀倢俿倞偆偰偂傔僴僘兊兤冝冾凬刕劜劦勀勛匀匇匤卲厓厲叝﨎咜咊咩哿喆坙坥垬埈埇﨏塚增墲夋奓奛奝奣妤妺孖寀甯寘寬尞岦岺峵崧嵓﨑嵂嵭嶸嶹巐弡弴彧德"],["faa1","忞恝悅悊惞惕愠惲愑愷愰憘戓抦揵摠撝擎敎昀昕昻昉昮昞昤晥晗晙晴晳暙暠暲暿曺朎朗杦枻桒柀栁桄棏﨓楨﨔榘槢樰橫橆橳橾櫢櫤毖氿汜沆汯泚洄涇浯涖涬淏淸淲淼渹湜渧渼溿澈澵濵瀅瀇瀨炅炫焏焄煜煆煇凞燁燾犱"],["fba1","犾猤猪獷玽珉珖珣珒琇珵琦琪琩琮瑢璉璟甁畯皂皜皞皛皦益睆劯砡硎硤硺礰礼神祥禔福禛竑竧靖竫箞精絈絜綷綠緖繒罇羡羽茁荢荿菇菶葈蒴蕓蕙蕫﨟薰蘒﨡蠇裵訒訷詹誧誾諟諸諶譓譿賰賴贒赶﨣軏﨤逸遧郞都鄕鄧釚"],["fca1","釗釞釭釮釤釥鈆鈐鈊鈺鉀鈼鉎鉙鉑鈹鉧銧鉷鉸鋧鋗鋙鋐﨧鋕鋠鋓錥錡鋻﨨錞鋿錝錂鍰鍗鎤鏆鏞鏸鐱鑅鑈閒隆﨩隝隯霳霻靃靍靏靑靕顗顥飯飼餧館馞驎髙髜魵魲鮏鮱鮻鰀鵰鵫鶴鸙黑"],["fcf1","ⅰ",9,"¬¦'""],["8fa2af","˘ˇ¸˙˝¯˛˚~΄΅"],["8fa2c2","¡¦¿"],["8fa2eb","ºª©®™¤№"],["8fa6e1","ΆΈΉΊΪ"],["8fa6e7","Ό"],["8fa6e9","ΎΫ"],["8fa6ec","Ώ"],["8fa6f1","άέήίϊΐόςύϋΰώ"],["8fa7c2","Ђ",10,"ЎЏ"],["8fa7f2","ђ",10,"ўџ"],["8fa9a1","ÆĐ"],["8fa9a4","Ħ"],["8fa9a6","IJ"],["8fa9a8","ŁĿ"],["8fa9ab","ŊØŒ"],["8fa9af","ŦÞ"],["8fa9c1","æđðħıijĸłŀʼnŋøœßŧþ"],["8faaa1","ÁÀÄÂĂǍĀĄÅÃĆĈČÇĊĎÉÈËÊĚĖĒĘ"],["8faaba","ĜĞĢĠĤÍÌÏÎǏİĪĮĨĴĶĹĽĻŃŇŅÑÓÒÖÔǑŐŌÕŔŘŖŚŜŠŞŤŢÚÙÜÛŬǓŰŪŲŮŨǗǛǙǕŴÝŸŶŹŽŻ"],["8faba1","áàäâăǎāąåãćĉčçċďéèëêěėēęǵĝğ"],["8fabbd","ġĥíìïîǐ"],["8fabc5","īįĩĵķĺľļńňņñóòöôǒőōõŕřŗśŝšşťţúùüûŭǔűūųůũǘǜǚǖŵýÿŷźžż"],["8fb0a1","丂丄丅丌丒丟丣两丨丫丮丯丰丵乀乁乄乇乑乚乜乣乨乩乴乵乹乿亍亖亗亝亯亹仃仐仚仛仠仡仢仨仯仱仳仵份仾仿伀伂伃伈伋伌伒伕伖众伙伮伱你伳伵伷伹伻伾佀佂佈佉佋佌佒佔佖佘佟佣佪佬佮佱佷佸佹佺佽佾侁侂侄"],["8fb1a1","侅侉侊侌侎侐侒侓侔侗侙侚侞侟侲侷侹侻侼侽侾俀俁俅俆俈俉俋俌俍俏俒俜俠俢俰俲俼俽俿倀倁倄倇倊倌倎倐倓倗倘倛倜倝倞倢倧倮倰倲倳倵偀偁偂偅偆偊偌偎偑偒偓偗偙偟偠偢偣偦偧偪偭偰偱倻傁傃傄傆傊傎傏傐"],["8fb2a1","傒傓傔傖傛傜傞",4,"傪傯傰傹傺傽僀僃僄僇僌僎僐僓僔僘僜僝僟僢僤僦僨僩僯僱僶僺僾儃儆儇儈儋儌儍儎僲儐儗儙儛儜儝儞儣儧儨儬儭儯儱儳儴儵儸儹兂兊兏兓兕兗兘兟兤兦兾冃冄冋冎冘冝冡冣冭冸冺冼冾冿凂"],["8fb3a1","凈减凑凒凓凕凘凞凢凥凮凲凳凴凷刁刂刅划刓刕刖刘刢刨刱刲刵刼剅剉剕剗剘剚剜剟剠剡剦剮剷剸剹劀劂劅劊劌劓劕劖劗劘劚劜劤劥劦劧劯劰劶劷劸劺劻劽勀勄勆勈勌勏勑勔勖勛勜勡勥勨勩勪勬勰勱勴勶勷匀匃匊匋"],["8fb4a1","匌匑匓匘匛匜匞匟匥匧匨匩匫匬匭匰匲匵匼匽匾卂卌卋卙卛卡卣卥卬卭卲卹卾厃厇厈厎厓厔厙厝厡厤厪厫厯厲厴厵厷厸厺厽叀叅叏叒叓叕叚叝叞叠另叧叵吂吓吚吡吧吨吪启吱吴吵呃呄呇呍呏呞呢呤呦呧呩呫呭呮呴呿"],["8fb5a1","咁咃咅咈咉咍咑咕咖咜咟咡咦咧咩咪咭咮咱咷咹咺咻咿哆哊响哎哠哪哬哯哶哼哾哿唀唁唅唈唉唌唍唎唕唪唫唲唵唶唻唼唽啁啇啉啊啍啐啑啘啚啛啞啠啡啤啦啿喁喂喆喈喎喏喑喒喓喔喗喣喤喭喲喿嗁嗃嗆嗉嗋嗌嗎嗑嗒"],["8fb6a1","嗓嗗嗘嗛嗞嗢嗩嗶嗿嘅嘈嘊嘍",5,"嘙嘬嘰嘳嘵嘷嘹嘻嘼嘽嘿噀噁噃噄噆噉噋噍噏噔噞噠噡噢噣噦噩噭噯噱噲噵嚄嚅嚈嚋嚌嚕嚙嚚嚝嚞嚟嚦嚧嚨嚩嚫嚬嚭嚱嚳嚷嚾囅囉囊囋囏囐囌囍囙囜囝囟囡囤",4,"囱囫园"],["8fb7a1","囶囷圁圂圇圊圌圑圕圚圛圝圠圢圣圤圥圩圪圬圮圯圳圴圽圾圿坅坆坌坍坒坢坥坧坨坫坭",4,"坳坴坵坷坹坺坻坼坾垁垃垌垔垗垙垚垜垝垞垟垡垕垧垨垩垬垸垽埇埈埌埏埕埝埞埤埦埧埩埭埰埵埶埸埽埾埿堃堄堈堉埡"],["8fb8a1","堌堍堛堞堟堠堦堧堭堲堹堿塉塌塍塏塐塕塟塡塤塧塨塸塼塿墀墁墇墈墉墊墌墍墏墐墔墖墝墠墡墢墦墩墱墲壄墼壂壈壍壎壐壒壔壖壚壝壡壢壩壳夅夆夋夌夒夓夔虁夝夡夣夤夨夯夰夳夵夶夿奃奆奒奓奙奛奝奞奟奡奣奫奭"],["8fb9a1","奯奲奵奶她奻奼妋妌妎妒妕妗妟妤妧妭妮妯妰妳妷妺妼姁姃姄姈姊姍姒姝姞姟姣姤姧姮姯姱姲姴姷娀娄娌娍娎娒娓娞娣娤娧娨娪娭娰婄婅婇婈婌婐婕婞婣婥婧婭婷婺婻婾媋媐媓媖媙媜媞媟媠媢媧媬媱媲媳媵媸媺媻媿"],["8fbaa1","嫄嫆嫈嫏嫚嫜嫠嫥嫪嫮嫵嫶嫽嬀嬁嬈嬗嬴嬙嬛嬝嬡嬥嬭嬸孁孋孌孒孖孞孨孮孯孼孽孾孿宁宄宆宊宎宐宑宓宔宖宨宩宬宭宯宱宲宷宺宼寀寁寍寏寖",4,"寠寯寱寴寽尌尗尞尟尣尦尩尫尬尮尰尲尵尶屙屚屜屢屣屧屨屩"],["8fbba1","屭屰屴屵屺屻屼屽岇岈岊岏岒岝岟岠岢岣岦岪岲岴岵岺峉峋峒峝峗峮峱峲峴崁崆崍崒崫崣崤崦崧崱崴崹崽崿嵂嵃嵆嵈嵕嵑嵙嵊嵟嵠嵡嵢嵤嵪嵭嵰嵹嵺嵾嵿嶁嶃嶈嶊嶒嶓嶔嶕嶙嶛嶟嶠嶧嶫嶰嶴嶸嶹巃巇巋巐巎巘巙巠巤"],["8fbca1","巩巸巹帀帇帍帒帔帕帘帟帠帮帨帲帵帾幋幐幉幑幖幘幛幜幞幨幪",4,"幰庀庋庎庢庤庥庨庪庬庱庳庽庾庿廆廌廋廎廑廒廔廕廜廞廥廫异弆弇弈弎弙弜弝弡弢弣弤弨弫弬弮弰弴弶弻弽弿彀彄彅彇彍彐彔彘彛彠彣彤彧"],["8fbda1","彯彲彴彵彸彺彽彾徉徍徏徖徜徝徢徧徫徤徬徯徰徱徸忄忇忈忉忋忐",4,"忞忡忢忨忩忪忬忭忮忯忲忳忶忺忼怇怊怍怓怔怗怘怚怟怤怭怳怵恀恇恈恉恌恑恔恖恗恝恡恧恱恾恿悂悆悈悊悎悑悓悕悘悝悞悢悤悥您悰悱悷"],["8fbea1","悻悾惂惄惈惉惊惋惎惏惔惕惙惛惝惞惢惥惲惵惸惼惽愂愇愊愌愐",4,"愖愗愙愜愞愢愪愫愰愱愵愶愷愹慁慅慆慉慞慠慬慲慸慻慼慿憀憁憃憄憋憍憒憓憗憘憜憝憟憠憥憨憪憭憸憹憼懀懁懂懎懏懕懜懝懞懟懡懢懧懩懥"],["8fbfa1","懬懭懯戁戃戄戇戓戕戜戠戢戣戧戩戫戹戽扂扃扄扆扌扐扑扒扔扖扚扜扤扭扯扳扺扽抍抎抏抐抦抨抳抶抷抺抾抿拄拎拕拖拚拪拲拴拼拽挃挄挊挋挍挐挓挖挘挩挪挭挵挶挹挼捁捂捃捄捆捊捋捎捒捓捔捘捛捥捦捬捭捱捴捵"],["8fc0a1","捸捼捽捿掂掄掇掊掐掔掕掙掚掞掤掦掭掮掯掽揁揅揈揎揑揓揔揕揜揠揥揪揬揲揳揵揸揹搉搊搐搒搔搘搞搠搢搤搥搩搪搯搰搵搽搿摋摏摑摒摓摔摚摛摜摝摟摠摡摣摭摳摴摻摽撅撇撏撐撑撘撙撛撝撟撡撣撦撨撬撳撽撾撿"],["8fc1a1","擄擉擊擋擌擎擐擑擕擗擤擥擩擪擭擰擵擷擻擿攁攄攈攉攊攏攓攔攖攙攛攞攟攢攦攩攮攱攺攼攽敃敇敉敐敒敔敟敠敧敫敺敽斁斅斊斒斕斘斝斠斣斦斮斲斳斴斿旂旈旉旎旐旔旖旘旟旰旲旴旵旹旾旿昀昄昈昉昍昑昒昕昖昝"],["8fc2a1","昞昡昢昣昤昦昩昪昫昬昮昰昱昳昹昷晀晅晆晊晌晑晎晗晘晙晛晜晠晡曻晪晫晬晾晳晵晿晷晸晹晻暀晼暋暌暍暐暒暙暚暛暜暟暠暤暭暱暲暵暻暿曀曂曃曈曌曎曏曔曛曟曨曫曬曮曺朅朇朎朓朙朜朠朢朳朾杅杇杈杌杔杕杝"],["8fc3a1","杦杬杮杴杶杻极构枎枏枑枓枖枘枙枛枰枱枲枵枻枼枽柹柀柂柃柅柈柉柒柗柙柜柡柦柰柲柶柷桒栔栙栝栟栨栧栬栭栯栰栱栳栻栿桄桅桊桌桕桗桘桛桫桮",4,"桵桹桺桻桼梂梄梆梈梖梘梚梜梡梣梥梩梪梮梲梻棅棈棌棏"],["8fc4a1","棐棑棓棖棙棜棝棥棨棪棫棬棭棰棱棵棶棻棼棽椆椉椊椐椑椓椖椗椱椳椵椸椻楂楅楉楎楗楛楣楤楥楦楨楩楬楰楱楲楺楻楿榀榍榒榖榘榡榥榦榨榫榭榯榷榸榺榼槅槈槑槖槗槢槥槮槯槱槳槵槾樀樁樃樏樑樕樚樝樠樤樨樰樲"],["8fc5a1","樴樷樻樾樿橅橆橉橊橎橐橑橒橕橖橛橤橧橪橱橳橾檁檃檆檇檉檋檑檛檝檞檟檥檫檯檰檱檴檽檾檿櫆櫉櫈櫌櫐櫔櫕櫖櫜櫝櫤櫧櫬櫰櫱櫲櫼櫽欂欃欆欇欉欏欐欑欗欛欞欤欨欫欬欯欵欶欻欿歆歊歍歒歖歘歝歠歧歫歮歰歵歽"],["8fc6a1","歾殂殅殗殛殟殠殢殣殨殩殬殭殮殰殸殹殽殾毃毄毉毌毖毚毡毣毦毧毮毱毷毹毿氂氄氅氉氍氎氐氒氙氟氦氧氨氬氮氳氵氶氺氻氿汊汋汍汏汒汔汙汛汜汫汭汯汴汶汸汹汻沅沆沇沉沔沕沗沘沜沟沰沲沴泂泆泍泏泐泑泒泔泖"],["8fc7a1","泚泜泠泧泩泫泬泮泲泴洄洇洊洎洏洑洓洚洦洧洨汧洮洯洱洹洼洿浗浞浟浡浥浧浯浰浼涂涇涑涒涔涖涗涘涪涬涴涷涹涽涿淄淈淊淎淏淖淛淝淟淠淢淥淩淯淰淴淶淼渀渄渞渢渧渲渶渹渻渼湄湅湈湉湋湏湑湒湓湔湗湜湝湞"],["8fc8a1","湢湣湨湳湻湽溍溓溙溠溧溭溮溱溳溻溿滀滁滃滇滈滊滍滎滏滫滭滮滹滻滽漄漈漊漌漍漖漘漚漛漦漩漪漯漰漳漶漻漼漭潏潑潒潓潗潙潚潝潞潡潢潨潬潽潾澃澇澈澋澌澍澐澒澓澔澖澚澟澠澥澦澧澨澮澯澰澵澶澼濅濇濈濊"],["8fc9a1","濚濞濨濩濰濵濹濼濽瀀瀅瀆瀇瀍瀗瀠瀣瀯瀴瀷瀹瀼灃灄灈灉灊灋灔灕灝灞灎灤灥灬灮灵灶灾炁炅炆炔",4,"炛炤炫炰炱炴炷烊烑烓烔烕烖烘烜烤烺焃",4,"焋焌焏焞焠焫焭焯焰焱焸煁煅煆煇煊煋煐煒煗煚煜煞煠"],["8fcaa1","煨煹熀熅熇熌熒熚熛熠熢熯熰熲熳熺熿燀燁燄燋燌燓燖燙燚燜燸燾爀爇爈爉爓爗爚爝爟爤爫爯爴爸爹牁牂牃牅牎牏牐牓牕牖牚牜牞牠牣牨牫牮牯牱牷牸牻牼牿犄犉犍犎犓犛犨犭犮犱犴犾狁狇狉狌狕狖狘狟狥狳狴狺狻"],["8fcba1","狾猂猄猅猇猋猍猒猓猘猙猞猢猤猧猨猬猱猲猵猺猻猽獃獍獐獒獖獘獝獞獟獠獦獧獩獫獬獮獯獱獷獹獼玀玁玃玅玆玎玐玓玕玗玘玜玞玟玠玢玥玦玪玫玭玵玷玹玼玽玿珅珆珉珋珌珏珒珓珖珙珝珡珣珦珧珩珴珵珷珹珺珻珽"],["8fcca1","珿琀琁琄琇琊琑琚琛琤琦琨",9,"琹瑀瑃瑄瑆瑇瑋瑍瑑瑒瑗瑝瑢瑦瑧瑨瑫瑭瑮瑱瑲璀璁璅璆璇璉璏璐璑璒璘璙璚璜璟璠璡璣璦璨璩璪璫璮璯璱璲璵璹璻璿瓈瓉瓌瓐瓓瓘瓚瓛瓞瓟瓤瓨瓪瓫瓯瓴瓺瓻瓼瓿甆"],["8fcda1","甒甖甗甠甡甤甧甩甪甯甶甹甽甾甿畀畃畇畈畎畐畒畗畞畟畡畯畱畹",5,"疁疅疐疒疓疕疙疜疢疤疴疺疿痀痁痄痆痌痎痏痗痜痟痠痡痤痧痬痮痯痱痹瘀瘂瘃瘄瘇瘈瘊瘌瘏瘒瘓瘕瘖瘙瘛瘜瘝瘞瘣瘥瘦瘩瘭瘲瘳瘵瘸瘹"],["8fcea1","瘺瘼癊癀癁癃癄癅癉癋癕癙癟癤癥癭癮癯癱癴皁皅皌皍皕皛皜皝皟皠皢",6,"皪皭皽盁盅盉盋盌盎盔盙盠盦盨盬盰盱盶盹盼眀眆眊眎眒眔眕眗眙眚眜眢眨眭眮眯眴眵眶眹眽眾睂睅睆睊睍睎睏睒睖睗睜睞睟睠睢"],["8fcfa1","睤睧睪睬睰睲睳睴睺睽瞀瞄瞌瞍瞔瞕瞖瞚瞟瞢瞧瞪瞮瞯瞱瞵瞾矃矉矑矒矕矙矞矟矠矤矦矪矬矰矱矴矸矻砅砆砉砍砎砑砝砡砢砣砭砮砰砵砷硃硄硇硈硌硎硒硜硞硠硡硣硤硨硪确硺硾碊碏碔碘碡碝碞碟碤碨碬碭碰碱碲碳"],["8fd0a1","碻碽碿磇磈磉磌磎磒磓磕磖磤磛磟磠磡磦磪磲磳礀磶磷磺磻磿礆礌礐礚礜礞礟礠礥礧礩礭礱礴礵礻礽礿祄祅祆祊祋祏祑祔祘祛祜祧祩祫祲祹祻祼祾禋禌禑禓禔禕禖禘禛禜禡禨禩禫禯禱禴禸离秂秄秇秈秊秏秔秖秚秝秞"],["8fd1a1","秠秢秥秪秫秭秱秸秼稂稃稇稉稊稌稑稕稛稞稡稧稫稭稯稰稴稵稸稹稺穄穅穇穈穌穕穖穙穜穝穟穠穥穧穪穭穵穸穾窀窂窅窆窊窋窐窑窔窞窠窣窬窳窵窹窻窼竆竉竌竎竑竛竨竩竫竬竱竴竻竽竾笇笔笟笣笧笩笪笫笭笮笯笰"],["8fd2a1","笱笴笽笿筀筁筇筎筕筠筤筦筩筪筭筯筲筳筷箄箉箎箐箑箖箛箞箠箥箬箯箰箲箵箶箺箻箼箽篂篅篈篊篔篖篗篙篚篛篨篪篲篴篵篸篹篺篼篾簁簂簃簄簆簉簋簌簎簏簙簛簠簥簦簨簬簱簳簴簶簹簺籆籊籕籑籒籓籙",5],["8fd3a1","籡籣籧籩籭籮籰籲籹籼籽粆粇粏粔粞粠粦粰粶粷粺粻粼粿糄糇糈糉糍糏糓糔糕糗糙糚糝糦糩糫糵紃紇紈紉紏紑紒紓紖紝紞紣紦紪紭紱紼紽紾絀絁絇絈絍絑絓絗絙絚絜絝絥絧絪絰絸絺絻絿綁綂綃綅綆綈綋綌綍綑綖綗綝"],["8fd4a1","綞綦綧綪綳綶綷綹緂",4,"緌緍緎緗緙縀緢緥緦緪緫緭緱緵緶緹緺縈縐縑縕縗縜縝縠縧縨縬縭縯縳縶縿繄繅繇繎繐繒繘繟繡繢繥繫繮繯繳繸繾纁纆纇纊纍纑纕纘纚纝纞缼缻缽缾缿罃罄罇罏罒罓罛罜罝罡罣罤罥罦罭"],["8fd5a1","罱罽罾罿羀羋羍羏羐羑羖羗羜羡羢羦羪羭羴羼羿翀翃翈翎翏翛翟翣翥翨翬翮翯翲翺翽翾翿耇耈耊耍耎耏耑耓耔耖耝耞耟耠耤耦耬耮耰耴耵耷耹耺耼耾聀聄聠聤聦聭聱聵肁肈肎肜肞肦肧肫肸肹胈胍胏胒胔胕胗胘胠胭胮"],["8fd6a1","胰胲胳胶胹胺胾脃脋脖脗脘脜脞脠脤脧脬脰脵脺脼腅腇腊腌腒腗腠腡腧腨腩腭腯腷膁膐膄膅膆膋膎膖膘膛膞膢膮膲膴膻臋臃臅臊臎臏臕臗臛臝臞臡臤臫臬臰臱臲臵臶臸臹臽臿舀舃舏舓舔舙舚舝舡舢舨舲舴舺艃艄艅艆"],["8fd7a1","艋艎艏艑艖艜艠艣艧艭艴艻艽艿芀芁芃芄芇芉芊芎芑芔芖芘芚芛芠芡芣芤芧芨芩芪芮芰芲芴芷芺芼芾芿苆苐苕苚苠苢苤苨苪苭苯苶苷苽苾茀茁茇茈茊茋荔茛茝茞茟茡茢茬茭茮茰茳茷茺茼茽荂荃荄荇荍荎荑荕荖荗荰荸"],["8fd8a1","荽荿莀莂莄莆莍莒莔莕莘莙莛莜莝莦莧莩莬莾莿菀菇菉菏菐菑菔菝荓菨菪菶菸菹菼萁萆萊萏萑萕萙莭萯萹葅葇葈葊葍葏葑葒葖葘葙葚葜葠葤葥葧葪葰葳葴葶葸葼葽蒁蒅蒒蒓蒕蒞蒦蒨蒩蒪蒯蒱蒴蒺蒽蒾蓀蓂蓇蓈蓌蓏蓓"],["8fd9a1","蓜蓧蓪蓯蓰蓱蓲蓷蔲蓺蓻蓽蔂蔃蔇蔌蔎蔐蔜蔞蔢蔣蔤蔥蔧蔪蔫蔯蔳蔴蔶蔿蕆蕏",4,"蕖蕙蕜",6,"蕤蕫蕯蕹蕺蕻蕽蕿薁薅薆薉薋薌薏薓薘薝薟薠薢薥薧薴薶薷薸薼薽薾薿藂藇藊藋藎薭藘藚藟藠藦藨藭藳藶藼"],["8fdaa1","藿蘀蘄蘅蘍蘎蘐蘑蘒蘘蘙蘛蘞蘡蘧蘩蘶蘸蘺蘼蘽虀虂虆虒虓虖虗虘虙虝虠",4,"虩虬虯虵虶虷虺蚍蚑蚖蚘蚚蚜蚡蚦蚧蚨蚭蚱蚳蚴蚵蚷蚸蚹蚿蛀蛁蛃蛅蛑蛒蛕蛗蛚蛜蛠蛣蛥蛧蚈蛺蛼蛽蜄蜅蜇蜋蜎蜏蜐蜓蜔蜙蜞蜟蜡蜣"],["8fdba1","蜨蜮蜯蜱蜲蜹蜺蜼蜽蜾蝀蝃蝅蝍蝘蝝蝡蝤蝥蝯蝱蝲蝻螃",6,"螋螌螐螓螕螗螘螙螞螠螣螧螬螭螮螱螵螾螿蟁蟈蟉蟊蟎蟕蟖蟙蟚蟜蟟蟢蟣蟤蟪蟫蟭蟱蟳蟸蟺蟿蠁蠃蠆蠉蠊蠋蠐蠙蠒蠓蠔蠘蠚蠛蠜蠞蠟蠨蠭蠮蠰蠲蠵"],["8fdca1","蠺蠼衁衃衅衈衉衊衋衎衑衕衖衘衚衜衟衠衤衩衱衹衻袀袘袚袛袜袟袠袨袪袺袽袾裀裊",4,"裑裒裓裛裞裧裯裰裱裵裷褁褆褍褎褏褕褖褘褙褚褜褠褦褧褨褰褱褲褵褹褺褾襀襂襅襆襉襏襒襗襚襛襜襡襢襣襫襮襰襳襵襺"],["8fdda1","襻襼襽覉覍覐覔覕覛覜覟覠覥覰覴覵覶覷覼觔",4,"觥觩觫觭觱觳觶觹觽觿訄訅訇訏訑訒訔訕訞訠訢訤訦訫訬訯訵訷訽訾詀詃詅詇詉詍詎詓詖詗詘詜詝詡詥詧詵詶詷詹詺詻詾詿誀誃誆誋誏誐誒誖誗誙誟誧誩誮誯誳"],["8fdea1","誶誷誻誾諃諆諈諉諊諑諓諔諕諗諝諟諬諰諴諵諶諼諿謅謆謋謑謜謞謟謊謭謰謷謼譂",4,"譈譒譓譔譙譍譞譣譭譶譸譹譼譾讁讄讅讋讍讏讔讕讜讞讟谸谹谽谾豅豇豉豋豏豑豓豔豗豘豛豝豙豣豤豦豨豩豭豳豵豶豻豾貆"],["8fdfa1","貇貋貐貒貓貙貛貜貤貹貺賅賆賉賋賏賖賕賙賝賡賨賬賯賰賲賵賷賸賾賿贁贃贉贒贗贛赥赩赬赮赿趂趄趈趍趐趑趕趞趟趠趦趫趬趯趲趵趷趹趻跀跅跆跇跈跊跎跑跔跕跗跙跤跥跧跬跰趼跱跲跴跽踁踄踅踆踋踑踔踖踠踡踢"],["8fe0a1","踣踦踧踱踳踶踷踸踹踽蹀蹁蹋蹍蹎蹏蹔蹛蹜蹝蹞蹡蹢蹩蹬蹭蹯蹰蹱蹹蹺蹻躂躃躉躐躒躕躚躛躝躞躢躧躩躭躮躳躵躺躻軀軁軃軄軇軏軑軔軜軨軮軰軱軷軹軺軭輀輂輇輈輏輐輖輗輘輞輠輡輣輥輧輨輬輭輮輴輵輶輷輺轀轁"],["8fe1a1","轃轇轏轑",4,"轘轝轞轥辝辠辡辤辥辦辵辶辸达迀迁迆迊迋迍运迒迓迕迠迣迤迨迮迱迵迶迻迾适逄逈逌逘逛逨逩逯逪逬逭逳逴逷逿遃遄遌遛遝遢遦遧遬遰遴遹邅邈邋邌邎邐邕邗邘邙邛邠邡邢邥邰邲邳邴邶邽郌邾郃"],["8fe2a1","郄郅郇郈郕郗郘郙郜郝郟郥郒郶郫郯郰郴郾郿鄀鄄鄅鄆鄈鄍鄐鄔鄖鄗鄘鄚鄜鄞鄠鄥鄢鄣鄧鄩鄮鄯鄱鄴鄶鄷鄹鄺鄼鄽酃酇酈酏酓酗酙酚酛酡酤酧酭酴酹酺酻醁醃醅醆醊醎醑醓醔醕醘醞醡醦醨醬醭醮醰醱醲醳醶醻醼醽醿"],["8fe3a1","釂釃釅釓釔釗釙釚釞釤釥釩釪釬",5,"釷釹釻釽鈀鈁鈄鈅鈆鈇鈉鈊鈌鈐鈒鈓鈖鈘鈜鈝鈣鈤鈥鈦鈨鈮鈯鈰鈳鈵鈶鈸鈹鈺鈼鈾鉀鉂鉃鉆鉇鉊鉍鉎鉏鉑鉘鉙鉜鉝鉠鉡鉥鉧鉨鉩鉮鉯鉰鉵",4,"鉻鉼鉽鉿銈銉銊銍銎銒銗"],["8fe4a1","銙銟銠銤銥銧銨銫銯銲銶銸銺銻銼銽銿",4,"鋅鋆鋇鋈鋋鋌鋍鋎鋐鋓鋕鋗鋘鋙鋜鋝鋟鋠鋡鋣鋥鋧鋨鋬鋮鋰鋹鋻鋿錀錂錈錍錑錔錕錜錝錞錟錡錤錥錧錩錪錳錴錶錷鍇鍈鍉鍐鍑鍒鍕鍗鍘鍚鍞鍤鍥鍧鍩鍪鍭鍯鍰鍱鍳鍴鍶"],["8fe5a1","鍺鍽鍿鎀鎁鎂鎈鎊鎋鎍鎏鎒鎕鎘鎛鎞鎡鎣鎤鎦鎨鎫鎴鎵鎶鎺鎩鏁鏄鏅鏆鏇鏉",4,"鏓鏙鏜鏞鏟鏢鏦鏧鏹鏷鏸鏺鏻鏽鐁鐂鐄鐈鐉鐍鐎鐏鐕鐖鐗鐟鐮鐯鐱鐲鐳鐴鐻鐿鐽鑃鑅鑈鑊鑌鑕鑙鑜鑟鑡鑣鑨鑫鑭鑮鑯鑱鑲钄钃镸镹"],["8fe6a1","镾閄閈閌閍閎閝閞閟閡閦閩閫閬閴閶閺閽閿闆闈闉闋闐闑闒闓闙闚闝闞闟闠闤闦阝阞阢阤阥阦阬阱阳阷阸阹阺阼阽陁陒陔陖陗陘陡陮陴陻陼陾陿隁隂隃隄隉隑隖隚隝隟隤隥隦隩隮隯隳隺雊雒嶲雘雚雝雞雟雩雯雱雺霂"],["8fe7a1","霃霅霉霚霛霝霡霢霣霨霱霳靁靃靊靎靏靕靗靘靚靛靣靧靪靮靳靶靷靸靻靽靿鞀鞉鞕鞖鞗鞙鞚鞞鞟鞢鞬鞮鞱鞲鞵鞶鞸鞹鞺鞼鞾鞿韁韄韅韇韉韊韌韍韎韐韑韔韗韘韙韝韞韠韛韡韤韯韱韴韷韸韺頇頊頙頍頎頔頖頜頞頠頣頦"],["8fe8a1","頫頮頯頰頲頳頵頥頾顄顇顊顑顒顓顖顗顙顚顢顣顥顦顪顬颫颭颮颰颴颷颸颺颻颿飂飅飈飌飡飣飥飦飧飪飳飶餂餇餈餑餕餖餗餚餛餜餟餢餦餧餫餱",4,"餹餺餻餼饀饁饆饇饈饍饎饔饘饙饛饜饞饟饠馛馝馟馦馰馱馲馵"],["8fe9a1","馹馺馽馿駃駉駓駔駙駚駜駞駧駪駫駬駰駴駵駹駽駾騂騃騄騋騌騐騑騖騞騠騢騣騤騧騭騮騳騵騶騸驇驁驄驊驋驌驎驑驔驖驝骪骬骮骯骲骴骵骶骹骻骾骿髁髃髆髈髎髐髒髕髖髗髛髜髠髤髥髧髩髬髲髳髵髹髺髽髿",4],["8feaa1","鬄鬅鬈鬉鬋鬌鬍鬎鬐鬒鬖鬙鬛鬜鬠鬦鬫鬭鬳鬴鬵鬷鬹鬺鬽魈魋魌魕魖魗魛魞魡魣魥魦魨魪",4,"魳魵魷魸魹魿鮀鮄鮅鮆鮇鮉鮊鮋鮍鮏鮐鮔鮚鮝鮞鮦鮧鮩鮬鮰鮱鮲鮷鮸鮻鮼鮾鮿鯁鯇鯈鯎鯐鯗鯘鯝鯟鯥鯧鯪鯫鯯鯳鯷鯸"],["8feba1","鯹鯺鯽鯿鰀鰂鰋鰏鰑鰖鰘鰙鰚鰜鰞鰢鰣鰦",4,"鰱鰵鰶鰷鰽鱁鱃鱄鱅鱉鱊鱎鱏鱐鱓鱔鱖鱘鱛鱝鱞鱟鱣鱩鱪鱜鱫鱨鱮鱰鱲鱵鱷鱻鳦鳲鳷鳹鴋鴂鴑鴗鴘鴜鴝鴞鴯鴰鴲鴳鴴鴺鴼鵅鴽鵂鵃鵇鵊鵓鵔鵟鵣鵢鵥鵩鵪鵫鵰鵶鵷鵻"],["8feca1","鵼鵾鶃鶄鶆鶊鶍鶎鶒鶓鶕鶖鶗鶘鶡鶪鶬鶮鶱鶵鶹鶼鶿鷃鷇鷉鷊鷔鷕鷖鷗鷚鷞鷟鷠鷥鷧鷩鷫鷮鷰鷳鷴鷾鸊鸂鸇鸎鸐鸑鸒鸕鸖鸙鸜鸝鹺鹻鹼麀麂麃麄麅麇麎麏麖麘麛麞麤麨麬麮麯麰麳麴麵黆黈黋黕黟黤黧黬黭黮黰黱黲黵"],["8feda1","黸黿鼂鼃鼉鼏鼐鼑鼒鼔鼖鼗鼙鼚鼛鼟鼢鼦鼪鼫鼯鼱鼲鼴鼷鼹鼺鼼鼽鼿齁齃",4,"齓齕齖齗齘齚齝齞齨齩齭",4,"齳齵齺齽龏龐龑龒龔龖龗龞龡龢龣龥"]]; /***/ }), -/* 693 */ +/* 694 */ /***/ (function(module) { module.exports = [["0","\u0000",127,"€"],["8140","丂丄丅丆丏丒丗丟丠両丣並丩丮丯丱丳丵丷丼乀乁乂乄乆乊乑乕乗乚乛乢乣乤乥乧乨乪",5,"乲乴",9,"乿",6,"亇亊"],["8180","亐亖亗亙亜亝亞亣亪亯亰亱亴亶亷亸亹亼亽亾仈仌仏仐仒仚仛仜仠仢仦仧仩仭仮仯仱仴仸仹仺仼仾伀伂",6,"伋伌伒",4,"伜伝伡伣伨伩伬伭伮伱伳伵伷伹伻伾",4,"佄佅佇",5,"佒佔佖佡佢佦佨佪佫佭佮佱佲併佷佸佹佺佽侀侁侂侅來侇侊侌侎侐侒侓侕侖侘侙侚侜侞侟価侢"],["8240","侤侫侭侰",4,"侶",8,"俀俁係俆俇俈俉俋俌俍俒",4,"俙俛俠俢俤俥俧俫俬俰俲俴俵俶俷俹俻俼俽俿",11],["8280","個倎倐們倓倕倖倗倛倝倞倠倢倣値倧倫倯",10,"倻倽倿偀偁偂偄偅偆偉偊偋偍偐",4,"偖偗偘偙偛偝",7,"偦",5,"偭",8,"偸偹偺偼偽傁傂傃傄傆傇傉傊傋傌傎",20,"傤傦傪傫傭",4,"傳",6,"傼"],["8340","傽",17,"僐",5,"僗僘僙僛",10,"僨僩僪僫僯僰僱僲僴僶",4,"僼",9,"儈"],["8380","儉儊儌",5,"儓",13,"儢",28,"兂兇兊兌兎兏児兒兓兗兘兙兛兝",4,"兣兤兦內兩兪兯兲兺兾兿冃冄円冇冊冋冎冏冐冑冓冔冘冚冝冞冟冡冣冦",4,"冭冮冴冸冹冺冾冿凁凂凃凅凈凊凍凎凐凒",5],["8440","凘凙凚凜凞凟凢凣凥",5,"凬凮凱凲凴凷凾刄刅刉刋刌刏刐刓刔刕刜刞刟刡刢刣別刦刧刪刬刯刱刲刴刵刼刾剄",5,"剋剎剏剒剓剕剗剘"],["8480","剙剚剛剝剟剠剢剣剤剦剨剫剬剭剮剰剱剳",9,"剾劀劃",4,"劉",6,"劑劒劔",6,"劜劤劥劦劧劮劯劰労",9,"勀勁勂勄勅勆勈勊勌勍勎勏勑勓勔動勗務",5,"勠勡勢勣勥",10,"勱",7,"勻勼勽匁匂匃匄匇匉匊匋匌匎"],["8540","匑匒匓匔匘匛匜匞匟匢匤匥匧匨匩匫匬匭匯",9,"匼匽區卂卄卆卋卌卍卐協単卙卛卝卥卨卪卬卭卲卶卹卻卼卽卾厀厁厃厇厈厊厎厏"],["8580","厐",4,"厖厗厙厛厜厞厠厡厤厧厪厫厬厭厯",6,"厷厸厹厺厼厽厾叀參",4,"収叏叐叒叓叕叚叜叝叞叡叢叧叴叺叾叿吀吂吅吇吋吔吘吙吚吜吢吤吥吪吰吳吶吷吺吽吿呁呂呄呅呇呉呌呍呎呏呑呚呝",4,"呣呥呧呩",7,"呴呹呺呾呿咁咃咅咇咈咉咊咍咑咓咗咘咜咞咟咠咡"],["8640","咢咥咮咰咲咵咶咷咹咺咼咾哃哅哊哋哖哘哛哠",4,"哫哬哯哰哱哴",5,"哻哾唀唂唃唄唅唈唊",4,"唒唓唕",5,"唜唝唞唟唡唥唦"],["8680","唨唩唫唭唲唴唵唶唸唹唺唻唽啀啂啅啇啈啋",4,"啑啒啓啔啗",4,"啝啞啟啠啢啣啨啩啫啯",5,"啹啺啽啿喅喆喌喍喎喐喒喓喕喖喗喚喛喞喠",6,"喨",8,"喲喴営喸喺喼喿",4,"嗆嗇嗈嗊嗋嗎嗏嗐嗕嗗",4,"嗞嗠嗢嗧嗩嗭嗮嗰嗱嗴嗶嗸",4,"嗿嘂嘃嘄嘅"],["8740","嘆嘇嘊嘋嘍嘐",7,"嘙嘚嘜嘝嘠嘡嘢嘥嘦嘨嘩嘪嘫嘮嘯嘰嘳嘵嘷嘸嘺嘼嘽嘾噀",11,"噏",4,"噕噖噚噛噝",4],["8780","噣噥噦噧噭噮噯噰噲噳噴噵噷噸噹噺噽",7,"嚇",6,"嚐嚑嚒嚔",14,"嚤",10,"嚰",6,"嚸嚹嚺嚻嚽",12,"囋",8,"囕囖囘囙囜団囥",5,"囬囮囯囲図囶囷囸囻囼圀圁圂圅圇國",6],["8840","園",9,"圝圞圠圡圢圤圥圦圧圫圱圲圴",4,"圼圽圿坁坃坄坅坆坈坉坋坒",4,"坘坙坢坣坥坧坬坮坰坱坲坴坵坸坹坺坽坾坿垀"],["8880","垁垇垈垉垊垍",4,"垔",6,"垜垝垞垟垥垨垪垬垯垰垱垳垵垶垷垹",8,"埄",6,"埌埍埐埑埓埖埗埛埜埞埡埢埣埥",7,"埮埰埱埲埳埵埶執埻埼埾埿堁堃堄堅堈堉堊堌堎堏堐堒堓堔堖堗堘堚堛堜堝堟堢堣堥",4,"堫",4,"報堲堳場堶",7],["8940","堾",5,"塅",6,"塎塏塐塒塓塕塖塗塙",4,"塟",5,"塦",4,"塭",16,"塿墂墄墆墇墈墊墋墌"],["8980","墍",4,"墔",4,"墛墜墝墠",7,"墪",17,"墽墾墿壀壂壃壄壆",10,"壒壓壔壖",13,"壥",5,"壭壯壱売壴壵壷壸壺",7,"夃夅夆夈",4,"夎夐夑夒夓夗夘夛夝夞夠夡夢夣夦夨夬夰夲夳夵夶夻"],["8a40","夽夾夿奀奃奅奆奊奌奍奐奒奓奙奛",4,"奡奣奤奦",12,"奵奷奺奻奼奾奿妀妅妉妋妌妎妏妐妑妔妕妘妚妛妜妝妟妠妡妢妦"],["8a80","妧妬妭妰妱妳",5,"妺妼妽妿",6,"姇姈姉姌姍姎姏姕姖姙姛姞",4,"姤姦姧姩姪姫姭",11,"姺姼姽姾娀娂娊娋娍娎娏娐娒娔娕娖娗娙娚娛娝娞娡娢娤娦娧娨娪",6,"娳娵娷",4,"娽娾娿婁",4,"婇婈婋",9,"婖婗婘婙婛",5],["8b40","婡婣婤婥婦婨婩婫",8,"婸婹婻婼婽婾媀",17,"媓",6,"媜",13,"媫媬"],["8b80","媭",4,"媴媶媷媹",4,"媿嫀嫃",5,"嫊嫋嫍",4,"嫓嫕嫗嫙嫚嫛嫝嫞嫟嫢嫤嫥嫧嫨嫪嫬",4,"嫲",22,"嬊",11,"嬘",25,"嬳嬵嬶嬸",7,"孁",6],["8c40","孈",7,"孒孖孞孠孡孧孨孫孭孮孯孲孴孶孷學孹孻孼孾孿宂宆宊宍宎宐宑宒宔宖実宧宨宩宬宭宮宯宱宲宷宺宻宼寀寁寃寈寉寊寋寍寎寏"],["8c80","寑寔",8,"寠寢寣實寧審",4,"寯寱",6,"寽対尀専尃尅將專尋尌對導尐尒尓尗尙尛尞尟尠尡尣尦尨尩尪尫尭尮尯尰尲尳尵尶尷屃屄屆屇屌屍屒屓屔屖屗屘屚屛屜屝屟屢層屧",6,"屰屲",6,"屻屼屽屾岀岃",4,"岉岊岋岎岏岒岓岕岝",4,"岤",4],["8d40","岪岮岯岰岲岴岶岹岺岻岼岾峀峂峃峅",5,"峌",5,"峓",5,"峚",6,"峢峣峧峩峫峬峮峯峱",9,"峼",4],["8d80","崁崄崅崈",5,"崏",4,"崕崗崘崙崚崜崝崟",4,"崥崨崪崫崬崯",4,"崵",7,"崿",7,"嵈嵉嵍",10,"嵙嵚嵜嵞",10,"嵪嵭嵮嵰嵱嵲嵳嵵",12,"嶃",21,"嶚嶛嶜嶞嶟嶠"],["8e40","嶡",21,"嶸",12,"巆",6,"巎",12,"巜巟巠巣巤巪巬巭"],["8e80","巰巵巶巸",4,"巿帀帄帇帉帊帋帍帎帒帓帗帞",7,"帨",4,"帯帰帲",4,"帹帺帾帿幀幁幃幆",5,"幍",6,"幖",4,"幜幝幟幠幣",14,"幵幷幹幾庁庂広庅庈庉庌庍庎庒庘庛庝庡庢庣庤庨",4,"庮",4,"庴庺庻庼庽庿",6],["8f40","廆廇廈廋",5,"廔廕廗廘廙廚廜",11,"廩廫",8,"廵廸廹廻廼廽弅弆弇弉弌弍弎弐弒弔弖弙弚弜弝弞弡弢弣弤"],["8f80","弨弫弬弮弰弲",6,"弻弽弾弿彁",14,"彑彔彙彚彛彜彞彟彠彣彥彧彨彫彮彯彲彴彵彶彸彺彽彾彿徃徆徍徎徏徑従徔徖徚徛徝從徟徠徢",5,"復徫徬徯",5,"徶徸徹徺徻徾",4,"忇忈忊忋忎忓忔忕忚忛応忞忟忢忣忥忦忨忩忬忯忰忲忳忴忶忷忹忺忼怇"],["9040","怈怉怋怌怐怑怓怗怘怚怞怟怢怣怤怬怭怮怰",4,"怶",4,"怽怾恀恄",6,"恌恎恏恑恓恔恖恗恘恛恜恞恟恠恡恥恦恮恱恲恴恵恷恾悀"],["9080","悁悂悅悆悇悈悊悋悎悏悐悑悓悕悗悘悙悜悞悡悢悤悥悧悩悪悮悰悳悵悶悷悹悺悽",7,"惇惈惉惌",4,"惒惓惔惖惗惙惛惞惡",4,"惪惱惲惵惷惸惻",4,"愂愃愄愅愇愊愋愌愐",4,"愖愗愘愙愛愜愝愞愡愢愥愨愩愪愬",18,"慀",6],["9140","慇慉態慍慏慐慒慓慔慖",6,"慞慟慠慡慣慤慥慦慩",6,"慱慲慳慴慶慸",18,"憌憍憏",4,"憕"],["9180","憖",6,"憞",8,"憪憫憭",9,"憸",5,"憿懀懁懃",4,"應懌",4,"懓懕",16,"懧",13,"懶",8,"戀",5,"戇戉戓戔戙戜戝戞戠戣戦戧戨戩戫戭戯戰戱戲戵戶戸",4,"扂扄扅扆扊"],["9240","扏扐払扖扗扙扚扜",6,"扤扥扨扱扲扴扵扷扸扺扻扽抁抂抃抅抆抇抈抋",5,"抔抙抜抝択抣抦抧抩抪抭抮抯抰抲抳抴抶抷抸抺抾拀拁"],["9280","拃拋拏拑拕拝拞拠拡拤拪拫拰拲拵拸拹拺拻挀挃挄挅挆挊挋挌挍挏挐挒挓挔挕挗挘挙挜挦挧挩挬挭挮挰挱挳",5,"挻挼挾挿捀捁捄捇捈捊捑捒捓捔捖",7,"捠捤捥捦捨捪捫捬捯捰捲捳捴捵捸捹捼捽捾捿掁掃掄掅掆掋掍掑掓掔掕掗掙",6,"採掤掦掫掯掱掲掵掶掹掻掽掿揀"],["9340","揁揂揃揅揇揈揊揋揌揑揓揔揕揗",6,"揟揢揤",4,"揫揬揮揯揰揱揳揵揷揹揺揻揼揾搃搄搆",4,"損搎搑搒搕",5,"搝搟搢搣搤"],["9380","搥搧搨搩搫搮",5,"搵",4,"搻搼搾摀摂摃摉摋",6,"摓摕摖摗摙",4,"摟",7,"摨摪摫摬摮",9,"摻",6,"撃撆撈",8,"撓撔撗撘撚撛撜撝撟",4,"撥撦撧撨撪撫撯撱撲撳撴撶撹撻撽撾撿擁擃擄擆",6,"擏擑擓擔擕擖擙據"],["9440","擛擜擝擟擠擡擣擥擧",24,"攁",7,"攊",7,"攓",4,"攙",8],["9480","攢攣攤攦",4,"攬攭攰攱攲攳攷攺攼攽敀",4,"敆敇敊敋敍敎敐敒敓敔敗敘敚敜敟敠敡敤敥敧敨敩敪敭敮敯敱敳敵敶數",14,"斈斉斊斍斎斏斒斔斕斖斘斚斝斞斠斢斣斦斨斪斬斮斱",7,"斺斻斾斿旀旂旇旈旉旊旍旐旑旓旔旕旘",7,"旡旣旤旪旫"],["9540","旲旳旴旵旸旹旻",4,"昁昄昅昇昈昉昋昍昐昑昒昖昗昘昚昛昜昞昡昢昣昤昦昩昪昫昬昮昰昲昳昷",4,"昽昿晀時晄",6,"晍晎晐晑晘"],["9580","晙晛晜晝晞晠晢晣晥晧晩",4,"晱晲晳晵晸晹晻晼晽晿暀暁暃暅暆暈暉暊暋暍暎暏暐暒暓暔暕暘",4,"暞",8,"暩",4,"暯",4,"暵暶暷暸暺暻暼暽暿",25,"曚曞",7,"曧曨曪",5,"曱曵曶書曺曻曽朁朂會"],["9640","朄朅朆朇朌朎朏朑朒朓朖朘朙朚朜朞朠",5,"朧朩朮朰朲朳朶朷朸朹朻朼朾朿杁杄杅杇杊杋杍杒杔杕杗",4,"杝杢杣杤杦杧杫杬杮東杴杶"],["9680","杸杹杺杻杽枀枂枃枅枆枈枊枌枍枎枏枑枒枓枔枖枙枛枟枠枡枤枦枩枬枮枱枲枴枹",7,"柂柅",9,"柕柖柗柛柟柡柣柤柦柧柨柪柫柭柮柲柵",7,"柾栁栂栃栄栆栍栐栒栔栕栘",4,"栞栟栠栢",6,"栫",6,"栴栵栶栺栻栿桇桋桍桏桒桖",5],["9740","桜桝桞桟桪桬",7,"桵桸",8,"梂梄梇",7,"梐梑梒梔梕梖梘",9,"梣梤梥梩梪梫梬梮梱梲梴梶梷梸"],["9780","梹",6,"棁棃",5,"棊棌棎棏棐棑棓棔棖棗棙棛",4,"棡棢棤",9,"棯棲棳棴棶棷棸棻棽棾棿椀椂椃椄椆",4,"椌椏椑椓",11,"椡椢椣椥",7,"椮椯椱椲椳椵椶椷椸椺椻椼椾楀楁楃",16,"楕楖楘楙楛楜楟"],["9840","楡楢楤楥楧楨楩楪楬業楯楰楲",4,"楺楻楽楾楿榁榃榅榊榋榌榎",5,"榖榗榙榚榝",9,"榩榪榬榮榯榰榲榳榵榶榸榹榺榼榽"],["9880","榾榿槀槂",7,"構槍槏槑槒槓槕",5,"槜槝槞槡",11,"槮槯槰槱槳",9,"槾樀",9,"樋",11,"標",5,"樠樢",5,"権樫樬樭樮樰樲樳樴樶",6,"樿",4,"橅橆橈",7,"橑",6,"橚"],["9940","橜",4,"橢橣橤橦",10,"橲",6,"橺橻橽橾橿檁檂檃檅",8,"檏檒",4,"檘",7,"檡",5],["9980","檧檨檪檭",114,"欥欦欨",6],["9a40","欯欰欱欳欴欵欶欸欻欼欽欿歀歁歂歄歅歈歊歋歍",11,"歚",7,"歨歩歫",13,"歺歽歾歿殀殅殈"],["9a80","殌殎殏殐殑殔殕殗殘殙殜",4,"殢",7,"殫",7,"殶殸",6,"毀毃毄毆",4,"毌毎毐毑毘毚毜",4,"毢",7,"毬毭毮毰毱毲毴毶毷毸毺毻毼毾",6,"氈",4,"氎氒気氜氝氞氠氣氥氫氬氭氱氳氶氷氹氺氻氼氾氿汃汄汅汈汋",4,"汑汒汓汖汘"],["9b40","汙汚汢汣汥汦汧汫",4,"汱汳汵汷汸決汻汼汿沀沄沇沊沋沍沎沑沒沕沖沗沘沚沜沝沞沠沢沨沬沯沰沴沵沶沷沺泀況泂泃泆泇泈泋泍泎泏泑泒泘"],["9b80","泙泚泜泝泟泤泦泧泩泬泭泲泴泹泿洀洂洃洅洆洈洉洊洍洏洐洑洓洔洕洖洘洜洝洟",5,"洦洨洩洬洭洯洰洴洶洷洸洺洿浀浂浄浉浌浐浕浖浗浘浛浝浟浡浢浤浥浧浨浫浬浭浰浱浲浳浵浶浹浺浻浽",4,"涃涄涆涇涊涋涍涏涐涒涖",4,"涜涢涥涬涭涰涱涳涴涶涷涹",5,"淁淂淃淈淉淊"],["9c40","淍淎淏淐淒淓淔淕淗淚淛淜淟淢淣淥淧淨淩淪淭淯淰淲淴淵淶淸淺淽",7,"渆渇済渉渋渏渒渓渕渘渙減渜渞渟渢渦渧渨渪測渮渰渱渳渵"],["9c80","渶渷渹渻",7,"湅",7,"湏湐湑湒湕湗湙湚湜湝湞湠",10,"湬湭湯",14,"満溁溂溄溇溈溊",4,"溑",6,"溙溚溛溝溞溠溡溣溤溦溨溩溫溬溭溮溰溳溵溸溹溼溾溿滀滃滄滅滆滈滉滊滌滍滎滐滒滖滘滙滛滜滝滣滧滪",5],["9d40","滰滱滲滳滵滶滷滸滺",7,"漃漄漅漇漈漊",4,"漐漑漒漖",9,"漡漢漣漥漦漧漨漬漮漰漲漴漵漷",6,"漿潀潁潂"],["9d80","潃潄潅潈潉潊潌潎",9,"潙潚潛潝潟潠潡潣潤潥潧",5,"潯潰潱潳潵潶潷潹潻潽",6,"澅澆澇澊澋澏",12,"澝澞澟澠澢",4,"澨",10,"澴澵澷澸澺",5,"濁濃",5,"濊",6,"濓",10,"濟濢濣濤濥"],["9e40","濦",7,"濰",32,"瀒",7,"瀜",6,"瀤",6],["9e80","瀫",9,"瀶瀷瀸瀺",17,"灍灎灐",13,"灟",11,"灮灱灲灳灴灷灹灺灻災炁炂炃炄炆炇炈炋炌炍炏炐炑炓炗炘炚炛炞",12,"炰炲炴炵炶為炾炿烄烅烆烇烉烋",12,"烚"],["9f40","烜烝烞烠烡烢烣烥烪烮烰",6,"烸烺烻烼烾",10,"焋",4,"焑焒焔焗焛",10,"焧",7,"焲焳焴"],["9f80","焵焷",13,"煆煇煈煉煋煍煏",12,"煝煟",4,"煥煩",4,"煯煰煱煴煵煶煷煹煻煼煾",5,"熅",4,"熋熌熍熎熐熑熒熓熕熖熗熚",4,"熡",6,"熩熪熫熭",5,"熴熶熷熸熺",8,"燄",9,"燏",4],["a040","燖",9,"燡燢燣燤燦燨",5,"燯",9,"燺",11,"爇",19],["a080","爛爜爞",9,"爩爫爭爮爯爲爳爴爺爼爾牀",6,"牉牊牋牎牏牐牑牓牔牕牗牘牚牜牞牠牣牤牥牨牪牫牬牭牰牱牳牴牶牷牸牻牼牽犂犃犅",4,"犌犎犐犑犓",11,"犠",11,"犮犱犲犳犵犺",6,"狅狆狇狉狊狋狌狏狑狓狔狕狖狘狚狛"],["a1a1"," 、。·ˉˇ¨〃々—~‖…‘’“”〔〕〈",7,"〖〗【】±×÷∶∧∨∑∏∪∩∈∷√⊥∥∠⌒⊙∫∮≡≌≈∽∝≠≮≯≤≥∞∵∴♂♀°′″℃$¤¢£‰§№☆★○●◎◇◆□■△▲※→←↑↓〓"],["a2a1","ⅰ",9],["a2b1","⒈",19,"⑴",19,"①",9],["a2e5","㈠",9],["a2f1","Ⅰ",11],["a3a1","!"#¥%",88," ̄"],["a4a1","ぁ",82],["a5a1","ァ",85],["a6a1","Α",16,"Σ",6],["a6c1","α",16,"σ",6],["a6e0","︵︶︹︺︿﹀︽︾﹁﹂﹃﹄"],["a6ee","︻︼︷︸︱"],["a6f4","︳︴"],["a7a1","А",5,"ЁЖ",25],["a7d1","а",5,"ёж",25],["a840","ˊˋ˙–―‥‵℅℉↖↗↘↙∕∟∣≒≦≧⊿═",35,"▁",6],["a880","█",7,"▓▔▕▼▽◢◣◤◥☉⊕〒〝〞"],["a8a1","āáǎàēéěèīíǐìōóǒòūúǔùǖǘǚǜüêɑ"],["a8bd","ńň"],["a8c0","ɡ"],["a8c5","ㄅ",36],["a940","〡",8,"㊣㎎㎏㎜㎝㎞㎡㏄㏎㏑㏒㏕︰¬¦"],["a959","℡㈱"],["a95c","‐"],["a960","ー゛゜ヽヾ〆ゝゞ﹉",9,"﹔﹕﹖﹗﹙",8],["a980","﹢",4,"﹨﹩﹪﹫"],["a996","〇"],["a9a4","─",75],["aa40","狜狝狟狢",5,"狪狫狵狶狹狽狾狿猀猂猄",5,"猋猌猍猏猐猑猒猔猘猙猚猟猠猣猤猦猧猨猭猯猰猲猳猵猶猺猻猼猽獀",8],["aa80","獉獊獋獌獎獏獑獓獔獕獖獘",7,"獡",10,"獮獰獱"],["ab40","獲",11,"獿",4,"玅玆玈玊玌玍玏玐玒玓玔玕玗玘玙玚玜玝玞玠玡玣",5,"玪玬玭玱玴玵玶玸玹玼玽玾玿珁珃",4],["ab80","珋珌珎珒",6,"珚珛珜珝珟珡珢珣珤珦珨珪珫珬珮珯珰珱珳",4],["ac40","珸",10,"琄琇琈琋琌琍琎琑",8,"琜",5,"琣琤琧琩琫琭琯琱琲琷",4,"琽琾琿瑀瑂",11],["ac80","瑎",6,"瑖瑘瑝瑠",12,"瑮瑯瑱",4,"瑸瑹瑺"],["ad40","瑻瑼瑽瑿璂璄璅璆璈璉璊璌璍璏璑",10,"璝璟",7,"璪",15,"璻",12],["ad80","瓈",9,"瓓",8,"瓝瓟瓡瓥瓧",6,"瓰瓱瓲"],["ae40","瓳瓵瓸",6,"甀甁甂甃甅",7,"甎甐甒甔甕甖甗甛甝甞甠",4,"甦甧甪甮甴甶甹甼甽甿畁畂畃畄畆畇畉畊畍畐畑畒畓畕畖畗畘"],["ae80","畝",7,"畧畨畩畫",6,"畳畵當畷畺",4,"疀疁疂疄疅疇"],["af40","疈疉疊疌疍疎疐疓疕疘疛疜疞疢疦",4,"疭疶疷疺疻疿痀痁痆痋痌痎痏痐痑痓痗痙痚痜痝痟痠痡痥痩痬痭痮痯痲痳痵痶痷痸痺痻痽痾瘂瘄瘆瘇"],["af80","瘈瘉瘋瘍瘎瘏瘑瘒瘓瘔瘖瘚瘜瘝瘞瘡瘣瘧瘨瘬瘮瘯瘱瘲瘶瘷瘹瘺瘻瘽癁療癄"],["b040","癅",6,"癎",5,"癕癗",4,"癝癟癠癡癢癤",6,"癬癭癮癰",7,"癹発發癿皀皁皃皅皉皊皌皍皏皐皒皔皕皗皘皚皛"],["b080","皜",7,"皥",8,"皯皰皳皵",9,"盀盁盃啊阿埃挨哎唉哀皑癌蔼矮艾碍爱隘鞍氨安俺按暗岸胺案肮昂盎凹敖熬翱袄傲奥懊澳芭捌扒叭吧笆八疤巴拔跋靶把耙坝霸罢爸白柏百摆佰败拜稗斑班搬扳般颁板版扮拌伴瓣半办绊邦帮梆榜膀绑棒磅蚌镑傍谤苞胞包褒剥"],["b140","盄盇盉盋盌盓盕盙盚盜盝盞盠",4,"盦",7,"盰盳盵盶盷盺盻盽盿眀眂眃眅眆眊県眎",10,"眛眜眝眞眡眣眤眥眧眪眫"],["b180","眬眮眰",4,"眹眻眽眾眿睂睄睅睆睈",7,"睒",7,"睜薄雹保堡饱宝抱报暴豹鲍爆杯碑悲卑北辈背贝钡倍狈备惫焙被奔苯本笨崩绷甭泵蹦迸逼鼻比鄙笔彼碧蓖蔽毕毙毖币庇痹闭敝弊必辟壁臂避陛鞭边编贬扁便变卞辨辩辫遍标彪膘表鳖憋别瘪彬斌濒滨宾摈兵冰柄丙秉饼炳"],["b240","睝睞睟睠睤睧睩睪睭",11,"睺睻睼瞁瞂瞃瞆",5,"瞏瞐瞓",11,"瞡瞣瞤瞦瞨瞫瞭瞮瞯瞱瞲瞴瞶",4],["b280","瞼瞾矀",12,"矎",8,"矘矙矚矝",4,"矤病并玻菠播拨钵波博勃搏铂箔伯帛舶脖膊渤泊驳捕卜哺补埠不布步簿部怖擦猜裁材才财睬踩采彩菜蔡餐参蚕残惭惨灿苍舱仓沧藏操糙槽曹草厕策侧册测层蹭插叉茬茶查碴搽察岔差诧拆柴豺搀掺蝉馋谗缠铲产阐颤昌猖"],["b340","矦矨矪矯矰矱矲矴矵矷矹矺矻矼砃",5,"砊砋砎砏砐砓砕砙砛砞砠砡砢砤砨砪砫砮砯砱砲砳砵砶砽砿硁硂硃硄硆硈硉硊硋硍硏硑硓硔硘硙硚"],["b380","硛硜硞",11,"硯",7,"硸硹硺硻硽",6,"场尝常长偿肠厂敞畅唱倡超抄钞朝嘲潮巢吵炒车扯撤掣彻澈郴臣辰尘晨忱沉陈趁衬撑称城橙成呈乘程惩澄诚承逞骋秤吃痴持匙池迟弛驰耻齿侈尺赤翅斥炽充冲虫崇宠抽酬畴踌稠愁筹仇绸瞅丑臭初出橱厨躇锄雏滁除楚"],["b440","碄碅碆碈碊碋碏碐碒碔碕碖碙碝碞碠碢碤碦碨",7,"碵碶碷碸確碻碼碽碿磀磂磃磄磆磇磈磌磍磎磏磑磒磓磖磗磘磚",9],["b480","磤磥磦磧磩磪磫磭",4,"磳磵磶磸磹磻",5,"礂礃礄礆",6,"础储矗搐触处揣川穿椽传船喘串疮窗幢床闯创吹炊捶锤垂春椿醇唇淳纯蠢戳绰疵茨磁雌辞慈瓷词此刺赐次聪葱囱匆从丛凑粗醋簇促蹿篡窜摧崔催脆瘁粹淬翠村存寸磋撮搓措挫错搭达答瘩打大呆歹傣戴带殆代贷袋待逮"],["b540","礍",5,"礔",9,"礟",4,"礥",14,"礵",4,"礽礿祂祃祄祅祇祊",8,"祔祕祘祙祡祣"],["b580","祤祦祩祪祫祬祮祰",6,"祹祻",4,"禂禃禆禇禈禉禋禌禍禎禐禑禒怠耽担丹单郸掸胆旦氮但惮淡诞弹蛋当挡党荡档刀捣蹈倒岛祷导到稻悼道盗德得的蹬灯登等瞪凳邓堤低滴迪敌笛狄涤翟嫡抵底地蒂第帝弟递缔颠掂滇碘点典靛垫电佃甸店惦奠淀殿碉叼雕凋刁掉吊钓调跌爹碟蝶迭谍叠"],["b640","禓",6,"禛",11,"禨",10,"禴",4,"禼禿秂秄秅秇秈秊秌秎秏秐秓秔秖秗秙",5,"秠秡秢秥秨秪"],["b680","秬秮秱",6,"秹秺秼秾秿稁稄稅稇稈稉稊稌稏",4,"稕稖稘稙稛稜丁盯叮钉顶鼎锭定订丢东冬董懂动栋侗恫冻洞兜抖斗陡豆逗痘都督毒犊独读堵睹赌杜镀肚度渡妒端短锻段断缎堆兑队对墩吨蹲敦顿囤钝盾遁掇哆多夺垛躲朵跺舵剁惰堕蛾峨鹅俄额讹娥恶厄扼遏鄂饿恩而儿耳尔饵洱二"],["b740","稝稟稡稢稤",14,"稴稵稶稸稺稾穀",5,"穇",9,"穒",4,"穘",16],["b780","穩",6,"穱穲穳穵穻穼穽穾窂窅窇窉窊窋窌窎窏窐窓窔窙窚窛窞窡窢贰发罚筏伐乏阀法珐藩帆番翻樊矾钒繁凡烦反返范贩犯饭泛坊芳方肪房防妨仿访纺放菲非啡飞肥匪诽吠肺废沸费芬酚吩氛分纷坟焚汾粉奋份忿愤粪丰封枫蜂峰锋风疯烽逢冯缝讽奉凤佛否夫敷肤孵扶拂辐幅氟符伏俘服"],["b840","窣窤窧窩窪窫窮",4,"窴",10,"竀",10,"竌",9,"竗竘竚竛竜竝竡竢竤竧",5,"竮竰竱竲竳"],["b880","竴",4,"竻竼竾笀笁笂笅笇笉笌笍笎笐笒笓笖笗笘笚笜笝笟笡笢笣笧笩笭浮涪福袱弗甫抚辅俯釜斧脯腑府腐赴副覆赋复傅付阜父腹负富讣附妇缚咐噶嘎该改概钙盖溉干甘杆柑竿肝赶感秆敢赣冈刚钢缸肛纲岗港杠篙皋高膏羔糕搞镐稿告哥歌搁戈鸽胳疙割革葛格蛤阁隔铬个各给根跟耕更庚羹"],["b940","笯笰笲笴笵笶笷笹笻笽笿",5,"筆筈筊筍筎筓筕筗筙筜筞筟筡筣",10,"筯筰筳筴筶筸筺筼筽筿箁箂箃箄箆",6,"箎箏"],["b980","箑箒箓箖箘箙箚箛箞箟箠箣箤箥箮箯箰箲箳箵箶箷箹",7,"篂篃範埂耿梗工攻功恭龚供躬公宫弓巩汞拱贡共钩勾沟苟狗垢构购够辜菇咕箍估沽孤姑鼓古蛊骨谷股故顾固雇刮瓜剐寡挂褂乖拐怪棺关官冠观管馆罐惯灌贯光广逛瑰规圭硅归龟闺轨鬼诡癸桂柜跪贵刽辊滚棍锅郭国果裹过哈"],["ba40","篅篈築篊篋篍篎篏篐篒篔",4,"篛篜篞篟篠篢篣篤篧篨篩篫篬篭篯篰篲",4,"篸篹篺篻篽篿",7,"簈簉簊簍簎簐",5,"簗簘簙"],["ba80","簚",4,"簠",5,"簨簩簫",12,"簹",5,"籂骸孩海氦亥害骇酣憨邯韩含涵寒函喊罕翰撼捍旱憾悍焊汗汉夯杭航壕嚎豪毫郝好耗号浩呵喝荷菏核禾和何合盒貉阂河涸赫褐鹤贺嘿黑痕很狠恨哼亨横衡恒轰哄烘虹鸿洪宏弘红喉侯猴吼厚候后呼乎忽瑚壶葫胡蝴狐糊湖"],["bb40","籃",9,"籎",36,"籵",5,"籾",9],["bb80","粈粊",6,"粓粔粖粙粚粛粠粡粣粦粧粨粩粫粬粭粯粰粴",4,"粺粻弧虎唬护互沪户花哗华猾滑画划化话槐徊怀淮坏欢环桓还缓换患唤痪豢焕涣宦幻荒慌黄磺蝗簧皇凰惶煌晃幌恍谎灰挥辉徽恢蛔回毁悔慧卉惠晦贿秽会烩汇讳诲绘荤昏婚魂浑混豁活伙火获或惑霍货祸击圾基机畸稽积箕"],["bc40","粿糀糂糃糄糆糉糋糎",6,"糘糚糛糝糞糡",6,"糩",5,"糰",7,"糹糺糼",13,"紋",5],["bc80","紑",14,"紡紣紤紥紦紨紩紪紬紭紮細",6,"肌饥迹激讥鸡姬绩缉吉极棘辑籍集及急疾汲即嫉级挤几脊己蓟技冀季伎祭剂悸济寄寂计记既忌际妓继纪嘉枷夹佳家加荚颊贾甲钾假稼价架驾嫁歼监坚尖笺间煎兼肩艰奸缄茧检柬碱硷拣捡简俭剪减荐槛鉴践贱见键箭件"],["bd40","紷",54,"絯",7],["bd80","絸",32,"健舰剑饯渐溅涧建僵姜将浆江疆蒋桨奖讲匠酱降蕉椒礁焦胶交郊浇骄娇嚼搅铰矫侥脚狡角饺缴绞剿教酵轿较叫窖揭接皆秸街阶截劫节桔杰捷睫竭洁结解姐戒藉芥界借介疥诫届巾筋斤金今津襟紧锦仅谨进靳晋禁近烬浸"],["be40","継",12,"綧",6,"綯",42],["be80","線",32,"尽劲荆兢茎睛晶鲸京惊精粳经井警景颈静境敬镜径痉靖竟竞净炯窘揪究纠玖韭久灸九酒厩救旧臼舅咎就疚鞠拘狙疽居驹菊局咀矩举沮聚拒据巨具距踞锯俱句惧炬剧捐鹃娟倦眷卷绢撅攫抉掘倔爵觉决诀绝均菌钧军君峻"],["bf40","緻",62],["bf80","縺縼",4,"繂",4,"繈",21,"俊竣浚郡骏喀咖卡咯开揩楷凯慨刊堪勘坎砍看康慷糠扛抗亢炕考拷烤靠坷苛柯棵磕颗科壳咳可渴克刻客课肯啃垦恳坑吭空恐孔控抠口扣寇枯哭窟苦酷库裤夸垮挎跨胯块筷侩快宽款匡筐狂框矿眶旷况亏盔岿窥葵奎魁傀"],["c040","繞",35,"纃",23,"纜纝纞"],["c080","纮纴纻纼绖绤绬绹缊缐缞缷缹缻",6,"罃罆",9,"罒罓馈愧溃坤昆捆困括扩廓阔垃拉喇蜡腊辣啦莱来赖蓝婪栏拦篮阑兰澜谰揽览懒缆烂滥琅榔狼廊郎朗浪捞劳牢老佬姥酪烙涝勒乐雷镭蕾磊累儡垒擂肋类泪棱楞冷厘梨犁黎篱狸离漓理李里鲤礼莉荔吏栗丽厉励砾历利傈例俐"],["c140","罖罙罛罜罝罞罠罣",4,"罫罬罭罯罰罳罵罶罷罸罺罻罼罽罿羀羂",7,"羋羍羏",4,"羕",4,"羛羜羠羢羣羥羦羨",6,"羱"],["c180","羳",4,"羺羻羾翀翂翃翄翆翇翈翉翋翍翏",4,"翖翗翙",5,"翢翣痢立粒沥隶力璃哩俩联莲连镰廉怜涟帘敛脸链恋炼练粮凉梁粱良两辆量晾亮谅撩聊僚疗燎寥辽潦了撂镣廖料列裂烈劣猎琳林磷霖临邻鳞淋凛赁吝拎玲菱零龄铃伶羚凌灵陵岭领另令溜琉榴硫馏留刘瘤流柳六龙聋咙笼窿"],["c240","翤翧翨翪翫翬翭翯翲翴",6,"翽翾翿耂耇耈耉耊耎耏耑耓耚耛耝耞耟耡耣耤耫",5,"耲耴耹耺耼耾聀聁聄聅聇聈聉聎聏聐聑聓聕聖聗"],["c280","聙聛",13,"聫",5,"聲",11,"隆垄拢陇楼娄搂篓漏陋芦卢颅庐炉掳卤虏鲁麓碌露路赂鹿潞禄录陆戮驴吕铝侣旅履屡缕虑氯律率滤绿峦挛孪滦卵乱掠略抡轮伦仑沦纶论萝螺罗逻锣箩骡裸落洛骆络妈麻玛码蚂马骂嘛吗埋买麦卖迈脉瞒馒蛮满蔓曼慢漫"],["c340","聾肁肂肅肈肊肍",5,"肔肕肗肙肞肣肦肧肨肬肰肳肵肶肸肹肻胅胇",4,"胏",6,"胘胟胠胢胣胦胮胵胷胹胻胾胿脀脁脃脄脅脇脈脋"],["c380","脌脕脗脙脛脜脝脟",12,"脭脮脰脳脴脵脷脹",4,"脿谩芒茫盲氓忙莽猫茅锚毛矛铆卯茂冒帽貌贸么玫枚梅酶霉煤没眉媒镁每美昧寐妹媚门闷们萌蒙檬盟锰猛梦孟眯醚靡糜迷谜弥米秘觅泌蜜密幂棉眠绵冕免勉娩缅面苗描瞄藐秒渺庙妙蔑灭民抿皿敏悯闽明螟鸣铭名命谬摸"],["c440","腀",5,"腇腉腍腎腏腒腖腗腘腛",4,"腡腢腣腤腦腨腪腫腬腯腲腳腵腶腷腸膁膃",4,"膉膋膌膍膎膐膒",5,"膙膚膞",4,"膤膥"],["c480","膧膩膫",7,"膴",5,"膼膽膾膿臄臅臇臈臉臋臍",6,"摹蘑模膜磨摩魔抹末莫墨默沫漠寞陌谋牟某拇牡亩姆母墓暮幕募慕木目睦牧穆拿哪呐钠那娜纳氖乃奶耐奈南男难囊挠脑恼闹淖呢馁内嫩能妮霓倪泥尼拟你匿腻逆溺蔫拈年碾撵捻念娘酿鸟尿捏聂孽啮镊镍涅您柠狞凝宁"],["c540","臔",14,"臤臥臦臨臩臫臮",4,"臵",5,"臽臿舃與",4,"舎舏舑舓舕",5,"舝舠舤舥舦舧舩舮舲舺舼舽舿"],["c580","艀艁艂艃艅艆艈艊艌艍艎艐",7,"艙艛艜艝艞艠",7,"艩拧泞牛扭钮纽脓浓农弄奴努怒女暖虐疟挪懦糯诺哦欧鸥殴藕呕偶沤啪趴爬帕怕琶拍排牌徘湃派攀潘盘磐盼畔判叛乓庞旁耪胖抛咆刨炮袍跑泡呸胚培裴赔陪配佩沛喷盆砰抨烹澎彭蓬棚硼篷膨朋鹏捧碰坯砒霹批披劈琵毗"],["c640","艪艫艬艭艱艵艶艷艸艻艼芀芁芃芅芆芇芉芌芐芓芔芕芖芚芛芞芠芢芣芧芲芵芶芺芻芼芿苀苂苃苅苆苉苐苖苙苚苝苢苧苨苩苪苬苭苮苰苲苳苵苶苸"],["c680","苺苼",4,"茊茋茍茐茒茓茖茘茙茝",9,"茩茪茮茰茲茷茻茽啤脾疲皮匹痞僻屁譬篇偏片骗飘漂瓢票撇瞥拼频贫品聘乒坪苹萍平凭瓶评屏坡泼颇婆破魄迫粕剖扑铺仆莆葡菩蒲埔朴圃普浦谱曝瀑期欺栖戚妻七凄漆柒沏其棋奇歧畦崎脐齐旗祈祁骑起岂乞企启契砌器气迄弃汽泣讫掐"],["c740","茾茿荁荂荄荅荈荊",4,"荓荕",4,"荝荢荰",6,"荹荺荾",6,"莇莈莊莋莌莍莏莐莑莔莕莖莗莙莚莝莟莡",6,"莬莭莮"],["c780","莯莵莻莾莿菂菃菄菆菈菉菋菍菎菐菑菒菓菕菗菙菚菛菞菢菣菤菦菧菨菫菬菭恰洽牵扦钎铅千迁签仟谦乾黔钱钳前潜遣浅谴堑嵌欠歉枪呛腔羌墙蔷强抢橇锹敲悄桥瞧乔侨巧鞘撬翘峭俏窍切茄且怯窃钦侵亲秦琴勤芹擒禽寝沁青轻氢倾卿清擎晴氰情顷请庆琼穷秋丘邱球求囚酋泅趋区蛆曲躯屈驱渠"],["c840","菮華菳",4,"菺菻菼菾菿萀萂萅萇萈萉萊萐萒",5,"萙萚萛萞",5,"萩",7,"萲",5,"萹萺萻萾",7,"葇葈葉"],["c880","葊",6,"葒",4,"葘葝葞葟葠葢葤",4,"葪葮葯葰葲葴葷葹葻葼取娶龋趣去圈颧权醛泉全痊拳犬券劝缺炔瘸却鹊榷确雀裙群然燃冉染瓤壤攘嚷让饶扰绕惹热壬仁人忍韧任认刃妊纫扔仍日戎茸蓉荣融熔溶容绒冗揉柔肉茹蠕儒孺如辱乳汝入褥软阮蕊瑞锐闰润若弱撒洒萨腮鳃塞赛三叁"],["c940","葽",4,"蒃蒄蒅蒆蒊蒍蒏",7,"蒘蒚蒛蒝蒞蒟蒠蒢",12,"蒰蒱蒳蒵蒶蒷蒻蒼蒾蓀蓂蓃蓅蓆蓇蓈蓋蓌蓎蓏蓒蓔蓕蓗"],["c980","蓘",4,"蓞蓡蓢蓤蓧",4,"蓭蓮蓯蓱",10,"蓽蓾蔀蔁蔂伞散桑嗓丧搔骚扫嫂瑟色涩森僧莎砂杀刹沙纱傻啥煞筛晒珊苫杉山删煽衫闪陕擅赡膳善汕扇缮墒伤商赏晌上尚裳梢捎稍烧芍勺韶少哨邵绍奢赊蛇舌舍赦摄射慑涉社设砷申呻伸身深娠绅神沈审婶甚肾慎渗声生甥牲升绳"],["ca40","蔃",8,"蔍蔎蔏蔐蔒蔔蔕蔖蔘蔙蔛蔜蔝蔞蔠蔢",8,"蔭",9,"蔾",4,"蕄蕅蕆蕇蕋",10],["ca80","蕗蕘蕚蕛蕜蕝蕟",4,"蕥蕦蕧蕩",8,"蕳蕵蕶蕷蕸蕼蕽蕿薀薁省盛剩胜圣师失狮施湿诗尸虱十石拾时什食蚀实识史矢使屎驶始式示士世柿事拭誓逝势是嗜噬适仕侍释饰氏市恃室视试收手首守寿授售受瘦兽蔬枢梳殊抒输叔舒淑疏书赎孰熟薯暑曙署蜀黍鼠属术述树束戍竖墅庶数漱"],["cb40","薂薃薆薈",6,"薐",10,"薝",6,"薥薦薧薩薫薬薭薱",5,"薸薺",6,"藂",6,"藊",4,"藑藒"],["cb80","藔藖",5,"藝",6,"藥藦藧藨藪",14,"恕刷耍摔衰甩帅栓拴霜双爽谁水睡税吮瞬顺舜说硕朔烁斯撕嘶思私司丝死肆寺嗣四伺似饲巳松耸怂颂送宋讼诵搜艘擞嗽苏酥俗素速粟僳塑溯宿诉肃酸蒜算虽隋随绥髓碎岁穗遂隧祟孙损笋蓑梭唆缩琐索锁所塌他它她塔"],["cc40","藹藺藼藽藾蘀",4,"蘆",10,"蘒蘓蘔蘕蘗",15,"蘨蘪",13,"蘹蘺蘻蘽蘾蘿虀"],["cc80","虁",11,"虒虓處",4,"虛虜虝號虠虡虣",7,"獭挞蹋踏胎苔抬台泰酞太态汰坍摊贪瘫滩坛檀痰潭谭谈坦毯袒碳探叹炭汤塘搪堂棠膛唐糖倘躺淌趟烫掏涛滔绦萄桃逃淘陶讨套特藤腾疼誊梯剔踢锑提题蹄啼体替嚏惕涕剃屉天添填田甜恬舔腆挑条迢眺跳贴铁帖厅听烃"],["cd40","虭虯虰虲",6,"蚃",6,"蚎",4,"蚔蚖",5,"蚞",4,"蚥蚦蚫蚭蚮蚲蚳蚷蚸蚹蚻",4,"蛁蛂蛃蛅蛈蛌蛍蛒蛓蛕蛖蛗蛚蛜"],["cd80","蛝蛠蛡蛢蛣蛥蛦蛧蛨蛪蛫蛬蛯蛵蛶蛷蛺蛻蛼蛽蛿蜁蜄蜅蜆蜋蜌蜎蜏蜐蜑蜔蜖汀廷停亭庭挺艇通桐酮瞳同铜彤童桶捅筒统痛偷投头透凸秃突图徒途涂屠土吐兔湍团推颓腿蜕褪退吞屯臀拖托脱鸵陀驮驼椭妥拓唾挖哇蛙洼娃瓦袜歪外豌弯湾玩顽丸烷完碗挽晚皖惋宛婉万腕汪王亡枉网往旺望忘妄威"],["ce40","蜙蜛蜝蜟蜠蜤蜦蜧蜨蜪蜫蜬蜭蜯蜰蜲蜳蜵蜶蜸蜹蜺蜼蜽蝀",6,"蝊蝋蝍蝏蝐蝑蝒蝔蝕蝖蝘蝚",5,"蝡蝢蝦",7,"蝯蝱蝲蝳蝵"],["ce80","蝷蝸蝹蝺蝿螀螁螄螆螇螉螊螌螎",4,"螔螕螖螘",6,"螠",4,"巍微危韦违桅围唯惟为潍维苇萎委伟伪尾纬未蔚味畏胃喂魏位渭谓尉慰卫瘟温蚊文闻纹吻稳紊问嗡翁瓮挝蜗涡窝我斡卧握沃巫呜钨乌污诬屋无芜梧吾吴毋武五捂午舞伍侮坞戊雾晤物勿务悟误昔熙析西硒矽晰嘻吸锡牺"],["cf40","螥螦螧螩螪螮螰螱螲螴螶螷螸螹螻螼螾螿蟁",4,"蟇蟈蟉蟌",4,"蟔",6,"蟜蟝蟞蟟蟡蟢蟣蟤蟦蟧蟨蟩蟫蟬蟭蟯",9],["cf80","蟺蟻蟼蟽蟿蠀蠁蠂蠄",5,"蠋",7,"蠔蠗蠘蠙蠚蠜",4,"蠣稀息希悉膝夕惜熄烯溪汐犀檄袭席习媳喜铣洗系隙戏细瞎虾匣霞辖暇峡侠狭下厦夏吓掀锨先仙鲜纤咸贤衔舷闲涎弦嫌显险现献县腺馅羡宪陷限线相厢镶香箱襄湘乡翔祥详想响享项巷橡像向象萧硝霄削哮嚣销消宵淆晓"],["d040","蠤",13,"蠳",5,"蠺蠻蠽蠾蠿衁衂衃衆",5,"衎",5,"衕衖衘衚",6,"衦衧衪衭衯衱衳衴衵衶衸衹衺"],["d080","衻衼袀袃袆袇袉袊袌袎袏袐袑袓袔袕袗",4,"袝",4,"袣袥",5,"小孝校肖啸笑效楔些歇蝎鞋协挟携邪斜胁谐写械卸蟹懈泄泻谢屑薪芯锌欣辛新忻心信衅星腥猩惺兴刑型形邢行醒幸杏性姓兄凶胸匈汹雄熊休修羞朽嗅锈秀袖绣墟戌需虚嘘须徐许蓄酗叙旭序畜恤絮婿绪续轩喧宣悬旋玄"],["d140","袬袮袯袰袲",4,"袸袹袺袻袽袾袿裀裃裄裇裈裊裋裌裍裏裐裑裓裖裗裚",4,"裠裡裦裧裩",6,"裲裵裶裷裺裻製裿褀褁褃",5],["d180","褉褋",4,"褑褔",4,"褜",4,"褢褣褤褦褧褨褩褬褭褮褯褱褲褳褵褷选癣眩绚靴薛学穴雪血勋熏循旬询寻驯巡殉汛训讯逊迅压押鸦鸭呀丫芽牙蚜崖衙涯雅哑亚讶焉咽阉烟淹盐严研蜒岩延言颜阎炎沿奄掩眼衍演艳堰燕厌砚雁唁彦焰宴谚验殃央鸯秧杨扬佯疡羊洋阳氧仰痒养样漾邀腰妖瑶"],["d240","褸",8,"襂襃襅",24,"襠",5,"襧",19,"襼"],["d280","襽襾覀覂覄覅覇",26,"摇尧遥窑谣姚咬舀药要耀椰噎耶爷野冶也页掖业叶曳腋夜液一壹医揖铱依伊衣颐夷遗移仪胰疑沂宜姨彝椅蚁倚已乙矣以艺抑易邑屹亿役臆逸肄疫亦裔意毅忆义益溢诣议谊译异翼翌绎茵荫因殷音阴姻吟银淫寅饮尹引隐"],["d340","覢",30,"觃觍觓觔觕觗觘觙觛觝觟觠觡觢觤觧觨觩觪觬觭觮觰觱觲觴",6],["d380","觻",4,"訁",5,"計",21,"印英樱婴鹰应缨莹萤营荧蝇迎赢盈影颖硬映哟拥佣臃痈庸雍踊蛹咏泳涌永恿勇用幽优悠忧尤由邮铀犹油游酉有友右佑釉诱又幼迂淤于盂榆虞愚舆余俞逾鱼愉渝渔隅予娱雨与屿禹宇语羽玉域芋郁吁遇喻峪御愈欲狱育誉"],["d440","訞",31,"訿",8,"詉",21],["d480","詟",25,"詺",6,"浴寓裕预豫驭鸳渊冤元垣袁原援辕园员圆猿源缘远苑愿怨院曰约越跃钥岳粤月悦阅耘云郧匀陨允运蕴酝晕韵孕匝砸杂栽哉灾宰载再在咱攒暂赞赃脏葬遭糟凿藻枣早澡蚤躁噪造皂灶燥责择则泽贼怎增憎曾赠扎喳渣札轧"],["d540","誁",7,"誋",7,"誔",46],["d580","諃",32,"铡闸眨栅榨咋乍炸诈摘斋宅窄债寨瞻毡詹粘沾盏斩辗崭展蘸栈占战站湛绽樟章彰漳张掌涨杖丈帐账仗胀瘴障招昭找沼赵照罩兆肇召遮折哲蛰辙者锗蔗这浙珍斟真甄砧臻贞针侦枕疹诊震振镇阵蒸挣睁征狰争怔整拯正政"],["d640","諤",34,"謈",27],["d680","謤謥謧",30,"帧症郑证芝枝支吱蜘知肢脂汁之织职直植殖执值侄址指止趾只旨纸志挚掷至致置帜峙制智秩稚质炙痔滞治窒中盅忠钟衷终种肿重仲众舟周州洲诌粥轴肘帚咒皱宙昼骤珠株蛛朱猪诸诛逐竹烛煮拄瞩嘱主著柱助蛀贮铸筑"],["d740","譆",31,"譧",4,"譭",25],["d780","讇",24,"讬讱讻诇诐诪谉谞住注祝驻抓爪拽专砖转撰赚篆桩庄装妆撞壮状椎锥追赘坠缀谆准捉拙卓桌琢茁酌啄着灼浊兹咨资姿滋淄孜紫仔籽滓子自渍字鬃棕踪宗综总纵邹走奏揍租足卒族祖诅阻组钻纂嘴醉最罪尊遵昨左佐柞做作坐座"],["d840","谸",8,"豂豃豄豅豈豊豋豍",7,"豖豗豘豙豛",5,"豣",6,"豬",6,"豴豵豶豷豻",6,"貃貄貆貇"],["d880","貈貋貍",6,"貕貖貗貙",20,"亍丌兀丐廿卅丕亘丞鬲孬噩丨禺丿匕乇夭爻卮氐囟胤馗毓睾鼗丶亟鼐乜乩亓芈孛啬嘏仄厍厝厣厥厮靥赝匚叵匦匮匾赜卦卣刂刈刎刭刳刿剀剌剞剡剜蒯剽劂劁劐劓冂罔亻仃仉仂仨仡仫仞伛仳伢佤仵伥伧伉伫佞佧攸佚佝"],["d940","貮",62],["d980","賭",32,"佟佗伲伽佶佴侑侉侃侏佾佻侪佼侬侔俦俨俪俅俚俣俜俑俟俸倩偌俳倬倏倮倭俾倜倌倥倨偾偃偕偈偎偬偻傥傧傩傺僖儆僭僬僦僮儇儋仝氽佘佥俎龠汆籴兮巽黉馘冁夔勹匍訇匐凫夙兕亠兖亳衮袤亵脔裒禀嬴蠃羸冫冱冽冼"],["da40","贎",14,"贠赑赒赗赟赥赨赩赪赬赮赯赱赲赸",8,"趂趃趆趇趈趉趌",4,"趒趓趕",9,"趠趡"],["da80","趢趤",12,"趲趶趷趹趻趽跀跁跂跅跇跈跉跊跍跐跒跓跔凇冖冢冥讠讦讧讪讴讵讷诂诃诋诏诎诒诓诔诖诘诙诜诟诠诤诨诩诮诰诳诶诹诼诿谀谂谄谇谌谏谑谒谔谕谖谙谛谘谝谟谠谡谥谧谪谫谮谯谲谳谵谶卩卺阝阢阡阱阪阽阼陂陉陔陟陧陬陲陴隈隍隗隰邗邛邝邙邬邡邴邳邶邺"],["db40","跕跘跙跜跠跡跢跥跦跧跩跭跮跰跱跲跴跶跼跾",6,"踆踇踈踋踍踎踐踑踒踓踕",7,"踠踡踤",4,"踫踭踰踲踳踴踶踷踸踻踼踾"],["db80","踿蹃蹅蹆蹌",4,"蹓",5,"蹚",11,"蹧蹨蹪蹫蹮蹱邸邰郏郅邾郐郄郇郓郦郢郜郗郛郫郯郾鄄鄢鄞鄣鄱鄯鄹酃酆刍奂劢劬劭劾哿勐勖勰叟燮矍廴凵凼鬯厶弁畚巯坌垩垡塾墼壅壑圩圬圪圳圹圮圯坜圻坂坩垅坫垆坼坻坨坭坶坳垭垤垌垲埏垧垴垓垠埕埘埚埙埒垸埴埯埸埤埝"],["dc40","蹳蹵蹷",4,"蹽蹾躀躂躃躄躆躈",6,"躑躒躓躕",6,"躝躟",11,"躭躮躰躱躳",6,"躻",7],["dc80","軃",10,"軏",21,"堋堍埽埭堀堞堙塄堠塥塬墁墉墚墀馨鼙懿艹艽艿芏芊芨芄芎芑芗芙芫芸芾芰苈苊苣芘芷芮苋苌苁芩芴芡芪芟苄苎芤苡茉苷苤茏茇苜苴苒苘茌苻苓茑茚茆茔茕苠苕茜荑荛荜茈莒茼茴茱莛荞茯荏荇荃荟荀茗荠茭茺茳荦荥"],["dd40","軥",62],["dd80","輤",32,"荨茛荩荬荪荭荮莰荸莳莴莠莪莓莜莅荼莶莩荽莸荻莘莞莨莺莼菁萁菥菘堇萘萋菝菽菖萜萸萑萆菔菟萏萃菸菹菪菅菀萦菰菡葜葑葚葙葳蒇蒈葺蒉葸萼葆葩葶蒌蒎萱葭蓁蓍蓐蓦蒽蓓蓊蒿蒺蓠蒡蒹蒴蒗蓥蓣蔌甍蔸蓰蔹蔟蔺"],["de40","轅",32,"轪辀辌辒辝辠辡辢辤辥辦辧辪辬辭辮辯農辳辴辵辷辸辺辻込辿迀迃迆"],["de80","迉",4,"迏迒迖迗迚迠迡迣迧迬迯迱迲迴迵迶迺迻迼迾迿逇逈逌逎逓逕逘蕖蔻蓿蓼蕙蕈蕨蕤蕞蕺瞢蕃蕲蕻薤薨薇薏蕹薮薜薅薹薷薰藓藁藜藿蘧蘅蘩蘖蘼廾弈夼奁耷奕奚奘匏尢尥尬尴扌扪抟抻拊拚拗拮挢拶挹捋捃掭揶捱捺掎掴捭掬掊捩掮掼揲揸揠揿揄揞揎摒揆掾摅摁搋搛搠搌搦搡摞撄摭撖"],["df40","這逜連逤逥逧",5,"逰",4,"逷逹逺逽逿遀遃遅遆遈",4,"過達違遖遙遚遜",5,"遤遦遧適遪遫遬遯",4,"遶",6,"遾邁"],["df80","還邅邆邇邉邊邌",4,"邒邔邖邘邚邜邞邟邠邤邥邧邨邩邫邭邲邷邼邽邿郀摺撷撸撙撺擀擐擗擤擢攉攥攮弋忒甙弑卟叱叽叩叨叻吒吖吆呋呒呓呔呖呃吡呗呙吣吲咂咔呷呱呤咚咛咄呶呦咝哐咭哂咴哒咧咦哓哔呲咣哕咻咿哌哙哚哜咩咪咤哝哏哞唛哧唠哽唔哳唢唣唏唑唧唪啧喏喵啉啭啁啕唿啐唼"],["e040","郂郃郆郈郉郋郌郍郒郔郕郖郘郙郚郞郟郠郣郤郥郩郪郬郮郰郱郲郳郵郶郷郹郺郻郼郿鄀鄁鄃鄅",19,"鄚鄛鄜"],["e080","鄝鄟鄠鄡鄤",10,"鄰鄲",6,"鄺",8,"酄唷啖啵啶啷唳唰啜喋嗒喃喱喹喈喁喟啾嗖喑啻嗟喽喾喔喙嗪嗷嗉嘟嗑嗫嗬嗔嗦嗝嗄嗯嗥嗲嗳嗌嗍嗨嗵嗤辔嘞嘈嘌嘁嘤嘣嗾嘀嘧嘭噘嘹噗嘬噍噢噙噜噌噔嚆噤噱噫噻噼嚅嚓嚯囔囗囝囡囵囫囹囿圄圊圉圜帏帙帔帑帱帻帼"],["e140","酅酇酈酑酓酔酕酖酘酙酛酜酟酠酦酧酨酫酭酳酺酻酼醀",4,"醆醈醊醎醏醓",6,"醜",5,"醤",5,"醫醬醰醱醲醳醶醷醸醹醻"],["e180","醼",10,"釈釋釐釒",9,"針",8,"帷幄幔幛幞幡岌屺岍岐岖岈岘岙岑岚岜岵岢岽岬岫岱岣峁岷峄峒峤峋峥崂崃崧崦崮崤崞崆崛嵘崾崴崽嵬嵛嵯嵝嵫嵋嵊嵩嵴嶂嶙嶝豳嶷巅彳彷徂徇徉後徕徙徜徨徭徵徼衢彡犭犰犴犷犸狃狁狎狍狒狨狯狩狲狴狷猁狳猃狺"],["e240","釦",62],["e280","鈥",32,"狻猗猓猡猊猞猝猕猢猹猥猬猸猱獐獍獗獠獬獯獾舛夥飧夤夂饣饧",5,"饴饷饽馀馄馇馊馍馐馑馓馔馕庀庑庋庖庥庠庹庵庾庳赓廒廑廛廨廪膺忄忉忖忏怃忮怄忡忤忾怅怆忪忭忸怙怵怦怛怏怍怩怫怊怿怡恸恹恻恺恂"],["e340","鉆",45,"鉵",16],["e380","銆",7,"銏",24,"恪恽悖悚悭悝悃悒悌悛惬悻悱惝惘惆惚悴愠愦愕愣惴愀愎愫慊慵憬憔憧憷懔懵忝隳闩闫闱闳闵闶闼闾阃阄阆阈阊阋阌阍阏阒阕阖阗阙阚丬爿戕氵汔汜汊沣沅沐沔沌汨汩汴汶沆沩泐泔沭泷泸泱泗沲泠泖泺泫泮沱泓泯泾"],["e440","銨",5,"銯",24,"鋉",31],["e480","鋩",32,"洹洧洌浃浈洇洄洙洎洫浍洮洵洚浏浒浔洳涑浯涞涠浞涓涔浜浠浼浣渚淇淅淞渎涿淠渑淦淝淙渖涫渌涮渫湮湎湫溲湟溆湓湔渲渥湄滟溱溘滠漭滢溥溧溽溻溷滗溴滏溏滂溟潢潆潇漤漕滹漯漶潋潴漪漉漩澉澍澌潸潲潼潺濑"],["e540","錊",51,"錿",10],["e580","鍊",31,"鍫濉澧澹澶濂濡濮濞濠濯瀚瀣瀛瀹瀵灏灞宀宄宕宓宥宸甯骞搴寤寮褰寰蹇謇辶迓迕迥迮迤迩迦迳迨逅逄逋逦逑逍逖逡逵逶逭逯遄遑遒遐遨遘遢遛暹遴遽邂邈邃邋彐彗彖彘尻咫屐屙孱屣屦羼弪弩弭艴弼鬻屮妁妃妍妩妪妣"],["e640","鍬",34,"鎐",27],["e680","鎬",29,"鏋鏌鏍妗姊妫妞妤姒妲妯姗妾娅娆姝娈姣姘姹娌娉娲娴娑娣娓婀婧婊婕娼婢婵胬媪媛婷婺媾嫫媲嫒嫔媸嫠嫣嫱嫖嫦嫘嫜嬉嬗嬖嬲嬷孀尕尜孚孥孳孑孓孢驵驷驸驺驿驽骀骁骅骈骊骐骒骓骖骘骛骜骝骟骠骢骣骥骧纟纡纣纥纨纩"],["e740","鏎",7,"鏗",54],["e780","鐎",32,"纭纰纾绀绁绂绉绋绌绐绔绗绛绠绡绨绫绮绯绱绲缍绶绺绻绾缁缂缃缇缈缋缌缏缑缒缗缙缜缛缟缡",6,"缪缫缬缭缯",4,"缵幺畿巛甾邕玎玑玮玢玟珏珂珑玷玳珀珉珈珥珙顼琊珩珧珞玺珲琏琪瑛琦琥琨琰琮琬"],["e840","鐯",14,"鐿",43,"鑬鑭鑮鑯"],["e880","鑰",20,"钑钖钘铇铏铓铔铚铦铻锜锠琛琚瑁瑜瑗瑕瑙瑷瑭瑾璜璎璀璁璇璋璞璨璩璐璧瓒璺韪韫韬杌杓杞杈杩枥枇杪杳枘枧杵枨枞枭枋杷杼柰栉柘栊柩枰栌柙枵柚枳柝栀柃枸柢栎柁柽栲栳桠桡桎桢桄桤梃栝桕桦桁桧桀栾桊桉栩梵梏桴桷梓桫棂楮棼椟椠棹"],["e940","锧锳锽镃镈镋镕镚镠镮镴镵長",7,"門",42],["e980","閫",32,"椤棰椋椁楗棣椐楱椹楠楂楝榄楫榀榘楸椴槌榇榈槎榉楦楣楹榛榧榻榫榭槔榱槁槊槟榕槠榍槿樯槭樗樘橥槲橄樾檠橐橛樵檎橹樽樨橘橼檑檐檩檗檫猷獒殁殂殇殄殒殓殍殚殛殡殪轫轭轱轲轳轵轶轸轷轹轺轼轾辁辂辄辇辋"],["ea40","闌",27,"闬闿阇阓阘阛阞阠阣",6,"阫阬阭阯阰阷阸阹阺阾陁陃陊陎陏陑陒陓陖陗"],["ea80","陘陙陚陜陝陞陠陣陥陦陫陭",4,"陳陸",12,"隇隉隊辍辎辏辘辚軎戋戗戛戟戢戡戥戤戬臧瓯瓴瓿甏甑甓攴旮旯旰昊昙杲昃昕昀炅曷昝昴昱昶昵耆晟晔晁晏晖晡晗晷暄暌暧暝暾曛曜曦曩贲贳贶贻贽赀赅赆赈赉赇赍赕赙觇觊觋觌觎觏觐觑牮犟牝牦牯牾牿犄犋犍犏犒挈挲掰"],["eb40","隌階隑隒隓隕隖隚際隝",9,"隨",7,"隱隲隴隵隷隸隺隻隿雂雃雈雊雋雐雑雓雔雖",9,"雡",6,"雫"],["eb80","雬雭雮雰雱雲雴雵雸雺電雼雽雿霂霃霅霊霋霌霐霑霒霔霕霗",4,"霝霟霠搿擘耄毪毳毽毵毹氅氇氆氍氕氘氙氚氡氩氤氪氲攵敕敫牍牒牖爰虢刖肟肜肓肼朊肽肱肫肭肴肷胧胨胩胪胛胂胄胙胍胗朐胝胫胱胴胭脍脎胲胼朕脒豚脶脞脬脘脲腈腌腓腴腙腚腱腠腩腼腽腭腧塍媵膈膂膑滕膣膪臌朦臊膻"],["ec40","霡",8,"霫霬霮霯霱霳",4,"霺霻霼霽霿",18,"靔靕靗靘靚靜靝靟靣靤靦靧靨靪",7],["ec80","靲靵靷",4,"靽",7,"鞆",4,"鞌鞎鞏鞐鞓鞕鞖鞗鞙",4,"臁膦欤欷欹歃歆歙飑飒飓飕飙飚殳彀毂觳斐齑斓於旆旄旃旌旎旒旖炀炜炖炝炻烀炷炫炱烨烊焐焓焖焯焱煳煜煨煅煲煊煸煺熘熳熵熨熠燠燔燧燹爝爨灬焘煦熹戾戽扃扈扉礻祀祆祉祛祜祓祚祢祗祠祯祧祺禅禊禚禧禳忑忐"],["ed40","鞞鞟鞡鞢鞤",6,"鞬鞮鞰鞱鞳鞵",46],["ed80","韤韥韨韮",4,"韴韷",23,"怼恝恚恧恁恙恣悫愆愍慝憩憝懋懑戆肀聿沓泶淼矶矸砀砉砗砘砑斫砭砜砝砹砺砻砟砼砥砬砣砩硎硭硖硗砦硐硇硌硪碛碓碚碇碜碡碣碲碹碥磔磙磉磬磲礅磴礓礤礞礴龛黹黻黼盱眄眍盹眇眈眚眢眙眭眦眵眸睐睑睇睃睚睨"],["ee40","頏",62],["ee80","顎",32,"睢睥睿瞍睽瞀瞌瞑瞟瞠瞰瞵瞽町畀畎畋畈畛畲畹疃罘罡罟詈罨罴罱罹羁罾盍盥蠲钅钆钇钋钊钌钍钏钐钔钗钕钚钛钜钣钤钫钪钭钬钯钰钲钴钶",4,"钼钽钿铄铈",6,"铐铑铒铕铖铗铙铘铛铞铟铠铢铤铥铧铨铪"],["ef40","顯",5,"颋颎颒颕颙颣風",37,"飏飐飔飖飗飛飜飝飠",4],["ef80","飥飦飩",30,"铩铫铮铯铳铴铵铷铹铼铽铿锃锂锆锇锉锊锍锎锏锒",4,"锘锛锝锞锟锢锪锫锩锬锱锲锴锶锷锸锼锾锿镂锵镄镅镆镉镌镎镏镒镓镔镖镗镘镙镛镞镟镝镡镢镤",8,"镯镱镲镳锺矧矬雉秕秭秣秫稆嵇稃稂稞稔"],["f040","餈",4,"餎餏餑",28,"餯",26],["f080","饊",9,"饖",12,"饤饦饳饸饹饻饾馂馃馉稹稷穑黏馥穰皈皎皓皙皤瓞瓠甬鸠鸢鸨",4,"鸲鸱鸶鸸鸷鸹鸺鸾鹁鹂鹄鹆鹇鹈鹉鹋鹌鹎鹑鹕鹗鹚鹛鹜鹞鹣鹦",6,"鹱鹭鹳疒疔疖疠疝疬疣疳疴疸痄疱疰痃痂痖痍痣痨痦痤痫痧瘃痱痼痿瘐瘀瘅瘌瘗瘊瘥瘘瘕瘙"],["f140","馌馎馚",10,"馦馧馩",47],["f180","駙",32,"瘛瘼瘢瘠癀瘭瘰瘿瘵癃瘾瘳癍癞癔癜癖癫癯翊竦穸穹窀窆窈窕窦窠窬窨窭窳衤衩衲衽衿袂袢裆袷袼裉裢裎裣裥裱褚裼裨裾裰褡褙褓褛褊褴褫褶襁襦襻疋胥皲皴矜耒耔耖耜耠耢耥耦耧耩耨耱耋耵聃聆聍聒聩聱覃顸颀颃"],["f240","駺",62],["f280","騹",32,"颉颌颍颏颔颚颛颞颟颡颢颥颦虍虔虬虮虿虺虼虻蚨蚍蚋蚬蚝蚧蚣蚪蚓蚩蚶蛄蚵蛎蚰蚺蚱蚯蛉蛏蚴蛩蛱蛲蛭蛳蛐蜓蛞蛴蛟蛘蛑蜃蜇蛸蜈蜊蜍蜉蜣蜻蜞蜥蜮蜚蜾蝈蜴蜱蜩蜷蜿螂蜢蝽蝾蝻蝠蝰蝌蝮螋蝓蝣蝼蝤蝙蝥螓螯螨蟒"],["f340","驚",17,"驲骃骉骍骎骔骕骙骦骩",6,"骲骳骴骵骹骻骽骾骿髃髄髆",4,"髍髎髏髐髒體髕髖髗髙髚髛髜"],["f380","髝髞髠髢髣髤髥髧髨髩髪髬髮髰",8,"髺髼",6,"鬄鬅鬆蟆螈螅螭螗螃螫蟥螬螵螳蟋蟓螽蟑蟀蟊蟛蟪蟠蟮蠖蠓蟾蠊蠛蠡蠹蠼缶罂罄罅舐竺竽笈笃笄笕笊笫笏筇笸笪笙笮笱笠笥笤笳笾笞筘筚筅筵筌筝筠筮筻筢筲筱箐箦箧箸箬箝箨箅箪箜箢箫箴篑篁篌篝篚篥篦篪簌篾篼簏簖簋"],["f440","鬇鬉",5,"鬐鬑鬒鬔",10,"鬠鬡鬢鬤",10,"鬰鬱鬳",7,"鬽鬾鬿魀魆魊魋魌魎魐魒魓魕",5],["f480","魛",32,"簟簪簦簸籁籀臾舁舂舄臬衄舡舢舣舭舯舨舫舸舻舳舴舾艄艉艋艏艚艟艨衾袅袈裘裟襞羝羟羧羯羰羲籼敉粑粝粜粞粢粲粼粽糁糇糌糍糈糅糗糨艮暨羿翎翕翥翡翦翩翮翳糸絷綦綮繇纛麸麴赳趄趔趑趱赧赭豇豉酊酐酎酏酤"],["f540","魼",62],["f580","鮻",32,"酢酡酰酩酯酽酾酲酴酹醌醅醐醍醑醢醣醪醭醮醯醵醴醺豕鹾趸跫踅蹙蹩趵趿趼趺跄跖跗跚跞跎跏跛跆跬跷跸跣跹跻跤踉跽踔踝踟踬踮踣踯踺蹀踹踵踽踱蹉蹁蹂蹑蹒蹊蹰蹶蹼蹯蹴躅躏躔躐躜躞豸貂貊貅貘貔斛觖觞觚觜"],["f640","鯜",62],["f680","鰛",32,"觥觫觯訾謦靓雩雳雯霆霁霈霏霎霪霭霰霾龀龃龅",5,"龌黾鼋鼍隹隼隽雎雒瞿雠銎銮鋈錾鍪鏊鎏鐾鑫鱿鲂鲅鲆鲇鲈稣鲋鲎鲐鲑鲒鲔鲕鲚鲛鲞",5,"鲥",4,"鲫鲭鲮鲰",7,"鲺鲻鲼鲽鳄鳅鳆鳇鳊鳋"],["f740","鰼",62],["f780","鱻鱽鱾鲀鲃鲄鲉鲊鲌鲏鲓鲖鲗鲘鲙鲝鲪鲬鲯鲹鲾",4,"鳈鳉鳑鳒鳚鳛鳠鳡鳌",4,"鳓鳔鳕鳗鳘鳙鳜鳝鳟鳢靼鞅鞑鞒鞔鞯鞫鞣鞲鞴骱骰骷鹘骶骺骼髁髀髅髂髋髌髑魅魃魇魉魈魍魑飨餍餮饕饔髟髡髦髯髫髻髭髹鬈鬏鬓鬟鬣麽麾縻麂麇麈麋麒鏖麝麟黛黜黝黠黟黢黩黧黥黪黯鼢鼬鼯鼹鼷鼽鼾齄"],["f840","鳣",62],["f880","鴢",32],["f940","鵃",62],["f980","鶂",32],["fa40","鶣",62],["fa80","鷢",32],["fb40","鸃",27,"鸤鸧鸮鸰鸴鸻鸼鹀鹍鹐鹒鹓鹔鹖鹙鹝鹟鹠鹡鹢鹥鹮鹯鹲鹴",9,"麀"],["fb80","麁麃麄麅麆麉麊麌",5,"麔",8,"麞麠",5,"麧麨麩麪"],["fc40","麫",8,"麵麶麷麹麺麼麿",4,"黅黆黇黈黊黋黌黐黒黓黕黖黗黙黚點黡黣黤黦黨黫黬黭黮黰",8,"黺黽黿",6],["fc80","鼆",4,"鼌鼏鼑鼒鼔鼕鼖鼘鼚",5,"鼡鼣",8,"鼭鼮鼰鼱"],["fd40","鼲",4,"鼸鼺鼼鼿",4,"齅",10,"齒",38],["fd80","齹",5,"龁龂龍",11,"龜龝龞龡",4,"郎凉秊裏隣"],["fe40","兀嗀﨎﨏﨑﨓﨔礼﨟蘒﨡﨣﨤﨧﨨﨩"]]; /***/ }), -/* 694 */ +/* 695 */ /***/ (function(module) { module.exports = [["a140","",62],["a180","",32],["a240","",62],["a280","",32],["a2ab","",5],["a2e3","€"],["a2ef",""],["a2fd",""],["a340","",62],["a380","",31," "],["a440","",62],["a480","",32],["a4f4","",10],["a540","",62],["a580","",32],["a5f7","",7],["a640","",62],["a680","",32],["a6b9","",7],["a6d9","",6],["a6ec",""],["a6f3",""],["a6f6","",8],["a740","",62],["a780","",32],["a7c2","",14],["a7f2","",12],["a896","",10],["a8bc",""],["a8bf","ǹ"],["a8c1",""],["a8ea","",20],["a958",""],["a95b",""],["a95d",""],["a989","〾⿰",11],["a997","",12],["a9f0","",14],["aaa1","",93],["aba1","",93],["aca1","",93],["ada1","",93],["aea1","",93],["afa1","",93],["d7fa","",4],["f8a1","",93],["f9a1","",93],["faa1","",93],["fba1","",93],["fca1","",93],["fda1","",93],["fe50","⺁⺄㑳㑇⺈⺋㖞㘚㘎⺌⺗㥮㤘㧏㧟㩳㧐㭎㱮㳠⺧⺪䁖䅟⺮䌷⺳⺶⺷䎱䎬⺻䏝䓖䙡䙌"],["fe80","䜣䜩䝼䞍⻊䥇䥺䥽䦂䦃䦅䦆䦟䦛䦷䦶䲣䲟䲠䲡䱷䲢䴓",6,"䶮",93]]; /***/ }), -/* 695 */ +/* 696 */ /***/ (function(module) { module.exports = {"uChars":[128,165,169,178,184,216,226,235,238,244,248,251,253,258,276,284,300,325,329,334,364,463,465,467,469,471,473,475,477,506,594,610,712,716,730,930,938,962,970,1026,1104,1106,8209,8215,8218,8222,8231,8241,8244,8246,8252,8365,8452,8454,8458,8471,8482,8556,8570,8596,8602,8713,8720,8722,8726,8731,8737,8740,8742,8748,8751,8760,8766,8777,8781,8787,8802,8808,8816,8854,8858,8870,8896,8979,9322,9372,9548,9588,9616,9622,9634,9652,9662,9672,9676,9680,9702,9735,9738,9793,9795,11906,11909,11913,11917,11928,11944,11947,11951,11956,11960,11964,11979,12284,12292,12312,12319,12330,12351,12436,12447,12535,12543,12586,12842,12850,12964,13200,13215,13218,13253,13263,13267,13270,13384,13428,13727,13839,13851,14617,14703,14801,14816,14964,15183,15471,15585,16471,16736,17208,17325,17330,17374,17623,17997,18018,18212,18218,18301,18318,18760,18811,18814,18820,18823,18844,18848,18872,19576,19620,19738,19887,40870,59244,59336,59367,59413,59417,59423,59431,59437,59443,59452,59460,59478,59493,63789,63866,63894,63976,63986,64016,64018,64021,64025,64034,64037,64042,65074,65093,65107,65112,65127,65132,65375,65510,65536],"gbChars":[0,36,38,45,50,81,89,95,96,100,103,104,105,109,126,133,148,172,175,179,208,306,307,308,309,310,311,312,313,341,428,443,544,545,558,741,742,749,750,805,819,820,7922,7924,7925,7927,7934,7943,7944,7945,7950,8062,8148,8149,8152,8164,8174,8236,8240,8262,8264,8374,8380,8381,8384,8388,8390,8392,8393,8394,8396,8401,8406,8416,8419,8424,8437,8439,8445,8482,8485,8496,8521,8603,8936,8946,9046,9050,9063,9066,9076,9092,9100,9108,9111,9113,9131,9162,9164,9218,9219,11329,11331,11334,11336,11346,11361,11363,11366,11370,11372,11375,11389,11682,11686,11687,11692,11694,11714,11716,11723,11725,11730,11736,11982,11989,12102,12336,12348,12350,12384,12393,12395,12397,12510,12553,12851,12962,12973,13738,13823,13919,13933,14080,14298,14585,14698,15583,15847,16318,16434,16438,16481,16729,17102,17122,17315,17320,17402,17418,17859,17909,17911,17915,17916,17936,17939,17961,18664,18703,18814,18962,19043,33469,33470,33471,33484,33485,33490,33497,33501,33505,33513,33520,33536,33550,37845,37921,37948,38029,38038,38064,38065,38066,38069,38075,38076,38078,39108,39109,39113,39114,39115,39116,39265,39394,189000]}; /***/ }), -/* 696 */ +/* 697 */ /***/ (function(module) { module.exports = [["0","\u0000",127],["8141","갂갃갅갆갋",4,"갘갞갟갡갢갣갥",6,"갮갲갳갴"],["8161","갵갶갷갺갻갽갾갿걁",9,"걌걎",5,"걕"],["8181","걖걗걙걚걛걝",18,"걲걳걵걶걹걻",4,"겂겇겈겍겎겏겑겒겓겕",6,"겞겢",5,"겫겭겮겱",6,"겺겾겿곀곂곃곅곆곇곉곊곋곍",7,"곖곘",7,"곢곣곥곦곩곫곭곮곲곴곷",4,"곾곿괁괂괃괅괇",4,"괎괐괒괓"],["8241","괔괕괖괗괙괚괛괝괞괟괡",7,"괪괫괮",5],["8261","괶괷괹괺괻괽",6,"굆굈굊",5,"굑굒굓굕굖굗"],["8281","굙",7,"굢굤",7,"굮굯굱굲굷굸굹굺굾궀궃",4,"궊궋궍궎궏궑",10,"궞",5,"궥",17,"궸",7,"귂귃귅귆귇귉",6,"귒귔",7,"귝귞귟귡귢귣귥",18],["8341","귺귻귽귾긂",5,"긊긌긎",5,"긕",7],["8361","긝",18,"긲긳긵긶긹긻긼"],["8381","긽긾긿깂깄깇깈깉깋깏깑깒깓깕깗",4,"깞깢깣깤깦깧깪깫깭깮깯깱",6,"깺깾",5,"꺆",5,"꺍",46,"꺿껁껂껃껅",6,"껎껒",5,"껚껛껝",8],["8441","껦껧껩껪껬껮",5,"껵껶껷껹껺껻껽",8],["8461","꼆꼉꼊꼋꼌꼎꼏꼑",18],["8481","꼤",7,"꼮꼯꼱꼳꼵",6,"꼾꽀꽄꽅꽆꽇꽊",5,"꽑",10,"꽞",5,"꽦",18,"꽺",5,"꾁꾂꾃꾅꾆꾇꾉",6,"꾒꾓꾔꾖",5,"꾝",26,"꾺꾻꾽꾾"],["8541","꾿꿁",5,"꿊꿌꿏",4,"꿕",6,"꿝",4],["8561","꿢",5,"꿪",5,"꿲꿳꿵꿶꿷꿹",6,"뀂뀃"],["8581","뀅",6,"뀍뀎뀏뀑뀒뀓뀕",6,"뀞",9,"뀩",26,"끆끇끉끋끍끏끐끑끒끖끘끚끛끜끞",29,"끾끿낁낂낃낅",6,"낎낐낒",5,"낛낝낞낣낤"],["8641","낥낦낧낪낰낲낶낷낹낺낻낽",6,"냆냊",5,"냒"],["8661","냓냕냖냗냙",6,"냡냢냣냤냦",10],["8681","냱",22,"넊넍넎넏넑넔넕넖넗넚넞",4,"넦넧넩넪넫넭",6,"넶넺",5,"녂녃녅녆녇녉",6,"녒녓녖녗녙녚녛녝녞녟녡",22,"녺녻녽녾녿놁놃",4,"놊놌놎놏놐놑놕놖놗놙놚놛놝"],["8741","놞",9,"놩",15],["8761","놹",18,"뇍뇎뇏뇑뇒뇓뇕"],["8781","뇖",5,"뇞뇠",7,"뇪뇫뇭뇮뇯뇱",7,"뇺뇼뇾",5,"눆눇눉눊눍",6,"눖눘눚",5,"눡",18,"눵",6,"눽",26,"뉙뉚뉛뉝뉞뉟뉡",6,"뉪",4],["8841","뉯",4,"뉶",5,"뉽",6,"늆늇늈늊",4],["8861","늏늒늓늕늖늗늛",4,"늢늤늧늨늩늫늭늮늯늱늲늳늵늶늷"],["8881","늸",15,"닊닋닍닎닏닑닓",4,"닚닜닞닟닠닡닣닧닩닪닰닱닲닶닼닽닾댂댃댅댆댇댉",6,"댒댖",5,"댝",54,"덗덙덚덝덠덡덢덣"],["8941","덦덨덪덬덭덯덲덳덵덶덷덹",6,"뎂뎆",5,"뎍"],["8961","뎎뎏뎑뎒뎓뎕",10,"뎢",5,"뎩뎪뎫뎭"],["8981","뎮",21,"돆돇돉돊돍돏돑돒돓돖돘돚돜돞돟돡돢돣돥돦돧돩",18,"돽",18,"됑",6,"됙됚됛됝됞됟됡",6,"됪됬",7,"됵",15],["8a41","둅",10,"둒둓둕둖둗둙",6,"둢둤둦"],["8a61","둧",4,"둭",18,"뒁뒂"],["8a81","뒃",4,"뒉",19,"뒞",5,"뒥뒦뒧뒩뒪뒫뒭",7,"뒶뒸뒺",5,"듁듂듃듅듆듇듉",6,"듑듒듓듔듖",5,"듞듟듡듢듥듧",4,"듮듰듲",5,"듹",26,"딖딗딙딚딝"],["8b41","딞",5,"딦딫",4,"딲딳딵딶딷딹",6,"땂땆"],["8b61","땇땈땉땊땎땏땑땒땓땕",6,"땞땢",8],["8b81","땫",52,"떢떣떥떦떧떩떬떭떮떯떲떶",4,"떾떿뗁뗂뗃뗅",6,"뗎뗒",5,"뗙",18,"뗭",18],["8c41","똀",15,"똒똓똕똖똗똙",4],["8c61","똞",6,"똦",5,"똭",6,"똵",5],["8c81","똻",12,"뙉",26,"뙥뙦뙧뙩",50,"뚞뚟뚡뚢뚣뚥",5,"뚭뚮뚯뚰뚲",16],["8d41","뛃",16,"뛕",8],["8d61","뛞",17,"뛱뛲뛳뛵뛶뛷뛹뛺"],["8d81","뛻",4,"뜂뜃뜄뜆",33,"뜪뜫뜭뜮뜱",6,"뜺뜼",7,"띅띆띇띉띊띋띍",6,"띖",9,"띡띢띣띥띦띧띩",6,"띲띴띶",5,"띾띿랁랂랃랅",6,"랎랓랔랕랚랛랝랞"],["8e41","랟랡",6,"랪랮",5,"랶랷랹",8],["8e61","럂",4,"럈럊",19],["8e81","럞",13,"럮럯럱럲럳럵",6,"럾렂",4,"렊렋렍렎렏렑",6,"렚렜렞",5,"렦렧렩렪렫렭",6,"렶렺",5,"롁롂롃롅",11,"롒롔",7,"롞롟롡롢롣롥",6,"롮롰롲",5,"롹롺롻롽",7],["8f41","뢅",7,"뢎",17],["8f61","뢠",7,"뢩",6,"뢱뢲뢳뢵뢶뢷뢹",4],["8f81","뢾뢿룂룄룆",5,"룍룎룏룑룒룓룕",7,"룞룠룢",5,"룪룫룭룮룯룱",6,"룺룼룾",5,"뤅",18,"뤙",6,"뤡",26,"뤾뤿륁륂륃륅",6,"륍륎륐륒",5],["9041","륚륛륝륞륟륡",6,"륪륬륮",5,"륶륷륹륺륻륽"],["9061","륾",5,"릆릈릋릌릏",15],["9081","릟",12,"릮릯릱릲릳릵",6,"릾맀맂",5,"맊맋맍맓",4,"맚맜맟맠맢맦맧맩맪맫맭",6,"맶맻",4,"먂",5,"먉",11,"먖",33,"먺먻먽먾먿멁멃멄멅멆"],["9141","멇멊멌멏멐멑멒멖멗멙멚멛멝",6,"멦멪",5],["9161","멲멳멵멶멷멹",9,"몆몈몉몊몋몍",5],["9181","몓",20,"몪몭몮몯몱몳",4,"몺몼몾",5,"뫅뫆뫇뫉",14,"뫚",33,"뫽뫾뫿묁묂묃묅",7,"묎묐묒",5,"묙묚묛묝묞묟묡",6],["9241","묨묪묬",7,"묷묹묺묿",4,"뭆뭈뭊뭋뭌뭎뭑뭒"],["9261","뭓뭕뭖뭗뭙",7,"뭢뭤",7,"뭭",4],["9281","뭲",21,"뮉뮊뮋뮍뮎뮏뮑",18,"뮥뮦뮧뮩뮪뮫뮭",6,"뮵뮶뮸",7,"믁믂믃믅믆믇믉",6,"믑믒믔",35,"믺믻믽믾밁"],["9341","밃",4,"밊밎밐밒밓밙밚밠밡밢밣밦밨밪밫밬밮밯밲밳밵"],["9361","밶밷밹",6,"뱂뱆뱇뱈뱊뱋뱎뱏뱑",8],["9381","뱚뱛뱜뱞",37,"벆벇벉벊벍벏",4,"벖벘벛",4,"벢벣벥벦벩",6,"벲벶",5,"벾벿볁볂볃볅",7,"볎볒볓볔볖볗볙볚볛볝",22,"볷볹볺볻볽"],["9441","볾",5,"봆봈봊",5,"봑봒봓봕",8],["9461","봞",5,"봥",6,"봭",12],["9481","봺",5,"뵁",6,"뵊뵋뵍뵎뵏뵑",6,"뵚",9,"뵥뵦뵧뵩",22,"붂붃붅붆붋",4,"붒붔붖붗붘붛붝",6,"붥",10,"붱",6,"붹",24],["9541","뷒뷓뷖뷗뷙뷚뷛뷝",11,"뷪",5,"뷱"],["9561","뷲뷳뷵뷶뷷뷹",6,"븁븂븄븆",5,"븎븏븑븒븓"],["9581","븕",6,"븞븠",35,"빆빇빉빊빋빍빏",4,"빖빘빜빝빞빟빢빣빥빦빧빩빫",4,"빲빶",4,"빾빿뺁뺂뺃뺅",6,"뺎뺒",5,"뺚",13,"뺩",14],["9641","뺸",23,"뻒뻓"],["9661","뻕뻖뻙",6,"뻡뻢뻦",5,"뻭",8],["9681","뻶",10,"뼂",5,"뼊",13,"뼚뼞",33,"뽂뽃뽅뽆뽇뽉",6,"뽒뽓뽔뽖",44],["9741","뾃",16,"뾕",8],["9761","뾞",17,"뾱",7],["9781","뾹",11,"뿆",5,"뿎뿏뿑뿒뿓뿕",6,"뿝뿞뿠뿢",89,"쀽쀾쀿"],["9841","쁀",16,"쁒",5,"쁙쁚쁛"],["9861","쁝쁞쁟쁡",6,"쁪",15],["9881","쁺",21,"삒삓삕삖삗삙",6,"삢삤삦",5,"삮삱삲삷",4,"삾샂샃샄샆샇샊샋샍샎샏샑",6,"샚샞",5,"샦샧샩샪샫샭",6,"샶샸샺",5,"섁섂섃섅섆섇섉",6,"섑섒섓섔섖",5,"섡섢섥섨섩섪섫섮"],["9941","섲섳섴섵섷섺섻섽섾섿셁",6,"셊셎",5,"셖셗"],["9961","셙셚셛셝",6,"셦셪",5,"셱셲셳셵셶셷셹셺셻"],["9981","셼",8,"솆",5,"솏솑솒솓솕솗",4,"솞솠솢솣솤솦솧솪솫솭솮솯솱",11,"솾",5,"쇅쇆쇇쇉쇊쇋쇍",6,"쇕쇖쇙",6,"쇡쇢쇣쇥쇦쇧쇩",6,"쇲쇴",7,"쇾쇿숁숂숃숅",6,"숎숐숒",5,"숚숛숝숞숡숢숣"],["9a41","숤숥숦숧숪숬숮숰숳숵",16],["9a61","쉆쉇쉉",6,"쉒쉓쉕쉖쉗쉙",6,"쉡쉢쉣쉤쉦"],["9a81","쉧",4,"쉮쉯쉱쉲쉳쉵",6,"쉾슀슂",5,"슊",5,"슑",6,"슙슚슜슞",5,"슦슧슩슪슫슮",5,"슶슸슺",33,"싞싟싡싢싥",5,"싮싰싲싳싴싵싷싺싽싾싿쌁",6,"쌊쌋쌎쌏"],["9b41","쌐쌑쌒쌖쌗쌙쌚쌛쌝",6,"쌦쌧쌪",8],["9b61","쌳",17,"썆",7],["9b81","썎",25,"썪썫썭썮썯썱썳",4,"썺썻썾",5,"쎅쎆쎇쎉쎊쎋쎍",50,"쏁",22,"쏚"],["9c41","쏛쏝쏞쏡쏣",4,"쏪쏫쏬쏮",5,"쏶쏷쏹",5],["9c61","쏿",8,"쐉",6,"쐑",9],["9c81","쐛",8,"쐥",6,"쐭쐮쐯쐱쐲쐳쐵",6,"쐾",9,"쑉",26,"쑦쑧쑩쑪쑫쑭",6,"쑶쑷쑸쑺",5,"쒁",18,"쒕",6,"쒝",12],["9d41","쒪",13,"쒹쒺쒻쒽",8],["9d61","쓆",25],["9d81","쓠",8,"쓪",5,"쓲쓳쓵쓶쓷쓹쓻쓼쓽쓾씂",9,"씍씎씏씑씒씓씕",6,"씝",10,"씪씫씭씮씯씱",6,"씺씼씾",5,"앆앇앋앏앐앑앒앖앚앛앜앟앢앣앥앦앧앩",6,"앲앶",5,"앾앿얁얂얃얅얆얈얉얊얋얎얐얒얓얔"],["9e41","얖얙얚얛얝얞얟얡",7,"얪",9,"얶"],["9e61","얷얺얿",4,"엋엍엏엒엓엕엖엗엙",6,"엢엤엦엧"],["9e81","엨엩엪엫엯엱엲엳엵엸엹엺엻옂옃옄옉옊옋옍옎옏옑",6,"옚옝",6,"옦옧옩옪옫옯옱옲옶옸옺옼옽옾옿왂왃왅왆왇왉",6,"왒왖",5,"왞왟왡",10,"왭왮왰왲",5,"왺왻왽왾왿욁",6,"욊욌욎",5,"욖욗욙욚욛욝",6,"욦"],["9f41","욨욪",5,"욲욳욵욶욷욻",4,"웂웄웆",5,"웎"],["9f61","웏웑웒웓웕",6,"웞웟웢",5,"웪웫웭웮웯웱웲"],["9f81","웳",4,"웺웻웼웾",5,"윆윇윉윊윋윍",6,"윖윘윚",5,"윢윣윥윦윧윩",6,"윲윴윶윸윹윺윻윾윿읁읂읃읅",4,"읋읎읐읙읚읛읝읞읟읡",6,"읩읪읬",7,"읶읷읹읺읻읿잀잁잂잆잋잌잍잏잒잓잕잙잛",4,"잢잧",4,"잮잯잱잲잳잵잶잷"],["a041","잸잹잺잻잾쟂",5,"쟊쟋쟍쟏쟑",6,"쟙쟚쟛쟜"],["a061","쟞",5,"쟥쟦쟧쟩쟪쟫쟭",13],["a081","쟻",4,"젂젃젅젆젇젉젋",4,"젒젔젗",4,"젞젟젡젢젣젥",6,"젮젰젲",5,"젹젺젻젽젾젿졁",6,"졊졋졎",5,"졕",26,"졲졳졵졶졷졹졻",4,"좂좄좈좉좊좎",5,"좕",7,"좞좠좢좣좤"],["a141","좥좦좧좩",18,"좾좿죀죁"],["a161","죂죃죅죆죇죉죊죋죍",6,"죖죘죚",5,"죢죣죥"],["a181","죦",14,"죶",5,"죾죿줁줂줃줇",4,"줎 、。·‥…¨〃­―∥\∼‘’“”〔〕〈",9,"±×÷≠≤≥∞∴°′″℃Å¢£¥♂♀∠⊥⌒∂∇≡≒§※☆★○●◎◇◆□■△▲▽▼→←↑↓↔〓≪≫√∽∝∵∫∬∈∋⊆⊇⊂⊃∪∩∧∨¬"],["a241","줐줒",5,"줙",18],["a261","줭",6,"줵",18],["a281","쥈",7,"쥒쥓쥕쥖쥗쥙",6,"쥢쥤",7,"쥭쥮쥯⇒⇔∀∃´~ˇ˘˝˚˙¸˛¡¿ː∮∑∏¤℉‰◁◀▷▶♤♠♡♥♧♣⊙◈▣◐◑▒▤▥▨▧▦▩♨☏☎☜☞¶†‡↕↗↙↖↘♭♩♪♬㉿㈜№㏇™㏂㏘℡€®"],["a341","쥱쥲쥳쥵",6,"쥽",10,"즊즋즍즎즏"],["a361","즑",6,"즚즜즞",16],["a381","즯",16,"짂짃짅짆짉짋",4,"짒짔짗짘짛!",58,"₩]",32," ̄"],["a441","짞짟짡짣짥짦짨짩짪짫짮짲",5,"짺짻짽짾짿쨁쨂쨃쨄"],["a461","쨅쨆쨇쨊쨎",5,"쨕쨖쨗쨙",12],["a481","쨦쨧쨨쨪",28,"ㄱ",93],["a541","쩇",4,"쩎쩏쩑쩒쩓쩕",6,"쩞쩢",5,"쩩쩪"],["a561","쩫",17,"쩾",5,"쪅쪆"],["a581","쪇",16,"쪙",14,"ⅰ",9],["a5b0","Ⅰ",9],["a5c1","Α",16,"Σ",6],["a5e1","α",16,"σ",6],["a641","쪨",19,"쪾쪿쫁쫂쫃쫅"],["a661","쫆",5,"쫎쫐쫒쫔쫕쫖쫗쫚",5,"쫡",6],["a681","쫨쫩쫪쫫쫭",6,"쫵",18,"쬉쬊─│┌┐┘└├┬┤┴┼━┃┏┓┛┗┣┳┫┻╋┠┯┨┷┿┝┰┥┸╂┒┑┚┙┖┕┎┍┞┟┡┢┦┧┩┪┭┮┱┲┵┶┹┺┽┾╀╁╃",7],["a741","쬋",4,"쬑쬒쬓쬕쬖쬗쬙",6,"쬢",7],["a761","쬪",22,"쭂쭃쭄"],["a781","쭅쭆쭇쭊쭋쭍쭎쭏쭑",6,"쭚쭛쭜쭞",5,"쭥",7,"㎕㎖㎗ℓ㎘㏄㎣㎤㎥㎦㎙",9,"㏊㎍㎎㎏㏏㎈㎉㏈㎧㎨㎰",9,"㎀",4,"㎺",5,"㎐",4,"Ω㏀㏁㎊㎋㎌㏖㏅㎭㎮㎯㏛㎩㎪㎫㎬㏝㏐㏓㏃㏉㏜㏆"],["a841","쭭",10,"쭺",14],["a861","쮉",18,"쮝",6],["a881","쮤",19,"쮹",11,"ÆЪĦ"],["a8a6","IJ"],["a8a8","ĿŁØŒºÞŦŊ"],["a8b1","㉠",27,"ⓐ",25,"①",14,"½⅓⅔¼¾⅛⅜⅝⅞"],["a941","쯅",14,"쯕",10],["a961","쯠쯡쯢쯣쯥쯦쯨쯪",18],["a981","쯽",14,"찎찏찑찒찓찕",6,"찞찟찠찣찤æđðħıijĸŀłøœßþŧŋʼn㈀",27,"⒜",25,"⑴",14,"¹²³⁴ⁿ₁₂₃₄"],["aa41","찥찦찪찫찭찯찱",6,"찺찿",4,"챆챇챉챊챋챍챎"],["aa61","챏",4,"챖챚",5,"챡챢챣챥챧챩",6,"챱챲"],["aa81","챳챴챶",29,"ぁ",82],["ab41","첔첕첖첗첚첛첝첞첟첡",6,"첪첮",5,"첶첷첹"],["ab61","첺첻첽",6,"쳆쳈쳊",5,"쳑쳒쳓쳕",5],["ab81","쳛",8,"쳥",6,"쳭쳮쳯쳱",12,"ァ",85],["ac41","쳾쳿촀촂",5,"촊촋촍촎촏촑",6,"촚촜촞촟촠"],["ac61","촡촢촣촥촦촧촩촪촫촭",11,"촺",4],["ac81","촿",28,"쵝쵞쵟А",5,"ЁЖ",25],["acd1","а",5,"ёж",25],["ad41","쵡쵢쵣쵥",6,"쵮쵰쵲",5,"쵹",7],["ad61","춁",6,"춉",10,"춖춗춙춚춛춝춞춟"],["ad81","춠춡춢춣춦춨춪",5,"춱",18,"췅"],["ae41","췆",5,"췍췎췏췑",16],["ae61","췢",5,"췩췪췫췭췮췯췱",6,"췺췼췾",4],["ae81","츃츅츆츇츉츊츋츍",6,"츕츖츗츘츚",5,"츢츣츥츦츧츩츪츫"],["af41","츬츭츮츯츲츴츶",19],["af61","칊",13,"칚칛칝칞칢",5,"칪칬"],["af81","칮",5,"칶칷칹칺칻칽",6,"캆캈캊",5,"캒캓캕캖캗캙"],["b041","캚",5,"캢캦",5,"캮",12],["b061","캻",5,"컂",19],["b081","컖",13,"컦컧컩컪컭",6,"컶컺",5,"가각간갇갈갉갊감",7,"같",4,"갠갤갬갭갯갰갱갸갹갼걀걋걍걔걘걜거걱건걷걸걺검겁것겄겅겆겉겊겋게겐겔겜겝겟겠겡겨격겪견겯결겸겹겻겼경곁계곈곌곕곗고곡곤곧골곪곬곯곰곱곳공곶과곽관괄괆"],["b141","켂켃켅켆켇켉",6,"켒켔켖",5,"켝켞켟켡켢켣"],["b161","켥",6,"켮켲",5,"켹",11],["b181","콅",14,"콖콗콙콚콛콝",6,"콦콨콪콫콬괌괍괏광괘괜괠괩괬괭괴괵괸괼굄굅굇굉교굔굘굡굣구국군굳굴굵굶굻굼굽굿궁궂궈궉권궐궜궝궤궷귀귁귄귈귐귑귓규균귤그극근귿글긁금급긋긍긔기긱긴긷길긺김깁깃깅깆깊까깍깎깐깔깖깜깝깟깠깡깥깨깩깬깰깸"],["b241","콭콮콯콲콳콵콶콷콹",6,"쾁쾂쾃쾄쾆",5,"쾍"],["b261","쾎",18,"쾢",5,"쾩"],["b281","쾪",5,"쾱",18,"쿅",6,"깹깻깼깽꺄꺅꺌꺼꺽꺾껀껄껌껍껏껐껑께껙껜껨껫껭껴껸껼꼇꼈꼍꼐꼬꼭꼰꼲꼴꼼꼽꼿꽁꽂꽃꽈꽉꽐꽜꽝꽤꽥꽹꾀꾄꾈꾐꾑꾕꾜꾸꾹꾼꿀꿇꿈꿉꿋꿍꿎꿔꿜꿨꿩꿰꿱꿴꿸뀀뀁뀄뀌뀐뀔뀜뀝뀨끄끅끈끊끌끎끓끔끕끗끙"],["b341","쿌",19,"쿢쿣쿥쿦쿧쿩"],["b361","쿪",5,"쿲쿴쿶",5,"쿽쿾쿿퀁퀂퀃퀅",5],["b381","퀋",5,"퀒",5,"퀙",19,"끝끼끽낀낄낌낍낏낑나낙낚난낟날낡낢남납낫",4,"낱낳내낵낸낼냄냅냇냈냉냐냑냔냘냠냥너넉넋넌널넒넓넘넙넛넜넝넣네넥넨넬넴넵넷넸넹녀녁년녈념녑녔녕녘녜녠노녹논놀놂놈놉놋농높놓놔놘놜놨뇌뇐뇔뇜뇝"],["b441","퀮",5,"퀶퀷퀹퀺퀻퀽",6,"큆큈큊",5],["b461","큑큒큓큕큖큗큙",6,"큡",10,"큮큯"],["b481","큱큲큳큵",6,"큾큿킀킂",18,"뇟뇨뇩뇬뇰뇹뇻뇽누눅눈눋눌눔눕눗눙눠눴눼뉘뉜뉠뉨뉩뉴뉵뉼늄늅늉느늑는늘늙늚늠늡늣능늦늪늬늰늴니닉닌닐닒님닙닛닝닢다닥닦단닫",4,"닳담답닷",4,"닿대댁댄댈댐댑댓댔댕댜더덕덖던덛덜덞덟덤덥"],["b541","킕",14,"킦킧킩킪킫킭",5],["b561","킳킶킸킺",5,"탂탃탅탆탇탊",5,"탒탖",4],["b581","탛탞탟탡탢탣탥",6,"탮탲",5,"탹",11,"덧덩덫덮데덱덴델뎀뎁뎃뎄뎅뎌뎐뎔뎠뎡뎨뎬도독돈돋돌돎돐돔돕돗동돛돝돠돤돨돼됐되된될됨됩됫됴두둑둔둘둠둡둣둥둬뒀뒈뒝뒤뒨뒬뒵뒷뒹듀듄듈듐듕드득든듣들듦듬듭듯등듸디딕딘딛딜딤딥딧딨딩딪따딱딴딸"],["b641","턅",7,"턎",17],["b661","턠",15,"턲턳턵턶턷턹턻턼턽턾"],["b681","턿텂텆",5,"텎텏텑텒텓텕",6,"텞텠텢",5,"텩텪텫텭땀땁땃땄땅땋때땍땐땔땜땝땟땠땡떠떡떤떨떪떫떰떱떳떴떵떻떼떽뗀뗄뗌뗍뗏뗐뗑뗘뗬또똑똔똘똥똬똴뙈뙤뙨뚜뚝뚠뚤뚫뚬뚱뛔뛰뛴뛸뜀뜁뜅뜨뜩뜬뜯뜰뜸뜹뜻띄띈띌띔띕띠띤띨띰띱띳띵라락란랄람랍랏랐랑랒랖랗"],["b741","텮",13,"텽",6,"톅톆톇톉톊"],["b761","톋",20,"톢톣톥톦톧"],["b781","톩",6,"톲톴톶톷톸톹톻톽톾톿퇁",14,"래랙랜랠램랩랫랬랭랴략랸럇량러럭런럴럼럽럿렀렁렇레렉렌렐렘렙렛렝려력련렬렴렵렷렸령례롄롑롓로록론롤롬롭롯롱롸롼뢍뢨뢰뢴뢸룀룁룃룅료룐룔룝룟룡루룩룬룰룸룹룻룽뤄뤘뤠뤼뤽륀륄륌륏륑류륙륜률륨륩"],["b841","퇐",7,"퇙",17],["b861","퇫",8,"퇵퇶퇷퇹",13],["b881","툈툊",5,"툑",24,"륫륭르륵른를름릅릇릉릊릍릎리릭린릴림립릿링마막만많",4,"맘맙맛망맞맡맣매맥맨맬맴맵맷맸맹맺먀먁먈먕머먹먼멀멂멈멉멋멍멎멓메멕멘멜멤멥멧멨멩며멱면멸몃몄명몇몌모목몫몬몰몲몸몹못몽뫄뫈뫘뫙뫼"],["b941","툪툫툮툯툱툲툳툵",6,"툾퉀퉂",5,"퉉퉊퉋퉌"],["b961","퉍",14,"퉝",6,"퉥퉦퉧퉨"],["b981","퉩",22,"튂튃튅튆튇튉튊튋튌묀묄묍묏묑묘묜묠묩묫무묵묶문묻물묽묾뭄뭅뭇뭉뭍뭏뭐뭔뭘뭡뭣뭬뮈뮌뮐뮤뮨뮬뮴뮷므믄믈믐믓미믹민믿밀밂밈밉밋밌밍및밑바",4,"받",4,"밤밥밧방밭배백밴밸뱀뱁뱃뱄뱅뱉뱌뱍뱐뱝버벅번벋벌벎범법벗"],["ba41","튍튎튏튒튓튔튖",5,"튝튞튟튡튢튣튥",6,"튭"],["ba61","튮튯튰튲",5,"튺튻튽튾틁틃",4,"틊틌",5],["ba81","틒틓틕틖틗틙틚틛틝",6,"틦",9,"틲틳틵틶틷틹틺벙벚베벡벤벧벨벰벱벳벴벵벼벽변별볍볏볐병볕볘볜보복볶본볼봄봅봇봉봐봔봤봬뵀뵈뵉뵌뵐뵘뵙뵤뵨부북분붇불붉붊붐붑붓붕붙붚붜붤붰붸뷔뷕뷘뷜뷩뷰뷴뷸븀븃븅브븍븐블븜븝븟비빅빈빌빎빔빕빗빙빚빛빠빡빤"],["bb41","틻",4,"팂팄팆",5,"팏팑팒팓팕팗",4,"팞팢팣"],["bb61","팤팦팧팪팫팭팮팯팱",6,"팺팾",5,"퍆퍇퍈퍉"],["bb81","퍊",31,"빨빪빰빱빳빴빵빻빼빽뺀뺄뺌뺍뺏뺐뺑뺘뺙뺨뻐뻑뻔뻗뻘뻠뻣뻤뻥뻬뼁뼈뼉뼘뼙뼛뼜뼝뽀뽁뽄뽈뽐뽑뽕뾔뾰뿅뿌뿍뿐뿔뿜뿟뿡쀼쁑쁘쁜쁠쁨쁩삐삑삔삘삠삡삣삥사삭삯산삳살삵삶삼삽삿샀상샅새색샌샐샘샙샛샜생샤"],["bc41","퍪",17,"퍾퍿펁펂펃펅펆펇"],["bc61","펈펉펊펋펎펒",5,"펚펛펝펞펟펡",6,"펪펬펮"],["bc81","펯",4,"펵펶펷펹펺펻펽",6,"폆폇폊",5,"폑",5,"샥샨샬샴샵샷샹섀섄섈섐섕서",4,"섣설섦섧섬섭섯섰성섶세섹센셀셈셉셋셌셍셔셕션셜셤셥셧셨셩셰셴셸솅소속솎손솔솖솜솝솟송솥솨솩솬솰솽쇄쇈쇌쇔쇗쇘쇠쇤쇨쇰쇱쇳쇼쇽숀숄숌숍숏숑수숙순숟술숨숩숫숭"],["bd41","폗폙",7,"폢폤",7,"폮폯폱폲폳폵폶폷"],["bd61","폸폹폺폻폾퐀퐂",5,"퐉",13],["bd81","퐗",5,"퐞",25,"숯숱숲숴쉈쉐쉑쉔쉘쉠쉥쉬쉭쉰쉴쉼쉽쉿슁슈슉슐슘슛슝스슥슨슬슭슴습슷승시식신싣실싫심십싯싱싶싸싹싻싼쌀쌈쌉쌌쌍쌓쌔쌕쌘쌜쌤쌥쌨쌩썅써썩썬썰썲썸썹썼썽쎄쎈쎌쏀쏘쏙쏜쏟쏠쏢쏨쏩쏭쏴쏵쏸쐈쐐쐤쐬쐰"],["be41","퐸",7,"푁푂푃푅",14],["be61","푔",7,"푝푞푟푡푢푣푥",7,"푮푰푱푲"],["be81","푳",4,"푺푻푽푾풁풃",4,"풊풌풎",5,"풕",8,"쐴쐼쐽쑈쑤쑥쑨쑬쑴쑵쑹쒀쒔쒜쒸쒼쓩쓰쓱쓴쓸쓺쓿씀씁씌씐씔씜씨씩씬씰씸씹씻씽아악안앉않알앍앎앓암압앗았앙앝앞애액앤앨앰앱앳앴앵야약얀얄얇얌얍얏양얕얗얘얜얠얩어억언얹얻얼얽얾엄",6,"엌엎"],["bf41","풞",10,"풪",14],["bf61","풹",18,"퓍퓎퓏퓑퓒퓓퓕"],["bf81","퓖",5,"퓝퓞퓠",7,"퓩퓪퓫퓭퓮퓯퓱",6,"퓹퓺퓼에엑엔엘엠엡엣엥여역엮연열엶엷염",5,"옅옆옇예옌옐옘옙옛옜오옥온올옭옮옰옳옴옵옷옹옻와왁완왈왐왑왓왔왕왜왝왠왬왯왱외왹왼욀욈욉욋욍요욕욘욜욤욥욧용우욱운울욹욺움웁웃웅워웍원월웜웝웠웡웨"],["c041","퓾",5,"픅픆픇픉픊픋픍",6,"픖픘",5],["c061","픞",25],["c081","픸픹픺픻픾픿핁핂핃핅",6,"핎핐핒",5,"핚핛핝핞핟핡핢핣웩웬웰웸웹웽위윅윈윌윔윕윗윙유육윤율윰윱윳융윷으윽은을읊음읍읏응",7,"읜읠읨읫이익인일읽읾잃임입잇있잉잊잎자작잔잖잗잘잚잠잡잣잤장잦재잭잰잴잼잽잿쟀쟁쟈쟉쟌쟎쟐쟘쟝쟤쟨쟬저적전절젊"],["c141","핤핦핧핪핬핮",5,"핶핷핹핺핻핽",6,"햆햊햋"],["c161","햌햍햎햏햑",19,"햦햧"],["c181","햨",31,"점접젓정젖제젝젠젤젬젭젯젱져젼졀졈졉졌졍졔조족존졸졺좀좁좃종좆좇좋좌좍좔좝좟좡좨좼좽죄죈죌죔죕죗죙죠죡죤죵주죽준줄줅줆줌줍줏중줘줬줴쥐쥑쥔쥘쥠쥡쥣쥬쥰쥴쥼즈즉즌즐즘즙즛증지직진짇질짊짐집짓"],["c241","헊헋헍헎헏헑헓",4,"헚헜헞",5,"헦헧헩헪헫헭헮"],["c261","헯",4,"헶헸헺",5,"혂혃혅혆혇혉",6,"혒"],["c281","혖",5,"혝혞혟혡혢혣혥",7,"혮",9,"혺혻징짖짙짚짜짝짠짢짤짧짬짭짯짰짱째짹짼쨀쨈쨉쨋쨌쨍쨔쨘쨩쩌쩍쩐쩔쩜쩝쩟쩠쩡쩨쩽쪄쪘쪼쪽쫀쫄쫌쫍쫏쫑쫓쫘쫙쫠쫬쫴쬈쬐쬔쬘쬠쬡쭁쭈쭉쭌쭐쭘쭙쭝쭤쭸쭹쮜쮸쯔쯤쯧쯩찌찍찐찔찜찝찡찢찧차착찬찮찰참찹찻"],["c341","혽혾혿홁홂홃홄홆홇홊홌홎홏홐홒홓홖홗홙홚홛홝",4],["c361","홢",4,"홨홪",5,"홲홳홵",11],["c381","횁횂횄횆",5,"횎횏횑횒횓횕",7,"횞횠횢",5,"횩횪찼창찾채책챈챌챔챕챗챘챙챠챤챦챨챰챵처척천철첨첩첫첬청체첵첸첼쳄쳅쳇쳉쳐쳔쳤쳬쳰촁초촉촌촐촘촙촛총촤촨촬촹최쵠쵤쵬쵭쵯쵱쵸춈추축춘출춤춥춧충춰췄췌췐취췬췰췸췹췻췽츄츈츌츔츙츠측츤츨츰츱츳층"],["c441","횫횭횮횯횱",7,"횺횼",7,"훆훇훉훊훋"],["c461","훍훎훏훐훒훓훕훖훘훚",5,"훡훢훣훥훦훧훩",4],["c481","훮훯훱훲훳훴훶",5,"훾훿휁휂휃휅",11,"휒휓휔치칙친칟칠칡침칩칫칭카칵칸칼캄캅캇캉캐캑캔캘캠캡캣캤캥캬캭컁커컥컨컫컬컴컵컷컸컹케켁켄켈켐켑켓켕켜켠켤켬켭켯켰켱켸코콕콘콜콤콥콧콩콰콱콴콸쾀쾅쾌쾡쾨쾰쿄쿠쿡쿤쿨쿰쿱쿳쿵쿼퀀퀄퀑퀘퀭퀴퀵퀸퀼"],["c541","휕휖휗휚휛휝휞휟휡",6,"휪휬휮",5,"휶휷휹"],["c561","휺휻휽",6,"흅흆흈흊",5,"흒흓흕흚",4],["c581","흟흢흤흦흧흨흪흫흭흮흯흱흲흳흵",6,"흾흿힀힂",5,"힊힋큄큅큇큉큐큔큘큠크큭큰클큼큽킁키킥킨킬킴킵킷킹타탁탄탈탉탐탑탓탔탕태택탠탤탬탭탯탰탱탸턍터턱턴털턺텀텁텃텄텅테텍텐텔템텝텟텡텨텬텼톄톈토톡톤톨톰톱톳통톺톼퇀퇘퇴퇸툇툉툐투툭툰툴툼툽툿퉁퉈퉜"],["c641","힍힎힏힑",6,"힚힜힞",5],["c6a1","퉤튀튁튄튈튐튑튕튜튠튤튬튱트특튼튿틀틂틈틉틋틔틘틜틤틥티틱틴틸팀팁팃팅파팍팎판팔팖팜팝팟팠팡팥패팩팬팰팸팹팻팼팽퍄퍅퍼퍽펀펄펌펍펏펐펑페펙펜펠펨펩펫펭펴편펼폄폅폈평폐폘폡폣포폭폰폴폼폽폿퐁"],["c7a1","퐈퐝푀푄표푠푤푭푯푸푹푼푿풀풂품풉풋풍풔풩퓌퓐퓔퓜퓟퓨퓬퓰퓸퓻퓽프픈플픔픕픗피픽핀필핌핍핏핑하학한할핥함합핫항해핵핸핼햄햅햇했행햐향허헉헌헐헒험헙헛헝헤헥헨헬헴헵헷헹혀혁현혈혐협혓혔형혜혠"],["c8a1","혤혭호혹혼홀홅홈홉홋홍홑화확환활홧황홰홱홴횃횅회획횐횔횝횟횡효횬횰횹횻후훅훈훌훑훔훗훙훠훤훨훰훵훼훽휀휄휑휘휙휜휠휨휩휫휭휴휵휸휼흄흇흉흐흑흔흖흗흘흙흠흡흣흥흩희흰흴흼흽힁히힉힌힐힘힙힛힝"],["caa1","伽佳假價加可呵哥嘉嫁家暇架枷柯歌珂痂稼苛茄街袈訶賈跏軻迦駕刻却各恪慤殼珏脚覺角閣侃刊墾奸姦干幹懇揀杆柬桿澗癎看磵稈竿簡肝艮艱諫間乫喝曷渴碣竭葛褐蝎鞨勘坎堪嵌感憾戡敢柑橄減甘疳監瞰紺邯鑑鑒龕"],["cba1","匣岬甲胛鉀閘剛堈姜岡崗康强彊慷江畺疆糠絳綱羌腔舡薑襁講鋼降鱇介价個凱塏愷愾慨改槪漑疥皆盖箇芥蓋豈鎧開喀客坑更粳羹醵倨去居巨拒据據擧渠炬祛距踞車遽鉅鋸乾件健巾建愆楗腱虔蹇鍵騫乞傑杰桀儉劍劒檢"],["cca1","瞼鈐黔劫怯迲偈憩揭擊格檄激膈覡隔堅牽犬甄絹繭肩見譴遣鵑抉決潔結缺訣兼慊箝謙鉗鎌京俓倞傾儆勁勍卿坰境庚徑慶憬擎敬景暻更梗涇炅烱璟璥瓊痙硬磬竟競絅經耕耿脛莖警輕逕鏡頃頸驚鯨係啓堺契季屆悸戒桂械"],["cda1","棨溪界癸磎稽系繫繼計誡谿階鷄古叩告呱固姑孤尻庫拷攷故敲暠枯槁沽痼皐睾稿羔考股膏苦苽菰藁蠱袴誥賈辜錮雇顧高鼓哭斛曲梏穀谷鵠困坤崑昆梱棍滾琨袞鯤汨滑骨供公共功孔工恐恭拱控攻珙空蚣貢鞏串寡戈果瓜"],["cea1","科菓誇課跨過鍋顆廓槨藿郭串冠官寬慣棺款灌琯瓘管罐菅觀貫關館刮恝括适侊光匡壙廣曠洸炚狂珖筐胱鑛卦掛罫乖傀塊壞怪愧拐槐魁宏紘肱轟交僑咬喬嬌嶠巧攪敎校橋狡皎矯絞翹膠蕎蛟較轎郊餃驕鮫丘久九仇俱具勾"],["cfa1","區口句咎嘔坵垢寇嶇廐懼拘救枸柩構歐毆毬求溝灸狗玖球瞿矩究絿耉臼舅舊苟衢謳購軀逑邱鉤銶駒驅鳩鷗龜國局菊鞠鞫麴君窘群裙軍郡堀屈掘窟宮弓穹窮芎躬倦券勸卷圈拳捲權淃眷厥獗蕨蹶闕机櫃潰詭軌饋句晷歸貴"],["d0a1","鬼龜叫圭奎揆槻珪硅窺竅糾葵規赳逵閨勻均畇筠菌鈞龜橘克剋劇戟棘極隙僅劤勤懃斤根槿瑾筋芹菫覲謹近饉契今妗擒昑檎琴禁禽芩衾衿襟金錦伋及急扱汲級給亘兢矜肯企伎其冀嗜器圻基埼夔奇妓寄岐崎己幾忌技旗旣"],["d1a1","朞期杞棋棄機欺氣汽沂淇玘琦琪璂璣畸畿碁磯祁祇祈祺箕紀綺羈耆耭肌記譏豈起錡錤飢饑騎騏驥麒緊佶吉拮桔金喫儺喇奈娜懦懶拏拿癩",5,"那樂",4,"諾酪駱亂卵暖欄煖爛蘭難鸞捏捺南嵐枏楠湳濫男藍襤拉"],["d2a1","納臘蠟衲囊娘廊",4,"乃來內奈柰耐冷女年撚秊念恬拈捻寧寗努勞奴弩怒擄櫓爐瑙盧",5,"駑魯",10,"濃籠聾膿農惱牢磊腦賂雷尿壘",7,"嫩訥杻紐勒",5,"能菱陵尼泥匿溺多茶"],["d3a1","丹亶但單團壇彖斷旦檀段湍短端簞緞蛋袒鄲鍛撻澾獺疸達啖坍憺擔曇淡湛潭澹痰聃膽蕁覃談譚錟沓畓答踏遝唐堂塘幢戇撞棠當糖螳黨代垈坮大對岱帶待戴擡玳臺袋貸隊黛宅德悳倒刀到圖堵塗導屠島嶋度徒悼挑掉搗桃"],["d4a1","棹櫂淘渡滔濤燾盜睹禱稻萄覩賭跳蹈逃途道都鍍陶韜毒瀆牘犢獨督禿篤纛讀墩惇敦旽暾沌焞燉豚頓乭突仝冬凍動同憧東桐棟洞潼疼瞳童胴董銅兜斗杜枓痘竇荳讀豆逗頭屯臀芚遁遯鈍得嶝橙燈登等藤謄鄧騰喇懶拏癩羅"],["d5a1","蘿螺裸邏樂洛烙珞絡落諾酪駱丹亂卵欄欒瀾爛蘭鸞剌辣嵐擥攬欖濫籃纜藍襤覽拉臘蠟廊朗浪狼琅瑯螂郞來崍徠萊冷掠略亮倆兩凉梁樑粮粱糧良諒輛量侶儷勵呂廬慮戾旅櫚濾礪藜蠣閭驢驪麗黎力曆歷瀝礫轢靂憐戀攣漣"],["d6a1","煉璉練聯蓮輦連鍊冽列劣洌烈裂廉斂殮濂簾獵令伶囹寧岺嶺怜玲笭羚翎聆逞鈴零靈領齡例澧禮醴隷勞怒撈擄櫓潞瀘爐盧老蘆虜路輅露魯鷺鹵碌祿綠菉錄鹿麓論壟弄朧瀧瓏籠聾儡瀨牢磊賂賚賴雷了僚寮廖料燎療瞭聊蓼"],["d7a1","遼鬧龍壘婁屢樓淚漏瘻累縷蔞褸鏤陋劉旒柳榴流溜瀏琉瑠留瘤硫謬類六戮陸侖倫崙淪綸輪律慄栗率隆勒肋凜凌楞稜綾菱陵俚利厘吏唎履悧李梨浬犁狸理璃異痢籬罹羸莉裏裡里釐離鯉吝潾燐璘藺躪隣鱗麟林淋琳臨霖砬"],["d8a1","立笠粒摩瑪痲碼磨馬魔麻寞幕漠膜莫邈万卍娩巒彎慢挽晩曼滿漫灣瞞萬蔓蠻輓饅鰻唜抹末沫茉襪靺亡妄忘忙望網罔芒茫莽輞邙埋妹媒寐昧枚梅每煤罵買賣邁魅脈貊陌驀麥孟氓猛盲盟萌冪覓免冕勉棉沔眄眠綿緬面麵滅"],["d9a1","蔑冥名命明暝椧溟皿瞑茗蓂螟酩銘鳴袂侮冒募姆帽慕摸摹暮某模母毛牟牡瑁眸矛耗芼茅謀謨貌木沐牧目睦穆鶩歿沒夢朦蒙卯墓妙廟描昴杳渺猫竗苗錨務巫憮懋戊拇撫无楙武毋無珷畝繆舞茂蕪誣貿霧鵡墨默們刎吻問文"],["daa1","汶紊紋聞蚊門雯勿沕物味媚尾嵋彌微未梶楣渼湄眉米美薇謎迷靡黴岷悶愍憫敏旻旼民泯玟珉緡閔密蜜謐剝博拍搏撲朴樸泊珀璞箔粕縛膊舶薄迫雹駁伴半反叛拌搬攀斑槃泮潘班畔瘢盤盼磐磻礬絆般蟠返頒飯勃拔撥渤潑"],["dba1","發跋醱鉢髮魃倣傍坊妨尨幇彷房放方旁昉枋榜滂磅紡肪膀舫芳蒡蚌訪謗邦防龐倍俳北培徘拜排杯湃焙盃背胚裴裵褙賠輩配陪伯佰帛柏栢白百魄幡樊煩燔番磻繁蕃藩飜伐筏罰閥凡帆梵氾汎泛犯範范法琺僻劈壁擘檗璧癖"],["dca1","碧蘗闢霹便卞弁變辨辯邊別瞥鱉鼈丙倂兵屛幷昞昺柄棅炳甁病秉竝輧餠騈保堡報寶普步洑湺潽珤甫菩補褓譜輔伏僕匐卜宓復服福腹茯蔔複覆輹輻馥鰒本乶俸奉封峯峰捧棒烽熢琫縫蓬蜂逢鋒鳳不付俯傅剖副否咐埠夫婦"],["dda1","孚孵富府復扶敷斧浮溥父符簿缶腐腑膚艀芙莩訃負賦賻赴趺部釜阜附駙鳧北分吩噴墳奔奮忿憤扮昐汾焚盆粉糞紛芬賁雰不佛弗彿拂崩朋棚硼繃鵬丕備匕匪卑妃婢庇悲憊扉批斐枇榧比毖毗毘沸泌琵痺砒碑秕秘粃緋翡肥"],["dea1","脾臂菲蜚裨誹譬費鄙非飛鼻嚬嬪彬斌檳殯浜濱瀕牝玭貧賓頻憑氷聘騁乍事些仕伺似使俟僿史司唆嗣四士奢娑寫寺射巳師徙思捨斜斯柶査梭死沙泗渣瀉獅砂社祀祠私篩紗絲肆舍莎蓑蛇裟詐詞謝賜赦辭邪飼駟麝削數朔索"],["dfa1","傘刪山散汕珊産疝算蒜酸霰乷撒殺煞薩三參杉森渗芟蔘衫揷澁鈒颯上傷像償商喪嘗孀尙峠常床庠廂想桑橡湘爽牀狀相祥箱翔裳觴詳象賞霜塞璽賽嗇塞穡索色牲生甥省笙墅壻嶼序庶徐恕抒捿敍暑曙書栖棲犀瑞筮絮緖署"],["e0a1","胥舒薯西誓逝鋤黍鼠夕奭席惜昔晳析汐淅潟石碩蓆釋錫仙僊先善嬋宣扇敾旋渲煽琁瑄璇璿癬禪線繕羨腺膳船蘚蟬詵跣選銑鐥饍鮮卨屑楔泄洩渫舌薛褻設說雪齧剡暹殲纖蟾贍閃陝攝涉燮葉城姓宬性惺成星晟猩珹盛省筬"],["e1a1","聖聲腥誠醒世勢歲洗稅笹細說貰召嘯塑宵小少巢所掃搔昭梳沼消溯瀟炤燒甦疏疎瘙笑篠簫素紹蔬蕭蘇訴逍遡邵銷韶騷俗屬束涑粟續謖贖速孫巽損蓀遜飡率宋悚松淞訟誦送頌刷殺灑碎鎖衰釗修受嗽囚垂壽嫂守岫峀帥愁"],["e2a1","戍手授搜收數樹殊水洙漱燧狩獸琇璲瘦睡秀穗竪粹綏綬繡羞脩茱蒐蓚藪袖誰讐輸遂邃酬銖銹隋隧隨雖需須首髓鬚叔塾夙孰宿淑潚熟琡璹肅菽巡徇循恂旬栒楯橓殉洵淳珣盾瞬筍純脣舜荀蓴蕣詢諄醇錞順馴戌術述鉥崇崧"],["e3a1","嵩瑟膝蝨濕拾習褶襲丞乘僧勝升承昇繩蠅陞侍匙嘶始媤尸屎屍市弑恃施是時枾柴猜矢示翅蒔蓍視試詩諡豕豺埴寔式息拭植殖湜熄篒蝕識軾食飾伸侁信呻娠宸愼新晨燼申神紳腎臣莘薪藎蜃訊身辛辰迅失室實悉審尋心沁"],["e4a1","沈深瀋甚芯諶什十拾雙氏亞俄兒啞娥峨我牙芽莪蛾衙訝阿雅餓鴉鵝堊岳嶽幄惡愕握樂渥鄂鍔顎鰐齷安岸按晏案眼雁鞍顔鮟斡謁軋閼唵岩巖庵暗癌菴闇壓押狎鴨仰央怏昻殃秧鴦厓哀埃崖愛曖涯碍艾隘靄厄扼掖液縊腋額"],["e5a1","櫻罌鶯鸚也倻冶夜惹揶椰爺耶若野弱掠略約若葯蒻藥躍亮佯兩凉壤孃恙揚攘敭暘梁楊樣洋瀁煬痒瘍禳穰糧羊良襄諒讓釀陽量養圄御於漁瘀禦語馭魚齬億憶抑檍臆偃堰彦焉言諺孼蘖俺儼嚴奄掩淹嶪業円予余勵呂女如廬"],["e6a1","旅歟汝濾璵礖礪與艅茹輿轝閭餘驪麗黎亦力域役易曆歷疫繹譯轢逆驛嚥堧姸娟宴年延憐戀捐挻撚椽沇沿涎涓淵演漣烟然煙煉燃燕璉硏硯秊筵緣練縯聯衍軟輦蓮連鉛鍊鳶列劣咽悅涅烈熱裂說閱厭廉念捻染殮炎焰琰艶苒"],["e7a1","簾閻髥鹽曄獵燁葉令囹塋寧嶺嶸影怜映暎楹榮永泳渶潁濚瀛瀯煐營獰玲瑛瑩瓔盈穎纓羚聆英詠迎鈴鍈零霙靈領乂倪例刈叡曳汭濊猊睿穢芮藝蘂禮裔詣譽豫醴銳隸霓預五伍俉傲午吾吳嗚塢墺奧娛寤悟惡懊敖旿晤梧汚澳"],["e8a1","烏熬獒筽蜈誤鰲鼇屋沃獄玉鈺溫瑥瘟穩縕蘊兀壅擁瓮甕癰翁邕雍饔渦瓦窩窪臥蛙蝸訛婉完宛梡椀浣玩琓琬碗緩翫脘腕莞豌阮頑曰往旺枉汪王倭娃歪矮外嵬巍猥畏了僚僥凹堯夭妖姚寥寮尿嶢拗搖撓擾料曜樂橈燎燿瑤療"],["e9a1","窈窯繇繞耀腰蓼蟯要謠遙遼邀饒慾欲浴縟褥辱俑傭冗勇埇墉容庸慂榕涌湧溶熔瑢用甬聳茸蓉踊鎔鏞龍于佑偶優又友右宇寓尤愚憂旴牛玗瑀盂祐禑禹紆羽芋藕虞迂遇郵釪隅雨雩勖彧旭昱栯煜稶郁頊云暈橒殞澐熉耘芸蕓"],["eaa1","運隕雲韻蔚鬱亐熊雄元原員圓園垣媛嫄寃怨愿援沅洹湲源爰猿瑗苑袁轅遠阮院願鴛月越鉞位偉僞危圍委威尉慰暐渭爲瑋緯胃萎葦蔿蝟衛褘謂違韋魏乳侑儒兪劉唯喩孺宥幼幽庾悠惟愈愉揄攸有杻柔柚柳楡楢油洧流游溜"],["eba1","濡猶猷琉瑜由留癒硫紐維臾萸裕誘諛諭踰蹂遊逾遺酉釉鍮類六堉戮毓肉育陸倫允奫尹崙淪潤玧胤贇輪鈗閏律慄栗率聿戎瀜絨融隆垠恩慇殷誾銀隱乙吟淫蔭陰音飮揖泣邑凝應膺鷹依倚儀宜意懿擬椅毅疑矣義艤薏蟻衣誼"],["eca1","議醫二以伊利吏夷姨履已弛彛怡易李梨泥爾珥理異痍痢移罹而耳肄苡荑裏裡貽貳邇里離飴餌匿溺瀷益翊翌翼謚人仁刃印吝咽因姻寅引忍湮燐璘絪茵藺蚓認隣靭靷鱗麟一佚佾壹日溢逸鎰馹任壬妊姙恁林淋稔臨荏賃入卄"],["eda1","立笠粒仍剩孕芿仔刺咨姉姿子字孜恣慈滋炙煮玆瓷疵磁紫者自茨蔗藉諮資雌作勺嚼斫昨灼炸爵綽芍酌雀鵲孱棧殘潺盞岑暫潛箴簪蠶雜丈仗匠場墻壯奬將帳庄張掌暲杖樟檣欌漿牆狀獐璋章粧腸臟臧莊葬蔣薔藏裝贓醬長"],["eea1","障再哉在宰才材栽梓渽滓災縡裁財載齋齎爭箏諍錚佇低儲咀姐底抵杵楮樗沮渚狙猪疽箸紵苧菹著藷詛貯躇這邸雎齟勣吊嫡寂摘敵滴狄炙的積笛籍績翟荻謫賊赤跡蹟迪迹適鏑佃佺傳全典前剪塡塼奠專展廛悛戰栓殿氈澱"],["efa1","煎琠田甸畑癲筌箋箭篆纏詮輾轉鈿銓錢鐫電顚顫餞切截折浙癤竊節絶占岾店漸点粘霑鮎點接摺蝶丁井亭停偵呈姃定幀庭廷征情挺政整旌晶晸柾楨檉正汀淀淨渟湞瀞炡玎珽町睛碇禎程穽精綎艇訂諪貞鄭酊釘鉦鋌錠霆靖"],["f0a1","靜頂鼎制劑啼堤帝弟悌提梯濟祭第臍薺製諸蹄醍除際霽題齊俎兆凋助嘲弔彫措操早晁曺曹朝條棗槽漕潮照燥爪璪眺祖祚租稠窕粗糟組繰肇藻蚤詔調趙躁造遭釣阻雕鳥族簇足鏃存尊卒拙猝倧宗從悰慫棕淙琮種終綜縱腫"],["f1a1","踪踵鍾鐘佐坐左座挫罪主住侏做姝胄呪周嗾奏宙州廚晝朱柱株注洲湊澍炷珠疇籌紂紬綢舟蛛註誅走躊輳週酎酒鑄駐竹粥俊儁准埈寯峻晙樽浚準濬焌畯竣蠢逡遵雋駿茁中仲衆重卽櫛楫汁葺增憎曾拯烝甑症繒蒸證贈之只"],["f2a1","咫地址志持指摯支旨智枝枳止池沚漬知砥祉祗紙肢脂至芝芷蜘誌識贄趾遲直稙稷織職唇嗔塵振搢晉晋桭榛殄津溱珍瑨璡畛疹盡眞瞋秦縉縝臻蔯袗診賑軫辰進鎭陣陳震侄叱姪嫉帙桎瓆疾秩窒膣蛭質跌迭斟朕什執潗緝輯"],["f3a1","鏶集徵懲澄且侘借叉嗟嵯差次此磋箚茶蹉車遮捉搾着窄錯鑿齪撰澯燦璨瓚竄簒纂粲纘讚贊鑽餐饌刹察擦札紮僭參塹慘慙懺斬站讒讖倉倡創唱娼廠彰愴敞昌昶暢槍滄漲猖瘡窓脹艙菖蒼債埰寀寨彩採砦綵菜蔡采釵冊柵策"],["f4a1","責凄妻悽處倜刺剔尺慽戚拓擲斥滌瘠脊蹠陟隻仟千喘天川擅泉淺玔穿舛薦賤踐遷釧闡阡韆凸哲喆徹撤澈綴輟轍鐵僉尖沾添甛瞻簽籤詹諂堞妾帖捷牒疊睫諜貼輒廳晴淸聽菁請靑鯖切剃替涕滯締諦逮遞體初剿哨憔抄招梢"],["f5a1","椒楚樵炒焦硝礁礎秒稍肖艸苕草蕉貂超酢醋醮促囑燭矗蜀觸寸忖村邨叢塚寵悤憁摠總聰蔥銃撮催崔最墜抽推椎楸樞湫皺秋芻萩諏趨追鄒酋醜錐錘鎚雛騶鰍丑畜祝竺筑築縮蓄蹙蹴軸逐春椿瑃出朮黜充忠沖蟲衝衷悴膵萃"],["f6a1","贅取吹嘴娶就炊翠聚脆臭趣醉驟鷲側仄厠惻測層侈値嗤峙幟恥梔治淄熾痔痴癡稚穉緇緻置致蚩輜雉馳齒則勅飭親七柒漆侵寢枕沈浸琛砧針鍼蟄秤稱快他咤唾墮妥惰打拖朶楕舵陀馱駝倬卓啄坼度托拓擢晫柝濁濯琢琸託"],["f7a1","鐸呑嘆坦彈憚歎灘炭綻誕奪脫探眈耽貪塔搭榻宕帑湯糖蕩兌台太怠態殆汰泰笞胎苔跆邰颱宅擇澤撑攄兎吐土討慟桶洞痛筒統通堆槌腿褪退頹偸套妬投透鬪慝特闖坡婆巴把播擺杷波派爬琶破罷芭跛頗判坂板版瓣販辦鈑"],["f8a1","阪八叭捌佩唄悖敗沛浿牌狽稗覇貝彭澎烹膨愎便偏扁片篇編翩遍鞭騙貶坪平枰萍評吠嬖幣廢弊斃肺蔽閉陛佈包匍匏咆哺圃布怖抛抱捕暴泡浦疱砲胞脯苞葡蒲袍褒逋鋪飽鮑幅暴曝瀑爆輻俵剽彪慓杓標漂瓢票表豹飇飄驃"],["f9a1","品稟楓諷豊風馮彼披疲皮被避陂匹弼必泌珌畢疋筆苾馝乏逼下何厦夏廈昰河瑕荷蝦賀遐霞鰕壑學虐謔鶴寒恨悍旱汗漢澣瀚罕翰閑閒限韓割轄函含咸啣喊檻涵緘艦銜陷鹹合哈盒蛤閤闔陜亢伉姮嫦巷恒抗杭桁沆港缸肛航"],["faa1","行降項亥偕咳垓奚孩害懈楷海瀣蟹解該諧邂駭骸劾核倖幸杏荇行享向嚮珦鄕響餉饗香噓墟虛許憲櫶獻軒歇險驗奕爀赫革俔峴弦懸晛泫炫玄玹現眩睍絃絢縣舷衒見賢鉉顯孑穴血頁嫌俠協夾峽挾浹狹脅脇莢鋏頰亨兄刑型"],["fba1","形泂滎瀅灐炯熒珩瑩荊螢衡逈邢鎣馨兮彗惠慧暳蕙蹊醯鞋乎互呼壕壺好岵弧戶扈昊晧毫浩淏湖滸澔濠濩灝狐琥瑚瓠皓祜糊縞胡芦葫蒿虎號蝴護豪鎬頀顥惑或酷婚昏混渾琿魂忽惚笏哄弘汞泓洪烘紅虹訌鴻化和嬅樺火畵"],["fca1","禍禾花華話譁貨靴廓擴攫確碻穫丸喚奐宦幻患換歡晥桓渙煥環紈還驩鰥活滑猾豁闊凰幌徨恍惶愰慌晃晄榥況湟滉潢煌璜皇篁簧荒蝗遑隍黃匯回廻徊恢悔懷晦會檜淮澮灰獪繪膾茴蛔誨賄劃獲宖橫鐄哮嚆孝效斅曉梟涍淆"],["fda1","爻肴酵驍侯候厚后吼喉嗅帿後朽煦珝逅勛勳塤壎焄熏燻薰訓暈薨喧暄煊萱卉喙毁彙徽揮暉煇諱輝麾休携烋畦虧恤譎鷸兇凶匈洶胸黑昕欣炘痕吃屹紇訖欠欽歆吸恰洽翕興僖凞喜噫囍姬嬉希憙憘戱晞曦熙熹熺犧禧稀羲詰"]]; /***/ }), -/* 697 */ +/* 698 */ /***/ (function(module) { module.exports = [["0","\u0000",127],["a140"," ,、。.‧;:?!︰…‥﹐﹑﹒·﹔﹕﹖﹗|–︱—︳╴︴﹏()︵︶{}︷︸〔〕︹︺【】︻︼《》︽︾〈〉︿﹀「」﹁﹂『』﹃﹄﹙﹚"],["a1a1","﹛﹜﹝﹞‘’“”〝〞‵′#&*※§〃○●△▲◎☆★◇◆□■▽▼㊣℅¯ ̄_ˍ﹉﹊﹍﹎﹋﹌﹟﹠﹡+-×÷±√<>=≦≧≠∞≒≡﹢",4,"~∩∪⊥∠∟⊿㏒㏑∫∮∵∴♀♂⊕⊙↑↓←→↖↗↙↘∥∣/"],["a240","\∕﹨$¥〒¢£%@℃℉﹩﹪﹫㏕㎜㎝㎞㏎㎡㎎㎏㏄°兙兛兞兝兡兣嗧瓩糎▁",7,"▏▎▍▌▋▊▉┼┴┬┤├▔─│▕┌┐└┘╭"],["a2a1","╮╰╯═╞╪╡◢◣◥◤╱╲╳0",9,"Ⅰ",9,"〡",8,"十卄卅A",25,"a",21],["a340","wxyzΑ",16,"Σ",6,"α",16,"σ",6,"ㄅ",10],["a3a1","ㄐ",25,"˙ˉˊˇˋ"],["a3e1","€"],["a440","一乙丁七乃九了二人儿入八几刀刁力匕十卜又三下丈上丫丸凡久么也乞于亡兀刃勺千叉口土士夕大女子孑孓寸小尢尸山川工己已巳巾干廾弋弓才"],["a4a1","丑丐不中丰丹之尹予云井互五亢仁什仃仆仇仍今介仄元允內六兮公冗凶分切刈勻勾勿化匹午升卅卞厄友及反壬天夫太夭孔少尤尺屯巴幻廿弔引心戈戶手扎支文斗斤方日曰月木欠止歹毋比毛氏水火爪父爻片牙牛犬王丙"],["a540","世丕且丘主乍乏乎以付仔仕他仗代令仙仞充兄冉冊冬凹出凸刊加功包匆北匝仟半卉卡占卯卮去可古右召叮叩叨叼司叵叫另只史叱台句叭叻四囚外"],["a5a1","央失奴奶孕它尼巨巧左市布平幼弁弘弗必戊打扔扒扑斥旦朮本未末札正母民氐永汁汀氾犯玄玉瓜瓦甘生用甩田由甲申疋白皮皿目矛矢石示禾穴立丞丟乒乓乩亙交亦亥仿伉伙伊伕伍伐休伏仲件任仰仳份企伋光兇兆先全"],["a640","共再冰列刑划刎刖劣匈匡匠印危吉吏同吊吐吁吋各向名合吃后吆吒因回囝圳地在圭圬圯圩夙多夷夸妄奸妃好她如妁字存宇守宅安寺尖屹州帆并年"],["a6a1","式弛忙忖戎戌戍成扣扛托收早旨旬旭曲曳有朽朴朱朵次此死氖汝汗汙江池汐汕污汛汍汎灰牟牝百竹米糸缶羊羽老考而耒耳聿肉肋肌臣自至臼舌舛舟艮色艾虫血行衣西阡串亨位住佇佗佞伴佛何估佐佑伽伺伸佃佔似但佣"],["a740","作你伯低伶余佝佈佚兌克免兵冶冷別判利刪刨劫助努劬匣即卵吝吭吞吾否呎吧呆呃吳呈呂君吩告吹吻吸吮吵吶吠吼呀吱含吟听囪困囤囫坊坑址坍"],["a7a1","均坎圾坐坏圻壯夾妝妒妨妞妣妙妖妍妤妓妊妥孝孜孚孛完宋宏尬局屁尿尾岐岑岔岌巫希序庇床廷弄弟彤形彷役忘忌志忍忱快忸忪戒我抄抗抖技扶抉扭把扼找批扳抒扯折扮投抓抑抆改攻攸旱更束李杏材村杜杖杞杉杆杠"],["a840","杓杗步每求汞沙沁沈沉沅沛汪決沐汰沌汨沖沒汽沃汲汾汴沆汶沍沔沘沂灶灼災灸牢牡牠狄狂玖甬甫男甸皂盯矣私秀禿究系罕肖肓肝肘肛肚育良芒"],["a8a1","芋芍見角言谷豆豕貝赤走足身車辛辰迂迆迅迄巡邑邢邪邦那酉釆里防阮阱阪阬並乖乳事些亞享京佯依侍佳使佬供例來侃佰併侈佩佻侖佾侏侑佺兔兒兕兩具其典冽函刻券刷刺到刮制剁劾劻卒協卓卑卦卷卸卹取叔受味呵"],["a940","咖呸咕咀呻呷咄咒咆呼咐呱呶和咚呢周咋命咎固垃坷坪坩坡坦坤坼夜奉奇奈奄奔妾妻委妹妮姑姆姐姍始姓姊妯妳姒姅孟孤季宗定官宜宙宛尚屈居"],["a9a1","屆岷岡岸岩岫岱岳帘帚帖帕帛帑幸庚店府底庖延弦弧弩往征彿彼忝忠忽念忿怏怔怯怵怖怪怕怡性怩怫怛或戕房戾所承拉拌拄抿拂抹拒招披拓拔拋拈抨抽押拐拙拇拍抵拚抱拘拖拗拆抬拎放斧於旺昔易昌昆昂明昀昏昕昊"],["aa40","昇服朋杭枋枕東果杳杷枇枝林杯杰板枉松析杵枚枓杼杪杲欣武歧歿氓氛泣注泳沱泌泥河沽沾沼波沫法泓沸泄油況沮泗泅泱沿治泡泛泊沬泯泜泖泠"],["aaa1","炕炎炒炊炙爬爭爸版牧物狀狎狙狗狐玩玨玟玫玥甽疝疙疚的盂盲直知矽社祀祁秉秈空穹竺糾罔羌羋者肺肥肢肱股肫肩肴肪肯臥臾舍芳芝芙芭芽芟芹花芬芥芯芸芣芰芾芷虎虱初表軋迎返近邵邸邱邶采金長門阜陀阿阻附"],["ab40","陂隹雨青非亟亭亮信侵侯便俠俑俏保促侶俘俟俊俗侮俐俄係俚俎俞侷兗冒冑冠剎剃削前剌剋則勇勉勃勁匍南卻厚叛咬哀咨哎哉咸咦咳哇哂咽咪品"],["aba1","哄哈咯咫咱咻咩咧咿囿垂型垠垣垢城垮垓奕契奏奎奐姜姘姿姣姨娃姥姪姚姦威姻孩宣宦室客宥封屎屏屍屋峙峒巷帝帥帟幽庠度建弈弭彥很待徊律徇後徉怒思怠急怎怨恍恰恨恢恆恃恬恫恪恤扁拜挖按拼拭持拮拽指拱拷"],["ac40","拯括拾拴挑挂政故斫施既春昭映昧是星昨昱昤曷柿染柱柔某柬架枯柵柩柯柄柑枴柚查枸柏柞柳枰柙柢柝柒歪殃殆段毒毗氟泉洋洲洪流津洌洱洞洗"],["aca1","活洽派洶洛泵洹洧洸洩洮洵洎洫炫為炳炬炯炭炸炮炤爰牲牯牴狩狠狡玷珊玻玲珍珀玳甚甭畏界畎畋疫疤疥疢疣癸皆皇皈盈盆盃盅省盹相眉看盾盼眇矜砂研砌砍祆祉祈祇禹禺科秒秋穿突竿竽籽紂紅紀紉紇約紆缸美羿耄"],["ad40","耐耍耑耶胖胥胚胃胄背胡胛胎胞胤胝致舢苧范茅苣苛苦茄若茂茉苒苗英茁苜苔苑苞苓苟苯茆虐虹虻虺衍衫要觔計訂訃貞負赴赳趴軍軌述迦迢迪迥"],["ada1","迭迫迤迨郊郎郁郃酋酊重閂限陋陌降面革韋韭音頁風飛食首香乘亳倌倍倣俯倦倥俸倩倖倆值借倚倒們俺倀倔倨俱倡個候倘俳修倭倪俾倫倉兼冤冥冢凍凌准凋剖剜剔剛剝匪卿原厝叟哨唐唁唷哼哥哲唆哺唔哩哭員唉哮哪"],["ae40","哦唧唇哽唏圃圄埂埔埋埃堉夏套奘奚娑娘娜娟娛娓姬娠娣娩娥娌娉孫屘宰害家宴宮宵容宸射屑展屐峭峽峻峪峨峰島崁峴差席師庫庭座弱徒徑徐恙"],["aea1","恣恥恐恕恭恩息悄悟悚悍悔悌悅悖扇拳挈拿捎挾振捕捂捆捏捉挺捐挽挪挫挨捍捌效敉料旁旅時晉晏晃晒晌晅晁書朔朕朗校核案框桓根桂桔栩梳栗桌桑栽柴桐桀格桃株桅栓栘桁殊殉殷氣氧氨氦氤泰浪涕消涇浦浸海浙涓"],["af40","浬涉浮浚浴浩涌涊浹涅浥涔烊烘烤烙烈烏爹特狼狹狽狸狷玆班琉珮珠珪珞畔畝畜畚留疾病症疲疳疽疼疹痂疸皋皰益盍盎眩真眠眨矩砰砧砸砝破砷"],["afa1","砥砭砠砟砲祕祐祠祟祖神祝祗祚秤秣秧租秦秩秘窄窈站笆笑粉紡紗紋紊素索純紐紕級紜納紙紛缺罟羔翅翁耆耘耕耙耗耽耿胱脂胰脅胭胴脆胸胳脈能脊胼胯臭臬舀舐航舫舨般芻茫荒荔荊茸荐草茵茴荏茲茹茶茗荀茱茨荃"],["b040","虔蚊蚪蚓蚤蚩蚌蚣蚜衰衷袁袂衽衹記訐討訌訕訊託訓訖訏訑豈豺豹財貢起躬軒軔軏辱送逆迷退迺迴逃追逅迸邕郡郝郢酒配酌釘針釗釜釙閃院陣陡"],["b0a1","陛陝除陘陞隻飢馬骨高鬥鬲鬼乾偺偽停假偃偌做偉健偶偎偕偵側偷偏倏偯偭兜冕凰剪副勒務勘動匐匏匙匿區匾參曼商啪啦啄啞啡啃啊唱啖問啕唯啤唸售啜唬啣唳啁啗圈國圉域堅堊堆埠埤基堂堵執培夠奢娶婁婉婦婪婀"],["b140","娼婢婚婆婊孰寇寅寄寂宿密尉專將屠屜屝崇崆崎崛崖崢崑崩崔崙崤崧崗巢常帶帳帷康庸庶庵庾張強彗彬彩彫得徙從徘御徠徜恿患悉悠您惋悴惦悽"],["b1a1","情悻悵惜悼惘惕惆惟悸惚惇戚戛扈掠控捲掖探接捷捧掘措捱掩掉掃掛捫推掄授掙採掬排掏掀捻捩捨捺敝敖救教敗啟敏敘敕敔斜斛斬族旋旌旎晝晚晤晨晦晞曹勗望梁梯梢梓梵桿桶梱梧梗械梃棄梭梆梅梔條梨梟梡梂欲殺"],["b240","毫毬氫涎涼淳淙液淡淌淤添淺清淇淋涯淑涮淞淹涸混淵淅淒渚涵淚淫淘淪深淮淨淆淄涪淬涿淦烹焉焊烽烯爽牽犁猜猛猖猓猙率琅琊球理現琍瓠瓶"],["b2a1","瓷甜產略畦畢異疏痔痕疵痊痍皎盔盒盛眷眾眼眶眸眺硫硃硎祥票祭移窒窕笠笨笛第符笙笞笮粒粗粕絆絃統紮紹紼絀細紳組累終紲紱缽羞羚翌翎習耜聊聆脯脖脣脫脩脰脤舂舵舷舶船莎莞莘荸莢莖莽莫莒莊莓莉莠荷荻荼"],["b340","莆莧處彪蛇蛀蚶蛄蚵蛆蛋蚱蚯蛉術袞袈被袒袖袍袋覓規訪訝訣訥許設訟訛訢豉豚販責貫貨貪貧赧赦趾趺軛軟這逍通逗連速逝逐逕逞造透逢逖逛途"],["b3a1","部郭都酗野釵釦釣釧釭釩閉陪陵陳陸陰陴陶陷陬雀雪雩章竟頂頃魚鳥鹵鹿麥麻傢傍傅備傑傀傖傘傚最凱割剴創剩勞勝勛博厥啻喀喧啼喊喝喘喂喜喪喔喇喋喃喳單喟唾喲喚喻喬喱啾喉喫喙圍堯堪場堤堰報堡堝堠壹壺奠"],["b440","婷媚婿媒媛媧孳孱寒富寓寐尊尋就嵌嵐崴嵇巽幅帽幀幃幾廊廁廂廄弼彭復循徨惑惡悲悶惠愜愣惺愕惰惻惴慨惱愎惶愉愀愒戟扉掣掌描揀揩揉揆揍"],["b4a1","插揣提握揖揭揮捶援揪換摒揚揹敞敦敢散斑斐斯普晰晴晶景暑智晾晷曾替期朝棺棕棠棘棗椅棟棵森棧棹棒棲棣棋棍植椒椎棉棚楮棻款欺欽殘殖殼毯氮氯氬港游湔渡渲湧湊渠渥渣減湛湘渤湖湮渭渦湯渴湍渺測湃渝渾滋"],["b540","溉渙湎湣湄湲湩湟焙焚焦焰無然煮焜牌犄犀猶猥猴猩琺琪琳琢琥琵琶琴琯琛琦琨甥甦畫番痢痛痣痙痘痞痠登發皖皓皴盜睏短硝硬硯稍稈程稅稀窘"],["b5a1","窗窖童竣等策筆筐筒答筍筋筏筑粟粥絞結絨絕紫絮絲絡給絢絰絳善翔翕耋聒肅腕腔腋腑腎脹腆脾腌腓腴舒舜菩萃菸萍菠菅萋菁華菱菴著萊菰萌菌菽菲菊萸萎萄菜萇菔菟虛蛟蛙蛭蛔蛛蛤蛐蛞街裁裂袱覃視註詠評詞証詁"],["b640","詔詛詐詆訴診訶詖象貂貯貼貳貽賁費賀貴買貶貿貸越超趁跎距跋跚跑跌跛跆軻軸軼辜逮逵週逸進逶鄂郵鄉郾酣酥量鈔鈕鈣鈉鈞鈍鈐鈇鈑閔閏開閑"],["b6a1","間閒閎隊階隋陽隅隆隍陲隄雁雅雄集雇雯雲韌項順須飧飪飯飩飲飭馮馭黃黍黑亂傭債傲傳僅傾催傷傻傯僇剿剷剽募勦勤勢勣匯嗟嗨嗓嗦嗎嗜嗇嗑嗣嗤嗯嗚嗡嗅嗆嗥嗉園圓塞塑塘塗塚塔填塌塭塊塢塒塋奧嫁嫉嫌媾媽媼"],["b740","媳嫂媲嵩嵯幌幹廉廈弒彙徬微愚意慈感想愛惹愁愈慎慌慄慍愾愴愧愍愆愷戡戢搓搾搞搪搭搽搬搏搜搔損搶搖搗搆敬斟新暗暉暇暈暖暄暘暍會榔業"],["b7a1","楚楷楠楔極椰概楊楨楫楞楓楹榆楝楣楛歇歲毀殿毓毽溢溯滓溶滂源溝滇滅溥溘溼溺溫滑準溜滄滔溪溧溴煎煙煩煤煉照煜煬煦煌煥煞煆煨煖爺牒猷獅猿猾瑯瑚瑕瑟瑞瑁琿瑙瑛瑜當畸瘀痰瘁痲痱痺痿痴痳盞盟睛睫睦睞督"],["b840","睹睪睬睜睥睨睢矮碎碰碗碘碌碉硼碑碓硿祺祿禁萬禽稜稚稠稔稟稞窟窠筷節筠筮筧粱粳粵經絹綑綁綏絛置罩罪署義羨群聖聘肆肄腱腰腸腥腮腳腫"],["b8a1","腹腺腦舅艇蒂葷落萱葵葦葫葉葬葛萼萵葡董葩葭葆虞虜號蛹蜓蜈蜇蜀蛾蛻蜂蜃蜆蜊衙裟裔裙補裘裝裡裊裕裒覜解詫該詳試詩詰誇詼詣誠話誅詭詢詮詬詹詻訾詨豢貊貉賊資賈賄貲賃賂賅跡跟跨路跳跺跪跤跦躲較載軾輊"],["b940","辟農運遊道遂達逼違遐遇遏過遍遑逾遁鄒鄗酬酪酩釉鈷鉗鈸鈽鉀鈾鉛鉋鉤鉑鈴鉉鉍鉅鈹鈿鉚閘隘隔隕雍雋雉雊雷電雹零靖靴靶預頑頓頊頒頌飼飴"],["b9a1","飽飾馳馱馴髡鳩麂鼎鼓鼠僧僮僥僖僭僚僕像僑僱僎僩兢凳劃劂匱厭嗾嘀嘛嘗嗽嘔嘆嘉嘍嘎嗷嘖嘟嘈嘐嗶團圖塵塾境墓墊塹墅塽壽夥夢夤奪奩嫡嫦嫩嫗嫖嫘嫣孵寞寧寡寥實寨寢寤察對屢嶄嶇幛幣幕幗幔廓廖弊彆彰徹慇"],["ba40","愿態慷慢慣慟慚慘慵截撇摘摔撤摸摟摺摑摧搴摭摻敲斡旗旖暢暨暝榜榨榕槁榮槓構榛榷榻榫榴槐槍榭槌榦槃榣歉歌氳漳演滾漓滴漩漾漠漬漏漂漢"],["baa1","滿滯漆漱漸漲漣漕漫漯澈漪滬漁滲滌滷熔熙煽熊熄熒爾犒犖獄獐瑤瑣瑪瑰瑭甄疑瘧瘍瘋瘉瘓盡監瞄睽睿睡磁碟碧碳碩碣禎福禍種稱窪窩竭端管箕箋筵算箝箔箏箸箇箄粹粽精綻綰綜綽綾綠緊綴網綱綺綢綿綵綸維緒緇綬"],["bb40","罰翠翡翟聞聚肇腐膀膏膈膊腿膂臧臺與舔舞艋蓉蒿蓆蓄蒙蒞蒲蒜蓋蒸蓀蓓蒐蒼蓑蓊蜿蜜蜻蜢蜥蜴蜘蝕蜷蜩裳褂裴裹裸製裨褚裯誦誌語誣認誡誓誤"],["bba1","說誥誨誘誑誚誧豪貍貌賓賑賒赫趙趕跼輔輒輕輓辣遠遘遜遣遙遞遢遝遛鄙鄘鄞酵酸酷酴鉸銀銅銘銖鉻銓銜銨鉼銑閡閨閩閣閥閤隙障際雌雒需靼鞅韶頗領颯颱餃餅餌餉駁骯骰髦魁魂鳴鳶鳳麼鼻齊億儀僻僵價儂儈儉儅凜"],["bc40","劇劈劉劍劊勰厲嘮嘻嘹嘲嘿嘴嘩噓噎噗噴嘶嘯嘰墀墟增墳墜墮墩墦奭嬉嫻嬋嫵嬌嬈寮寬審寫層履嶝嶔幢幟幡廢廚廟廝廣廠彈影德徵慶慧慮慝慕憂"],["bca1","慼慰慫慾憧憐憫憎憬憚憤憔憮戮摩摯摹撞撲撈撐撰撥撓撕撩撒撮播撫撚撬撙撢撳敵敷數暮暫暴暱樣樟槨樁樞標槽模樓樊槳樂樅槭樑歐歎殤毅毆漿潼澄潑潦潔澆潭潛潸潮澎潺潰潤澗潘滕潯潠潟熟熬熱熨牖犛獎獗瑩璋璃"],["bd40","瑾璀畿瘠瘩瘟瘤瘦瘡瘢皚皺盤瞎瞇瞌瞑瞋磋磅確磊碾磕碼磐稿稼穀稽稷稻窯窮箭箱範箴篆篇篁箠篌糊締練緯緻緘緬緝編緣線緞緩綞緙緲緹罵罷羯"],["bda1","翩耦膛膜膝膠膚膘蔗蔽蔚蓮蔬蔭蔓蔑蔣蔡蔔蓬蔥蓿蔆螂蝴蝶蝠蝦蝸蝨蝙蝗蝌蝓衛衝褐複褒褓褕褊誼諒談諄誕請諸課諉諂調誰論諍誶誹諛豌豎豬賠賞賦賤賬賭賢賣賜質賡赭趟趣踫踐踝踢踏踩踟踡踞躺輝輛輟輩輦輪輜輞"],["be40","輥適遮遨遭遷鄰鄭鄧鄱醇醉醋醃鋅銻銷鋪銬鋤鋁銳銼鋒鋇鋰銲閭閱霄霆震霉靠鞍鞋鞏頡頫頜颳養餓餒餘駝駐駟駛駑駕駒駙骷髮髯鬧魅魄魷魯鴆鴉"],["bea1","鴃麩麾黎墨齒儒儘儔儐儕冀冪凝劑劓勳噙噫噹噩噤噸噪器噥噱噯噬噢噶壁墾壇壅奮嬝嬴學寰導彊憲憑憩憊懍憶憾懊懈戰擅擁擋撻撼據擄擇擂操撿擒擔撾整曆曉暹曄曇暸樽樸樺橙橫橘樹橄橢橡橋橇樵機橈歙歷氅濂澱澡"],["bf40","濃澤濁澧澳激澹澶澦澠澴熾燉燐燒燈燕熹燎燙燜燃燄獨璜璣璘璟璞瓢甌甍瘴瘸瘺盧盥瞠瞞瞟瞥磨磚磬磧禦積穎穆穌穋窺篙簑築篤篛篡篩篦糕糖縊"],["bfa1","縑縈縛縣縞縝縉縐罹羲翰翱翮耨膳膩膨臻興艘艙蕊蕙蕈蕨蕩蕃蕉蕭蕪蕞螃螟螞螢融衡褪褲褥褫褡親覦諦諺諫諱謀諜諧諮諾謁謂諷諭諳諶諼豫豭貓賴蹄踱踴蹂踹踵輻輯輸輳辨辦遵遴選遲遼遺鄴醒錠錶鋸錳錯錢鋼錫錄錚"],["c040","錐錦錡錕錮錙閻隧隨險雕霎霑霖霍霓霏靛靜靦鞘頰頸頻頷頭頹頤餐館餞餛餡餚駭駢駱骸骼髻髭鬨鮑鴕鴣鴦鴨鴒鴛默黔龍龜優償儡儲勵嚎嚀嚐嚅嚇"],["c0a1","嚏壕壓壑壎嬰嬪嬤孺尷屨嶼嶺嶽嶸幫彌徽應懂懇懦懋戲戴擎擊擘擠擰擦擬擱擢擭斂斃曙曖檀檔檄檢檜櫛檣橾檗檐檠歜殮毚氈濘濱濟濠濛濤濫濯澀濬濡濩濕濮濰燧營燮燦燥燭燬燴燠爵牆獰獲璩環璦璨癆療癌盪瞳瞪瞰瞬"],["c140","瞧瞭矯磷磺磴磯礁禧禪穗窿簇簍篾篷簌篠糠糜糞糢糟糙糝縮績繆縷縲繃縫總縱繅繁縴縹繈縵縿縯罄翳翼聱聲聰聯聳臆臃膺臂臀膿膽臉膾臨舉艱薪"],["c1a1","薄蕾薜薑薔薯薛薇薨薊虧蟀蟑螳蟒蟆螫螻螺蟈蟋褻褶襄褸褽覬謎謗謙講謊謠謝謄謐豁谿豳賺賽購賸賻趨蹉蹋蹈蹊轄輾轂轅輿避遽還邁邂邀鄹醣醞醜鍍鎂錨鍵鍊鍥鍋錘鍾鍬鍛鍰鍚鍔闊闋闌闈闆隱隸雖霜霞鞠韓顆颶餵騁"],["c240","駿鮮鮫鮪鮭鴻鴿麋黏點黜黝黛鼾齋叢嚕嚮壙壘嬸彝懣戳擴擲擾攆擺擻擷斷曜朦檳檬櫃檻檸櫂檮檯歟歸殯瀉瀋濾瀆濺瀑瀏燻燼燾燸獷獵璧璿甕癖癘"],["c2a1","癒瞽瞿瞻瞼礎禮穡穢穠竄竅簫簧簪簞簣簡糧織繕繞繚繡繒繙罈翹翻職聶臍臏舊藏薩藍藐藉薰薺薹薦蟯蟬蟲蟠覆覲觴謨謹謬謫豐贅蹙蹣蹦蹤蹟蹕軀轉轍邇邃邈醫醬釐鎔鎊鎖鎢鎳鎮鎬鎰鎘鎚鎗闔闖闐闕離雜雙雛雞霤鞣鞦"],["c340","鞭韹額顏題顎顓颺餾餿餽餮馥騎髁鬃鬆魏魎魍鯊鯉鯽鯈鯀鵑鵝鵠黠鼕鼬儳嚥壞壟壢寵龐廬懲懷懶懵攀攏曠曝櫥櫝櫚櫓瀛瀟瀨瀚瀝瀕瀘爆爍牘犢獸"],["c3a1","獺璽瓊瓣疇疆癟癡矇礙禱穫穩簾簿簸簽簷籀繫繭繹繩繪羅繳羶羹羸臘藩藝藪藕藤藥藷蟻蠅蠍蟹蟾襠襟襖襞譁譜識證譚譎譏譆譙贈贊蹼蹲躇蹶蹬蹺蹴轔轎辭邊邋醱醮鏡鏑鏟鏃鏈鏜鏝鏖鏢鏍鏘鏤鏗鏨關隴難霪霧靡韜韻類"],["c440","願顛颼饅饉騖騙鬍鯨鯧鯖鯛鶉鵡鵲鵪鵬麒麗麓麴勸嚨嚷嚶嚴嚼壤孀孃孽寶巉懸懺攘攔攙曦朧櫬瀾瀰瀲爐獻瓏癢癥礦礪礬礫竇競籌籃籍糯糰辮繽繼"],["c4a1","纂罌耀臚艦藻藹蘑藺蘆蘋蘇蘊蠔蠕襤覺觸議譬警譯譟譫贏贍躉躁躅躂醴釋鐘鐃鏽闡霰飄饒饑馨騫騰騷騵鰓鰍鹹麵黨鼯齟齣齡儷儸囁囀囂夔屬巍懼懾攝攜斕曩櫻欄櫺殲灌爛犧瓖瓔癩矓籐纏續羼蘗蘭蘚蠣蠢蠡蠟襪襬覽譴"],["c540","護譽贓躊躍躋轟辯醺鐮鐳鐵鐺鐸鐲鐫闢霸霹露響顧顥饗驅驃驀騾髏魔魑鰭鰥鶯鶴鷂鶸麝黯鼙齜齦齧儼儻囈囊囉孿巔巒彎懿攤權歡灑灘玀瓤疊癮癬"],["c5a1","禳籠籟聾聽臟襲襯觼讀贖贗躑躓轡酈鑄鑑鑒霽霾韃韁顫饕驕驍髒鬚鱉鰱鰾鰻鷓鷗鼴齬齪龔囌巖戀攣攫攪曬欐瓚竊籤籣籥纓纖纔臢蘸蘿蠱變邐邏鑣鑠鑤靨顯饜驚驛驗髓體髑鱔鱗鱖鷥麟黴囑壩攬灞癱癲矗罐羈蠶蠹衢讓讒"],["c640","讖艷贛釀鑪靂靈靄韆顰驟鬢魘鱟鷹鷺鹼鹽鼇齷齲廳欖灣籬籮蠻觀躡釁鑲鑰顱饞髖鬣黌灤矚讚鑷韉驢驥纜讜躪釅鑽鑾鑼鱷鱸黷豔鑿鸚爨驪鬱鸛鸞籲"],["c940","乂乜凵匚厂万丌乇亍囗兀屮彳丏冇与丮亓仂仉仈冘勼卬厹圠夃夬尐巿旡殳毌气爿丱丼仨仜仩仡仝仚刌匜卌圢圣夗夯宁宄尒尻屴屳帄庀庂忉戉扐氕"],["c9a1","氶汃氿氻犮犰玊禸肊阞伎优伬仵伔仱伀价伈伝伂伅伢伓伄仴伒冱刓刉刐劦匢匟卍厊吇囡囟圮圪圴夼妀奼妅奻奾奷奿孖尕尥屼屺屻屾巟幵庄异弚彴忕忔忏扜扞扤扡扦扢扙扠扚扥旯旮朾朹朸朻机朿朼朳氘汆汒汜汏汊汔汋"],["ca40","汌灱牞犴犵玎甪癿穵网艸艼芀艽艿虍襾邙邗邘邛邔阢阤阠阣佖伻佢佉体佤伾佧佒佟佁佘伭伳伿佡冏冹刜刞刡劭劮匉卣卲厎厏吰吷吪呔呅吙吜吥吘"],["caa1","吽呏呁吨吤呇囮囧囥坁坅坌坉坋坒夆奀妦妘妠妗妎妢妐妏妧妡宎宒尨尪岍岏岈岋岉岒岊岆岓岕巠帊帎庋庉庌庈庍弅弝彸彶忒忑忐忭忨忮忳忡忤忣忺忯忷忻怀忴戺抃抌抎抏抔抇扱扻扺扰抁抈扷扽扲扴攷旰旴旳旲旵杅杇"],["cb40","杙杕杌杈杝杍杚杋毐氙氚汸汧汫沄沋沏汱汯汩沚汭沇沕沜汦汳汥汻沎灴灺牣犿犽狃狆狁犺狅玕玗玓玔玒町甹疔疕皁礽耴肕肙肐肒肜芐芏芅芎芑芓"],["cba1","芊芃芄豸迉辿邟邡邥邞邧邠阰阨阯阭丳侘佼侅佽侀侇佶佴侉侄佷佌侗佪侚佹侁佸侐侜侔侞侒侂侕佫佮冞冼冾刵刲刳剆刱劼匊匋匼厒厔咇呿咁咑咂咈呫呺呾呥呬呴呦咍呯呡呠咘呣呧呤囷囹坯坲坭坫坱坰坶垀坵坻坳坴坢"],["cc40","坨坽夌奅妵妺姏姎妲姌姁妶妼姃姖妱妽姀姈妴姇孢孥宓宕屄屇岮岤岠岵岯岨岬岟岣岭岢岪岧岝岥岶岰岦帗帔帙弨弢弣弤彔徂彾彽忞忥怭怦怙怲怋"],["cca1","怴怊怗怳怚怞怬怢怍怐怮怓怑怌怉怜戔戽抭抴拑抾抪抶拊抮抳抯抻抩抰抸攽斨斻昉旼昄昒昈旻昃昋昍昅旽昑昐曶朊枅杬枎枒杶杻枘枆构杴枍枌杺枟枑枙枃杽极杸杹枔欥殀歾毞氝沓泬泫泮泙沶泔沭泧沷泐泂沺泃泆泭泲"],["cd40","泒泝沴沊沝沀泞泀洰泍泇沰泹泏泩泑炔炘炅炓炆炄炑炖炂炚炃牪狖狋狘狉狜狒狔狚狌狑玤玡玭玦玢玠玬玝瓝瓨甿畀甾疌疘皯盳盱盰盵矸矼矹矻矺"],["cda1","矷祂礿秅穸穻竻籵糽耵肏肮肣肸肵肭舠芠苀芫芚芘芛芵芧芮芼芞芺芴芨芡芩苂芤苃芶芢虰虯虭虮豖迒迋迓迍迖迕迗邲邴邯邳邰阹阽阼阺陃俍俅俓侲俉俋俁俔俜俙侻侳俛俇俖侺俀侹俬剄剉勀勂匽卼厗厖厙厘咺咡咭咥哏"],["ce40","哃茍咷咮哖咶哅哆咠呰咼咢咾呲哞咰垵垞垟垤垌垗垝垛垔垘垏垙垥垚垕壴复奓姡姞姮娀姱姝姺姽姼姶姤姲姷姛姩姳姵姠姾姴姭宨屌峐峘峌峗峋峛"],["cea1","峞峚峉峇峊峖峓峔峏峈峆峎峟峸巹帡帢帣帠帤庰庤庢庛庣庥弇弮彖徆怷怹恔恲恞恅恓恇恉恛恌恀恂恟怤恄恘恦恮扂扃拏挍挋拵挎挃拫拹挏挌拸拶挀挓挔拺挕拻拰敁敃斪斿昶昡昲昵昜昦昢昳昫昺昝昴昹昮朏朐柁柲柈枺"],["cf40","柜枻柸柘柀枷柅柫柤柟枵柍枳柷柶柮柣柂枹柎柧柰枲柼柆柭柌枮柦柛柺柉柊柃柪柋欨殂殄殶毖毘毠氠氡洨洴洭洟洼洿洒洊泚洳洄洙洺洚洑洀洝浂"],["cfa1","洁洘洷洃洏浀洇洠洬洈洢洉洐炷炟炾炱炰炡炴炵炩牁牉牊牬牰牳牮狊狤狨狫狟狪狦狣玅珌珂珈珅玹玶玵玴珫玿珇玾珃珆玸珋瓬瓮甮畇畈疧疪癹盄眈眃眄眅眊盷盻盺矧矨砆砑砒砅砐砏砎砉砃砓祊祌祋祅祄秕种秏秖秎窀"],["d040","穾竑笀笁籺籸籹籿粀粁紃紈紁罘羑羍羾耇耎耏耔耷胘胇胠胑胈胂胐胅胣胙胜胊胕胉胏胗胦胍臿舡芔苙苾苹茇苨茀苕茺苫苖苴苬苡苲苵茌苻苶苰苪"],["d0a1","苤苠苺苳苭虷虴虼虳衁衎衧衪衩觓訄訇赲迣迡迮迠郱邽邿郕郅邾郇郋郈釔釓陔陏陑陓陊陎倞倅倇倓倢倰倛俵俴倳倷倬俶俷倗倜倠倧倵倯倱倎党冔冓凊凄凅凈凎剡剚剒剞剟剕剢勍匎厞唦哢唗唒哧哳哤唚哿唄唈哫唑唅哱"],["d140","唊哻哷哸哠唎唃唋圁圂埌堲埕埒垺埆垽垼垸垶垿埇埐垹埁夎奊娙娖娭娮娕娏娗娊娞娳孬宧宭宬尃屖屔峬峿峮峱峷崀峹帩帨庨庮庪庬弳弰彧恝恚恧"],["d1a1","恁悢悈悀悒悁悝悃悕悛悗悇悜悎戙扆拲挐捖挬捄捅挶捃揤挹捋捊挼挩捁挴捘捔捙挭捇挳捚捑挸捗捀捈敊敆旆旃旄旂晊晟晇晑朒朓栟栚桉栲栳栻桋桏栖栱栜栵栫栭栯桎桄栴栝栒栔栦栨栮桍栺栥栠欬欯欭欱欴歭肂殈毦毤"],["d240","毨毣毢毧氥浺浣浤浶洍浡涒浘浢浭浯涑涍淯浿涆浞浧浠涗浰浼浟涂涘洯浨涋浾涀涄洖涃浻浽浵涐烜烓烑烝烋缹烢烗烒烞烠烔烍烅烆烇烚烎烡牂牸"],["d2a1","牷牶猀狺狴狾狶狳狻猁珓珙珥珖玼珧珣珩珜珒珛珔珝珚珗珘珨瓞瓟瓴瓵甡畛畟疰痁疻痄痀疿疶疺皊盉眝眛眐眓眒眣眑眕眙眚眢眧砣砬砢砵砯砨砮砫砡砩砳砪砱祔祛祏祜祓祒祑秫秬秠秮秭秪秜秞秝窆窉窅窋窌窊窇竘笐"],["d340","笄笓笅笏笈笊笎笉笒粄粑粊粌粈粍粅紞紝紑紎紘紖紓紟紒紏紌罜罡罞罠罝罛羖羒翃翂翀耖耾耹胺胲胹胵脁胻脀舁舯舥茳茭荄茙荑茥荖茿荁茦茜茢"],["d3a1","荂荎茛茪茈茼荍茖茤茠茷茯茩荇荅荌荓茞茬荋茧荈虓虒蚢蚨蚖蚍蚑蚞蚇蚗蚆蚋蚚蚅蚥蚙蚡蚧蚕蚘蚎蚝蚐蚔衃衄衭衵衶衲袀衱衿衯袃衾衴衼訒豇豗豻貤貣赶赸趵趷趶軑軓迾迵适迿迻逄迼迶郖郠郙郚郣郟郥郘郛郗郜郤酐"],["d440","酎酏釕釢釚陜陟隼飣髟鬯乿偰偪偡偞偠偓偋偝偲偈偍偁偛偊偢倕偅偟偩偫偣偤偆偀偮偳偗偑凐剫剭剬剮勖勓匭厜啵啶唼啍啐唴唪啑啢唶唵唰啒啅"],["d4a1","唌唲啥啎唹啈唭唻啀啋圊圇埻堔埢埶埜埴堀埭埽堈埸堋埳埏堇埮埣埲埥埬埡堎埼堐埧堁堌埱埩埰堍堄奜婠婘婕婧婞娸娵婭婐婟婥婬婓婤婗婃婝婒婄婛婈媎娾婍娹婌婰婩婇婑婖婂婜孲孮寁寀屙崞崋崝崚崠崌崨崍崦崥崏"],["d540","崰崒崣崟崮帾帴庱庴庹庲庳弶弸徛徖徟悊悐悆悾悰悺惓惔惏惤惙惝惈悱惛悷惊悿惃惍惀挲捥掊掂捽掽掞掭掝掗掫掎捯掇掐据掯捵掜捭掮捼掤挻掟"],["d5a1","捸掅掁掑掍捰敓旍晥晡晛晙晜晢朘桹梇梐梜桭桮梮梫楖桯梣梬梩桵桴梲梏桷梒桼桫桲梪梀桱桾梛梖梋梠梉梤桸桻梑梌梊桽欶欳欷欸殑殏殍殎殌氪淀涫涴涳湴涬淩淢涷淶淔渀淈淠淟淖涾淥淜淝淛淴淊涽淭淰涺淕淂淏淉"],["d640","淐淲淓淽淗淍淣涻烺焍烷焗烴焌烰焄烳焐烼烿焆焓焀烸烶焋焂焎牾牻牼牿猝猗猇猑猘猊猈狿猏猞玈珶珸珵琄琁珽琇琀珺珼珿琌琋珴琈畤畣痎痒痏"],["d6a1","痋痌痑痐皏皉盓眹眯眭眱眲眴眳眽眥眻眵硈硒硉硍硊硌砦硅硐祤祧祩祪祣祫祡离秺秸秶秷窏窔窐笵筇笴笥笰笢笤笳笘笪笝笱笫笭笯笲笸笚笣粔粘粖粣紵紽紸紶紺絅紬紩絁絇紾紿絊紻紨罣羕羜羝羛翊翋翍翐翑翇翏翉耟"],["d740","耞耛聇聃聈脘脥脙脛脭脟脬脞脡脕脧脝脢舑舸舳舺舴舲艴莐莣莨莍荺荳莤荴莏莁莕莙荵莔莩荽莃莌莝莛莪莋荾莥莯莈莗莰荿莦莇莮荶莚虙虖蚿蚷"],["d7a1","蛂蛁蛅蚺蚰蛈蚹蚳蚸蛌蚴蚻蚼蛃蚽蚾衒袉袕袨袢袪袚袑袡袟袘袧袙袛袗袤袬袌袓袎覂觖觙觕訰訧訬訞谹谻豜豝豽貥赽赻赹趼跂趹趿跁軘軞軝軜軗軠軡逤逋逑逜逌逡郯郪郰郴郲郳郔郫郬郩酖酘酚酓酕釬釴釱釳釸釤釹釪"],["d840","釫釷釨釮镺閆閈陼陭陫陱陯隿靪頄飥馗傛傕傔傞傋傣傃傌傎傝偨傜傒傂傇兟凔匒匑厤厧喑喨喥喭啷噅喢喓喈喏喵喁喣喒喤啽喌喦啿喕喡喎圌堩堷"],["d8a1","堙堞堧堣堨埵塈堥堜堛堳堿堶堮堹堸堭堬堻奡媯媔媟婺媢媞婸媦婼媥媬媕媮娷媄媊媗媃媋媩婻婽媌媜媏媓媝寪寍寋寔寑寊寎尌尰崷嵃嵫嵁嵋崿崵嵑嵎嵕崳崺嵒崽崱嵙嵂崹嵉崸崼崲崶嵀嵅幄幁彘徦徥徫惉悹惌惢惎惄愔"],["d940","惲愊愖愅惵愓惸惼惾惁愃愘愝愐惿愄愋扊掔掱掰揎揥揨揯揃撝揳揊揠揶揕揲揵摡揟掾揝揜揄揘揓揂揇揌揋揈揰揗揙攲敧敪敤敜敨敥斌斝斞斮旐旒"],["d9a1","晼晬晻暀晱晹晪晲朁椌棓椄棜椪棬棪棱椏棖棷棫棤棶椓椐棳棡椇棌椈楰梴椑棯棆椔棸棐棽棼棨椋椊椗棎棈棝棞棦棴棑椆棔棩椕椥棇欹欻欿欼殔殗殙殕殽毰毲毳氰淼湆湇渟湉溈渼渽湅湢渫渿湁湝湳渜渳湋湀湑渻渃渮湞"],["da40","湨湜湡渱渨湠湱湫渹渢渰湓湥渧湸湤湷湕湹湒湦渵渶湚焠焞焯烻焮焱焣焥焢焲焟焨焺焛牋牚犈犉犆犅犋猒猋猰猢猱猳猧猲猭猦猣猵猌琮琬琰琫琖"],["daa1","琚琡琭琱琤琣琝琩琠琲瓻甯畯畬痧痚痡痦痝痟痤痗皕皒盚睆睇睄睍睅睊睎睋睌矞矬硠硤硥硜硭硱硪确硰硩硨硞硢祴祳祲祰稂稊稃稌稄窙竦竤筊笻筄筈筌筎筀筘筅粢粞粨粡絘絯絣絓絖絧絪絏絭絜絫絒絔絩絑絟絎缾缿罥"],["db40","罦羢羠羡翗聑聏聐胾胔腃腊腒腏腇脽腍脺臦臮臷臸臹舄舼舽舿艵茻菏菹萣菀菨萒菧菤菼菶萐菆菈菫菣莿萁菝菥菘菿菡菋菎菖菵菉萉萏菞萑萆菂菳"],["dba1","菕菺菇菑菪萓菃菬菮菄菻菗菢萛菛菾蛘蛢蛦蛓蛣蛚蛪蛝蛫蛜蛬蛩蛗蛨蛑衈衖衕袺裗袹袸裀袾袶袼袷袽袲褁裉覕覘覗觝觚觛詎詍訹詙詀詗詘詄詅詒詈詑詊詌詏豟貁貀貺貾貰貹貵趄趀趉跘跓跍跇跖跜跏跕跙跈跗跅軯軷軺"],["dc40","軹軦軮軥軵軧軨軶軫軱軬軴軩逭逴逯鄆鄬鄄郿郼鄈郹郻鄁鄀鄇鄅鄃酡酤酟酢酠鈁鈊鈥鈃鈚鈦鈏鈌鈀鈒釿釽鈆鈄鈧鈂鈜鈤鈙鈗鈅鈖镻閍閌閐隇陾隈"],["dca1","隉隃隀雂雈雃雱雰靬靰靮頇颩飫鳦黹亃亄亶傽傿僆傮僄僊傴僈僂傰僁傺傱僋僉傶傸凗剺剸剻剼嗃嗛嗌嗐嗋嗊嗝嗀嗔嗄嗩喿嗒喍嗏嗕嗢嗖嗈嗲嗍嗙嗂圔塓塨塤塏塍塉塯塕塎塝塙塥塛堽塣塱壼嫇嫄嫋媺媸媱媵媰媿嫈媻嫆"],["dd40","媷嫀嫊媴媶嫍媹媐寖寘寙尟尳嵱嵣嵊嵥嵲嵬嵞嵨嵧嵢巰幏幎幊幍幋廅廌廆廋廇彀徯徭惷慉慊愫慅愶愲愮慆愯慏愩慀戠酨戣戥戤揅揱揫搐搒搉搠搤"],["dda1","搳摃搟搕搘搹搷搢搣搌搦搰搨摁搵搯搊搚摀搥搧搋揧搛搮搡搎敯斒旓暆暌暕暐暋暊暙暔晸朠楦楟椸楎楢楱椿楅楪椹楂楗楙楺楈楉椵楬椳椽楥棰楸椴楩楀楯楄楶楘楁楴楌椻楋椷楜楏楑椲楒椯楻椼歆歅歃歂歈歁殛嗀毻毼"],["de40","毹毷毸溛滖滈溏滀溟溓溔溠溱溹滆滒溽滁溞滉溷溰滍溦滏溲溾滃滜滘溙溒溎溍溤溡溿溳滐滊溗溮溣煇煔煒煣煠煁煝煢煲煸煪煡煂煘煃煋煰煟煐煓"],["dea1","煄煍煚牏犍犌犑犐犎猼獂猻猺獀獊獉瑄瑊瑋瑒瑑瑗瑀瑏瑐瑎瑂瑆瑍瑔瓡瓿瓾瓽甝畹畷榃痯瘏瘃痷痾痼痹痸瘐痻痶痭痵痽皙皵盝睕睟睠睒睖睚睩睧睔睙睭矠碇碚碔碏碄碕碅碆碡碃硹碙碀碖硻祼禂祽祹稑稘稙稒稗稕稢稓"],["df40","稛稐窣窢窞竫筦筤筭筴筩筲筥筳筱筰筡筸筶筣粲粴粯綈綆綀綍絿綅絺綎絻綃絼綌綔綄絽綒罭罫罧罨罬羦羥羧翛翜耡腤腠腷腜腩腛腢腲朡腞腶腧腯"],["dfa1","腄腡舝艉艄艀艂艅蓱萿葖葶葹蒏蒍葥葑葀蒆葧萰葍葽葚葙葴葳葝蔇葞萷萺萴葺葃葸萲葅萩菙葋萯葂萭葟葰萹葎葌葒葯蓅蒎萻葇萶萳葨葾葄萫葠葔葮葐蜋蜄蛷蜌蛺蛖蛵蝍蛸蜎蜉蜁蛶蜍蜅裖裋裍裎裞裛裚裌裐覅覛觟觥觤"],["e040","觡觠觢觜触詶誆詿詡訿詷誂誄詵誃誁詴詺谼豋豊豥豤豦貆貄貅賌赨赩趑趌趎趏趍趓趔趐趒跰跠跬跱跮跐跩跣跢跧跲跫跴輆軿輁輀輅輇輈輂輋遒逿"],["e0a1","遄遉逽鄐鄍鄏鄑鄖鄔鄋鄎酮酯鉈鉒鈰鈺鉦鈳鉥鉞銃鈮鉊鉆鉭鉬鉏鉠鉧鉯鈶鉡鉰鈱鉔鉣鉐鉲鉎鉓鉌鉖鈲閟閜閞閛隒隓隑隗雎雺雽雸雵靳靷靸靲頏頍頎颬飶飹馯馲馰馵骭骫魛鳪鳭鳧麀黽僦僔僗僨僳僛僪僝僤僓僬僰僯僣僠"],["e140","凘劀劁勩勫匰厬嘧嘕嘌嘒嗼嘏嘜嘁嘓嘂嗺嘝嘄嗿嗹墉塼墐墘墆墁塿塴墋塺墇墑墎塶墂墈塻墔墏壾奫嫜嫮嫥嫕嫪嫚嫭嫫嫳嫢嫠嫛嫬嫞嫝嫙嫨嫟孷寠"],["e1a1","寣屣嶂嶀嵽嶆嵺嶁嵷嶊嶉嶈嵾嵼嶍嵹嵿幘幙幓廘廑廗廎廜廕廙廒廔彄彃彯徶愬愨慁慞慱慳慒慓慲慬憀慴慔慺慛慥愻慪慡慖戩戧戫搫摍摛摝摴摶摲摳摽摵摦撦摎撂摞摜摋摓摠摐摿搿摬摫摙摥摷敳斠暡暠暟朅朄朢榱榶槉"],["e240","榠槎榖榰榬榼榑榙榎榧榍榩榾榯榿槄榽榤槔榹槊榚槏榳榓榪榡榞槙榗榐槂榵榥槆歊歍歋殞殟殠毃毄毾滎滵滱漃漥滸漷滻漮漉潎漙漚漧漘漻漒滭漊"],["e2a1","漶潳滹滮漭潀漰漼漵滫漇漎潃漅滽滶漹漜滼漺漟漍漞漈漡熇熐熉熀熅熂熏煻熆熁熗牄牓犗犕犓獃獍獑獌瑢瑳瑱瑵瑲瑧瑮甀甂甃畽疐瘖瘈瘌瘕瘑瘊瘔皸瞁睼瞅瞂睮瞀睯睾瞃碲碪碴碭碨硾碫碞碥碠碬碢碤禘禊禋禖禕禔禓"],["e340","禗禈禒禐稫穊稰稯稨稦窨窫窬竮箈箜箊箑箐箖箍箌箛箎箅箘劄箙箤箂粻粿粼粺綧綷緂綣綪緁緀緅綝緎緄緆緋緌綯綹綖綼綟綦綮綩綡緉罳翢翣翥翞"],["e3a1","耤聝聜膉膆膃膇膍膌膋舕蒗蒤蒡蒟蒺蓎蓂蒬蒮蒫蒹蒴蓁蓍蒪蒚蒱蓐蒝蒧蒻蒢蒔蓇蓌蒛蒩蒯蒨蓖蒘蒶蓏蒠蓗蓔蓒蓛蒰蒑虡蜳蜣蜨蝫蝀蜮蜞蜡蜙蜛蝃蜬蝁蜾蝆蜠蜲蜪蜭蜼蜒蜺蜱蜵蝂蜦蜧蜸蜤蜚蜰蜑裷裧裱裲裺裾裮裼裶裻"],["e440","裰裬裫覝覡覟覞觩觫觨誫誙誋誒誏誖谽豨豩賕賏賗趖踉踂跿踍跽踊踃踇踆踅跾踀踄輐輑輎輍鄣鄜鄠鄢鄟鄝鄚鄤鄡鄛酺酲酹酳銥銤鉶銛鉺銠銔銪銍"],["e4a1","銦銚銫鉹銗鉿銣鋮銎銂銕銢鉽銈銡銊銆銌銙銧鉾銇銩銝銋鈭隞隡雿靘靽靺靾鞃鞀鞂靻鞄鞁靿韎韍頖颭颮餂餀餇馝馜駃馹馻馺駂馽駇骱髣髧鬾鬿魠魡魟鳱鳲鳵麧僿儃儰僸儆儇僶僾儋儌僽儊劋劌勱勯噈噂噌嘵噁噊噉噆噘"],["e540","噚噀嘳嘽嘬嘾嘸嘪嘺圚墫墝墱墠墣墯墬墥墡壿嫿嫴嫽嫷嫶嬃嫸嬂嫹嬁嬇嬅嬏屧嶙嶗嶟嶒嶢嶓嶕嶠嶜嶡嶚嶞幩幝幠幜緳廛廞廡彉徲憋憃慹憱憰憢憉"],["e5a1","憛憓憯憭憟憒憪憡憍慦憳戭摮摰撖撠撅撗撜撏撋撊撌撣撟摨撱撘敶敺敹敻斲斳暵暰暩暲暷暪暯樀樆樗槥槸樕槱槤樠槿槬槢樛樝槾樧槲槮樔槷槧橀樈槦槻樍槼槫樉樄樘樥樏槶樦樇槴樖歑殥殣殢殦氁氀毿氂潁漦潾澇濆澒"],["e640","澍澉澌潢潏澅潚澖潶潬澂潕潲潒潐潗澔澓潝漀潡潫潽潧澐潓澋潩潿澕潣潷潪潻熲熯熛熰熠熚熩熵熝熥熞熤熡熪熜熧熳犘犚獘獒獞獟獠獝獛獡獚獙"],["e6a1","獢璇璉璊璆璁瑽璅璈瑼瑹甈甇畾瘥瘞瘙瘝瘜瘣瘚瘨瘛皜皝皞皛瞍瞏瞉瞈磍碻磏磌磑磎磔磈磃磄磉禚禡禠禜禢禛歶稹窲窴窳箷篋箾箬篎箯箹篊箵糅糈糌糋緷緛緪緧緗緡縃緺緦緶緱緰緮緟罶羬羰羭翭翫翪翬翦翨聤聧膣膟"],["e740","膞膕膢膙膗舖艏艓艒艐艎艑蔤蔻蔏蔀蔩蔎蔉蔍蔟蔊蔧蔜蓻蔫蓺蔈蔌蓴蔪蓲蔕蓷蓫蓳蓼蔒蓪蓩蔖蓾蔨蔝蔮蔂蓽蔞蓶蔱蔦蓧蓨蓰蓯蓹蔘蔠蔰蔋蔙蔯虢"],["e7a1","蝖蝣蝤蝷蟡蝳蝘蝔蝛蝒蝡蝚蝑蝞蝭蝪蝐蝎蝟蝝蝯蝬蝺蝮蝜蝥蝏蝻蝵蝢蝧蝩衚褅褌褔褋褗褘褙褆褖褑褎褉覢覤覣觭觰觬諏諆誸諓諑諔諕誻諗誾諀諅諘諃誺誽諙谾豍貏賥賟賙賨賚賝賧趠趜趡趛踠踣踥踤踮踕踛踖踑踙踦踧"],["e840","踔踒踘踓踜踗踚輬輤輘輚輠輣輖輗遳遰遯遧遫鄯鄫鄩鄪鄲鄦鄮醅醆醊醁醂醄醀鋐鋃鋄鋀鋙銶鋏鋱鋟鋘鋩鋗鋝鋌鋯鋂鋨鋊鋈鋎鋦鋍鋕鋉鋠鋞鋧鋑鋓"],["e8a1","銵鋡鋆銴镼閬閫閮閰隤隢雓霅霈霂靚鞊鞎鞈韐韏頞頝頦頩頨頠頛頧颲餈飺餑餔餖餗餕駜駍駏駓駔駎駉駖駘駋駗駌骳髬髫髳髲髱魆魃魧魴魱魦魶魵魰魨魤魬鳼鳺鳽鳿鳷鴇鴀鳹鳻鴈鴅鴄麃黓鼏鼐儜儓儗儚儑凞匴叡噰噠噮"],["e940","噳噦噣噭噲噞噷圜圛壈墽壉墿墺壂墼壆嬗嬙嬛嬡嬔嬓嬐嬖嬨嬚嬠嬞寯嶬嶱嶩嶧嶵嶰嶮嶪嶨嶲嶭嶯嶴幧幨幦幯廩廧廦廨廥彋徼憝憨憖懅憴懆懁懌憺"],["e9a1","憿憸憌擗擖擐擏擉撽撉擃擛擳擙攳敿敼斢曈暾曀曊曋曏暽暻暺曌朣樴橦橉橧樲橨樾橝橭橶橛橑樨橚樻樿橁橪橤橐橏橔橯橩橠樼橞橖橕橍橎橆歕歔歖殧殪殫毈毇氄氃氆澭濋澣濇澼濎濈潞濄澽澞濊澨瀄澥澮澺澬澪濏澿澸"],["ea40","澢濉澫濍澯澲澰燅燂熿熸燖燀燁燋燔燊燇燏熽燘熼燆燚燛犝犞獩獦獧獬獥獫獪瑿璚璠璔璒璕璡甋疀瘯瘭瘱瘽瘳瘼瘵瘲瘰皻盦瞚瞝瞡瞜瞛瞢瞣瞕瞙"],["eaa1","瞗磝磩磥磪磞磣磛磡磢磭磟磠禤穄穈穇窶窸窵窱窷篞篣篧篝篕篥篚篨篹篔篪篢篜篫篘篟糒糔糗糐糑縒縡縗縌縟縠縓縎縜縕縚縢縋縏縖縍縔縥縤罃罻罼罺羱翯耪耩聬膱膦膮膹膵膫膰膬膴膲膷膧臲艕艖艗蕖蕅蕫蕍蕓蕡蕘"],["eb40","蕀蕆蕤蕁蕢蕄蕑蕇蕣蔾蕛蕱蕎蕮蕵蕕蕧蕠薌蕦蕝蕔蕥蕬虣虥虤螛螏螗螓螒螈螁螖螘蝹螇螣螅螐螑螝螄螔螜螚螉褞褦褰褭褮褧褱褢褩褣褯褬褟觱諠"],["eba1","諢諲諴諵諝謔諤諟諰諈諞諡諨諿諯諻貑貒貐賵賮賱賰賳赬赮趥趧踳踾踸蹀蹅踶踼踽蹁踰踿躽輶輮輵輲輹輷輴遶遹遻邆郺鄳鄵鄶醓醐醑醍醏錧錞錈錟錆錏鍺錸錼錛錣錒錁鍆錭錎錍鋋錝鋺錥錓鋹鋷錴錂錤鋿錩錹錵錪錔錌"],["ec40","錋鋾錉錀鋻錖閼闍閾閹閺閶閿閵閽隩雔霋霒霐鞙鞗鞔韰韸頵頯頲餤餟餧餩馞駮駬駥駤駰駣駪駩駧骹骿骴骻髶髺髹髷鬳鮀鮅鮇魼魾魻鮂鮓鮒鮐魺鮕"],["eca1","魽鮈鴥鴗鴠鴞鴔鴩鴝鴘鴢鴐鴙鴟麈麆麇麮麭黕黖黺鼒鼽儦儥儢儤儠儩勴嚓嚌嚍嚆嚄嚃噾嚂噿嚁壖壔壏壒嬭嬥嬲嬣嬬嬧嬦嬯嬮孻寱寲嶷幬幪徾徻懃憵憼懧懠懥懤懨懞擯擩擣擫擤擨斁斀斶旚曒檍檖檁檥檉檟檛檡檞檇檓檎"],["ed40","檕檃檨檤檑橿檦檚檅檌檒歛殭氉濌澩濴濔濣濜濭濧濦濞濲濝濢濨燡燱燨燲燤燰燢獳獮獯璗璲璫璐璪璭璱璥璯甐甑甒甏疄癃癈癉癇皤盩瞵瞫瞲瞷瞶"],["eda1","瞴瞱瞨矰磳磽礂磻磼磲礅磹磾礄禫禨穜穛穖穘穔穚窾竀竁簅簏篲簀篿篻簎篴簋篳簂簉簃簁篸篽簆篰篱簐簊糨縭縼繂縳顈縸縪繉繀繇縩繌縰縻縶繄縺罅罿罾罽翴翲耬膻臄臌臊臅臇膼臩艛艚艜薃薀薏薧薕薠薋薣蕻薤薚薞"],["ee40","蕷蕼薉薡蕺蕸蕗薎薖薆薍薙薝薁薢薂薈薅蕹蕶薘薐薟虨螾螪螭蟅螰螬螹螵螼螮蟉蟃蟂蟌螷螯蟄蟊螴螶螿螸螽蟞螲褵褳褼褾襁襒褷襂覭覯覮觲觳謞"],["eea1","謘謖謑謅謋謢謏謒謕謇謍謈謆謜謓謚豏豰豲豱豯貕貔賹赯蹎蹍蹓蹐蹌蹇轃轀邅遾鄸醚醢醛醙醟醡醝醠鎡鎃鎯鍤鍖鍇鍼鍘鍜鍶鍉鍐鍑鍠鍭鎏鍌鍪鍹鍗鍕鍒鍏鍱鍷鍻鍡鍞鍣鍧鎀鍎鍙闇闀闉闃闅閷隮隰隬霠霟霘霝霙鞚鞡鞜"],["ef40","鞞鞝韕韔韱顁顄顊顉顅顃餥餫餬餪餳餲餯餭餱餰馘馣馡騂駺駴駷駹駸駶駻駽駾駼騃骾髾髽鬁髼魈鮚鮨鮞鮛鮦鮡鮥鮤鮆鮢鮠鮯鴳鵁鵧鴶鴮鴯鴱鴸鴰"],["efa1","鵅鵂鵃鴾鴷鵀鴽翵鴭麊麉麍麰黈黚黻黿鼤鼣鼢齔龠儱儭儮嚘嚜嚗嚚嚝嚙奰嬼屩屪巀幭幮懘懟懭懮懱懪懰懫懖懩擿攄擽擸攁攃擼斔旛曚曛曘櫅檹檽櫡櫆檺檶檷櫇檴檭歞毉氋瀇瀌瀍瀁瀅瀔瀎濿瀀濻瀦濼濷瀊爁燿燹爃燽獶"],["f040","璸瓀璵瓁璾璶璻瓂甔甓癜癤癙癐癓癗癚皦皽盬矂瞺磿礌礓礔礉礐礒礑禭禬穟簜簩簙簠簟簭簝簦簨簢簥簰繜繐繖繣繘繢繟繑繠繗繓羵羳翷翸聵臑臒"],["f0a1","臐艟艞薴藆藀藃藂薳薵薽藇藄薿藋藎藈藅薱薶藒蘤薸薷薾虩蟧蟦蟢蟛蟫蟪蟥蟟蟳蟤蟔蟜蟓蟭蟘蟣螤蟗蟙蠁蟴蟨蟝襓襋襏襌襆襐襑襉謪謧謣謳謰謵譇謯謼謾謱謥謷謦謶謮謤謻謽謺豂豵貙貘貗賾贄贂贀蹜蹢蹠蹗蹖蹞蹥蹧"],["f140","蹛蹚蹡蹝蹩蹔轆轇轈轋鄨鄺鄻鄾醨醥醧醯醪鎵鎌鎒鎷鎛鎝鎉鎧鎎鎪鎞鎦鎕鎈鎙鎟鎍鎱鎑鎲鎤鎨鎴鎣鎥闒闓闑隳雗雚巂雟雘雝霣霢霥鞬鞮鞨鞫鞤鞪"],["f1a1","鞢鞥韗韙韖韘韺顐顑顒颸饁餼餺騏騋騉騍騄騑騊騅騇騆髀髜鬈鬄鬅鬩鬵魊魌魋鯇鯆鯃鮿鯁鮵鮸鯓鮶鯄鮹鮽鵜鵓鵏鵊鵛鵋鵙鵖鵌鵗鵒鵔鵟鵘鵚麎麌黟鼁鼀鼖鼥鼫鼪鼩鼨齌齕儴儵劖勷厴嚫嚭嚦嚧嚪嚬壚壝壛夒嬽嬾嬿巃幰"],["f240","徿懻攇攐攍攉攌攎斄旞旝曞櫧櫠櫌櫑櫙櫋櫟櫜櫐櫫櫏櫍櫞歠殰氌瀙瀧瀠瀖瀫瀡瀢瀣瀩瀗瀤瀜瀪爌爊爇爂爅犥犦犤犣犡瓋瓅璷瓃甖癠矉矊矄矱礝礛"],["f2a1","礡礜礗礞禰穧穨簳簼簹簬簻糬糪繶繵繸繰繷繯繺繲繴繨罋罊羃羆羷翽翾聸臗臕艤艡艣藫藱藭藙藡藨藚藗藬藲藸藘藟藣藜藑藰藦藯藞藢蠀蟺蠃蟶蟷蠉蠌蠋蠆蟼蠈蟿蠊蠂襢襚襛襗襡襜襘襝襙覈覷覶觶譐譈譊譀譓譖譔譋譕"],["f340","譑譂譒譗豃豷豶貚贆贇贉趬趪趭趫蹭蹸蹳蹪蹯蹻軂轒轑轏轐轓辴酀鄿醰醭鏞鏇鏏鏂鏚鏐鏹鏬鏌鏙鎩鏦鏊鏔鏮鏣鏕鏄鏎鏀鏒鏧镽闚闛雡霩霫霬霨霦"],["f3a1","鞳鞷鞶韝韞韟顜顙顝顗颿颽颻颾饈饇饃馦馧騚騕騥騝騤騛騢騠騧騣騞騜騔髂鬋鬊鬎鬌鬷鯪鯫鯠鯞鯤鯦鯢鯰鯔鯗鯬鯜鯙鯥鯕鯡鯚鵷鶁鶊鶄鶈鵱鶀鵸鶆鶋鶌鵽鵫鵴鵵鵰鵩鶅鵳鵻鶂鵯鵹鵿鶇鵨麔麑黀黼鼭齀齁齍齖齗齘匷嚲"],["f440","嚵嚳壣孅巆巇廮廯忀忁懹攗攖攕攓旟曨曣曤櫳櫰櫪櫨櫹櫱櫮櫯瀼瀵瀯瀷瀴瀱灂瀸瀿瀺瀹灀瀻瀳灁爓爔犨獽獼璺皫皪皾盭矌矎矏矍矲礥礣礧礨礤礩"],["f4a1","禲穮穬穭竷籉籈籊籇籅糮繻繾纁纀羺翿聹臛臙舋艨艩蘢藿蘁藾蘛蘀藶蘄蘉蘅蘌藽蠙蠐蠑蠗蠓蠖襣襦覹觷譠譪譝譨譣譥譧譭趮躆躈躄轙轖轗轕轘轚邍酃酁醷醵醲醳鐋鐓鏻鐠鐏鐔鏾鐕鐐鐨鐙鐍鏵鐀鏷鐇鐎鐖鐒鏺鐉鏸鐊鏿"],["f540","鏼鐌鏶鐑鐆闞闠闟霮霯鞹鞻韽韾顠顢顣顟飁飂饐饎饙饌饋饓騲騴騱騬騪騶騩騮騸騭髇髊髆鬐鬒鬑鰋鰈鯷鰅鰒鯸鱀鰇鰎鰆鰗鰔鰉鶟鶙鶤鶝鶒鶘鶐鶛"],["f5a1","鶠鶔鶜鶪鶗鶡鶚鶢鶨鶞鶣鶿鶩鶖鶦鶧麙麛麚黥黤黧黦鼰鼮齛齠齞齝齙龑儺儹劘劗囃嚽嚾孈孇巋巏廱懽攛欂櫼欃櫸欀灃灄灊灈灉灅灆爝爚爙獾甗癪矐礭礱礯籔籓糲纊纇纈纋纆纍罍羻耰臝蘘蘪蘦蘟蘣蘜蘙蘧蘮蘡蘠蘩蘞蘥"],["f640","蠩蠝蠛蠠蠤蠜蠫衊襭襩襮襫觺譹譸譅譺譻贐贔趯躎躌轞轛轝酆酄酅醹鐿鐻鐶鐩鐽鐼鐰鐹鐪鐷鐬鑀鐱闥闤闣霵霺鞿韡顤飉飆飀饘饖騹騽驆驄驂驁騺"],["f6a1","騿髍鬕鬗鬘鬖鬺魒鰫鰝鰜鰬鰣鰨鰩鰤鰡鶷鶶鶼鷁鷇鷊鷏鶾鷅鷃鶻鶵鷎鶹鶺鶬鷈鶱鶭鷌鶳鷍鶲鹺麜黫黮黭鼛鼘鼚鼱齎齥齤龒亹囆囅囋奱孋孌巕巑廲攡攠攦攢欋欈欉氍灕灖灗灒爞爟犩獿瓘瓕瓙瓗癭皭礵禴穰穱籗籜籙籛籚"],["f740","糴糱纑罏羇臞艫蘴蘵蘳蘬蘲蘶蠬蠨蠦蠪蠥襱覿覾觻譾讄讂讆讅譿贕躕躔躚躒躐躖躗轠轢酇鑌鑐鑊鑋鑏鑇鑅鑈鑉鑆霿韣顪顩飋饔饛驎驓驔驌驏驈驊"],["f7a1","驉驒驐髐鬙鬫鬻魖魕鱆鱈鰿鱄鰹鰳鱁鰼鰷鰴鰲鰽鰶鷛鷒鷞鷚鷋鷐鷜鷑鷟鷩鷙鷘鷖鷵鷕鷝麶黰鼵鼳鼲齂齫龕龢儽劙壨壧奲孍巘蠯彏戁戃戄攩攥斖曫欑欒欏毊灛灚爢玂玁玃癰矔籧籦纕艬蘺虀蘹蘼蘱蘻蘾蠰蠲蠮蠳襶襴襳觾"],["f840","讌讎讋讈豅贙躘轤轣醼鑢鑕鑝鑗鑞韄韅頀驖驙鬞鬟鬠鱒鱘鱐鱊鱍鱋鱕鱙鱌鱎鷻鷷鷯鷣鷫鷸鷤鷶鷡鷮鷦鷲鷰鷢鷬鷴鷳鷨鷭黂黐黲黳鼆鼜鼸鼷鼶齃齏"],["f8a1","齱齰齮齯囓囍孎屭攭曭曮欓灟灡灝灠爣瓛瓥矕礸禷禶籪纗羉艭虃蠸蠷蠵衋讔讕躞躟躠躝醾醽釂鑫鑨鑩雥靆靃靇韇韥驞髕魙鱣鱧鱦鱢鱞鱠鸂鷾鸇鸃鸆鸅鸀鸁鸉鷿鷽鸄麠鼞齆齴齵齶囔攮斸欘欙欗欚灢爦犪矘矙礹籩籫糶纚"],["f940","纘纛纙臠臡虆虇虈襹襺襼襻觿讘讙躥躤躣鑮鑭鑯鑱鑳靉顲饟鱨鱮鱭鸋鸍鸐鸏鸒鸑麡黵鼉齇齸齻齺齹圞灦籯蠼趲躦釃鑴鑸鑶鑵驠鱴鱳鱱鱵鸔鸓黶鼊"],["f9a1","龤灨灥糷虪蠾蠽蠿讞貜躩軉靋顳顴飌饡馫驤驦驧鬤鸕鸗齈戇欞爧虌躨钂钀钁驩驨鬮鸙爩虋讟钃鱹麷癵驫鱺鸝灩灪麤齾齉龘碁銹裏墻恒粧嫺╔╦╗╠╬╣╚╩╝╒╤╕╞╪╡╘╧╛╓╥╖╟╫╢╙╨╜║═╭╮╰╯▓"]]; /***/ }), -/* 698 */ +/* 699 */ /***/ (function(module) { module.exports = [["8740","䏰䰲䘃䖦䕸𧉧䵷䖳𧲱䳢𧳅㮕䜶䝄䱇䱀𤊿𣘗𧍒𦺋𧃒䱗𪍑䝏䗚䲅𧱬䴇䪤䚡𦬣爥𥩔𡩣𣸆𣽡晍囻"],["8767","綕夝𨮹㷴霴𧯯寛𡵞媤㘥𩺰嫑宷峼杮薓𩥅瑡璝㡵𡵓𣚞𦀡㻬"],["87a1","𥣞㫵竼龗𤅡𨤍𣇪𠪊𣉞䌊蒄龖鐯䤰蘓墖靊鈘秐稲晠権袝瑌篅枂稬剏遆㓦珄𥶹瓆鿇垳䤯呌䄱𣚎堘穲𧭥讏䚮𦺈䆁𥶙箮𢒼鿈𢓁𢓉𢓌鿉蔄𣖻䂴鿊䓡𪷿拁灮鿋"],["8840","㇀",4,"𠄌㇅𠃑𠃍㇆㇇𠃋𡿨㇈𠃊㇉㇊㇋㇌𠄎㇍㇎ĀÁǍÀĒÉĚÈŌÓǑÒ࿿Ê̄Ế࿿Ê̌ỀÊāáǎàɑēéěèīíǐìōóǒòūúǔùǖǘǚ"],["88a1","ǜü࿿ê̄ế࿿ê̌ềêɡ⏚⏛"],["8940","𪎩𡅅"],["8943","攊"],["8946","丽滝鵎釟"],["894c","𧜵撑会伨侨兖兴农凤务动医华发变团声处备夲头学实実岚庆总斉柾栄桥济炼电纤纬纺织经统缆缷艺苏药视设询车轧轮"],["89a1","琑糼緍楆竉刧"],["89ab","醌碸酞肼"],["89b0","贋胶𠧧"],["89b5","肟黇䳍鷉鸌䰾𩷶𧀎鸊𪄳㗁"],["89c1","溚舾甙"],["89c5","䤑马骏龙禇𨑬𡷊𠗐𢫦两亁亀亇亿仫伷㑌侽㹈倃傈㑽㒓㒥円夅凛凼刅争剹劐匧㗇厩㕑厰㕓参吣㕭㕲㚁咓咣咴咹哐哯唘唣唨㖘唿㖥㖿嗗㗅"],["8a40","𧶄唥"],["8a43","𠱂𠴕𥄫喐𢳆㧬𠍁蹆𤶸𩓥䁓𨂾睺𢰸㨴䟕𨅝𦧲𤷪擝𠵼𠾴𠳕𡃴撍蹾𠺖𠰋𠽤𢲩𨉖𤓓"],["8a64","𠵆𩩍𨃩䟴𤺧𢳂骲㩧𩗴㿭㔆𥋇𩟔𧣈𢵄鵮頕"],["8a76","䏙𦂥撴哣𢵌𢯊𡁷㧻𡁯"],["8aa1","𦛚𦜖𧦠擪𥁒𠱃蹨𢆡𨭌𠜱"],["8aac","䠋𠆩㿺塳𢶍"],["8ab2","𤗈𠓼𦂗𠽌𠶖啹䂻䎺"],["8abb","䪴𢩦𡂝膪飵𠶜捹㧾𢝵跀嚡摼㹃"],["8ac9","𪘁𠸉𢫏𢳉"],["8ace","𡃈𣧂㦒㨆𨊛㕸𥹉𢃇噒𠼱𢲲𩜠㒼氽𤸻"],["8adf","𧕴𢺋𢈈𪙛𨳍𠹺𠰴𦠜羓𡃏𢠃𢤹㗻𥇣𠺌𠾍𠺪㾓𠼰𠵇𡅏𠹌"],["8af6","𠺫𠮩𠵈𡃀𡄽㿹𢚖搲𠾭"],["8b40","𣏴𧘹𢯎𠵾𠵿𢱑𢱕㨘𠺘𡃇𠼮𪘲𦭐𨳒𨶙𨳊閪哌苄喹"],["8b55","𩻃鰦骶𧝞𢷮煀腭胬尜𦕲脴㞗卟𨂽醶𠻺𠸏𠹷𠻻㗝𤷫㘉𠳖嚯𢞵𡃉𠸐𠹸𡁸𡅈𨈇𡑕𠹹𤹐𢶤婔𡀝𡀞𡃵𡃶垜𠸑"],["8ba1","𧚔𨋍𠾵𠹻𥅾㜃𠾶𡆀𥋘𪊽𤧚𡠺𤅷𨉼墙剨㘚𥜽箲孨䠀䬬鼧䧧鰟鮍𥭴𣄽嗻㗲嚉丨夂𡯁屮靑𠂆乛亻㔾尣彑忄㣺扌攵歺氵氺灬爫丬犭𤣩罒礻糹罓𦉪㓁"],["8bde","𦍋耂肀𦘒𦥑卝衤见𧢲讠贝钅镸长门𨸏韦页风飞饣𩠐鱼鸟黄歯龜丷𠂇阝户钢"],["8c40","倻淾𩱳龦㷉袏𤅎灷峵䬠𥇍㕙𥴰愢𨨲辧釶熑朙玺𣊁𪄇㲋𡦀䬐磤琂冮𨜏䀉橣𪊺䈣蘏𠩯稪𩥇𨫪靕灍匤𢁾鏴盙𨧣龧矝亣俰傼丯众龨吴綋墒壐𡶶庒庙忂𢜒斋"],["8ca1","𣏹椙橃𣱣泿"],["8ca7","爀𤔅玌㻛𤨓嬕璹讃𥲤𥚕窓篬糃繬苸薗龩袐龪躹龫迏蕟駠鈡龬𨶹𡐿䁱䊢娚"],["8cc9","顨杫䉶圽"],["8cce","藖𤥻芿𧄍䲁𦵴嵻𦬕𦾾龭龮宖龯曧繛湗秊㶈䓃𣉖𢞖䎚䔶"],["8ce6","峕𣬚諹屸㴒𣕑嵸龲煗䕘𤃬𡸣䱷㥸㑊𠆤𦱁諌侴𠈹妿腬顖𩣺弻"],["8d40","𠮟"],["8d42","𢇁𨥭䄂䚻𩁹㼇龳𪆵䃸㟖䛷𦱆䅼𨚲𧏿䕭㣔𥒚䕡䔛䶉䱻䵶䗪㿈𤬏㙡䓞䒽䇭崾嵈嵖㷼㠏嶤嶹㠠㠸幂庽弥徃㤈㤔㤿㥍惗愽峥㦉憷憹懏㦸戬抐拥挘㧸嚱"],["8da1","㨃揢揻搇摚㩋擀崕嘡龟㪗斆㪽旿晓㫲暒㬢朖㭂枤栀㭘桊梄㭲㭱㭻椉楃牜楤榟榅㮼槖㯝橥橴橱檂㯬檙㯲檫檵櫔櫶殁毁毪汵沪㳋洂洆洦涁㳯涤涱渕渘温溆𨧀溻滢滚齿滨滩漤漴㵆𣽁澁澾㵪㵵熷岙㶊瀬㶑灐灔灯灿炉𠌥䏁㗱𠻘"],["8e40","𣻗垾𦻓焾𥟠㙎榢𨯩孴穉𥣡𩓙穥穽𥦬窻窰竂竃燑𦒍䇊竚竝竪䇯咲𥰁笋筕笩𥌎𥳾箢筯莜𥮴𦱿篐萡箒箸𥴠㶭𥱥蒒篺簆簵𥳁籄粃𤢂粦晽𤕸糉糇糦籴糳糵糎"],["8ea1","繧䔝𦹄絝𦻖璍綉綫焵綳緒𤁗𦀩緤㴓緵𡟹緥𨍭縝𦄡𦅚繮纒䌫鑬縧罀罁罇礶𦋐駡羗𦍑羣𡙡𠁨䕜𣝦䔃𨌺翺𦒉者耈耝耨耯𪂇𦳃耻耼聡𢜔䦉𦘦𣷣𦛨朥肧𨩈脇脚墰𢛶汿𦒘𤾸擧𡒊舘𡡞橓𤩥𤪕䑺舩𠬍𦩒𣵾俹𡓽蓢荢𦬊𤦧𣔰𡝳𣷸芪椛芳䇛"],["8f40","蕋苐茚𠸖𡞴㛁𣅽𣕚艻苢茘𣺋𦶣𦬅𦮗𣗎㶿茝嗬莅䔋𦶥莬菁菓㑾𦻔橗蕚㒖𦹂𢻯葘𥯤葱㷓䓤檧葊𣲵祘蒨𦮖𦹷𦹃蓞萏莑䒠蒓蓤𥲑䉀𥳀䕃蔴嫲𦺙䔧蕳䔖枿蘖"],["8fa1","𨘥𨘻藁𧂈蘂𡖂𧃍䕫䕪蘨㙈𡢢号𧎚虾蝱𪃸蟮𢰧螱蟚蠏噡虬桖䘏衅衆𧗠𣶹𧗤衞袜䙛袴袵揁装睷𧜏覇覊覦覩覧覼𨨥觧𧤤𧪽誜瞓釾誐𧩙竩𧬺𣾏䜓𧬸煼謌謟𥐰𥕥謿譌譍誩𤩺讐讛誯𡛟䘕衏貛𧵔𧶏貫㜥𧵓賖𧶘𧶽贒贃𡤐賛灜贑𤳉㻐起"],["9040","趩𨀂𡀔𤦊㭼𨆼𧄌竧躭躶軃鋔輙輭𨍥𨐒辥錃𪊟𠩐辳䤪𨧞𨔽𣶻廸𣉢迹𪀔𨚼𨔁𢌥㦀𦻗逷𨔼𧪾遡𨕬𨘋邨𨜓郄𨛦邮都酧㫰醩釄粬𨤳𡺉鈎沟鉁鉢𥖹銹𨫆𣲛𨬌𥗛"],["90a1","𠴱錬鍫𨫡𨯫炏嫃𨫢𨫥䥥鉄𨯬𨰹𨯿鍳鑛躼閅閦鐦閠濶䊹𢙺𨛘𡉼𣸮䧟氜陻隖䅬隣𦻕懚隶磵𨫠隽双䦡𦲸𠉴𦐐𩂯𩃥𤫑𡤕𣌊霱虂霶䨏䔽䖅𤫩灵孁霛靜𩇕靗孊𩇫靟鐥僐𣂷𣂼鞉鞟鞱鞾韀韒韠𥑬韮琜𩐳響韵𩐝𧥺䫑頴頳顋顦㬎𧅵㵑𠘰𤅜"],["9140","𥜆飊颷飈飇䫿𦴧𡛓喰飡飦飬鍸餹𤨩䭲𩡗𩤅駵騌騻騐驘𥜥㛄𩂱𩯕髠髢𩬅髴䰎鬔鬭𨘀倴鬴𦦨㣃𣁽魐魀𩴾婅𡡣鮎𤉋鰂鯿鰌𩹨鷔𩾷𪆒𪆫𪃡𪄣𪇟鵾鶃𪄴鸎梈"],["91a1","鷄𢅛𪆓𪈠𡤻𪈳鴹𪂹𪊴麐麕麞麢䴴麪麯𤍤黁㭠㧥㴝伲㞾𨰫鼂鼈䮖鐤𦶢鼗鼖鼹嚟嚊齅馸𩂋韲葿齢齩竜龎爖䮾𤥵𤦻煷𤧸𤍈𤩑玞𨯚𡣺禟𨥾𨸶鍩鏳𨩄鋬鎁鏋𨥬𤒹爗㻫睲穃烐𤑳𤏸煾𡟯炣𡢾𣖙㻇𡢅𥐯𡟸㜢𡛻𡠹㛡𡝴𡣑𥽋㜣𡛀坛𤨥𡏾𡊨"],["9240","𡏆𡒶蔃𣚦蔃葕𤦔𧅥𣸱𥕜𣻻𧁒䓴𣛮𩦝𦼦柹㜳㰕㷧塬𡤢栐䁗𣜿𤃡𤂋𤄏𦰡哋嚞𦚱嚒𠿟𠮨𠸍鏆𨬓鎜仸儫㠙𤐶亼𠑥𠍿佋侊𥙑婨𠆫𠏋㦙𠌊𠐔㐵伩𠋀𨺳𠉵諚𠈌亘"],["92a1","働儍侢伃𤨎𣺊佂倮偬傁俌俥偘僼兙兛兝兞湶𣖕𣸹𣺿浲𡢄𣺉冨凃𠗠䓝𠒣𠒒𠒑赺𨪜𠜎剙劤𠡳勡鍮䙺熌𤎌𠰠𤦬𡃤槑𠸝瑹㻞璙琔瑖玘䮎𤪼𤂍叐㖄爏𤃉喴𠍅响𠯆圝鉝雴鍦埝垍坿㘾壋媙𨩆𡛺𡝯𡜐娬妸銏婾嫏娒𥥆𡧳𡡡𤊕㛵洅瑃娡𥺃"],["9340","媁𨯗𠐓鏠璌𡌃焅䥲鐈𨧻鎽㞠尞岞幞幈𡦖𡥼𣫮廍孏𡤃𡤄㜁𡢠㛝𡛾㛓脪𨩇𡶺𣑲𨦨弌弎𡤧𡞫婫𡜻孄蘔𧗽衠恾𢡠𢘫忛㺸𢖯𢖾𩂈𦽳懀𠀾𠁆𢘛憙憘恵𢲛𢴇𤛔𩅍"],["93a1","摱𤙥𢭪㨩𢬢𣑐𩣪𢹸挷𪑛撶挱揑𤧣𢵧护𢲡搻敫楲㯴𣂎𣊭𤦉𣊫唍𣋠𡣙𩐿曎𣊉𣆳㫠䆐𥖄𨬢𥖏𡛼𥕛𥐥磮𣄃𡠪𣈴㑤𣈏𣆂𤋉暎𦴤晫䮓昰𧡰𡷫晣𣋒𣋡昞𥡲㣑𣠺𣞼㮙𣞢𣏾瓐㮖枏𤘪梶栞㯄檾㡣𣟕𤒇樳橒櫉欅𡤒攑梘橌㯗橺歗𣿀𣲚鎠鋲𨯪𨫋"],["9440","銉𨀞𨧜鑧涥漋𤧬浧𣽿㶏渄𤀼娽渊塇洤硂焻𤌚𤉶烱牐犇犔𤞏𤜥兹𤪤𠗫瑺𣻸𣙟𤩊𤤗𥿡㼆㺱𤫟𨰣𣼵悧㻳瓌琼鎇琷䒟𦷪䕑疃㽣𤳙𤴆㽘畕癳𪗆㬙瑨𨫌𤦫𤦎㫻"],["94a1","㷍𤩎㻿𤧅𤣳釺圲鍂𨫣𡡤僟𥈡𥇧睸𣈲眎眏睻𤚗𣞁㩞𤣰琸璛㺿𤪺𤫇䃈𤪖𦆮錇𥖁砞碍碈磒珐祙𧝁𥛣䄎禛蒖禥樭𣻺稺秴䅮𡛦䄲鈵秱𠵌𤦌𠊙𣶺𡝮㖗啫㕰㚪𠇔𠰍竢婙𢛵𥪯𥪜娍𠉛磰娪𥯆竾䇹籝籭䈑𥮳𥺼𥺦糍𤧹𡞰粎籼粮檲緜縇緓罎𦉡"],["9540","𦅜𧭈綗𥺂䉪𦭵𠤖柖𠁎𣗏埄𦐒𦏸𤥢翝笧𠠬𥫩𥵃笌𥸎駦虅驣樜𣐿㧢𤧷𦖭騟𦖠蒀𧄧𦳑䓪脷䐂胆脉腂𦞴飃𦩂艢艥𦩑葓𦶧蘐𧈛媆䅿𡡀嬫𡢡嫤𡣘蚠蜨𣶏蠭𧐢娂"],["95a1","衮佅袇袿裦襥襍𥚃襔𧞅𧞄𨯵𨯙𨮜𨧹㺭蒣䛵䛏㟲訽訜𩑈彍鈫𤊄旔焩烄𡡅鵭貟賩𧷜妚矃姰䍮㛔踪躧𤰉輰轊䋴汘澻𢌡䢛潹溋𡟚鯩㚵𤤯邻邗啱䤆醻鐄𨩋䁢𨫼鐧𨰝𨰻蓥訫閙閧閗閖𨴴瑅㻂𤣿𤩂𤏪㻧𣈥随𨻧𨹦𨹥㻌𤧭𤩸𣿮琒瑫㻼靁𩂰"],["9640","桇䨝𩂓𥟟靝鍨𨦉𨰦𨬯𦎾銺嬑譩䤼珹𤈛鞛靱餸𠼦巁𨯅𤪲頟𩓚鋶𩗗釥䓀𨭐𤩧𨭤飜𨩅㼀鈪䤥萔餻饍𧬆㷽馛䭯馪驜𨭥𥣈檏騡嫾騯𩣱䮐𩥈馼䮽䮗鍽塲𡌂堢𤦸"],["96a1","𡓨硄𢜟𣶸棅㵽鑘㤧慐𢞁𢥫愇鱏鱓鱻鰵鰐魿鯏𩸭鮟𪇵𪃾鴡䲮𤄄鸘䲰鴌𪆴𪃭𪃳𩤯鶥蒽𦸒𦿟𦮂藼䔳𦶤𦺄𦷰萠藮𦸀𣟗𦁤秢𣖜𣙀䤭𤧞㵢鏛銾鍈𠊿碹鉷鑍俤㑀遤𥕝砽硔碶硋𡝗𣇉𤥁㚚佲濚濙瀞瀞吔𤆵垻壳垊鴖埗焴㒯𤆬燫𦱀𤾗嬨𡞵𨩉"],["9740","愌嫎娋䊼𤒈㜬䭻𨧼鎻鎸𡣖𠼝葲𦳀𡐓𤋺𢰦𤏁妔𣶷𦝁綨𦅛𦂤𤦹𤦋𨧺鋥珢㻩璴𨭣𡢟㻡𤪳櫘珳珻㻖𤨾𤪔𡟙𤩦𠎧𡐤𤧥瑈𤤖炥𤥶銄珦鍟𠓾錱𨫎𨨖鎆𨯧𥗕䤵𨪂煫"],["97a1","𤥃𠳿嚤𠘚𠯫𠲸唂秄𡟺緾𡛂𤩐𡡒䔮鐁㜊𨫀𤦭妰𡢿𡢃𧒄媡㛢𣵛㚰鉟婹𨪁𡡢鍴㳍𠪴䪖㦊僴㵩㵌𡎜煵䋻𨈘渏𩃤䓫浗𧹏灧沯㳖𣿭𣸭渂漌㵯𠏵畑㚼㓈䚀㻚䡱姄鉮䤾轁𨰜𦯀堒埈㛖𡑒烾𤍢𤩱𢿣𡊰𢎽梹楧𡎘𣓥𧯴𣛟𨪃𣟖𣏺𤲟樚𣚭𦲷萾䓟䓎"],["9840","𦴦𦵑𦲂𦿞漗𧄉茽𡜺菭𦲀𧁓𡟛妉媂𡞳婡婱𡤅𤇼㜭姯𡜼㛇熎鎐暚𤊥婮娫𤊓樫𣻹𧜶𤑛𤋊焝𤉙𨧡侰𦴨峂𤓎𧹍𤎽樌𤉖𡌄炦焳𤏩㶥泟勇𤩏繥姫崯㷳彜𤩝𡟟綤萦"],["98a1","咅𣫺𣌀𠈔坾𠣕𠘙㿥𡾞𪊶瀃𩅛嵰玏糓𨩙𩐠俈翧狍猐𧫴猸猹𥛶獁獈㺩𧬘遬燵𤣲珡臶㻊県㻑沢国琙琞琟㻢㻰㻴㻺瓓㼎㽓畂畭畲疍㽼痈痜㿀癍㿗癴㿜発𤽜熈嘣覀塩䀝睃䀹条䁅㗛瞘䁪䁯属瞾矋売砘点砜䂨砹硇硑硦葈𥔵礳栃礲䄃"],["9940","䄉禑禙辻稆込䅧窑䆲窼艹䇄竏竛䇏両筢筬筻簒簛䉠䉺类粜䊌粸䊔糭输烀𠳏総緔緐緽羮羴犟䎗耠耥笹耮耱联㷌垴炠肷胩䏭脌猪脎脒畠脔䐁㬹腖腙腚"],["99a1","䐓堺腼膄䐥膓䐭膥埯臁臤艔䒏芦艶苊苘苿䒰荗险榊萅烵葤惣蒈䔄蒾蓡蓸蔐蔸蕒䔻蕯蕰藠䕷虲蚒蚲蛯际螋䘆䘗袮裿褤襇覑𧥧訩訸誔誴豑賔賲贜䞘塟跃䟭仮踺嗘坔蹱嗵躰䠷軎転軤軭軲辷迁迊迌逳駄䢭飠鈓䤞鈨鉘鉫銱銮銿"],["9a40","鋣鋫鋳鋴鋽鍃鎄鎭䥅䥑麿鐗匁鐝鐭鐾䥪鑔鑹锭関䦧间阳䧥枠䨤靀䨵鞲韂噔䫤惨颹䬙飱塄餎餙冴餜餷饂饝饢䭰駅䮝騼鬏窃魩鮁鯝鯱鯴䱭鰠㝯𡯂鵉鰺"],["9aa1","黾噐鶓鶽鷀鷼银辶鹻麬麱麽黆铜黢黱黸竈齄𠂔𠊷𠎠椚铃妬𠓗塀铁㞹𠗕𠘕𠙶𡚺块煳𠫂𠫍𠮿呪吆𠯋咞𠯻𠰻𠱓𠱥𠱼惧𠲍噺𠲵𠳝𠳭𠵯𠶲𠷈楕鰯螥𠸄𠸎𠻗𠾐𠼭𠹳尠𠾼帋𡁜𡁏𡁶朞𡁻𡂈𡂖㙇𡂿𡃓𡄯𡄻卤蒭𡋣𡍵𡌶讁𡕷𡘙𡟃𡟇乸炻𡠭𡥪"],["9b40","𡨭𡩅𡰪𡱰𡲬𡻈拃𡻕𡼕熘桕𢁅槩㛈𢉼𢏗𢏺𢜪𢡱𢥏苽𢥧𢦓𢫕覥𢫨辠𢬎鞸𢬿顇骽𢱌"],["9b62","𢲈𢲷𥯨𢴈𢴒𢶷𢶕𢹂𢽴𢿌𣀳𣁦𣌟𣏞徱晈暿𧩹𣕧𣗳爁𤦺矗𣘚𣜖纇𠍆墵朎"],["9ba1","椘𣪧𧙗𥿢𣸑𣺹𧗾𢂚䣐䪸𤄙𨪚𤋮𤌍𤀻𤌴𤎖𤩅𠗊凒𠘑妟𡺨㮾𣳿𤐄𤓖垈𤙴㦛𤜯𨗨𩧉㝢𢇃譞𨭎駖𤠒𤣻𤨕爉𤫀𠱸奥𤺥𤾆𠝹軚𥀬劏圿煱𥊙𥐙𣽊𤪧喼𥑆𥑮𦭒釔㑳𥔿𧘲𥕞䜘𥕢𥕦𥟇𤤿𥡝偦㓻𣏌惞𥤃䝼𨥈𥪮𥮉𥰆𡶐垡煑澶𦄂𧰒遖𦆲𤾚譢𦐂𦑊"],["9c40","嵛𦯷輶𦒄𡤜諪𤧶𦒈𣿯𦔒䯀𦖿𦚵𢜛鑥𥟡憕娧晉侻嚹𤔡𦛼乪𤤴陖涏𦲽㘘襷𦞙𦡮𦐑𦡞營𦣇筂𩃀𠨑𦤦鄄𦤹穅鷰𦧺騦𦨭㙟𦑩𠀡禃𦨴𦭛崬𣔙菏𦮝䛐𦲤画补𦶮墶"],["9ca1","㜜𢖍𧁋𧇍㱔𧊀𧊅銁𢅺𧊋錰𧋦𤧐氹钟𧑐𠻸蠧裵𢤦𨑳𡞱溸𤨪𡠠㦤㚹尐秣䔿暶𩲭𩢤襃𧟌𧡘囖䃟𡘊㦡𣜯𨃨𡏅熭荦𧧝𩆨婧䲷𧂯𨦫𧧽𧨊𧬋𧵦𤅺筃祾𨀉澵𪋟樃𨌘厢𦸇鎿栶靝𨅯𨀣𦦵𡏭𣈯𨁈嶅𨰰𨂃圕頣𨥉嶫𤦈斾槕叒𤪥𣾁㰑朶𨂐𨃴𨄮𡾡𨅏"],["9d40","𨆉𨆯𨈚𨌆𨌯𨎊㗊𨑨𨚪䣺揦𨥖砈鉕𨦸䏲𨧧䏟𨧨𨭆𨯔姸𨰉輋𨿅𩃬筑𩄐𩄼㷷𩅞𤫊运犏嚋𩓧𩗩𩖰𩖸𩜲𩣑𩥉𩥪𩧃𩨨𩬎𩵚𩶛纟𩻸𩼣䲤镇𪊓熢𪋿䶑递𪗋䶜𠲜达嗁"],["9da1","辺𢒰边𤪓䔉繿潖檱仪㓤𨬬𧢝㜺躀𡟵𨀤𨭬𨮙𧨾𦚯㷫𧙕𣲷𥘵𥥖亚𥺁𦉘嚿𠹭踎孭𣺈𤲞揞拐𡟶𡡻攰嘭𥱊吚𥌑㷆𩶘䱽嘢嘞罉𥻘奵𣵀蝰东𠿪𠵉𣚺脗鵞贘瘻鱅癎瞹鍅吲腈苷嘥脲萘肽嗪祢噃吖𠺝㗎嘅嗱曱𨋢㘭甴嗰喺咗啲𠱁𠲖廐𥅈𠹶𢱢"],["9e40","𠺢麫絚嗞𡁵抝靭咔賍燶酶揼掹揾啩𢭃鱲𢺳冚㓟𠶧冧呍唞唓癦踭𦢊疱肶蠄螆裇膶萜𡃁䓬猄𤜆宐茋𦢓噻𢛴𧴯𤆣𧵳𦻐𧊶酰𡇙鈈𣳼𪚩𠺬𠻹牦𡲢䝎𤿂𧿹𠿫䃺"],["9ea1","鱝攟𢶠䣳𤟠𩵼𠿬𠸊恢𧖣𠿭"],["9ead","𦁈𡆇熣纎鵐业丄㕷嬍沲卧㚬㧜卽㚥𤘘墚𤭮舭呋垪𥪕𠥹"],["9ec5","㩒𢑥獴𩺬䴉鯭𣳾𩼰䱛𤾩𩖞𩿞葜𣶶𧊲𦞳𣜠挮紥𣻷𣸬㨪逈勌㹴㙺䗩𠒎癀嫰𠺶硺𧼮墧䂿噼鮋嵴癔𪐴麅䳡痹㟻愙𣃚𤏲"],["9ef5","噝𡊩垧𤥣𩸆刴𧂮㖭汊鵼"],["9f40","籖鬹埞𡝬屓擓𩓐𦌵𧅤蚭𠴨𦴢𤫢𠵱"],["9f4f","凾𡼏嶎霃𡷑麁遌笟鬂峑箣扨挵髿篏鬪籾鬮籂粆鰕篼鬉鼗鰛𤤾齚啳寃俽麘俲剠㸆勑坧偖妷帒韈鶫轜呩鞴饀鞺匬愰"],["9fa1","椬叚鰊鴂䰻陁榀傦畆𡝭駚剳"],["9fae","酙隁酜"],["9fb2","酑𨺗捿𦴣櫊嘑醎畺抅𠏼獏籰𥰡𣳽"],["9fc1","𤤙盖鮝个𠳔莾衂"],["9fc9","届槀僭坺刟巵从氱𠇲伹咜哚劚趂㗾弌㗳"],["9fdb","歒酼龥鮗頮颴骺麨麄煺笔"],["9fe7","毺蠘罸"],["9feb","嘠𪙊蹷齓"],["9ff0","跔蹏鸜踁抂𨍽踨蹵竓𤩷稾磘泪詧瘇"],["a040","𨩚鼦泎蟖痃𪊲硓咢贌狢獱謭猂瓱賫𤪻蘯徺袠䒷"],["a055","𡠻𦸅"],["a058","詾𢔛"],["a05b","惽癧髗鵄鍮鮏蟵"],["a063","蠏賷猬霡鮰㗖犲䰇籑饊𦅙慙䰄麖慽"],["a073","坟慯抦戹拎㩜懢厪𣏵捤栂㗒"],["a0a1","嵗𨯂迚𨸹"],["a0a6","僙𡵆礆匲阸𠼻䁥"],["a0ae","矾"],["a0b0","糂𥼚糚稭聦聣絍甅瓲覔舚朌聢𧒆聛瓰脃眤覉𦟌畓𦻑螩蟎臈螌詉貭譃眫瓸蓚㘵榲趦"],["a0d4","覩瑨涹蟁𤀑瓧㷛煶悤憜㳑煢恷"],["a0e2","罱𨬭牐惩䭾删㰘𣳇𥻗𧙖𥔱𡥄𡋾𩤃𦷜𧂭峁𦆭𨨏𣙷𠃮𦡆𤼎䕢嬟𦍌齐麦𦉫"],["a3c0","␀",31,"␡"],["c6a1","①",9,"⑴",9,"ⅰ",9,"丶丿亅亠冂冖冫勹匸卩厶夊宀巛⼳广廴彐彡攴无疒癶辵隶¨ˆヽヾゝゞ〃仝々〆〇ー[]✽ぁ",23],["c740","す",58,"ァアィイ"],["c7a1","ゥ",81,"А",5,"ЁЖ",4],["c840","Л",26,"ёж",25,"⇧↸↹㇏𠃌乚𠂊刂䒑"],["c8a1","龰冈龱𧘇"],["c8cd","¬¦'"㈱№℡゛゜⺀⺄⺆⺇⺈⺊⺌⺍⺕⺜⺝⺥⺧⺪⺬⺮⺶⺼⺾⻆⻊⻌⻍⻏⻖⻗⻞⻣"],["c8f5","ʃɐɛɔɵœøŋʊɪ"],["f9fe","■"],["fa40","𠕇鋛𠗟𣿅蕌䊵珯况㙉𤥂𨧤鍄𡧛苮𣳈砼杄拟𤤳𨦪𠊠𦮳𡌅侫𢓭倈𦴩𧪄𣘀𤪱𢔓倩𠍾徤𠎀𠍇滛𠐟偽儁㑺儎顬㝃萖𤦤𠒇兠𣎴兪𠯿𢃼𠋥𢔰𠖎𣈳𡦃宂蝽𠖳𣲙冲冸"],["faa1","鴴凉减凑㳜凓𤪦决凢卂凭菍椾𣜭彻刋刦刼劵剗劔効勅簕蕂勠蘍𦬓包𨫞啉滙𣾀𠥔𣿬匳卄𠯢泋𡜦栛珕恊㺪㣌𡛨燝䒢卭却𨚫卾卿𡖖𡘓矦厓𨪛厠厫厮玧𥝲㽙玜叁叅汉义埾叙㪫𠮏叠𣿫𢶣叶𠱷吓灹唫晗浛呭𦭓𠵴啝咏咤䞦𡜍𠻝㶴𠵍"],["fb40","𨦼𢚘啇䳭启琗喆喩嘅𡣗𤀺䕒𤐵暳𡂴嘷曍𣊊暤暭噍噏磱囱鞇叾圀囯园𨭦㘣𡉏坆𤆥汮炋坂㚱𦱾埦𡐖堃𡑔𤍣堦𤯵塜墪㕡壠壜𡈼壻寿坃𪅐𤉸鏓㖡够梦㛃湙"],["fba1","𡘾娤啓𡚒蔅姉𠵎𦲁𦴪𡟜姙𡟻𡞲𦶦浱𡠨𡛕姹𦹅媫婣㛦𤦩婷㜈媖瑥嫓𦾡𢕔㶅𡤑㜲𡚸広勐孶斈孼𧨎䀄䡝𠈄寕慠𡨴𥧌𠖥寳宝䴐尅𡭄尓珎尔𡲥𦬨屉䣝岅峩峯嶋𡷹𡸷崐崘嵆𡺤岺巗苼㠭𤤁𢁉𢅳芇㠶㯂帮檊幵幺𤒼𠳓厦亷廐厨𡝱帉廴𨒂"],["fc40","廹廻㢠廼栾鐛弍𠇁弢㫞䢮𡌺强𦢈𢏐彘𢑱彣鞽𦹮彲鍀𨨶徧嶶㵟𥉐𡽪𧃸𢙨釖𠊞𨨩怱暅𡡷㥣㷇㘹垐𢞴祱㹀悞悤悳𤦂𤦏𧩓璤僡媠慤萤慂慈𦻒憁凴𠙖憇宪𣾷"],["fca1","𢡟懓𨮝𩥝懐㤲𢦀𢣁怣慜攞掋𠄘担𡝰拕𢸍捬𤧟㨗搸揸𡎎𡟼撐澊𢸶頔𤂌𥜝擡擥鑻㩦携㩗敍漖𤨨𤨣斅敭敟𣁾斵𤥀䬷旑䃘𡠩无旣忟𣐀昘𣇷𣇸晄𣆤𣆥晋𠹵晧𥇦晳晴𡸽𣈱𨗴𣇈𥌓矅𢣷馤朂𤎜𤨡㬫槺𣟂杞杧杢𤇍𩃭柗䓩栢湐鈼栁𣏦𦶠桝"],["fd40","𣑯槡樋𨫟楳棃𣗍椁椀㴲㨁𣘼㮀枬楡𨩊䋼椶榘㮡𠏉荣傐槹𣙙𢄪橅𣜃檝㯳枱櫈𩆜㰍欝𠤣惞欵歴𢟍溵𣫛𠎵𡥘㝀吡𣭚毡𣻼毜氷𢒋𤣱𦭑汚舦汹𣶼䓅𣶽𤆤𤤌𤤀"],["fda1","𣳉㛥㳫𠴲鮃𣇹𢒑羏样𦴥𦶡𦷫涖浜湼漄𤥿𤂅𦹲蔳𦽴凇沜渝萮𨬡港𣸯瑓𣾂秌湏媑𣁋濸㜍澝𣸰滺𡒗𤀽䕕鏰潄潜㵎潴𩅰㴻澟𤅄濓𤂑𤅕𤀹𣿰𣾴𤄿凟𤅖𤅗𤅀𦇝灋灾炧炁烌烕烖烟䄄㷨熴熖𤉷焫煅媈煊煮岜𤍥煏鍢𤋁焬𤑚𤨧𤨢熺𨯨炽爎"],["fe40","鑂爕夑鑃爤鍁𥘅爮牀𤥴梽牕牗㹕𣁄栍漽犂猪猫𤠣𨠫䣭𨠄猨献珏玪𠰺𦨮珉瑉𤇢𡛧𤨤昣㛅𤦷𤦍𤧻珷琕椃𤨦琹𠗃㻗瑜𢢭瑠𨺲瑇珤瑶莹瑬㜰瑴鏱樬璂䥓𤪌"],["fea1","𤅟𤩹𨮏孆𨰃𡢞瓈𡦈甎瓩甞𨻙𡩋寗𨺬鎅畍畊畧畮𤾂㼄𤴓疎瑝疞疴瘂瘬癑癏癯癶𦏵皐臯㟸𦤑𦤎皡皥皷盌𦾟葢𥂝𥅽𡸜眞眦着撯𥈠睘𣊬瞯𨥤𨥨𡛁矴砉𡍶𤨒棊碯磇磓隥礮𥗠磗礴碱𧘌辸袄𨬫𦂃𢘜禆褀椂禀𥡗禝𧬹礼禩渪𧄦㺨秆𩄍秔"]]; /***/ }), -/* 699 */ +/* 700 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var Buffer = __webpack_require__(359).Buffer, - Transform = __webpack_require__(15).Transform; +var Buffer = __webpack_require__(360).Buffer, + Transform = __webpack_require__(16).Transform; // == Exports ================================================================== @@ -108343,12 +108553,12 @@ IconvLiteDecoderStream.prototype.collect = function(cb) { /***/ }), -/* 700 */ +/* 701 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var Buffer = __webpack_require__(359).Buffer; +var Buffer = __webpack_require__(360).Buffer; // Note: not polyfilled with safer-buffer on a purpose, as overrides Buffer // == Extend Node primitives to use iconv-lite ================================= @@ -108381,7 +108591,7 @@ module.exports = function (iconv) { } // -- SlowBuffer ----------------------------------------------------------- - var SlowBuffer = __webpack_require__(359).SlowBuffer; + var SlowBuffer = __webpack_require__(360).SlowBuffer; original.SlowBufferToString = SlowBuffer.prototype.toString; SlowBuffer.prototype.toString = function(encoding, start, end) { @@ -108521,7 +108731,7 @@ module.exports = function (iconv) { // -- Readable ------------------------------------------------------------- if (iconv.supportsStreams) { - var Readable = __webpack_require__(15).Readable; + var Readable = __webpack_require__(16).Readable; original.ReadableSetEncoding = Readable.prototype.setEncoding; Readable.prototype.setEncoding = function setEncoding(enc, options) { @@ -108544,7 +108754,7 @@ module.exports = function (iconv) { delete Buffer.isNativeEncoding; - var SlowBuffer = __webpack_require__(359).SlowBuffer; + var SlowBuffer = __webpack_require__(360).SlowBuffer; SlowBuffer.prototype.toString = original.SlowBufferToString; SlowBuffer.prototype.write = original.SlowBufferWrite; @@ -108555,7 +108765,7 @@ module.exports = function (iconv) { Buffer.prototype.write = original.BufferWrite; if (iconv.supportsStreams) { - var Readable = __webpack_require__(15).Readable; + var Readable = __webpack_require__(16).Readable; Readable.prototype.setEncoding = original.ReadableSetEncoding; delete Readable.prototype.collect; @@ -108567,7 +108777,7 @@ module.exports = function (iconv) { /***/ }), -/* 701 */ +/* 702 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -108613,7 +108823,7 @@ exports.CreateFileError = CreateFileError; /***/ }), -/* 702 */ +/* 703 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -108659,7 +108869,7 @@ exports.LaunchEditorError = LaunchEditorError; /***/ }), -/* 703 */ +/* 704 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -108705,7 +108915,7 @@ exports.ReadFileError = ReadFileError; /***/ }), -/* 704 */ +/* 705 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -108751,7 +108961,7 @@ exports.RemoveFileError = RemoveFileError; /***/ }), -/* 705 */ +/* 706 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -108762,7 +108972,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) { Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); -const semver_1 = __importDefault(__webpack_require__(28)); +const semver_1 = __importDefault(__webpack_require__(29)); var Target; (function (Target) { Target["REGULAR"] = "dependencies"; @@ -108933,7 +109143,7 @@ exports.fetchDescriptorFromLatest = fetchDescriptorFromLatest; /***/ }), -/* 706 */ +/* 707 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -108941,7 +109151,7 @@ exports.fetchDescriptorFromLatest = fetchDescriptorFromLatest; Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); -const concierge_1 = __webpack_require__(38); +const concierge_1 = __webpack_require__(39); exports.default = (concierge, pluginConfiguration) => concierge .command(`bin [name] [-v,--verbose]`) .describe(`get the path to a binary script`) @@ -108981,7 +109191,7 @@ exports.default = (concierge, pluginConfiguration) => concierge /***/ }), -/* 707 */ +/* 708 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -108989,27 +109199,35 @@ exports.default = (concierge, pluginConfiguration) => concierge Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); -const util_1 = __webpack_require__(16); +const util_1 = __webpack_require__(17); function fromEntries(iterable) { return [...iterable].reduce((obj, { 0: key, 1: val }) => Object.assign(obj, { [key]: val, }), {}); } exports.default = (concierge, pluginConfiguration) => concierge - .command(`config [-v,--verbose] [--json]`) + .command(`config [-v,--verbose] [--why] [--json]`) .describe(`display the current configuration`) .detail(` - This command prints the current active configuration settings. When used together with the \`-v,--verbose\` option, the output will contain the settings description on top of the regular key/value information. + This command prints the current active configuration settings. + + When used together with the \`-v,--verbose\` option, the output will contain the settings description on top of the regular key/value information. + + When used together with the \`--why\` flag, the output will also contain the reason why a settings is set a particular way. + + Note that the paths settings will be normalized - especially on Windows. It means that paths such as \`C:\\project\` will be transparently shown as \`/mnt/c/project\`. `) .example(`Prints the active configuration settings`, `yarn config`) - .action(async ({ cwd, stdout, verbose, json }) => { + .action(async ({ cwd, stdout, verbose, why, json }) => { const configuration = await core_1.Configuration.find(cwd, pluginConfiguration); const keys = core_2.miscUtils.sortMap(configuration.settings.keys(), key => key); const maxKeyLength = keys.reduce((max, key) => Math.max(max, key.length), 0); if (json) { const data = fromEntries(configuration.settings.entries()); - for (const key of Object.keys(data)) - data[key].effective = configuration.get(key); + for (const key of Object.keys(data)) { + data[key].effective = configuration.values.get(key); + data[key].source = configuration.sources.get(key); + } return core_1.JsonReport.send({ stdout }, data); } else { @@ -109018,12 +109236,15 @@ exports.default = (concierge, pluginConfiguration) => concierge colors: configuration.get(`enableColors`), maxArrayLength: 2, }; - if (verbose) { + if (why || verbose) { const keysAndDescriptions = keys.map(key => { const settings = configuration.settings.get(key); if (!settings) throw new Error(`Assertion failed: This settings ("${key}") should have been registered`); - return [key, settings.description]; + const description = why + ? configuration.sources.get(key) || `` + : settings.description; + return [key, description]; }); const maxDescriptionLength = keysAndDescriptions.reduce((max, [, description]) => { return Math.max(max, description.length); @@ -109042,7 +109263,7 @@ exports.default = (concierge, pluginConfiguration) => concierge /***/ }), -/* 708 */ +/* 709 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -109072,16 +109293,16 @@ exports.default = (concierge) => concierge /***/ }), -/* 709 */ +/* 710 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const cli_1 = __webpack_require__(419); +const cli_1 = __webpack_require__(420); const core_1 = __webpack_require__(1); const fslib_1 = __webpack_require__(3); -const parsers_1 = __webpack_require__(31); +const parsers_1 = __webpack_require__(32); exports.default = (concierge, pluginConfiguration) => concierge .command(`install [--frozen-lockfile?]`) .describe(`install the project dependencies`) @@ -109200,18 +109421,18 @@ function getVariants(file) { /***/ }), -/* 710 */ +/* 711 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const cli_1 = __webpack_require__(419); +const cli_1 = __webpack_require__(420); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); const fslib_1 = __webpack_require__(3); -const concierge_1 = __webpack_require__(38); -const path_1 = __webpack_require__(7); +const concierge_1 = __webpack_require__(39); +const path_1 = __webpack_require__(6); exports.default = (concierge, pluginConfiguration) => concierge .command(`link [... packages]`) .describe(`connect local packages together`) @@ -109271,7 +109492,7 @@ exports.default = (concierge, pluginConfiguration) => concierge /***/ }), -/* 711 */ +/* 712 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -109282,7 +109503,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) { Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); -const execa_1 = __importDefault(__webpack_require__(281)); +const fslib_1 = __webpack_require__(3); +const execa_1 = __importDefault(__webpack_require__(282)); exports.default = (concierge, pluginConfiguration) => concierge .command(`node [... args]`) .describe(`run node with the hook already setup`) @@ -109298,7 +109520,7 @@ exports.default = (concierge, pluginConfiguration) => concierge const { project } = await core_1.Project.find(configuration, cwd); const env = await core_2.scriptUtils.makeScriptEnv(project); try { - await execa_1.default(`node`, args, { cwd, stdin, stdout, stderr, env }); + await execa_1.default(`node`, args, { cwd: fslib_1.NodeFS.fromPortablePath(cwd), stdin, stdout, stderr, env }); } catch (error) { if (error.cmd) { @@ -109312,7 +109534,7 @@ exports.default = (concierge, pluginConfiguration) => concierge /***/ }), -/* 712 */ +/* 713 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -109325,11 +109547,11 @@ var __importStar = (this && this.__importStar) || function (mod) { return result; }; Object.defineProperty(exports, "__esModule", { value: true }); -const cli_1 = __webpack_require__(419); +const cli_1 = __webpack_require__(420); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); const core_3 = __webpack_require__(1); -const suggestUtils = __importStar(__webpack_require__(705)); +const suggestUtils = __importStar(__webpack_require__(706)); exports.default = (concierge, pluginConfiguration) => concierge .command(`remove [... names] [-A,--all]`) .describe(`remove dependencies from the project`) @@ -109382,7 +109604,7 @@ exports.default = (concierge, pluginConfiguration) => concierge /***/ }), -/* 713 */ +/* 714 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -109391,9 +109613,9 @@ Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); const core_3 = __webpack_require__(1); -const concierge_1 = __webpack_require__(38); +const concierge_1 = __webpack_require__(39); exports.default = (concierge, pluginConfiguration) => concierge - .command(`run [... args]`) + .command(`run [... args] [-T,--top-level]`) .describe(`run a script defined in the package.json`) .flags({ proxyArguments: true }) .detail(` @@ -109407,25 +109629,28 @@ exports.default = (concierge, pluginConfiguration) => concierge Whatever happens, the cwd of the spawned process will be the workspace that declares the script (which makes it possible to call commands cross-workspaces using the third syntax). `) - .action(async ({ cwd, stdin, stdout, stderr, name, args }) => { + .action(async ({ cwd, stdin, stdout, stderr, name, topLevel, args }) => { const configuration = await core_1.Configuration.find(cwd, pluginConfiguration); const { project, workspace, locator } = await core_1.Project.find(configuration, cwd); const cache = await core_1.Cache.find(configuration); const report = await core_2.LightReport.start({ configuration, stdout }, async (report) => { await project.resolveEverything({ lockfileOnly: true, cache, report }); }); + const effectiveLocator = topLevel + ? project.topLevelWorkspace.anchoredLocator + : locator; if (report.hasErrors()) return report.exitCode(); - // First we check to see whether a script exist inside the current workspace + // First we check to see whether a script exist inside the current package // for the given name - if (await core_3.scriptUtils.hasPackageScript(locator, name, { project })) - return await core_3.scriptUtils.executePackageScript(locator, name, args, { project, stdin, stdout, stderr }); + if (await core_3.scriptUtils.hasPackageScript(effectiveLocator, name, { project })) + return await core_3.scriptUtils.executePackageScript(effectiveLocator, name, args, { project, stdin, stdout, stderr }); // If we can't find it, we then check whether one of the dependencies of the - // current workspace exports a binary with the requested name - const binaries = await core_3.scriptUtils.getPackageAccessibleBinaries(locator, { project }); + // current package exports a binary with the requested name + const binaries = await core_3.scriptUtils.getPackageAccessibleBinaries(effectiveLocator, { project }); const binary = binaries.get(name); if (binary) - return await core_3.scriptUtils.executePackageAccessibleBinary(locator, name, args, { cwd, project, stdin, stdout, stderr }); + return await core_3.scriptUtils.executePackageAccessibleBinary(effectiveLocator, name, args, { cwd, project, stdin, stdout, stderr }); // When it fails, we try to check whether it's a global script (ie we look // into all the workspaces to find one that exports this script). We only do // this if the script name contains a colon character (":"), and we skip @@ -109433,7 +109658,7 @@ exports.default = (concierge, pluginConfiguration) => concierge // // We also disable this logic for packages coming from third-parties (ie // not workspaces). Not particular reason except maybe security concerns. - if (workspace && name.includes(`:`)) { + if (!topLevel && workspace && name.includes(`:`)) { let candidateWorkspaces = await Promise.all(project.workspaces.map(async (workspace) => { return workspace.manifest.scripts.has(name) ? workspace : null; })); @@ -109444,12 +109669,22 @@ exports.default = (concierge, pluginConfiguration) => concierge return await core_3.scriptUtils.executeWorkspaceScript(filteredWorkspaces[0], name, args, { stdin, stdout, stderr }); } } - throw new concierge_1.UsageError(`Couldn't find a script named "${name}"`); + if (topLevel) { + if (name === `node-gyp`) { + throw new concierge_1.UsageError(`Couldn't find a script name "${name}" in the top-level (used by ${core_3.structUtils.prettyLocator(configuration, locator)}). This typically happens because some package depends on "node-gyp" to build itself, but didn't list it in their dependencies. To fix that, please run "yarn add node-gyp" into your top-level workspace. You also can open an issue on the repository of the specified package to suggest them to use an optional peer dependency.`); + } + else { + throw new concierge_1.UsageError(`Couldn't find a script name "${name}" in the top-level (used by ${core_3.structUtils.prettyLocator(configuration, locator)}).`); + } + } + else { + throw new concierge_1.UsageError(`Couldn't find a script named "${name}".`); + } }); /***/ }), -/* 714 */ +/* 715 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -109465,12 +109700,12 @@ var __importStar = (this && this.__importStar) || function (mod) { return result; }; Object.defineProperty(exports, "__esModule", { value: true }); -const cli_1 = __webpack_require__(419); +const cli_1 = __webpack_require__(420); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); const core_3 = __webpack_require__(1); -const inquirer_1 = __importDefault(__webpack_require__(430)); -const suggestUtils = __importStar(__webpack_require__(705)); +const inquirer_1 = __importDefault(__webpack_require__(431)); +const suggestUtils = __importStar(__webpack_require__(706)); exports.default = (concierge, pluginConfiguration) => concierge .command(`up [... packages] [-i,--interactive] [-v,--verbose] [-E,--exact] [-T,--tilde]`) .describe(`upgrade dependencies accross the project`) @@ -109602,17 +109837,17 @@ exports.default = (concierge, pluginConfiguration) => concierge /***/ }), -/* 715 */ +/* 716 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const cli_1 = __webpack_require__(419); +const cli_1 = __webpack_require__(420); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); const core_3 = __webpack_require__(1); -const treeify_1 = __webpack_require__(716); +const treeify_1 = __webpack_require__(717); exports.default = (concierge, pluginConfiguration) => concierge .command(`why [--peers]`) .describe(`display the reason why a package is needed`) @@ -109695,7 +109930,7 @@ exports.default = (concierge, pluginConfiguration) => concierge /***/ }), -/* 716 */ +/* 717 */ /***/ (function(module, exports, __webpack_require__) { // treeify.js @@ -109810,7 +110045,7 @@ exports.default = (concierge, pluginConfiguration) => concierge /***/ }), -/* 717 */ +/* 718 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -109820,7 +110055,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) { }; Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); -const init_1 = __importDefault(__webpack_require__(718)); +const init_1 = __importDefault(__webpack_require__(719)); const plugin = { configuration: { initLicense: { @@ -109847,7 +110082,7 @@ exports.default = plugin; /***/ }), -/* 718 */ +/* 719 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -109856,9 +110091,9 @@ Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); const fslib_1 = __webpack_require__(3); -const json_proxy_1 = __webpack_require__(89); -const concierge_1 = __webpack_require__(38); -const path_1 = __webpack_require__(7); +const json_proxy_1 = __webpack_require__(90); +const concierge_1 = __webpack_require__(39); +const path_1 = __webpack_require__(6); exports.default = (concierge, pluginConfiguration) => concierge .command(`init [-p,--private]`) .describe(`create a new package`) @@ -109882,7 +110117,7 @@ exports.default = (concierge, pluginConfiguration) => concierge await fslib_1.xfs.mkdirpPromise(cwd); const configuration = await core_1.Configuration.find(cwd, pluginConfiguration); const manifest = new core_1.Manifest(); - manifest.name = core_2.structUtils.makeIdent(configuration.get(`initScope`), path_1.basename(cwd)); + manifest.name = core_2.structUtils.makeIdent(configuration.get(`initScope`), path_1.posix.basename(cwd)); manifest.version = configuration.get(`initVersion`); manifest.private = notPublic; manifest.license = configuration.get(`initLicense`); @@ -109893,7 +110128,7 @@ exports.default = (concierge, pluginConfiguration) => concierge /***/ }), -/* 719 */ +/* 720 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -109902,9 +110137,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); -const check_1 = __importDefault(__webpack_require__(720)); -const fix_1 = __importDefault(__webpack_require__(723)); -const source_1 = __importDefault(__webpack_require__(724)); +const check_1 = __importDefault(__webpack_require__(721)); +const fix_1 = __importDefault(__webpack_require__(724)); +const source_1 = __importDefault(__webpack_require__(725)); const plugin = { commands: [ fix_1.default, @@ -109916,7 +110151,7 @@ exports.default = plugin; /***/ }), -/* 720 */ +/* 721 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -109925,7 +110160,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); const core_3 = __webpack_require__(1); -const Constraints_1 = __webpack_require__(721); +const Constraints_1 = __webpack_require__(722); exports.default = (concierge, pluginConfiguration) => concierge .command(`constraints check`) .categorize(`Constraints-related commands`) @@ -109977,7 +110212,7 @@ exports.default = (concierge, pluginConfiguration) => concierge /***/ }), -/* 721 */ +/* 722 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -109989,7 +110224,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const fslib_1 = __webpack_require__(3); // @ts-ignore -const tau_prolog_1 = __importDefault(__webpack_require__(722)); +const tau_prolog_1 = __importDefault(__webpack_require__(723)); class Constraints { constructor(project) { this.source = ``; @@ -110106,7 +110341,7 @@ function escape(what) { /***/ }), -/* 722 */ +/* 723 */ /***/ (function(module, exports, __webpack_require__) { (function() { @@ -114654,7 +114889,7 @@ function escape(what) { /***/ }), -/* 723 */ +/* 724 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -114666,8 +114901,8 @@ Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); const core_3 = __webpack_require__(1); -const inquirer_1 = __importDefault(__webpack_require__(430)); -const Constraints_1 = __webpack_require__(721); +const inquirer_1 = __importDefault(__webpack_require__(431)); +const Constraints_1 = __webpack_require__(722); exports.default = (concierge, pluginConfiguration) => concierge .command(`constraints fix`) .categorize(`Constraints-related commands`) @@ -114753,14 +114988,14 @@ exports.default = (concierge, pluginConfiguration) => concierge /***/ }), -/* 724 */ +/* 725 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); -const Constraints_1 = __webpack_require__(721); +const Constraints_1 = __webpack_require__(722); exports.default = (concierge, pluginConfiguration) => concierge .command(`constraints source [-v,--verbose]`) .categorize(`Constraints-related commands`) @@ -114779,16 +115014,16 @@ exports.default = (concierge, pluginConfiguration) => concierge /***/ }), -/* 725 */ +/* 726 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const FileFetcher_1 = __webpack_require__(726); -const FileResolver_1 = __webpack_require__(729); -const TarballFileFetcher_1 = __webpack_require__(730); -const TarballFileResolver_1 = __webpack_require__(731); +const FileFetcher_1 = __webpack_require__(727); +const FileResolver_1 = __webpack_require__(730); +const TarballFileFetcher_1 = __webpack_require__(731); +const TarballFileResolver_1 = __webpack_require__(732); const plugin = { fetchers: [ TarballFileFetcher_1.TarballFileFetcher, @@ -114803,7 +115038,7 @@ exports.default = plugin; /***/ }), -/* 726 */ +/* 727 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -114815,9 +115050,9 @@ Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); const fslib_1 = __webpack_require__(3); -const path_1 = __webpack_require__(7); -const querystring_1 = __importDefault(__webpack_require__(727)); -const constants_1 = __webpack_require__(728); +const path_1 = __webpack_require__(6); +const querystring_1 = __importDefault(__webpack_require__(728)); +const constants_1 = __webpack_require__(729); class FileFetcher { supports(locator, opts) { if (!locator.reference.startsWith(constants_1.PROTOCOL)) @@ -114890,13 +115125,13 @@ exports.FileFetcher = FileFetcher; /***/ }), -/* 727 */ +/* 728 */ /***/ (function(module, exports) { module.exports = require("querystring"); /***/ }), -/* 728 */ +/* 729 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -114908,7 +115143,7 @@ exports.PROTOCOL = `file:`; /***/ }), -/* 729 */ +/* 730 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -114920,8 +115155,8 @@ Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); const core_3 = __webpack_require__(1); -const querystring_1 = __importDefault(__webpack_require__(727)); -const constants_1 = __webpack_require__(728); +const querystring_1 = __importDefault(__webpack_require__(728)); +const constants_1 = __webpack_require__(729); class FileResolver { supportsDescriptor(descriptor, opts) { if (constants_1.FILE_REGEXP.test(descriptor.range)) @@ -114962,7 +115197,7 @@ exports.FileResolver = FileResolver; /***/ }), -/* 730 */ +/* 731 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -114974,9 +115209,9 @@ Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); const fslib_1 = __webpack_require__(3); -const path_1 = __webpack_require__(7); -const querystring_1 = __importDefault(__webpack_require__(727)); -const constants_1 = __webpack_require__(728); +const path_1 = __webpack_require__(6); +const querystring_1 = __importDefault(__webpack_require__(728)); +const constants_1 = __webpack_require__(729); class TarballFileFetcher { supports(locator, opts) { if (!constants_1.TARBALL_REGEXP.test(locator.reference)) @@ -115043,7 +115278,7 @@ exports.TarballFileFetcher = TarballFileFetcher; /***/ }), -/* 731 */ +/* 732 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -115055,8 +115290,8 @@ Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); const core_3 = __webpack_require__(1); -const querystring_1 = __importDefault(__webpack_require__(727)); -const constants_1 = __webpack_require__(728); +const querystring_1 = __importDefault(__webpack_require__(728)); +const constants_1 = __webpack_require__(729); class TarballFileResolver { supportsDescriptor(descriptor, opts) { if (!constants_1.TARBALL_REGEXP.test(descriptor.range)) @@ -115101,14 +115336,14 @@ exports.TarballFileResolver = TarballFileResolver; /***/ }), -/* 732 */ +/* 733 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const GithubFetcher_1 = __webpack_require__(733); -const GithubResolver_1 = __webpack_require__(735); +const GithubFetcher_1 = __webpack_require__(734); +const GithubResolver_1 = __webpack_require__(736); const plugin = { fetchers: [ GithubFetcher_1.GithubFetcher, @@ -115121,7 +115356,7 @@ exports.default = plugin; /***/ }), -/* 733 */ +/* 734 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -115136,7 +115371,7 @@ var __importStar = (this && this.__importStar) || function (mod) { Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); -const githubUtils = __importStar(__webpack_require__(734)); +const githubUtils = __importStar(__webpack_require__(735)); class GithubFetcher { supports(locator, opts) { if (!githubUtils.isGithubUrl(locator.reference)) @@ -115175,7 +115410,7 @@ exports.GithubFetcher = GithubFetcher; /***/ }), -/* 734 */ +/* 735 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -115207,7 +115442,7 @@ exports.parseGithubUrl = parseGithubUrl; /***/ }), -/* 735 */ +/* 736 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -115223,7 +115458,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); const core_3 = __webpack_require__(1); -const githubUtils = __importStar(__webpack_require__(734)); +const githubUtils = __importStar(__webpack_require__(735)); class GithubResolver { supportsDescriptor(descriptor, opts) { return githubUtils.isGithubUrl(descriptor.range); @@ -115252,14 +115487,14 @@ exports.GithubResolver = GithubResolver; /***/ }), -/* 736 */ +/* 737 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const TarballHttpResolver_1 = __webpack_require__(737); -const TarballHttpFetcher_1 = __webpack_require__(739); +const TarballHttpResolver_1 = __webpack_require__(738); +const TarballHttpFetcher_1 = __webpack_require__(740); const plugin = { fetchers: [ TarballHttpFetcher_1.TarballHttpFetcher, @@ -115272,7 +115507,7 @@ exports.default = plugin; /***/ }), -/* 737 */ +/* 738 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -115281,7 +115516,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); const core_3 = __webpack_require__(1); -const constants_1 = __webpack_require__(738); +const constants_1 = __webpack_require__(739); class TarballHttpResolver { supportsDescriptor(descriptor, opts) { if (!constants_1.TARBALL_REGEXP.test(descriptor.range)) @@ -115318,7 +115553,7 @@ exports.TarballHttpResolver = TarballHttpResolver; /***/ }), -/* 738 */ +/* 739 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -115329,7 +115564,7 @@ exports.PROTOCOL_REGEXP = /^https?:/; /***/ }), -/* 739 */ +/* 740 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -115337,7 +115572,7 @@ exports.PROTOCOL_REGEXP = /^https?:/; Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); -const constants_1 = __webpack_require__(738); +const constants_1 = __webpack_require__(739); class TarballHttpFetcher { supports(locator, opts) { if (!constants_1.TARBALL_REGEXP.test(locator.reference)) @@ -115374,16 +115609,16 @@ exports.TarballHttpFetcher = TarballHttpFetcher; /***/ }), -/* 740 */ +/* 741 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const RawLinkFetcher_1 = __webpack_require__(741); -const RawLinkResolver_1 = __webpack_require__(743); -const LinkFetcher_1 = __webpack_require__(744); -const LinkResolver_1 = __webpack_require__(745); +const RawLinkFetcher_1 = __webpack_require__(742); +const RawLinkResolver_1 = __webpack_require__(744); +const LinkFetcher_1 = __webpack_require__(745); +const LinkResolver_1 = __webpack_require__(746); const plugin = { fetchers: [ RawLinkFetcher_1.RawLinkFetcher, @@ -115398,7 +115633,7 @@ exports.default = plugin; /***/ }), -/* 741 */ +/* 742 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -115409,9 +115644,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) { Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const fslib_1 = __webpack_require__(3); -const path_1 = __webpack_require__(7); -const querystring_1 = __importDefault(__webpack_require__(727)); -const constants_1 = __webpack_require__(742); +const path_1 = __webpack_require__(6); +const querystring_1 = __importDefault(__webpack_require__(728)); +const constants_1 = __webpack_require__(743); class RawLinkFetcher { supports(locator, opts) { if (!locator.reference.startsWith(constants_1.RAW_LINK_PROTOCOL)) @@ -115470,7 +115705,7 @@ exports.RawLinkFetcher = RawLinkFetcher; /***/ }), -/* 742 */ +/* 743 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -115481,7 +115716,7 @@ exports.RAW_LINK_PROTOCOL = `link:`; /***/ }), -/* 743 */ +/* 744 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -115492,8 +115727,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) { Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); -const querystring_1 = __importDefault(__webpack_require__(727)); -const constants_1 = __webpack_require__(742); +const querystring_1 = __importDefault(__webpack_require__(728)); +const constants_1 = __webpack_require__(743); class RawLinkResolver { supportsDescriptor(descriptor, opts) { if (!descriptor.range.startsWith(constants_1.RAW_LINK_PROTOCOL)) @@ -115526,7 +115761,7 @@ exports.RawLinkResolver = RawLinkResolver; /***/ }), -/* 744 */ +/* 745 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -115537,9 +115772,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) { Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const fslib_1 = __webpack_require__(3); -const path_1 = __webpack_require__(7); -const querystring_1 = __importDefault(__webpack_require__(727)); -const constants_1 = __webpack_require__(742); +const path_1 = __webpack_require__(6); +const querystring_1 = __importDefault(__webpack_require__(728)); +const constants_1 = __webpack_require__(743); class LinkFetcher { supports(locator, opts) { if (!locator.reference.startsWith(constants_1.LINK_PROTOCOL)) @@ -115598,7 +115833,7 @@ exports.LinkFetcher = LinkFetcher; /***/ }), -/* 745 */ +/* 746 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -115610,8 +115845,8 @@ Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); const core_3 = __webpack_require__(1); -const querystring_1 = __importDefault(__webpack_require__(727)); -const constants_1 = __webpack_require__(742); +const querystring_1 = __importDefault(__webpack_require__(728)); +const constants_1 = __webpack_require__(743); class LinkResolver { supportsDescriptor(descriptor, opts) { if (!descriptor.range.startsWith(constants_1.LINK_PROTOCOL)) @@ -115648,17 +115883,17 @@ exports.LinkResolver = LinkResolver; /***/ }), -/* 746 */ +/* 747 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); -const NpmFetcher_1 = __webpack_require__(747); -const NpmRemapResolver_1 = __webpack_require__(749); -const NpmSemverResolver_1 = __webpack_require__(750); -const NpmTagResolver_1 = __webpack_require__(751); +const NpmFetcher_1 = __webpack_require__(748); +const NpmRemapResolver_1 = __webpack_require__(750); +const NpmSemverResolver_1 = __webpack_require__(751); +const NpmTagResolver_1 = __webpack_require__(752); const plugin = { configuration: { npmRegistryServer: { @@ -115680,7 +115915,7 @@ exports.default = plugin; /***/ }), -/* 747 */ +/* 748 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -115691,8 +115926,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) { Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); -const semver_1 = __importDefault(__webpack_require__(28)); -const constants_1 = __webpack_require__(748); +const semver_1 = __importDefault(__webpack_require__(29)); +const constants_1 = __webpack_require__(749); class NpmFetcher { supports(locator, opts) { if (!locator.reference.startsWith(constants_1.PROTOCOL)) @@ -115737,7 +115972,7 @@ exports.NpmFetcher = NpmFetcher; /***/ }), -/* 748 */ +/* 749 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -115747,14 +115982,14 @@ exports.PROTOCOL = `npm:`; /***/ }), -/* 749 */ +/* 750 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); -const constants_1 = __webpack_require__(748); +const constants_1 = __webpack_require__(749); class NpmRemapResolver { supportsDescriptor(descriptor, opts) { if (!descriptor.range.startsWith(constants_1.PROTOCOL)) @@ -115787,7 +116022,7 @@ exports.NpmRemapResolver = NpmRemapResolver; /***/ }), -/* 750 */ +/* 751 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -115799,8 +116034,8 @@ Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); const core_3 = __webpack_require__(1); -const semver_1 = __importDefault(__webpack_require__(28)); -const constants_1 = __webpack_require__(748); +const semver_1 = __importDefault(__webpack_require__(29)); +const constants_1 = __webpack_require__(749); class NpmSemverResolver { supportsDescriptor(descriptor, opts) { if (!descriptor.range.startsWith(constants_1.PROTOCOL)) @@ -115862,7 +116097,7 @@ exports.NpmSemverResolver = NpmSemverResolver; /***/ }), -/* 751 */ +/* 752 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -115870,7 +116105,7 @@ exports.NpmSemverResolver = NpmSemverResolver; Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); -const constants_1 = __webpack_require__(748); +const constants_1 = __webpack_require__(749); exports.TAG_REGEXP = /^[a-z]+$/; class NpmTagResolver { supportsDescriptor(descriptor, opts) { @@ -115920,14 +116155,14 @@ exports.NpmTagResolver = NpmTagResolver; /***/ }), -/* 752 */ +/* 753 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); -const PnpLinker_1 = __webpack_require__(753); +const PnpLinker_1 = __webpack_require__(754); function populateYarnPaths(project, definePath) { definePath(project.configuration.get(`pnpDataPath`)); definePath(project.configuration.get(`pnpPath`)); @@ -115977,7 +116212,7 @@ exports.default = plugin; /***/ }), -/* 753 */ +/* 754 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -115986,8 +116221,8 @@ Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = __webpack_require__(1); const core_2 = __webpack_require__(1); const fslib_1 = __webpack_require__(3); -const pnp_1 = __webpack_require__(754); -const path_1 = __webpack_require__(7); +const pnp_1 = __webpack_require__(755); +const path_1 = __webpack_require__(6); // Some packages do weird stuff and MUST be unplugged. I don't like them. const FORCED_UNPLUG_PACKAGES = new Set([ core_2.structUtils.makeIdent(null, `nan`).identHash, @@ -116002,21 +116237,23 @@ class PnpLinker { const pnpPath = opts.project.configuration.get(`pnpPath`); if (!fslib_1.xfs.existsSync(pnpPath)) throw new Error(`Couldn't find the PnP package map at the root of the project - run an install to generate it`); - const pnpFile = core_2.miscUtils.dynamicRequire(pnpPath); - delete __webpack_require__.c[pnpPath]; + const physicalPath = fslib_1.NodeFS.fromPortablePath(pnpPath); + const pnpFile = core_2.miscUtils.dynamicRequire(physicalPath); + delete __webpack_require__.c[physicalPath]; const packageLocator = { name: core_2.structUtils.requirableIdent(locator), reference: locator.reference }; const packageInformation = pnpFile.getPackageInformation(packageLocator); if (!packageInformation) throw new Error(`Couldn't find ${core_2.structUtils.prettyLocator(opts.project.configuration, locator)} in the currently installed pnp map`); - return packageInformation.packageLocation; + return fslib_1.NodeFS.toPortablePath(packageInformation.packageLocation); } async findPackageLocator(location, opts) { const pnpPath = opts.project.configuration.get(`pnpPath`); if (!fslib_1.xfs.existsSync(pnpPath)) throw new Error(`Couldn't find the PnP package map at the root of the project - run an install to generate it`); - const pnpFile = core_2.miscUtils.dynamicRequire(pnpPath); - delete __webpack_require__.c[pnpPath]; - const locator = pnpFile.findPackageLocator(location); + const physicalPath = fslib_1.NodeFS.fromPortablePath(pnpPath); + const pnpFile = core_2.miscUtils.dynamicRequire(physicalPath); + delete __webpack_require__.c[physicalPath]; + const locator = pnpFile.findPackageLocator(fslib_1.NodeFS.fromPortablePath(location)); if (!locator) return null; return core_2.structUtils.makeLocator(core_2.structUtils.parseIdent(locator.name), locator.reference); @@ -116040,7 +116277,7 @@ class PnpInstaller { this.opts.report.reportWarning(core_1.MessageName.DISABLED_BUILD_SCRIPTS, `${core_2.structUtils.prettyLocator(this.opts.project.configuration, pkg)} lists build scripts, but all build scripts have been disabled.`); buildScripts.length = 0; } - if (buildScripts.length > 0 && pkg.linkType !== core_1.LinkType.HARD) { + if (buildScripts.length > 0 && pkg.linkType !== core_1.LinkType.HARD && !this.opts.project.tryWorkspaceByLocator(pkg)) { this.opts.report.reportWarning(core_1.MessageName.SOFT_LINK_BUILD, `${core_2.structUtils.prettyLocator(this.opts.project.configuration, pkg)} lists build scripts, but is referenced through a soft link. Soft links don't support build scripts, so they'll be ignored.`); buildScripts.length = 0; } @@ -116178,7 +116415,7 @@ class PnpInstaller { /***/ }), -/* 754 */ +/* 755 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -116187,12 +116424,12 @@ function __export(m) { for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; } Object.defineProperty(exports, "__esModule", { value: true }); -__export(__webpack_require__(755)); -__export(__webpack_require__(758)); +__export(__webpack_require__(756)); +__export(__webpack_require__(759)); /***/ }), -/* 755 */ +/* 756 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -116202,8 +116439,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) { }; Object.defineProperty(exports, "__esModule", { value: true }); // @ts-ignore -const hook_1 = __importDefault(__webpack_require__(756)); -const generateSerializedState_1 = __webpack_require__(757); +const hook_1 = __importDefault(__webpack_require__(757)); +const generateSerializedState_1 = __webpack_require__(758); function generateLoader(shebang, loader) { return [ shebang ? `${shebang}\n\n` : ``, @@ -116253,14 +116490,14 @@ exports.generateSplitScript = generateSplitScript; /***/ }), -/* 756 */ +/* 757 */ /***/ (function(module, exports) { -module.exports = "module.exports =\n/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// define __esModule on exports\n/******/ \t__webpack_require__.r = function(exports) {\n/******/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t}\n/******/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t};\n/******/\n/******/ \t// create a fake namespace object\n/******/ \t// mode & 1: value is a module id, require it\n/******/ \t// mode & 2: merge all properties of value into the ns\n/******/ \t// mode & 4: return value when already ns object\n/******/ \t// mode & 8|1: behave like require\n/******/ \t__webpack_require__.t = function(value, mode) {\n/******/ \t\tif(mode & 1) value = __webpack_require__(value);\n/******/ \t\tif(mode & 8) return value;\n/******/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/******/ \t\tvar ns = Object.create(null);\n/******/ \t\t__webpack_require__.r(ns);\n/******/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/******/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/******/ \t\treturn ns;\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 0);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst module_1 = __importDefault(__webpack_require__(1));\nconst path_1 = __importDefault(__webpack_require__(2));\nconst string_decoder_1 = __importDefault(__webpack_require__(3));\nconst applyPatch_1 = __webpack_require__(4);\nconst hydrateRuntimeState_1 = __webpack_require__(20);\nconst makeApi_1 = __webpack_require__(21);\nmodule.exports = makeApi_1.makeApi($$SETUP_STATE(hydrateRuntimeState_1.hydrateRuntimeState), {\n compatibilityMode: true,\n pnpapiResolution: path_1.default.resolve(__dirname, __filename),\n});\nif (__non_webpack_module__.parent && __non_webpack_module__.parent.id === 'internal/preload') {\n applyPatch_1.applyPatch(module.exports, {\n compatibilityMode: true,\n });\n if (__non_webpack_module__.filename) {\n // We delete it from the cache in order to support the case where the CLI resolver is invoked from \"yarn run\"\n // It's annoying because it might cause some issues when the file is multiple times in NODE_OPTIONS, but it shouldn't happen anyway.\n delete module_1.default._cache[__non_webpack_module__.filename];\n }\n}\n// @ts-ignore\nif (process.mainModule === __non_webpack_module__) {\n const reportError = (code, message, data) => {\n process.stdout.write(`${JSON.stringify([{ code, message, data }, null])}\\n`);\n };\n const reportSuccess = (resolution) => {\n process.stdout.write(`${JSON.stringify([null, resolution])}\\n`);\n };\n const processResolution = (request, issuer) => {\n try {\n reportSuccess(module.exports.resolveRequest(request, issuer));\n }\n catch (error) {\n reportError(error.code, error.message, error.data);\n }\n };\n const processRequest = (data) => {\n try {\n const [request, issuer] = JSON.parse(data);\n processResolution(request, issuer);\n }\n catch (error) {\n reportError(`INVALID_JSON`, error.message, error.data);\n }\n };\n if (process.argv.length > 2) {\n if (process.argv.length !== 4) {\n process.stderr.write(`Usage: ${process.argv[0]} ${process.argv[1]} \\n`);\n process.exitCode = 64; /* EX_USAGE */\n }\n else {\n processResolution(process.argv[2], process.argv[3]);\n }\n }\n else {\n let buffer = '';\n const decoder = new string_decoder_1.default.StringDecoder();\n process.stdin.on('data', chunk => {\n buffer += decoder.write(chunk);\n do {\n const index = buffer.indexOf('\\n');\n if (index === -1)\n break;\n const line = buffer.slice(0, index);\n buffer = buffer.slice(index + 1);\n processRequest(line);\n } while (true);\n });\n }\n}\n\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"module\");\n\n/***/ }),\n/* 2 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"path\");\n\n/***/ }),\n/* 3 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"string_decoder\");\n\n/***/ }),\n/* 4 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst fslib_1 = __webpack_require__(5);\nconst fs_1 = __importDefault(__webpack_require__(7));\nconst module_1 = __importDefault(__webpack_require__(1));\nconst path_1 = __importDefault(__webpack_require__(2));\nconst internalTools_1 = __webpack_require__(19);\nfunction applyPatch(pnpapi, opts) {\n // @ts-ignore\n const builtinModules = new Set(module_1.default.builtinModules || Object.keys(process.binding('natives')));\n // The callback function gets called to wrap the return value of the module names matching the regexp\n const patchedModules = [];\n if (opts.compatibilityMode) {\n // Modern versions of `resolve` support a specific entry point that custom resolvers can use\n // to inject a specific resolution logic without having to patch the whole package.\n //\n // Cf: https://github.com/browserify/resolve/pull/174\n patchedModules.push([\n /^\\.\\/normalize-options\\.js$/,\n (issuer, normalizeOptions) => {\n if (!issuer || issuer.name !== 'resolve')\n return normalizeOptions;\n return (request, opts) => {\n opts = opts || {};\n if (opts.forceNodeResolution)\n return opts;\n opts.preserveSymlinks = true;\n opts.paths = function (request, basedir, getNodeModulesDir, opts) {\n // Extract the name of the package being requested (1=full name, 2=scope name, 3=local name)\n const parts = request.match(/^((?:(@[^\\/]+)\\/)?([^\\/]+))/);\n if (!parts)\n throw new Error(`Assertion failed: Expected the \"resolve\" package to call the \"paths\" callback with package names only (got \"${request}\")`);\n // make sure that basedir ends with a slash\n if (basedir.charAt(basedir.length - 1) !== '/')\n basedir = path_1.default.join(basedir, '/');\n // This is guaranteed to return the path to the \"package.json\" file from the given package\n const manifestPath = pnpapi.resolveToUnqualified(`${parts[1]}/package.json`, basedir, {\n considerBuiltins: false,\n });\n if (manifestPath === null)\n throw new Error(`Assertion failed: The resolution thinks that \"${parts[1]}\" is a Node builtin`);\n // The first dirname strips the package.json, the second strips the local named folder\n let nodeModules = path_1.default.dirname(path_1.default.dirname(manifestPath));\n // Strips the scope named folder if needed\n if (parts[2])\n nodeModules = path_1.default.dirname(nodeModules);\n return [nodeModules];\n };\n return opts;\n };\n },\n ]);\n }\n /**\n * Used to disable the resolution hooks (for when we want to fallback to the previous resolution - we then need\n * a way to \"reset\" the environment temporarily)\n */\n let enableNativeHooks = true;\n // @ts-ignore\n process.versions.pnp = String(pnpapi.VERSIONS.std);\n // A small note: we don't replace the cache here (and instead use the native one). This is an effort to not\n // break code similar to \"delete require.cache[require.resolve(FOO)]\", where FOO is a package located outside\n // of the Yarn dependency tree. In this case, we defer the load to the native loader. If we were to replace the\n // cache by our own, the native loader would populate its own cache, which wouldn't be exposed anymore, so the\n // delete call would be broken.\n const originalModuleLoad = module_1.default._load;\n module_1.default._load = function (request, parent, isMain) {\n if (!enableNativeHooks) {\n return originalModuleLoad.call(module_1.default, request, parent, isMain);\n }\n // Builtins are managed by the regular Node loader\n if (builtinModules.has(request)) {\n try {\n enableNativeHooks = false;\n return originalModuleLoad.call(module_1.default, request, parent, isMain);\n }\n finally {\n enableNativeHooks = true;\n }\n }\n // The 'pnpapi' name is reserved to return the PnP api currently in use by the program\n if (request === `pnpapi`)\n return pnpapi;\n // Request `Module._resolveFilename` (ie. `resolveRequest`) to tell us which file we should load\n const modulePath = module_1.default._resolveFilename(request, parent, isMain);\n // Check if the module has already been created for the given file\n const cacheEntry = module_1.default._cache[modulePath];\n if (cacheEntry)\n return cacheEntry.exports;\n // Create a new module and store it into the cache\n // @ts-ignore\n const module = new module_1.default(modulePath, parent);\n module_1.default._cache[modulePath] = module;\n // The main module is exposed as global variable\n if (isMain) {\n // @ts-ignore\n process.mainModule = module;\n module.id = '.';\n }\n // Try to load the module, and remove it from the cache if it fails\n let hasThrown = true;\n try {\n module.load(modulePath);\n hasThrown = false;\n }\n finally {\n if (hasThrown) {\n delete module_1.default._cache[modulePath];\n }\n }\n // Some modules might have to be patched for compatibility purposes\n for (const [filter, patchFn] of patchedModules)\n if (filter.test(request))\n module.exports = patchFn(parent && parent.filename ? pnpapi.findPackageLocator(parent.filename) : null, module.exports);\n return module.exports;\n };\n const originalModuleResolveFilename = module_1.default._resolveFilename;\n module_1.default._resolveFilename = function (request, parent, isMain, options) {\n if (request === `pnpapi`)\n return request;\n if (!enableNativeHooks)\n return originalModuleResolveFilename.call(module_1.default, request, parent, isMain, options);\n if (options && options.plugnplay === false) {\n try {\n enableNativeHooks = false;\n return originalModuleResolveFilename.call(module_1.default, request, parent, isMain, options);\n }\n finally {\n enableNativeHooks = true;\n }\n }\n let issuers;\n if (options) {\n const optionNames = new Set(Object.keys(options));\n optionNames.delete(`paths`);\n optionNames.delete(`plugnplay`);\n if (optionNames.size > 0) {\n throw internalTools_1.makeError(`UNSUPPORTED`, `Some options passed to require() aren't supported by PnP yet (${Array.from(optionNames).join(', ')})`);\n }\n if (options.paths) {\n issuers = options.paths.map((entry) => {\n return `${path_1.default.normalize(entry)}/`;\n });\n }\n }\n if (!issuers) {\n const issuerModule = internalTools_1.getIssuerModule(parent);\n const issuer = issuerModule ? issuerModule.filename : `${process.cwd()}/`;\n issuers = [issuer];\n }\n let firstError;\n for (const issuer of issuers) {\n let resolution;\n try {\n resolution = pnpapi.resolveRequest(request, issuer);\n }\n catch (error) {\n firstError = firstError || error;\n continue;\n }\n return resolution !== null ? resolution : request;\n }\n throw firstError;\n };\n const originalFindPath = module_1.default._findPath;\n module_1.default._findPath = function (request, paths, isMain) {\n if (request === `pnpapi`)\n return false;\n if (!enableNativeHooks)\n return originalFindPath.call(module_1.default, request, paths, isMain);\n for (const path of paths) {\n let resolution;\n try {\n resolution = pnpapi.resolveRequest(request, path);\n }\n catch (error) {\n continue;\n }\n if (resolution) {\n return resolution;\n }\n }\n return false;\n };\n // We must copy the fs into a local, because otherwise\n // 1. we would make the NodeFS instance use the function that we patched (infinite loop)\n // 2. Object.create(fs) isn't enough, since it won't prevent the proto from being modified\n const localFs = Object.assign({}, fs_1.default);\n const nodeFs = new fslib_1.NodeFS(localFs);\n fslib_1.patchFs(fs_1.default, new fslib_1.ZipOpenFS({ baseFs: nodeFs }));\n}\nexports.applyPatch = applyPatch;\n;\n\n\n/***/ }),\n/* 5 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst NodeFS_1 = __webpack_require__(6);\nvar AliasFS_1 = __webpack_require__(9);\nexports.AliasFS = AliasFS_1.AliasFS;\nvar CwdFS_1 = __webpack_require__(10);\nexports.CwdFS = CwdFS_1.CwdFS;\nvar JailFS_1 = __webpack_require__(11);\nexports.JailFS = JailFS_1.JailFS;\nvar NodeFS_2 = __webpack_require__(6);\nexports.NodeFS = NodeFS_2.NodeFS;\nvar FakeFS_1 = __webpack_require__(8);\nexports.FakeFS = FakeFS_1.FakeFS;\nvar ZipFS_1 = __webpack_require__(12);\nexports.ZipFS = ZipFS_1.ZipFS;\nvar ZipOpenFS_1 = __webpack_require__(18);\nexports.ZipOpenFS = ZipOpenFS_1.ZipOpenFS;\nfunction wrapSync(fn) {\n return fn;\n}\nfunction wrapAsync(fn) {\n return function (...args) {\n const cb = typeof args[args.length - 1] === `function`\n ? args.pop()\n : null;\n setImmediate(() => {\n let error, result;\n try {\n result = fn(...args);\n }\n catch (caught) {\n error = caught;\n }\n cb(error, result);\n });\n };\n}\nfunction patchFs(patchedFs, fakeFs) {\n const SYNC_IMPLEMENTATIONS = new Set([\n `createReadStream`,\n `chmodSync`,\n `copyFileSync`,\n `lstatSync`,\n `openSync`,\n `readlinkSync`,\n `readFileSync`,\n `readdirSync`,\n `readlinkSync`,\n `realpathSync`,\n `rmdirSync`,\n `statSync`,\n `symlinkSync`,\n `unlinkSync`,\n `utimesSync`,\n `writeFileSync`,\n ]);\n const ASYNC_IMPLEMENTATIONS = new Set([\n `chmodPromise`,\n `copyFilePromise`,\n `lstatPromise`,\n `openPromise`,\n `readdirPromise`,\n `realpathPromise`,\n `readFilePromise`,\n `readdirPromise`,\n `readlinkPromise`,\n `rmdirPromise`,\n `statPromise`,\n `symlinkPromise`,\n `unlinkPromise`,\n `utimesPromise`,\n `writeFilePromise`,\n ]);\n patchedFs.existsSync = (p) => {\n try {\n return fakeFs.existsSync(p);\n }\n catch (error) {\n return false;\n }\n };\n patchedFs.exists = (p, callback) => {\n fakeFs.existsPromise(p).then(result => {\n if (callback) {\n callback(result);\n }\n }, () => {\n if (callback) {\n callback(false);\n }\n });\n };\n for (const fnName of ASYNC_IMPLEMENTATIONS) {\n const fakeImpl = fakeFs[fnName].bind(fakeFs);\n const origName = fnName.replace(/Promise$/, ``);\n patchedFs[origName] = (...args) => {\n const hasCallback = typeof args[args.length - 1] === `function`;\n const callback = hasCallback ? args.pop() : () => { };\n fakeImpl(...args).then((result) => {\n callback(undefined, result);\n }, (error) => {\n callback(error);\n });\n };\n }\n for (const fnName of SYNC_IMPLEMENTATIONS) {\n const fakeImpl = fakeFs[fnName].bind(fakeFs);\n const origName = fnName;\n patchedFs[origName] = fakeImpl;\n }\n patchedFs.realpathSync.native = patchedFs.realpathSync;\n patchedFs.realpath.native = patchedFs.realpath;\n}\nexports.patchFs = patchFs;\nfunction extendFs(realFs, fakeFs) {\n const patchedFs = Object.create(realFs);\n patchFs(patchedFs, fakeFs);\n return patchedFs;\n}\nexports.extendFs = extendFs;\nexports.xfs = new NodeFS_1.NodeFS();\n\n\n/***/ }),\n/* 6 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst fs_1 = __importDefault(__webpack_require__(7));\nconst FakeFS_1 = __webpack_require__(8);\nclass NodeFS extends FakeFS_1.FakeFS {\n constructor(realFs = fs_1.default) {\n super();\n this.realFs = realFs;\n }\n getRealPath() {\n return `/`;\n }\n async openPromise(p, flags, mode) {\n return await new Promise((resolve, reject) => {\n this.realFs.open(p, flags, mode, this.makeCallback(resolve, reject));\n });\n }\n openSync(p, flags, mode) {\n return this.realFs.openSync(p, flags, mode);\n }\n async closePromise(fd) {\n await new Promise((resolve, reject) => {\n this.realFs.close(fd, this.makeCallback(resolve, reject));\n });\n }\n closeSync(fd) {\n this.realFs.closeSync(fd);\n }\n createReadStream(p, opts) {\n return this.realFs.createReadStream(this.fromPortablePath(p), opts);\n }\n createWriteStream(p, opts) {\n return this.realFs.createWriteStream(this.fromPortablePath(p), opts);\n }\n async realpathPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.realpath(p, {}, this.makeCallback(resolve, reject));\n });\n }\n realpathSync(p) {\n return this.toPortablePath(this.realFs.realpathSync(this.fromPortablePath(p), {}));\n }\n async existsPromise(p) {\n return await new Promise(resolve => {\n this.realFs.exists(this.fromPortablePath(p), resolve);\n });\n }\n existsSync(p) {\n return this.realFs.existsSync(this.fromPortablePath(p));\n }\n async statPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.stat(p, this.makeCallback(resolve, reject));\n });\n }\n statSync(p) {\n return this.realFs.statSync(this.fromPortablePath(p));\n }\n async lstatPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.lstat(p, this.makeCallback(resolve, reject));\n });\n }\n lstatSync(p) {\n return this.realFs.lstatSync(this.fromPortablePath(p));\n }\n async chmodPromise(p, mask) {\n return await new Promise((resolve, reject) => {\n this.realFs.chmod(this.fromPortablePath(p), mask, this.makeCallback(resolve, reject));\n });\n }\n chmodSync(p, mask) {\n return this.realFs.chmodSync(this.fromPortablePath(p), mask);\n }\n async renamePromise(oldP, newP) {\n return await new Promise((resolve, reject) => {\n this.realFs.rename(this.fromPortablePath(oldP), this.fromPortablePath(newP), this.makeCallback(resolve, reject));\n });\n }\n renameSync(oldP, newP) {\n return this.realFs.renameSync(this.fromPortablePath(oldP), this.fromPortablePath(newP));\n }\n async copyFilePromise(sourceP, destP, flags = 0) {\n return await new Promise((resolve, reject) => {\n this.realFs.copyFile(this.fromPortablePath(sourceP), this.fromPortablePath(destP), flags, this.makeCallback(resolve, reject));\n });\n }\n copyFileSync(sourceP, destP, flags = 0) {\n return this.realFs.copyFileSync(this.fromPortablePath(sourceP), this.fromPortablePath(destP), flags);\n }\n async writeFilePromise(p, content, opts) {\n return await new Promise((resolve, reject) => {\n if (opts) {\n this.realFs.writeFile(p, content, opts, this.makeCallback(resolve, reject));\n }\n else {\n this.realFs.writeFile(p, content, this.makeCallback(resolve, reject));\n }\n });\n }\n writeFileSync(p, content, opts) {\n if (opts) {\n this.realFs.writeFileSync(this.fromPortablePath(p), content, opts);\n }\n else {\n this.realFs.writeFileSync(this.fromPortablePath(p), content);\n }\n }\n async unlinkPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.unlink(p, this.makeCallback(resolve, reject));\n });\n }\n unlinkSync(p) {\n return this.realFs.unlinkSync(this.fromPortablePath(p));\n }\n async utimesPromise(p, atime, mtime) {\n return await new Promise((resolve, reject) => {\n this.realFs.utimes(p, atime, mtime, this.makeCallback(resolve, reject));\n });\n }\n utimesSync(p, atime, mtime) {\n this.realFs.utimesSync(p, atime, mtime);\n }\n async mkdirPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.mkdir(p, this.makeCallback(resolve, reject));\n });\n }\n mkdirSync(p) {\n return this.realFs.mkdirSync(this.fromPortablePath(p));\n }\n async rmdirPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.rmdir(p, this.makeCallback(resolve, reject));\n });\n }\n rmdirSync(p) {\n return this.realFs.rmdirSync(this.fromPortablePath(p));\n }\n async symlinkPromise(target, p) {\n return await new Promise((resolve, reject) => {\n this.realFs.symlink(target, this.fromPortablePath(p), this.makeCallback(resolve, reject));\n });\n }\n symlinkSync(target, p) {\n return this.realFs.symlinkSync(target, this.fromPortablePath(p));\n }\n async readFilePromise(p, encoding) {\n return await new Promise((resolve, reject) => {\n this.realFs.readFile(this.fromPortablePath(p), encoding, this.makeCallback(resolve, reject));\n });\n }\n readFileSync(p, encoding) {\n return this.realFs.readFileSync(this.fromPortablePath(p), encoding);\n }\n async readdirPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.readdir(p, this.makeCallback(resolve, reject));\n });\n }\n readdirSync(p) {\n return this.realFs.readdirSync(this.fromPortablePath(p));\n }\n async readlinkPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.readlink(p, this.makeCallback(resolve, reject));\n });\n }\n readlinkSync(p) {\n return this.realFs.readlinkSync(this.fromPortablePath(p));\n }\n makeCallback(resolve, reject) {\n return (err, result) => {\n if (err) {\n reject(err);\n }\n else {\n resolve(result);\n }\n };\n }\n fromPortablePath(p) {\n return p;\n }\n toPortablePath(p) {\n return p;\n }\n}\nexports.NodeFS = NodeFS;\n\n\n/***/ }),\n/* 7 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"fs\");\n\n/***/ }),\n/* 8 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst path_1 = __webpack_require__(2);\nclass FakeFS {\n resolve(p) {\n return path_1.posix.resolve(`/`, p);\n }\n async removePromise(p) {\n let stat;\n try {\n stat = await this.lstatPromise(p);\n }\n catch (error) {\n if (error.code === `ENOENT`) {\n return;\n }\n else {\n throw error;\n }\n }\n if (stat.isDirectory()) {\n for (const entry of await this.readdirPromise(p))\n await this.removePromise(path_1.posix.resolve(p, entry));\n await this.rmdirPromise(p);\n }\n else {\n await this.unlinkPromise(p);\n }\n }\n removeSync(p) {\n let stat;\n try {\n stat = this.lstatSync(p);\n }\n catch (error) {\n if (error.code === `ENOENT`) {\n return;\n }\n else {\n throw error;\n }\n }\n if (stat.isDirectory()) {\n for (const entry of this.readdirSync(p))\n this.removeSync(path_1.posix.resolve(p, entry));\n this.rmdirSync(p);\n }\n else {\n this.unlinkSync(p);\n }\n }\n async mkdirpPromise(p, { chmod, utimes } = {}) {\n p = this.resolve(p);\n if (p === `/`)\n return;\n const parts = p.split(`/`);\n for (let u = 2; u <= parts.length; ++u) {\n const subPath = parts.slice(0, u).join(`/`);\n if (!this.existsSync(subPath)) {\n try {\n await this.mkdirPromise(subPath);\n }\n catch (error) {\n if (error.code === `EEXIST`) {\n continue;\n }\n else {\n throw error;\n }\n }\n if (chmod != null)\n await this.chmodPromise(subPath, chmod);\n if (utimes != null) {\n await this.utimesPromise(subPath, utimes[0], utimes[1]);\n }\n }\n }\n }\n mkdirpSync(p, { chmod, utimes } = {}) {\n p = this.resolve(p);\n if (p === `/`)\n return;\n const parts = p.split(`/`);\n for (let u = 2; u <= parts.length; ++u) {\n const subPath = parts.slice(0, u).join(`/`);\n if (!this.existsSync(subPath)) {\n try {\n this.mkdirSync(subPath);\n }\n catch (error) {\n if (error.code === `EEXIST`) {\n continue;\n }\n else {\n throw error;\n }\n }\n if (chmod != null)\n this.chmodSync(subPath, chmod);\n if (utimes != null) {\n this.utimesSync(subPath, utimes[0], utimes[1]);\n }\n }\n }\n }\n async copyPromise(destination, source, { baseFs = this, overwrite = true } = {}) {\n const stat = await baseFs.lstatPromise(source);\n if (stat.isDirectory()) {\n await this.mkdirpPromise(destination);\n const directoryListing = await baseFs.readdirPromise(source);\n await Promise.all(directoryListing.map(entry => {\n return this.copyPromise(path_1.posix.join(destination, entry), path_1.posix.join(source, entry), { baseFs, overwrite });\n }));\n }\n else if (stat.isFile()) {\n if (!await this.existsPromise(destination) || overwrite) {\n const content = await baseFs.readFilePromise(source);\n await this.writeFilePromise(destination, content);\n }\n }\n else {\n throw new Error(`Unsupported file type (file: ${source}, mode: 0o${stat.mode.toString(8).padStart(6, `0`)})`);\n }\n const mode = stat.mode & 0o777;\n await this.chmodPromise(destination, mode);\n }\n copySync(destination, source, { baseFs = this, overwrite = true } = {}) {\n const stat = baseFs.lstatSync(source);\n if (stat.isDirectory()) {\n this.mkdirpSync(destination);\n const directoryListing = baseFs.readdirSync(source);\n for (const entry of directoryListing) {\n this.copySync(path_1.posix.join(destination, entry), path_1.posix.join(source, entry), { baseFs, overwrite });\n }\n }\n else if (stat.isFile()) {\n if (!this.existsSync(destination) || overwrite) {\n const content = baseFs.readFileSync(source);\n this.writeFileSync(destination, content);\n }\n }\n else {\n throw new Error(`Unsupported file type (file: ${source}, mode: 0o${stat.mode.toString(8).padStart(6, `0`)})`);\n }\n const mode = stat.mode & 0o777;\n this.chmodSync(destination, mode);\n }\n async changeFilePromise(p, content) {\n try {\n const current = await this.readFilePromise(p, `utf8`);\n if (current === content) {\n return;\n }\n }\n catch (error) {\n // ignore errors, no big deal\n }\n await this.writeFilePromise(p, content);\n }\n changeFileSync(p, content) {\n try {\n const current = this.readFileSync(p, `utf8`);\n if (current === content) {\n return;\n }\n }\n catch (error) {\n // ignore errors, no big deal\n }\n this.writeFileSync(p, content);\n }\n async movePromise(fromP, toP) {\n try {\n await this.renamePromise(fromP, toP);\n }\n catch (error) {\n if (error.code === `EXDEV`) {\n await this.copyPromise(toP, fromP);\n await this.removePromise(fromP);\n }\n else {\n throw error;\n }\n }\n }\n moveSync(fromP, toP) {\n try {\n this.renameSync(fromP, toP);\n }\n catch (error) {\n if (error.code === `EXDEV`) {\n this.copySync(toP, fromP);\n this.removeSync(fromP);\n }\n else {\n throw error;\n }\n }\n }\n async lockPromise(affectedPath, callback) {\n const lockPath = `${affectedPath}.lock`;\n const interval = 1000 / 60;\n const timeout = Date.now() + 60 * 1000;\n let fd = null;\n while (fd === null) {\n try {\n fd = await this.openPromise(lockPath, `wx`);\n }\n catch (error) {\n if (error.code === `EEXIST`) {\n if (Date.now() < timeout) {\n await new Promise(resolve => setTimeout(resolve, interval));\n }\n else {\n throw new Error(`Couldn't acquire a lock in a reasonable time (${timeout / 1000}s)`);\n }\n }\n else {\n throw error;\n }\n }\n }\n try {\n await callback();\n }\n finally {\n await this.closePromise(fd);\n await this.unlinkPromise(lockPath);\n }\n }\n}\nexports.FakeFS = FakeFS;\n;\n\n\n/***/ }),\n/* 9 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst FakeFS_1 = __webpack_require__(8);\nclass AliasFS extends FakeFS_1.FakeFS {\n constructor(target, { baseFs }) {\n super();\n this.target = target;\n this.baseFs = baseFs;\n }\n getRealPath() {\n return this.target;\n }\n getBaseFs() {\n return this.baseFs;\n }\n async openPromise(p, flags, mode) {\n return await this.baseFs.openPromise(p, flags, mode);\n }\n openSync(p, flags, mode) {\n return this.baseFs.openSync(p, flags, mode);\n }\n async closePromise(fd) {\n await this.baseFs.closePromise(fd);\n }\n closeSync(fd) {\n this.baseFs.closeSync(fd);\n }\n createReadStream(p, opts) {\n return this.baseFs.createReadStream(p, opts);\n }\n createWriteStream(p, opts) {\n return this.baseFs.createWriteStream(p, opts);\n }\n async realpathPromise(p) {\n return await this.baseFs.realpathPromise(p);\n }\n realpathSync(p) {\n return this.baseFs.realpathSync(p);\n }\n async existsPromise(p) {\n return await this.baseFs.existsPromise(p);\n }\n existsSync(p) {\n return this.baseFs.existsSync(p);\n }\n async statPromise(p) {\n return await this.baseFs.statPromise(p);\n }\n statSync(p) {\n return this.baseFs.statSync(p);\n }\n async lstatPromise(p) {\n return await this.baseFs.lstatPromise(p);\n }\n lstatSync(p) {\n return this.baseFs.lstatSync(p);\n }\n async chmodPromise(p, mask) {\n return await this.baseFs.chmodPromise(p, mask);\n }\n chmodSync(p, mask) {\n return this.baseFs.chmodSync(p, mask);\n }\n async renamePromise(oldP, newP) {\n return await this.baseFs.renamePromise(oldP, newP);\n }\n renameSync(oldP, newP) {\n return this.baseFs.renameSync(oldP, newP);\n }\n async copyFilePromise(sourceP, destP, flags) {\n return await this.baseFs.copyFilePromise(sourceP, destP, flags);\n }\n copyFileSync(sourceP, destP, flags) {\n return this.baseFs.copyFileSync(sourceP, destP, flags);\n }\n async writeFilePromise(p, content, opts) {\n return await this.baseFs.writeFilePromise(p, content, opts);\n }\n writeFileSync(p, content, opts) {\n return this.baseFs.writeFileSync(p, content, opts);\n }\n async unlinkPromise(p) {\n return await this.baseFs.unlinkPromise(p);\n }\n unlinkSync(p) {\n return this.baseFs.unlinkSync(p);\n }\n async utimesPromise(p, atime, mtime) {\n return await this.baseFs.utimesPromise(p, atime, mtime);\n }\n utimesSync(p, atime, mtime) {\n return this.baseFs.utimesSync(p, atime, mtime);\n }\n async mkdirPromise(p) {\n return await this.baseFs.mkdirPromise(p);\n }\n mkdirSync(p) {\n return this.baseFs.mkdirSync(p);\n }\n async rmdirPromise(p) {\n return await this.baseFs.rmdirPromise(p);\n }\n rmdirSync(p) {\n return this.baseFs.rmdirSync(p);\n }\n async symlinkPromise(target, p) {\n return await this.baseFs.symlinkPromise(target, p);\n }\n symlinkSync(target, p) {\n return this.baseFs.symlinkSync(target, p);\n }\n async readFilePromise(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return await this.baseFs.readFilePromise(p, encoding);\n default:\n return await this.baseFs.readFilePromise(p, encoding);\n }\n }\n readFileSync(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return this.baseFs.readFileSync(p, encoding);\n default:\n return this.baseFs.readFileSync(p, encoding);\n }\n }\n async readdirPromise(p) {\n return await this.baseFs.readdirPromise(p);\n }\n readdirSync(p) {\n return this.baseFs.readdirSync(p);\n }\n async readlinkPromise(p) {\n return await this.baseFs.readlinkPromise(p);\n }\n readlinkSync(p) {\n return this.baseFs.readlinkSync(p);\n }\n}\nexports.AliasFS = AliasFS;\n\n\n/***/ }),\n/* 10 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst path_1 = __webpack_require__(2);\nconst FakeFS_1 = __webpack_require__(8);\nconst NodeFS_1 = __webpack_require__(6);\nclass CwdFS extends FakeFS_1.FakeFS {\n constructor(target, { baseFs = new NodeFS_1.NodeFS() } = {}) {\n super();\n this.target = target;\n this.baseFs = baseFs;\n }\n getRealPath() {\n return path_1.posix.resolve(this.baseFs.getRealPath(), this.target);\n }\n getTarget() {\n return this.target;\n }\n getBaseFs() {\n return this.baseFs;\n }\n resolve(p) {\n return this.baseFs.resolve(this.fromCwdPath(p));\n }\n async openPromise(p, flags, mode) {\n return await this.baseFs.openPromise(this.fromCwdPath(p), flags, mode);\n }\n openSync(p, flags, mode) {\n return this.baseFs.openSync(this.fromCwdPath(p), flags, mode);\n }\n async closePromise(fd) {\n await this.baseFs.closePromise(fd);\n }\n closeSync(fd) {\n this.baseFs.closeSync(fd);\n }\n createReadStream(p, opts) {\n return this.baseFs.createReadStream(this.fromCwdPath(p), opts);\n }\n createWriteStream(p, opts) {\n return this.baseFs.createWriteStream(this.fromCwdPath(p), opts);\n }\n async realpathPromise(p) {\n return await this.baseFs.realpathPromise(this.fromCwdPath(p));\n }\n realpathSync(p) {\n return this.baseFs.realpathSync(this.fromCwdPath(p));\n }\n async existsPromise(p) {\n return await this.baseFs.existsPromise(this.fromCwdPath(p));\n }\n existsSync(p) {\n return this.baseFs.existsSync(this.fromCwdPath(p));\n }\n async statPromise(p) {\n return await this.baseFs.statPromise(this.fromCwdPath(p));\n }\n statSync(p) {\n return this.baseFs.statSync(this.fromCwdPath(p));\n }\n async lstatPromise(p) {\n return await this.baseFs.lstatPromise(this.fromCwdPath(p));\n }\n lstatSync(p) {\n return this.baseFs.lstatSync(this.fromCwdPath(p));\n }\n async chmodPromise(p, mask) {\n return await this.baseFs.chmodPromise(this.fromCwdPath(p), mask);\n }\n chmodSync(p, mask) {\n return this.baseFs.chmodSync(this.fromCwdPath(p), mask);\n }\n async renamePromise(oldP, newP) {\n return await this.baseFs.renamePromise(this.fromCwdPath(oldP), this.fromCwdPath(newP));\n }\n renameSync(oldP, newP) {\n return this.baseFs.renameSync(this.fromCwdPath(oldP), this.fromCwdPath(newP));\n }\n async copyFilePromise(sourceP, destP, flags) {\n return await this.baseFs.copyFilePromise(this.fromCwdPath(sourceP), this.fromCwdPath(destP), flags);\n }\n copyFileSync(sourceP, destP, flags) {\n return this.baseFs.copyFileSync(this.fromCwdPath(sourceP), this.fromCwdPath(destP), flags);\n }\n async writeFilePromise(p, content, opts) {\n return await this.baseFs.writeFilePromise(this.fromCwdPath(p), content, opts);\n }\n writeFileSync(p, content, opts) {\n return this.baseFs.writeFileSync(this.fromCwdPath(p), content, opts);\n }\n async unlinkPromise(p) {\n return await this.baseFs.unlinkPromise(this.fromCwdPath(p));\n }\n unlinkSync(p) {\n return this.baseFs.unlinkSync(this.fromCwdPath(p));\n }\n async utimesPromise(p, atime, mtime) {\n return await this.baseFs.utimesPromise(this.fromCwdPath(p), atime, mtime);\n }\n utimesSync(p, atime, mtime) {\n return this.baseFs.utimesSync(this.fromCwdPath(p), atime, mtime);\n }\n async mkdirPromise(p) {\n return await this.baseFs.mkdirPromise(this.fromCwdPath(p));\n }\n mkdirSync(p) {\n return this.baseFs.mkdirSync(this.fromCwdPath(p));\n }\n async rmdirPromise(p) {\n return await this.baseFs.rmdirPromise(this.fromCwdPath(p));\n }\n rmdirSync(p) {\n return this.baseFs.rmdirSync(this.fromCwdPath(p));\n }\n async symlinkPromise(target, p) {\n return await this.baseFs.symlinkPromise(target, this.fromCwdPath(p));\n }\n symlinkSync(target, p) {\n return this.baseFs.symlinkSync(target, this.fromCwdPath(p));\n }\n async readFilePromise(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return await this.baseFs.readFilePromise(this.fromCwdPath(p), encoding);\n default:\n return await this.baseFs.readFilePromise(this.fromCwdPath(p), encoding);\n }\n }\n readFileSync(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return this.baseFs.readFileSync(this.fromCwdPath(p), encoding);\n default:\n return this.baseFs.readFileSync(this.fromCwdPath(p), encoding);\n }\n }\n async readdirPromise(p) {\n return await this.baseFs.readdirPromise(this.fromCwdPath(p));\n }\n readdirSync(p) {\n return this.baseFs.readdirSync(this.fromCwdPath(p));\n }\n async readlinkPromise(p) {\n return await this.baseFs.readlinkPromise(this.fromCwdPath(p));\n }\n readlinkSync(p) {\n return this.baseFs.readlinkSync(this.fromCwdPath(p));\n }\n fromCwdPath(p) {\n return path_1.posix.resolve(this.getRealPath(), p);\n }\n}\nexports.CwdFS = CwdFS;\n\n\n/***/ }),\n/* 11 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst path_1 = __webpack_require__(2);\nconst FakeFS_1 = __webpack_require__(8);\nconst NodeFS_1 = __webpack_require__(6);\nclass JailFS extends FakeFS_1.FakeFS {\n constructor(target, { baseFs = new NodeFS_1.NodeFS() } = {}) {\n super();\n this.target = path_1.posix.resolve(`/`, target);\n this.baseFs = baseFs;\n }\n getRealPath() {\n return path_1.posix.resolve(this.baseFs.getRealPath(), path_1.posix.relative(`/`, this.target));\n }\n getTarget() {\n return this.target;\n }\n getBaseFs() {\n return this.baseFs;\n }\n async openPromise(p, flags, mode) {\n return await this.baseFs.openPromise(this.fromJailedPath(p), flags, mode);\n }\n openSync(p, flags, mode) {\n return this.baseFs.openSync(this.fromJailedPath(p), flags, mode);\n }\n async closePromise(fd) {\n await this.baseFs.closePromise(fd);\n }\n closeSync(fd) {\n this.baseFs.closeSync(fd);\n }\n createReadStream(p, opts) {\n return this.baseFs.createReadStream(this.fromJailedPath(p), opts);\n }\n createWriteStream(p, opts) {\n return this.baseFs.createWriteStream(this.fromJailedPath(p), opts);\n }\n async realpathPromise(p) {\n return this.toJailedPath(await this.baseFs.realpathPromise(this.fromJailedPath(p)));\n }\n realpathSync(p) {\n return this.toJailedPath(this.baseFs.realpathSync(this.fromJailedPath(p)));\n }\n async existsPromise(p) {\n return await this.baseFs.existsPromise(this.fromJailedPath(p));\n }\n existsSync(p) {\n return this.baseFs.existsSync(this.fromJailedPath(p));\n }\n async statPromise(p) {\n return await this.baseFs.statPromise(this.fromJailedPath(p));\n }\n statSync(p) {\n return this.baseFs.statSync(this.fromJailedPath(p));\n }\n async lstatPromise(p) {\n return await this.baseFs.lstatPromise(this.fromJailedPath(p));\n }\n lstatSync(p) {\n return this.baseFs.lstatSync(this.fromJailedPath(p));\n }\n async chmodPromise(p, mask) {\n return await this.baseFs.chmodPromise(this.fromJailedPath(p), mask);\n }\n chmodSync(p, mask) {\n return this.baseFs.chmodSync(this.fromJailedPath(p), mask);\n }\n async renamePromise(oldP, newP) {\n return await this.baseFs.renamePromise(this.fromJailedPath(oldP), this.fromJailedPath(newP));\n }\n renameSync(oldP, newP) {\n return this.baseFs.renameSync(this.fromJailedPath(oldP), this.fromJailedPath(newP));\n }\n async copyFilePromise(sourceP, destP, flags) {\n return await this.baseFs.copyFilePromise(this.fromJailedPath(sourceP), this.fromJailedPath(destP), flags);\n }\n copyFileSync(sourceP, destP, flags) {\n return this.baseFs.copyFileSync(this.fromJailedPath(sourceP), this.fromJailedPath(destP), flags);\n }\n async writeFilePromise(p, content, opts) {\n return await this.baseFs.writeFilePromise(this.fromJailedPath(p), content, opts);\n }\n writeFileSync(p, content, opts) {\n return this.baseFs.writeFileSync(this.fromJailedPath(p), content, opts);\n }\n async unlinkPromise(p) {\n return await this.baseFs.rmdirPromise(this.fromJailedPath(p));\n }\n unlinkSync(p) {\n return this.baseFs.rmdirSync(this.fromJailedPath(p));\n }\n async utimesPromise(p, atime, mtime) {\n return await this.baseFs.utimesPromise(this.fromJailedPath(p), atime, mtime);\n }\n utimesSync(p, atime, mtime) {\n return this.baseFs.utimesSync(this.fromJailedPath(p), atime, mtime);\n }\n async mkdirPromise(p) {\n return await this.baseFs.mkdirPromise(this.fromJailedPath(p));\n }\n mkdirSync(p) {\n return this.baseFs.mkdirSync(this.fromJailedPath(p));\n }\n async rmdirPromise(p) {\n return await this.baseFs.rmdirPromise(this.fromJailedPath(p));\n }\n rmdirSync(p) {\n return this.baseFs.rmdirSync(this.fromJailedPath(p));\n }\n async symlinkPromise(target, p) {\n return await this.baseFs.symlinkPromise(target, this.fromJailedPath(p));\n }\n symlinkSync(target, p) {\n return this.baseFs.symlinkSync(target, this.fromJailedPath(p));\n }\n async readFilePromise(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return await this.baseFs.readFilePromise(this.fromJailedPath(p), encoding);\n default:\n return await this.baseFs.readFilePromise(this.fromJailedPath(p), encoding);\n }\n }\n readFileSync(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return this.baseFs.readFileSync(this.fromJailedPath(p), encoding);\n default:\n return this.baseFs.readFileSync(this.fromJailedPath(p), encoding);\n }\n }\n async readdirPromise(p) {\n return await this.baseFs.readdirPromise(this.fromJailedPath(p));\n }\n readdirSync(p) {\n return this.baseFs.readdirSync(this.fromJailedPath(p));\n }\n async readlinkPromise(p) {\n return await this.baseFs.readlinkPromise(this.fromJailedPath(p));\n }\n readlinkSync(p) {\n return this.baseFs.readlinkSync(this.fromJailedPath(p));\n }\n fromJailedPath(p) {\n const normalized = path_1.posix.normalize(p);\n if (path_1.posix.isAbsolute(p))\n return path_1.posix.resolve(this.target, path_1.posix.relative(`/`, p));\n if (normalized.match(/^\\.\\.\\//))\n throw new Error(`Resolving this path (${p}) would escape the jail`);\n return path_1.posix.resolve(this.target, p);\n }\n toJailedPath(p) {\n return path_1.posix.resolve(`/`, path_1.posix.relative(this.target, p));\n }\n}\nexports.JailFS = JailFS;\n\n\n/***/ }),\n/* 12 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst libzip_1 = __importDefault(__webpack_require__(13));\nconst fs_1 = __webpack_require__(7);\nconst path_1 = __webpack_require__(2);\nconst stream_1 = __webpack_require__(16);\nconst util_1 = __webpack_require__(17);\nconst FakeFS_1 = __webpack_require__(8);\nconst NodeFS_1 = __webpack_require__(6);\nconst S_IFMT = 0o170000;\nconst S_IFDIR = 0o040000;\nconst S_IFREG = 0o100000;\nconst S_IFLNK = 0o120000;\nclass StatEntry {\n constructor() {\n this.dev = 0;\n this.ino = 0;\n this.mode = 0;\n this.nlink = 1;\n this.rdev = 0;\n this.blocks = 1;\n }\n isBlockDevice() {\n return false;\n }\n isCharacterDevice() {\n return false;\n }\n isDirectory() {\n return (this.mode & S_IFMT) === S_IFDIR;\n }\n isFIFO() {\n return false;\n }\n isFile() {\n return (this.mode & S_IFMT) === S_IFREG;\n }\n isSocket() {\n return false;\n }\n isSymbolicLink() {\n return (this.mode & S_IFMT) === S_IFLNK;\n }\n}\nfunction toUnixTimestamp(time) {\n if (typeof time === 'string' && String(+time) === time) {\n return +time;\n }\n // @ts-ignore\n if (Number.isFinite(time)) {\n if (time < 0) {\n return Date.now() / 1000;\n }\n else {\n return time;\n }\n }\n if (util_1.isDate(time)) {\n // convert to 123.456 UNIX timestamp\n // @ts-ignore\n return time.getTime() / 1000;\n }\n throw new Error(`Invalid time`);\n}\nclass ZipFS extends FakeFS_1.FakeFS {\n constructor(p, { baseFs = new NodeFS_1.NodeFS(), create = false, readOnly = false, stats } = {}) {\n super();\n this.listings = new Map();\n this.entries = new Map();\n this.ready = false;\n this.path = p;\n this.baseFs = baseFs;\n if (stats) {\n this.stats = stats;\n }\n else {\n try {\n this.stats = this.baseFs.statSync(p);\n }\n catch (error) {\n if (error.code === `ENOENT` && create) {\n this.stats = Object.assign(new StatEntry(), { uid: 0, gid: 0, size: 0, blksize: 0, atimeMs: 0, mtimeMs: 0, ctimeMs: 0, birthtimeMs: 0, atime: new Date(0), mtime: new Date(0), ctime: new Date(0), birthtime: new Date(0), mode: S_IFREG | 0o644 });\n }\n else {\n throw error;\n }\n }\n }\n const errPtr = libzip_1.default.malloc(4);\n try {\n let flags = 0;\n if (create)\n flags |= libzip_1.default.ZIP_CREATE | libzip_1.default.ZIP_TRUNCATE;\n if (readOnly)\n flags |= libzip_1.default.ZIP_RDONLY;\n this.zip = libzip_1.default.open(p, flags, errPtr);\n if (this.zip === 0) {\n const error = libzip_1.default.struct.errorS();\n libzip_1.default.error.initWithCode(error, libzip_1.default.getValue(errPtr, `i32`));\n throw new Error(libzip_1.default.error.strerror(error));\n }\n }\n finally {\n libzip_1.default.free(errPtr);\n }\n const entryCount = libzip_1.default.getNumEntries(this.zip, 0);\n this.listings.set(`/`, new Set());\n for (let t = 0; t < entryCount; ++t) {\n const raw = libzip_1.default.getName(this.zip, t, 0);\n if (path_1.posix.isAbsolute(raw))\n continue;\n const p = path_1.posix.resolve(`/`, raw);\n this.registerEntry(p, t);\n }\n this.ready = true;\n }\n getRealPath() {\n return this.path;\n }\n saveAndClose() {\n if (!this.ready)\n throw Object.assign(new Error(`EBUSY: archive closed, close`), { code: `EBUSY` });\n const previousMod = this.baseFs.existsSync(this.path)\n ? this.baseFs.statSync(this.path).mode & 0o777\n : null;\n const rc = libzip_1.default.close(this.zip);\n if (rc === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n // Libzip overrides the chmod when writing the archive, which is a weird\n // behavior I don't totally understand (plus the umask seems bogus in some\n // weird cases - maybe related to emscripten?)\n //\n // See also https://github.com/nih-at/libzip/issues/77\n if (previousMod !== null && previousMod !== (this.baseFs.statSync(this.path).mode & 0o777))\n this.baseFs.chmodSync(this.path, previousMod);\n this.ready = false;\n }\n discardAndClose() {\n libzip_1.default.discard(this.zip);\n this.ready = false;\n }\n async openPromise(p, flags, mode) {\n return this.openSync(p, flags, mode);\n }\n openSync(p, flags, mode) {\n throw new Error(`Unimplemented`);\n }\n async closePromise(fd) {\n this.closeSync(fd);\n }\n closeSync(fd) {\n throw new Error(`Unimplemented`);\n }\n createReadStream(p, { encoding } = {}) {\n const stream = Object.assign(new stream_1.PassThrough(), {\n bytesRead: 0,\n path: p,\n close: () => {\n clearImmediate(immediate);\n }\n });\n const immediate = setImmediate(() => {\n try {\n const data = this.readFileSync(p, encoding);\n stream.bytesRead = data.length;\n stream.write(data);\n stream.end();\n }\n catch (error) {\n stream.emit(`error`, error);\n stream.end();\n }\n });\n return stream;\n }\n createWriteStream(p, { encoding } = {}) {\n const stream = Object.assign(new stream_1.PassThrough(), {\n bytesWritten: 0,\n path: p,\n close: () => {\n stream.end();\n },\n });\n const chunks = [];\n stream.on(`data`, chunk => {\n const chunkBuffer = Buffer.from(chunk);\n stream.bytesWritten += chunkBuffer.length;\n chunks.push(chunkBuffer);\n });\n stream.on(`end`, () => {\n this.writeFileSync(p, Buffer.concat(chunks), encoding);\n });\n return stream;\n }\n async realpathPromise(p) {\n return this.realpathSync(p);\n }\n realpathSync(p) {\n const resolvedP = this.resolveFilename(`lstat '${p}'`, p);\n if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOENT: no such file or directory, lstat '${p}'`), { code: `ENOENT` });\n return resolvedP;\n }\n async existsPromise(p) {\n return this.existsSync(p);\n }\n existsSync(p) {\n let resolvedP;\n try {\n resolvedP = this.resolveFilename(`stat '${p}'`, p);\n }\n catch (error) {\n return false;\n }\n return this.entries.has(resolvedP) || this.listings.has(resolvedP);\n }\n async statPromise(p) {\n return this.statSync(p);\n }\n statSync(p) {\n const resolvedP = this.resolveFilename(`stat '${p}'`, p);\n if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOENT: no such file or directory, stat '${p}'`), { code: `ENOENT` });\n if (p[p.length - 1] === `/` && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOTDIR: not a directory, stat '${p}'`), { code: `ENOTDIR` });\n return this.statImpl(`stat '${p}'`, resolvedP);\n }\n async lstatPromise(p) {\n return this.lstatSync(p);\n }\n lstatSync(p) {\n const resolvedP = this.resolveFilename(`lstat '${p}'`, p, false);\n if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOENT: no such file or directory, lstat '${p}'`), { code: `ENOENT` });\n if (p[p.length - 1] === `/` && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOTDIR: not a directory, lstat '${p}'`), { code: `ENOTDIR` });\n return this.statImpl(`lstat '${p}'`, resolvedP);\n }\n statImpl(reason, p) {\n if (this.listings.has(p)) {\n const uid = this.stats.uid;\n const gid = this.stats.gid;\n const size = 0;\n const blksize = 512;\n const blocks = 0;\n const atimeMs = this.stats.mtimeMs;\n const birthtimeMs = this.stats.mtimeMs;\n const ctimeMs = this.stats.mtimeMs;\n const mtimeMs = this.stats.mtimeMs;\n const atime = new Date(atimeMs);\n const birthtime = new Date(birthtimeMs);\n const ctime = new Date(ctimeMs);\n const mtime = new Date(mtimeMs);\n const mode = S_IFDIR | 0o755;\n return Object.assign(new StatEntry(), { uid, gid, size, blksize, blocks, atime, birthtime, ctime, mtime, atimeMs, birthtimeMs, ctimeMs, mtimeMs, mode });\n }\n const entry = this.entries.get(p);\n if (entry !== undefined) {\n const stat = libzip_1.default.struct.statS();\n const rc = libzip_1.default.statIndex(this.zip, entry, 0, 0, stat);\n if (rc === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n const uid = this.stats.uid;\n const gid = this.stats.gid;\n const size = (libzip_1.default.struct.statSize(stat) >>> 0);\n const blksize = 512;\n const blocks = Math.ceil(size / blksize);\n const mtimeMs = (libzip_1.default.struct.statMtime(stat) >>> 0) * 1000;\n const atimeMs = mtimeMs;\n const birthtimeMs = mtimeMs;\n const ctimeMs = mtimeMs;\n const atime = new Date(atimeMs);\n const birthtime = new Date(birthtimeMs);\n const ctime = new Date(ctimeMs);\n const mtime = new Date(mtimeMs);\n const mode = this.getUnixMode(entry, S_IFREG | 0o644);\n return Object.assign(new StatEntry(), { uid, gid, size, blksize, blocks, atime, birthtime, ctime, mtime, atimeMs, birthtimeMs, ctimeMs, mtimeMs, mode });\n }\n throw new Error(`Unreachable`);\n }\n getUnixMode(index, defaultMode) {\n const rc = libzip_1.default.file.getExternalAttributes(this.zip, index, 0, 0, libzip_1.default.uint08S, libzip_1.default.uint32S);\n if (rc === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n const opsys = libzip_1.default.getValue(libzip_1.default.uint08S, `i8`) >>> 0;\n if (opsys !== libzip_1.default.ZIP_OPSYS_UNIX)\n return defaultMode;\n return libzip_1.default.getValue(libzip_1.default.uint32S, `i32`) >>> 16;\n }\n registerListing(p) {\n let listing = this.listings.get(p);\n if (listing)\n return listing;\n const parentListing = this.registerListing(path_1.posix.dirname(p));\n listing = new Set();\n parentListing.add(path_1.posix.basename(p));\n this.listings.set(p, listing);\n return listing;\n }\n registerEntry(p, index) {\n const parentListing = this.registerListing(path_1.posix.dirname(p));\n parentListing.add(path_1.posix.basename(p));\n this.entries.set(p, index);\n }\n resolveFilename(reason, p, resolveLastComponent = true) {\n if (!this.ready)\n throw Object.assign(new Error(`EBUSY: archive closed, ${reason}`), { code: `EBUSY` });\n let resolvedP = path_1.posix.resolve(`/`, p);\n if (resolvedP === `/`)\n return `/`;\n while (true) {\n const parentP = this.resolveFilename(reason, path_1.posix.dirname(resolvedP), true);\n const isDir = this.listings.has(parentP);\n const doesExist = this.entries.has(parentP);\n if (!isDir && !doesExist)\n throw Object.assign(new Error(`ENOENT: no such file or directory, ${reason}`), { code: `ENOENT` });\n if (!isDir)\n throw Object.assign(new Error(`ENOTDIR: not a directory, ${reason}`), { code: `ENOTDIR` });\n resolvedP = path_1.posix.resolve(parentP, path_1.posix.basename(resolvedP));\n if (!resolveLastComponent)\n break;\n const index = libzip_1.default.name.locate(this.zip, resolvedP);\n if (index === -1)\n break;\n if (this.isSymbolicLink(index)) {\n const target = this.getFileSource(index).toString();\n resolvedP = path_1.posix.resolve(path_1.posix.dirname(resolvedP), target);\n }\n else {\n break;\n }\n }\n return resolvedP;\n }\n setFileSource(p, content) {\n if (!Buffer.isBuffer(content))\n content = Buffer.from(content);\n const buffer = libzip_1.default.malloc(content.byteLength);\n if (!buffer)\n throw new Error(`Couldn't allocate enough memory`);\n // Copy the file into the Emscripten heap\n const heap = new Uint8Array(libzip_1.default.HEAPU8.buffer, buffer, content.byteLength);\n heap.set(content);\n const source = libzip_1.default.source.fromBuffer(this.zip, buffer, content.byteLength, 0, true);\n if (source === 0) {\n libzip_1.default.free(buffer);\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n }\n return libzip_1.default.file.add(this.zip, path_1.posix.relative(`/`, p), source, libzip_1.default.ZIP_FL_OVERWRITE);\n }\n isSymbolicLink(index) {\n const attrs = libzip_1.default.file.getExternalAttributes(this.zip, index, 0, 0, libzip_1.default.uint08S, libzip_1.default.uint32S);\n if (attrs === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n const opsys = libzip_1.default.getValue(libzip_1.default.uint08S, `i8`) >>> 0;\n if (opsys !== libzip_1.default.ZIP_OPSYS_UNIX)\n return false;\n const attributes = libzip_1.default.getValue(libzip_1.default.uint32S, `i32`) >>> 16;\n return (attributes & S_IFMT) === S_IFLNK;\n }\n getFileSource(index) {\n const stat = libzip_1.default.struct.statS();\n const rc = libzip_1.default.statIndex(this.zip, index, 0, 0, stat);\n if (rc === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n const size = libzip_1.default.struct.statSize(stat);\n const buffer = libzip_1.default.malloc(size);\n try {\n const file = libzip_1.default.fopenIndex(this.zip, index, 0, 0);\n if (file === 0)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n try {\n const rc = libzip_1.default.fread(file, buffer, size, 0);\n if (rc === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.file.getError(file)));\n else if (rc < size)\n throw new Error(`Incomplete read`);\n else if (rc > size)\n throw new Error(`Overread`);\n const memory = libzip_1.default.HEAPU8.subarray(buffer, buffer + size);\n const data = Buffer.from(memory);\n return data;\n }\n finally {\n libzip_1.default.fclose(file);\n }\n }\n finally {\n libzip_1.default.free(buffer);\n }\n }\n async chmodPromise(p, mask) {\n return this.chmodSync(p, mask);\n }\n chmodSync(p, mask) {\n const resolvedP = this.resolveFilename(`chmod '${p}'`, p, false);\n if (this.listings.has(resolvedP)) {\n if ((mask & 0o755) === 0o755) {\n return;\n }\n else {\n throw Object.assign(new Error(`EISDIR: illegal operation on a directory, chmod '${p}'`), { code: `EISDIR` });\n }\n }\n const entry = this.entries.get(resolvedP);\n if (entry === undefined)\n throw new Error(`Unreachable`);\n const oldMod = this.getUnixMode(entry, S_IFREG | 0o000);\n const newMod = oldMod & (~0o777) | mask;\n const rc = libzip_1.default.file.setExternalAttributes(this.zip, entry, 0, 0, libzip_1.default.ZIP_OPSYS_UNIX, newMod << 16);\n if (rc === -1) {\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n }\n }\n async renamePromise(oldP, newP) {\n return this.renameSync(oldP, newP);\n }\n renameSync(oldP, newP) {\n throw new Error(`Unimplemented`);\n }\n async copyFilePromise(sourceP, destP, flags) {\n return this.copyFileSync(sourceP, destP, flags);\n }\n copyFileSync(sourceP, destP, flags = 0) {\n if ((flags & fs_1.constants.COPYFILE_FICLONE_FORCE) !== 0)\n throw Object.assign(new Error(`ENOSYS: unsupported clone operation, copyfile '${sourceP}' -> ${destP}'`), { code: `ENOSYS` });\n const resolvedSourceP = this.resolveFilename(`copyfile '${sourceP} -> ${destP}'`, sourceP);\n const indexSource = this.entries.get(resolvedSourceP);\n if (typeof indexSource === `undefined`)\n throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${sourceP}' -> '${destP}'`), { code: `EINVAL` });\n const resolvedDestP = this.resolveFilename(`copyfile '${sourceP}' -> ${destP}'`, destP);\n const indexDest = this.entries.get(resolvedDestP);\n if ((flags & (fs_1.constants.COPYFILE_EXCL | fs_1.constants.COPYFILE_FICLONE_FORCE)) !== 0 && typeof indexDest !== `undefined`)\n throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${sourceP}' -> '${destP}'`), { code: `EEXIST` });\n const source = this.getFileSource(indexSource);\n const newIndex = this.setFileSource(resolvedDestP, source);\n if (newIndex !== indexDest) {\n this.registerEntry(resolvedDestP, newIndex);\n }\n }\n async writeFilePromise(p, content, opts) {\n return this.writeFileSync(p, content, opts);\n }\n writeFileSync(p, content, opts) {\n const resolvedP = this.resolveFilename(`open '${p}'`, p);\n if (this.listings.has(resolvedP))\n throw Object.assign(new Error(`EISDIR: illegal operation on a directory, open '${p}'`), { code: `EISDIR` });\n const index = this.entries.get(resolvedP);\n if (index !== undefined && typeof opts === `object` && opts.flag && opts.flag.includes(`a`))\n content = Buffer.concat([this.getFileSource(index), Buffer.from(content)]);\n let encoding = null;\n if (typeof opts === `string`)\n encoding = opts;\n else if (typeof opts === `object` && opts.encoding)\n encoding = opts.encoding;\n if (encoding !== null)\n content = content.toString(encoding);\n const newIndex = this.setFileSource(resolvedP, content);\n if (newIndex !== index) {\n this.registerEntry(resolvedP, newIndex);\n }\n }\n async unlinkPromise(p) {\n return this.unlinkSync(p);\n }\n unlinkSync(p) {\n throw new Error(`Unimplemented`);\n }\n async utimesPromise(p, atime, mtime) {\n return this.utimesSync(p, atime, mtime);\n }\n utimesSync(p, atime, mtime) {\n const resolvedP = this.resolveFilename(`chmod '${p}'`, p);\n return this.utimesImpl(resolvedP, mtime);\n }\n async lutimesPromise(p, atime, mtime) {\n return this.lutimesSync(p, atime, mtime);\n }\n lutimesSync(p, atime, mtime) {\n const resolvedP = this.resolveFilename(`chmod '${p}'`, p, false);\n return this.utimesImpl(resolvedP, mtime);\n }\n utimesImpl(resolvedP, mtime) {\n if (this.listings.has(resolvedP))\n if (!this.entries.has(resolvedP))\n this.hydrateDirectory(resolvedP);\n const entry = this.entries.get(resolvedP);\n if (entry === undefined)\n throw new Error(`Unreachable`);\n const rc = libzip_1.default.file.setMtime(this.zip, entry, 0, toUnixTimestamp(mtime), 0);\n if (rc === -1) {\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n }\n }\n async mkdirPromise(p) {\n return this.mkdirSync(p);\n }\n mkdirSync(p) {\n const resolvedP = this.resolveFilename(`mkdir '${p}'`, p);\n if (this.entries.has(resolvedP) || this.listings.has(resolvedP))\n throw Object.assign(new Error(`EEXIST: file already exists, mkdir '${p}'`), { code: `EEXIST` });\n this.hydrateDirectory(resolvedP);\n }\n async rmdirPromise(p) {\n return this.rmdirSync(p);\n }\n rmdirSync(p) {\n throw new Error(`Unimplemented`);\n }\n hydrateDirectory(resolvedP) {\n const index = libzip_1.default.dir.add(this.zip, path_1.posix.relative(`/`, resolvedP));\n if (index === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n this.registerListing(resolvedP);\n this.registerEntry(resolvedP, index);\n return index;\n }\n async symlinkPromise(target, p) {\n return this.symlinkSync(target, p);\n }\n symlinkSync(target, p) {\n const resolvedP = this.resolveFilename(`symlink '${target}' -> '${p}'`, p);\n if (this.listings.has(resolvedP))\n throw Object.assign(new Error(`EISDIR: illegal operation on a directory, symlink '${target}' -> '${p}'`), { code: `EISDIR` });\n if (this.entries.has(resolvedP))\n throw Object.assign(new Error(`EEXIST: file already exists, symlink '${target}' -> '${p}'`), { code: `EEXIST` });\n const index = this.setFileSource(resolvedP, target);\n this.registerEntry(resolvedP, index);\n const rc = libzip_1.default.file.setExternalAttributes(this.zip, index, 0, 0, libzip_1.default.ZIP_OPSYS_UNIX, (0o120000 | 0o777) << 16);\n if (rc === -1) {\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n }\n }\n async readFilePromise(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return this.readFileSync(p, encoding);\n default:\n return this.readFileSync(p, encoding);\n }\n }\n readFileSync(p, encoding) {\n // This is messed up regarding the TS signatures\n if (typeof encoding === `object`)\n // @ts-ignore\n encoding = encoding ? encoding.encoding : undefined;\n const resolvedP = this.resolveFilename(`open '${p}'`, p);\n if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOENT: no such file or directory, open '${p}'`), { code: `ENOENT` });\n // Ensures that the last component is a directory, if the user said so (even if it is we'll throw right after with EISDIR anyway)\n if (p[p.length - 1] === `/` && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOTDIR: not a directory, open '${p}'`), { code: `ENOTDIR` });\n if (this.listings.has(resolvedP))\n throw Object.assign(new Error(`EISDIR: illegal operation on a directory, read`), { code: `EISDIR` });\n const entry = this.entries.get(resolvedP);\n if (entry === undefined)\n throw new Error(`Unreachable`);\n const data = this.getFileSource(entry);\n return encoding ? data.toString(encoding) : data;\n }\n async readdirPromise(p) {\n return this.readdirSync(p);\n }\n readdirSync(p) {\n const resolvedP = this.resolveFilename(`scandir '${p}'`, p);\n if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOENT: no such file or directory, scandir '${p}'`), { code: `ENOENT` });\n const directoryListing = this.listings.get(resolvedP);\n if (!directoryListing)\n throw Object.assign(new Error(`ENOTDIR: not a directory, scandir '${p}'`), { code: `ENOTDIR` });\n return Array.from(directoryListing);\n }\n async readlinkPromise(p) {\n return this.readlinkSync(p);\n }\n readlinkSync(p) {\n const resolvedP = this.resolveFilename(`readlink '${p}'`, p, false);\n if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOENT: no such file or directory, readlink '${p}'`), { code: `ENOENT` });\n // Ensure that the last component is a directory (if it is we'll throw right after with EISDIR anyway)\n if (p[p.length - 1] === `/` && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOTDIR: not a directory, open '${p}'`), { code: `ENOTDIR` });\n if (this.listings.has(resolvedP))\n throw Object.assign(new Error(`EINVAL: invalid argument, readlink '${p}'`), { code: `EINVAL` });\n const entry = this.entries.get(resolvedP);\n if (entry === undefined)\n throw new Error(`Unreachable`);\n const rc = libzip_1.default.file.getExternalAttributes(this.zip, entry, 0, 0, libzip_1.default.uint08S, libzip_1.default.uint32S);\n if (rc === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n const opsys = libzip_1.default.getValue(libzip_1.default.uint08S, `i8`) >>> 0;\n if (opsys !== libzip_1.default.ZIP_OPSYS_UNIX)\n throw Object.assign(new Error(`EINVAL: invalid argument, readlink '${p}'`), { code: `EINVAL` });\n const attributes = libzip_1.default.getValue(libzip_1.default.uint32S, `i32`) >>> 16;\n if ((attributes & 0o170000) !== 0o120000)\n throw Object.assign(new Error(`EINVAL: invalid argument, readlink '${p}'`), { code: `EINVAL` });\n return this.getFileSource(entry).toString();\n }\n}\nexports.ZipFS = ZipFS;\n;\n\n\n/***/ }),\n/* 13 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst libzip_1 = __importDefault(__webpack_require__(14));\nconst number64 = [\n `number`,\n `number`,\n];\nexports.default = {\n // Those are getters because they can change after memory growth\n get HEAP8() { return libzip_1.default.HEAP8; },\n get HEAPU8() { return libzip_1.default.HEAPU8; },\n ZIP_CHECKCONS: 4,\n ZIP_CREATE: 1,\n ZIP_EXCL: 2,\n ZIP_TRUNCATE: 8,\n ZIP_RDONLY: 16,\n ZIP_FL_OVERWRITE: 8192,\n ZIP_OPSYS_DOS: 0x00,\n ZIP_OPSYS_AMIGA: 0x01,\n ZIP_OPSYS_OPENVMS: 0x02,\n ZIP_OPSYS_UNIX: 0x03,\n ZIP_OPSYS_VM_CMS: 0x04,\n ZIP_OPSYS_ATARI_ST: 0x05,\n ZIP_OPSYS_OS_2: 0x06,\n ZIP_OPSYS_MACINTOSH: 0x07,\n ZIP_OPSYS_Z_SYSTEM: 0x08,\n ZIP_OPSYS_CPM: 0x09,\n ZIP_OPSYS_WINDOWS_NTFS: 0x0a,\n ZIP_OPSYS_MVS: 0x0b,\n ZIP_OPSYS_VSE: 0x0c,\n ZIP_OPSYS_ACORN_RISC: 0x0d,\n ZIP_OPSYS_VFAT: 0x0e,\n ZIP_OPSYS_ALTERNATE_MVS: 0x0f,\n ZIP_OPSYS_BEOS: 0x10,\n ZIP_OPSYS_TANDEM: 0x11,\n ZIP_OPSYS_OS_400: 0x12,\n ZIP_OPSYS_OS_X: 0x13,\n uint08S: libzip_1.default._malloc(1),\n uint16S: libzip_1.default._malloc(2),\n uint32S: libzip_1.default._malloc(4),\n uint64S: libzip_1.default._malloc(8),\n malloc: libzip_1.default._malloc,\n free: libzip_1.default._free,\n getValue: libzip_1.default.getValue,\n open: libzip_1.default.cwrap(`zip_open`, `number`, [`string`, `number`, `number`]),\n close: libzip_1.default.cwrap(`zip_close`, `number`, [`number`]),\n discard: libzip_1.default.cwrap(`zip_discard`, `void`, [`number`]),\n getError: libzip_1.default.cwrap(`zip_get_error`, `number`, [`number`]),\n getName: libzip_1.default.cwrap(`zip_get_name`, `string`, [`number`, `number`, `number`]),\n getNumEntries: libzip_1.default.cwrap(`zip_get_num_entries`, `number`, [`number`, `number`]),\n stat: libzip_1.default.cwrap(`zip_stat`, `number`, [`number`, `string`, `number`, `number`]),\n statIndex: libzip_1.default.cwrap(`zip_stat_index`, `number`, [`number`, ...number64, `number`, `number`]),\n fopen: libzip_1.default.cwrap(`zip_fopen`, `number`, [`number`, `string`, `number`]),\n fopenIndex: libzip_1.default.cwrap(`zip_fopen_index`, `number`, [`number`, ...number64, `number`]),\n fread: libzip_1.default.cwrap(`zip_fread`, `number`, [`number`, `number`, `number`, `number`]),\n fclose: libzip_1.default.cwrap(`zip_fclose`, `number`, [`number`]),\n dir: {\n add: libzip_1.default.cwrap(`zip_dir_add`, `number`, [`number`, `string`]),\n },\n file: {\n add: libzip_1.default.cwrap(`zip_file_add`, `number`, [`number`, `string`, `number`, `number`]),\n getError: libzip_1.default.cwrap(`zip_file_get_error`, `number`, [`number`]),\n getExternalAttributes: libzip_1.default.cwrap(`zip_file_get_external_attributes`, `number`, [`number`, ...number64, `number`, `number`, `number`]),\n setExternalAttributes: libzip_1.default.cwrap(`zip_file_set_external_attributes`, `number`, [`number`, ...number64, `number`, `number`, `number`]),\n setMtime: libzip_1.default.cwrap(`zip_file_set_mtime`, `number`, [`number`, ...number64, `number`, `number`]),\n },\n error: {\n initWithCode: libzip_1.default.cwrap(`zip_error_init_with_code`, `void`, [`number`, `number`]),\n strerror: libzip_1.default.cwrap(`zip_error_strerror`, `string`, [`number`]),\n },\n name: {\n locate: libzip_1.default.cwrap(`zip_name_locate`, `number`, [`number`, `string`, `number`]),\n },\n source: {\n fromBuffer: libzip_1.default.cwrap(`zip_source_buffer`, `number`, [`number`, `number`, ...number64, `number`]),\n },\n struct: {\n stat: libzip_1.default.cwrap(`zipstruct_stat`, `number`, []),\n statS: libzip_1.default.cwrap(`zipstruct_statS`, `number`, []),\n statName: libzip_1.default.cwrap(`zipstruct_stat_name`, `string`, [`number`]),\n statIndex: libzip_1.default.cwrap(`zipstruct_stat_index`, `number`, [`number`]),\n statSize: libzip_1.default.cwrap(`zipstruct_stat_size`, `number`, [`number`]),\n statMtime: libzip_1.default.cwrap(`zipstruct_stat_mtime`, `number`, [`number`]),\n error: libzip_1.default.cwrap(`zipstruct_error`, `number`, []),\n errorS: libzip_1.default.cwrap(`zipstruct_errorS`, `number`, []),\n },\n};\n\n\n/***/ }),\n/* 14 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar frozenFs = Object.assign({}, __webpack_require__(7));\nvar Module=typeof Module!==\"undefined\"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module[\"arguments\"]=[];Module[\"thisProgram\"]=\"./this.program\";Module[\"quit\"]=(function(status,toThrow){throw toThrow});Module[\"preRun\"]=[];Module[\"postRun\"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=true;if(Module[\"ENVIRONMENT\"]){throw new Error(\"Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)\")}var scriptDirectory=\"\";function locateFile(path){if(Module[\"locateFile\"]){return Module[\"locateFile\"](path,scriptDirectory)}else{return scriptDirectory+path}}if(ENVIRONMENT_IS_NODE){if(!(typeof process===\"object\"&&\"function\"===\"function\"))throw new Error(\"not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)\");scriptDirectory=__dirname+\"/\";var nodeFS;var nodePath;Module[\"read\"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=frozenFs;if(!nodePath)nodePath=__webpack_require__(2);filename=nodePath[\"normalize\"](filename);ret=nodeFS[\"readFileSync\"](filename)}return binary?ret:ret.toString()};Module[\"readBinary\"]=function readBinary(filename){var ret=Module[\"read\"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process[\"argv\"].length>1){Module[\"thisProgram\"]=process[\"argv\"][1].replace(/\\\\/g,\"/\")}Module[\"arguments\"]=process[\"argv\"].slice(2);if(true){module[\"exports\"]=Module}(function(){})(\"uncaughtException\",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));(function(){})(\"unhandledRejection\",abort);Module[\"quit\"]=(function(status){process[\"exit\"](status)});Module[\"inspect\"]=(function(){return\"[Emscripten Module object]\"})}else{throw new Error(\"environment detection error\")}var out=Module[\"print\"]||(typeof console!==\"undefined\"?console.log.bind(console):typeof print!==\"undefined\"?print:null);var err=Module[\"printErr\"]||(typeof printErr!==\"undefined\"?printErr:typeof console!==\"undefined\"&&console.warn.bind(console)||out);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;assert(typeof Module[\"memoryInitializerPrefixURL\"]===\"undefined\",\"Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead\");assert(typeof Module[\"pthreadMainPrefixURL\"]===\"undefined\",\"Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead\");assert(typeof Module[\"cdInitializerPrefixURL\"]===\"undefined\",\"Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead\");assert(typeof Module[\"filePackagePrefixURL\"]===\"undefined\",\"Module.filePackagePrefixURL option was removed, use Module.locateFile instead\");stackSave=stackRestore=stackAlloc=(function(){abort(\"cannot use the stack before compiled code is ready to run, and has provided stack access\")});function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function getNativeTypeSize(type){switch(type){case\"i1\":case\"i8\":return 1;case\"i16\":return 2;case\"i32\":return 4;case\"i64\":return 8;case\"float\":return 4;case\"double\":return 8;default:{if(type[type.length-1]===\"*\"){return 4}else if(type[0]===\"i\"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}var asm2wasmImports={\"f64-rem\":(function(x,y){return x%y}),\"debugger\":(function(){debugger})};var functionPointers=new Array(0);var tempRet0=0;var setTempRet0=(function(value){tempRet0=value});var GLOBAL_BASE=1024;function getSafeHeapType(bytes,isFloat){switch(bytes){case 1:return\"i8\";case 2:return\"i16\";case 4:return isFloat?\"float\":\"i32\";case 8:return\"double\";default:assert(0)}}function SAFE_HEAP_STORE(dest,value,bytes,isFloat){if(dest<=0)abort(\"segmentation fault storing \"+bytes+\" bytes to address \"+dest);if(dest%bytes!==0)abort(\"alignment error storing to address \"+dest+\", which was expected to be aligned to a multiple of \"+bytes);if(dest+bytes>HEAP32[DYNAMICTOP_PTR>>2])abort(\"segmentation fault, exceeded the top of the available dynamic heap when storing \"+bytes+\" bytes to address \"+dest+\". DYNAMICTOP=\"+HEAP32[DYNAMICTOP_PTR>>2]);assert(DYNAMICTOP_PTR);assert(HEAP32[DYNAMICTOP_PTR>>2]<=TOTAL_MEMORY);setValue(dest,value,getSafeHeapType(bytes,isFloat),1)}function SAFE_HEAP_STORE_D(dest,value,bytes){SAFE_HEAP_STORE(dest,value,bytes,true)}function SAFE_HEAP_LOAD(dest,bytes,unsigned,isFloat){if(dest<=0)abort(\"segmentation fault loading \"+bytes+\" bytes from address \"+dest);if(dest%bytes!==0)abort(\"alignment error loading from address \"+dest+\", which was expected to be aligned to a multiple of \"+bytes);if(dest+bytes>HEAP32[DYNAMICTOP_PTR>>2])abort(\"segmentation fault, exceeded the top of the available dynamic heap when loading \"+bytes+\" bytes from address \"+dest+\". DYNAMICTOP=\"+HEAP32[DYNAMICTOP_PTR>>2]);assert(DYNAMICTOP_PTR);assert(HEAP32[DYNAMICTOP_PTR>>2]<=TOTAL_MEMORY);var type=getSafeHeapType(bytes,isFloat);var ret=getValue(dest,type,1);if(unsigned)ret=unSign(ret,parseInt(type.substr(1)),1);return ret}function SAFE_HEAP_LOAD_D(dest,bytes,unsigned){return SAFE_HEAP_LOAD(dest,bytes,unsigned,true)}function segfault(){abort(\"segmentation fault\")}function alignfault(){abort(\"alignment fault\")}var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort(\"Assertion failed: \"+text)}}function getCFunc(ident){var func=Module[\"_\"+ident];assert(func,\"Cannot call unknown function \"+ident+\", make sure it is exported\");return func}var JSfuncs={\"stackSave\":(function(){stackSave()}),\"stackRestore\":(function(){stackRestore()}),\"arrayToC\":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),\"stringToC\":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={\"string\":JSfuncs[\"stringToC\"],\"array\":JSfuncs[\"arrayToC\"]};function ccall(ident,returnType,argTypes,args,opts){function convertReturnValue(ret){if(returnType===\"string\")return Pointer_stringify(ret);if(returnType===\"boolean\")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;assert(returnType!==\"array\",'Return type should not be \"array\".');if(args){for(var i=0;i>0]=value;break;case\"i8\":HEAP8[ptr>>0]=value;break;case\"i16\":HEAP16[ptr>>1]=value;break;case\"i32\":HEAP32[ptr>>2]=value;break;case\"i64\":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case\"float\":HEAPF32[ptr>>2]=value;break;case\"double\":HEAPF64[ptr>>3]=value;break;default:abort(\"invalid type for setValue: \"+type)}}else{switch(type){case\"i1\":SAFE_HEAP_STORE(ptr|0,value|0,1);break;case\"i8\":SAFE_HEAP_STORE(ptr|0,value|0,1);break;case\"i16\":SAFE_HEAP_STORE(ptr|0,value|0,2);break;case\"i32\":SAFE_HEAP_STORE(ptr|0,value|0,4);break;case\"i64\":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/4294967296)>>>0:0)],SAFE_HEAP_STORE(ptr|0,tempI64[0]|0,4),SAFE_HEAP_STORE(ptr+4|0,tempI64[1]|0,4);break;case\"float\":SAFE_HEAP_STORE_D(ptr|0,Math_fround(value),4);break;case\"double\":SAFE_HEAP_STORE_D(ptr|0,+value,8);break;default:abort(\"invalid type for setValue: \"+type)}}}function getValue(ptr,type,noSafe){type=type||\"i8\";if(type.charAt(type.length-1)===\"*\")type=\"i32\";if(noSafe){switch(type){case\"i1\":return HEAP8[ptr>>0];case\"i8\":return HEAP8[ptr>>0];case\"i16\":return HEAP16[ptr>>1];case\"i32\":return HEAP32[ptr>>2];case\"i64\":return HEAP32[ptr>>2];case\"float\":return HEAPF32[ptr>>2];case\"double\":return HEAPF64[ptr>>3];default:abort(\"invalid type for getValue: \"+type)}}else{switch(type){case\"i1\":return SAFE_HEAP_LOAD(ptr|0,1,0)|0;case\"i8\":return SAFE_HEAP_LOAD(ptr|0,1,0)|0;case\"i16\":return SAFE_HEAP_LOAD(ptr|0,2,0)|0;case\"i32\":return SAFE_HEAP_LOAD(ptr|0,4,0)|0;case\"i64\":return SAFE_HEAP_LOAD(ptr|0,8,0)|0;case\"float\":return Math_fround(SAFE_HEAP_LOAD_D(ptr|0,4,0));case\"double\":return+SAFE_HEAP_LOAD_D(ptr|0,8,0);default:abort(\"invalid type for getValue: \"+type)}}return null}var ALLOC_NORMAL=0;var ALLOC_NONE=3;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab===\"number\"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types===\"string\"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[_malloc,stackAlloc,dynamicAlloc][allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType===\"i8\"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!==\"undefined\"?new TextDecoder(\"utf8\"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str=\"\";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){assert(typeof maxBytesToWrite==\"number\",\"stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!\");return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!==\"undefined\"?new TextDecoder(\"utf-16le\"):undefined;function demangle(func){warnOnce(\"warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling\");return func}function demangleAll(text){var regex=/__Z[\\w\\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:y+\" [\"+x+\"]\"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return\"(no stack trace available)\"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module[\"extraStackTrace\"])js+=\"\\n\"+Module[\"extraStackTrace\"]();return demangleAll(js)}var WASM_PAGE_SIZE=65536;var MIN_TOTAL_MEMORY=16777216;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBuffer(buf){Module[\"buffer\"]=buffer=buf}function updateGlobalBufferViews(){Module[\"HEAP8\"]=HEAP8=new Int8Array(buffer);Module[\"HEAP16\"]=HEAP16=new Int16Array(buffer);Module[\"HEAP32\"]=HEAP32=new Int32Array(buffer);Module[\"HEAPU8\"]=HEAPU8=new Uint8Array(buffer);Module[\"HEAPU16\"]=HEAPU16=new Uint16Array(buffer);Module[\"HEAPU32\"]=HEAPU32=new Uint32Array(buffer);Module[\"HEAPF32\"]=HEAPF32=new Float32Array(buffer);Module[\"HEAPF64\"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE=1024,STACK_BASE=22720,STACK_MAX=5265600,DYNAMIC_BASE=5265600,DYNAMICTOP_PTR=22464;assert(STACK_BASE%16===0,\"stack must start aligned\");assert(DYNAMIC_BASE%16===0,\"heap must start aligned\");function writeStackCookie(){assert((STACK_MAX&3)==0);HEAPU32[(STACK_MAX>>2)-1]=34821223;HEAPU32[(STACK_MAX>>2)-2]=2310721022}function checkStackCookie(){if(HEAPU32[(STACK_MAX>>2)-1]!=34821223||HEAPU32[(STACK_MAX>>2)-2]!=2310721022){abort(\"Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x\"+HEAPU32[(STACK_MAX>>2)-2].toString(16)+\" \"+HEAPU32[(STACK_MAX>>2)-1].toString(16))}if(HEAP32[0]!==1668509029)throw\"Runtime error: The application has corrupted its heap memory area (address zero)!\"}function abortStackOverflow(allocSize){abort(\"Stack overflow! Attempted to allocate \"+allocSize+\" bytes on the stack, but stack has only \"+(STACK_MAX-stackSave()+allocSize)+\" bytes available!\")}function abortOnCannotGrowMemory(){abort(\"Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value \"+TOTAL_MEMORY+\", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 \")}function enlargeMemory(){assert(HEAP32[DYNAMICTOP_PTR>>2]>TOTAL_MEMORY);var PAGE_MULTIPLE=65536;var LIMIT=2147483648-PAGE_MULTIPLE;if(HEAP32[DYNAMICTOP_PTR>>2]>LIMIT){err(\"Cannot enlarge memory, asked to go up to \"+HEAP32[DYNAMICTOP_PTR>>2]+\" bytes, but the limit is \"+LIMIT+\" bytes!\");return false}var OLD_TOTAL_MEMORY=TOTAL_MEMORY;TOTAL_MEMORY=Math.max(TOTAL_MEMORY,MIN_TOTAL_MEMORY);while(TOTAL_MEMORY>2]){if(TOTAL_MEMORY<=536870912){TOTAL_MEMORY=alignUp(2*TOTAL_MEMORY,PAGE_MULTIPLE)}else{TOTAL_MEMORY=Math.min(alignUp((3*TOTAL_MEMORY+2147483648)/4,PAGE_MULTIPLE),LIMIT);if(TOTAL_MEMORY===OLD_TOTAL_MEMORY){warnOnce(\"Cannot ask for more memory since we reached the practical limit in browsers (which is just below 2GB), so the request would have failed. Requesting only \"+TOTAL_MEMORY)}}}var start=Date.now();var replacement=Module[\"reallocBuffer\"](TOTAL_MEMORY);if(!replacement||replacement.byteLength!=TOTAL_MEMORY){err(\"Failed to grow the heap from \"+OLD_TOTAL_MEMORY+\" bytes to \"+TOTAL_MEMORY+\" bytes, not enough memory!\");if(replacement){err(\"Expected to get back a buffer of size \"+TOTAL_MEMORY+\" bytes, but instead got back a buffer of size \"+replacement.byteLength)}TOTAL_MEMORY=OLD_TOTAL_MEMORY;return false}updateGlobalBuffer(replacement);updateGlobalBufferViews();return true}var byteLength;try{byteLength=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,\"byteLength\").get);byteLength(new ArrayBuffer(4))}catch(e){byteLength=(function(buffer){return buffer.byteLength})}var TOTAL_STACK=5242880;if(Module[\"TOTAL_STACK\"])assert(TOTAL_STACK===Module[\"TOTAL_STACK\"],\"the stack size can no longer be determined at runtime\");var TOTAL_MEMORY=Module[\"TOTAL_MEMORY\"]||16777216;if(TOTAL_MEMORY>2]=DYNAMIC_BASE;function getTotalMemory(){return TOTAL_MEMORY}HEAP32[0]=1668509029;HEAP16[1]=25459;if(HEAPU8[2]!==115||HEAPU8[3]!==99)throw\"Runtime error: expected the system to be little-endian!\";function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback==\"function\"){callback();continue}var func=callback.func;if(typeof func===\"number\"){if(callback.arg===undefined){Module[\"dynCall_v\"](func)}else{Module[\"dynCall_vi\"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module[\"preRun\"]){if(typeof Module[\"preRun\"]==\"function\")Module[\"preRun\"]=[Module[\"preRun\"]];while(Module[\"preRun\"].length){addOnPreRun(Module[\"preRun\"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){checkStackCookie();if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){checkStackCookie();callRuntimeCallbacks(__ATMAIN__)}function postRun(){checkStackCookie();if(Module[\"postRun\"]){if(typeof Module[\"postRun\"]==\"function\")Module[\"postRun\"]=[Module[\"postRun\"]];while(Module[\"postRun\"].length){addOnPostRun(Module[\"postRun\"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}function writeArrayToMemory(array,buffer){assert(array.length>=0,\"writeArrayToMemory array must have a length (should be an array or typed array)\");HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i=0){return value}return bits<=32?2*Math.abs(1<=0){err(\"Memory size incompatibility issues may be due to changing TOTAL_MEMORY at runtime to something too large. Use ALLOW_MEMORY_GROWTH to allow any size memory (and also make sure not to set TOTAL_MEMORY at runtime to something smaller than it was at compile time).\")}return false}receiveInstance(instance,module);return exports}Module[\"asmPreload\"]=Module[\"asm\"];var wasmReallocBuffer=(function(size){var PAGE_MULTIPLE=65536;size=alignUp(size,PAGE_MULTIPLE);var old=Module[\"buffer\"];var oldSize=old.byteLength;try{var result=Module[\"wasmMemory\"].grow((size-oldSize)/wasmPageSize);if(result!==(-1|0)){return Module[\"buffer\"]=Module[\"wasmMemory\"].buffer}else{return null}}catch(e){console.error(\"Module.reallocBuffer: Attempted to grow from \"+oldSize+\" bytes to \"+size+\" bytes, but got error: \"+e);return null}});Module[\"reallocBuffer\"]=(function(size){return wasmReallocBuffer(size)});Module[\"asm\"]=(function(global,env,providedBuffer){if(!env[\"table\"]){assert(Module[\"wasmTableSize\"]!==undefined);var TABLE_SIZE=Module[\"wasmTableSize\"];var MAX_TABLE_SIZE=Module[\"wasmMaxTableSize\"];if(typeof WebAssembly===\"object\"&&typeof WebAssembly.Table===\"function\"){if(MAX_TABLE_SIZE!==undefined){env[\"table\"]=new WebAssembly.Table({\"initial\":TABLE_SIZE,\"maximum\":MAX_TABLE_SIZE,\"element\":\"anyfunc\"})}else{env[\"table\"]=new WebAssembly.Table({\"initial\":TABLE_SIZE,element:\"anyfunc\"})}}else{env[\"table\"]=new Array(TABLE_SIZE)}Module[\"wasmTable\"]=env[\"table\"]}if(!env[\"__memory_base\"]){env[\"__memory_base\"]=Module[\"STATIC_BASE\"]}if(!env[\"__table_base\"]){env[\"__table_base\"]=0}var exports=createWasm(global,env,providedBuffer);assert(exports,\"binaryen setup failed (no wasm support?)\");return exports})}integrateWasmJS();STATIC_BASE=GLOBAL_BASE;__ATINIT__.push({func:(function(){___emscripten_environ_constructor()})});var STATIC_BUMP=21696;Module[\"STATIC_BASE\"]=STATIC_BASE;Module[\"STATIC_BUMP\"]=STATIC_BUMP;var tempDoublePtr=22704;assert(tempDoublePtr%8==0);var ENV={};function ___buildEnvironment(environ){var MAX_ENV_VALUES=64;var TOTAL_ENV_SIZE=1024;var poolPtr;var envPtr;if(!___buildEnvironment.called){___buildEnvironment.called=true;ENV[\"USER\"]=ENV[\"LOGNAME\"]=\"web_user\";ENV[\"PATH\"]=\"/\";ENV[\"PWD\"]=\"/\";ENV[\"HOME\"]=\"/home/web_user\";ENV[\"LANG\"]=\"C.UTF-8\";ENV[\"_\"]=Module[\"thisProgram\"];poolPtr=getMemory(TOTAL_ENV_SIZE);envPtr=getMemory(MAX_ENV_VALUES*4);SAFE_HEAP_STORE(envPtr|0,poolPtr|0,4);SAFE_HEAP_STORE(environ|0,envPtr|0,4)}else{envPtr=SAFE_HEAP_LOAD(environ|0,4,0)|0;poolPtr=SAFE_HEAP_LOAD(envPtr|0,4,0)|0}var strings=[];var totalSize=0;for(var key in ENV){if(typeof ENV[key]===\"string\"){var line=key+\"=\"+ENV[key];strings.push(line);totalSize+=line.length}}if(totalSize>TOTAL_ENV_SIZE){throw new Error(\"Environment size exceeded TOTAL_ENV_SIZE!\")}var ptrSize=4;for(var i=0;i=0;i--){var last=parts[i];if(last===\".\"){parts.splice(i,1)}else if(last===\"..\"){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift(\"..\")}}return parts}),normalize:(function(path){var isAbsolute=path.charAt(0)===\"/\",trailingSlash=path.substr(-1)===\"/\";path=PATH.normalizeArray(path.split(\"/\").filter((function(p){return!!p})),!isAbsolute).join(\"/\");if(!path&&!isAbsolute){path=\".\"}if(path&&trailingSlash){path+=\"/\"}return(isAbsolute?\"/\":\"\")+path}),dirname:(function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return\".\"}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir}),basename:(function(path){if(path===\"/\")return\"/\";var lastSlash=path.lastIndexOf(\"/\");if(lastSlash===-1)return path;return path.substr(lastSlash+1)}),extname:(function(path){return PATH.splitPath(path)[3]}),join:(function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join(\"/\"))}),join2:(function(l,r){return PATH.normalize(l+\"/\"+r)}),resolve:(function(){var resolvedPath=\"\",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!==\"string\"){throw new TypeError(\"Arguments to path.resolve must be strings\")}else if(!path){return\"\"}resolvedPath=path+\"/\"+resolvedPath;resolvedAbsolute=path.charAt(0)===\"/\"}resolvedPath=PATH.normalizeArray(resolvedPath.split(\"/\").filter((function(p){return!!p})),!resolvedAbsolute).join(\"/\");return(resolvedAbsolute?\"/\":\"\")+resolvedPath||\".\"}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!==\"\")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split(\"/\"));var toParts=trim(to.split(\"/\"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i0){result=buf.slice(0,bytesRead).toString(\"utf-8\")}else{result=null}}else if(typeof window!=\"undefined\"&&typeof window.prompt==\"function\"){result=window.prompt(\"Input: \");if(result!==null){result+=\"\\n\"}}else if(typeof readline==\"function\"){result=readline();if(result!==null){result+=\"\\n\"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){out(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,\"/\",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;inode.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}if(!node.contents&&newCapacity>0)node.contents=[];while(node.contents.lengthnewSize)node.contents.length=newSize;else while(node.contents.length=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);assert(size>=0);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+length>2}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return stat.mode}),realPath:(function(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join.apply(null,parts)}),flagsForNode:(function(flags){flags&=~2097152;flags&=~2048;flags&=~32768;flags&=~524288;var newFlags=0;for(var k in NODEFS.flagsForNodeMap){if(flags&k){newFlags|=NODEFS.flagsForNodeMap[k];flags^=k}}if(!flags){return newFlags}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,\"\",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.flagsForNode(stream.flags))}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),close:(function(stream){try{if(FS.isFile(stream.node.mode)&&stream.nfd){fs.closeSync(stream.nfd)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),read:(function(stream,buffer,offset,length,position){if(length===0)return 0;try{return fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),write:(function(stream,buffer,offset,length,position){try{return fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};var NODERAWFS={lookupPath:(function(path){return{path:path,node:{mode:NODEFS.getMode(path)}}}),createStandardStreams:(function(){FS.streams[0]={fd:0,nfd:0,position:0,path:\"\",flags:0,tty:true,seekable:false};for(var i=1;i<3;i++){FS.streams[i]={fd:i,nfd:i,position:0,path:\"\",flags:577,tty:true,seekable:false}}}),cwd:(function(){return process.cwd()}),chdir:(function(){process.chdir.apply(void 0,arguments)}),mknod:(function(path,mode){if(FS.isDir(path)){fs.mkdirSync(path,mode)}else{fs.writeFileSync(path,\"\",{mode:mode})}}),mkdir:(function(){fs.mkdirSync.apply(void 0,arguments)}),symlink:(function(){fs.symlinkSync.apply(void 0,arguments)}),rename:(function(){fs.renameSync.apply(void 0,arguments)}),rmdir:(function(){fs.rmdirSync.apply(void 0,arguments)}),readdir:(function(){fs.readdirSync.apply(void 0,arguments)}),unlink:(function(){fs.unlinkSync.apply(void 0,arguments)}),readlink:(function(){return fs.readlinkSync.apply(void 0,arguments)}),stat:(function(){return fs.statSync.apply(void 0,arguments)}),lstat:(function(){return fs.lstatSync.apply(void 0,arguments)}),chmod:(function(){fs.chmodSync.apply(void 0,arguments)}),fchmod:(function(){fs.fchmodSync.apply(void 0,arguments)}),chown:(function(){fs.chownSync.apply(void 0,arguments)}),fchown:(function(){fs.fchownSync.apply(void 0,arguments)}),truncate:(function(){fs.truncateSync.apply(void 0,arguments)}),ftruncate:(function(){fs.ftruncateSync.apply(void 0,arguments)}),utime:(function(){fs.utimesSync.apply(void 0,arguments)}),open:(function(path,flags,mode,suggestFD){if(typeof flags===\"string\"){flags=VFS.modeStringToFlags(flags)}var nfd=fs.openSync(path,NODEFS.flagsForNode(flags),mode);var fd=suggestFD!=null?suggestFD:FS.nextfd(nfd);var stream={fd:fd,nfd:nfd,position:0,path:path,flags:flags,seekable:true};FS.streams[fd]=stream;return stream}),close:(function(stream){if(!stream.stream_ops){fs.closeSync(stream.nfd)}FS.closeStream(stream.fd)}),llseek:(function(stream,offset,whence){if(stream.stream_ops){return VFS.llseek(stream,offset,whence)}var position=offset;if(whence===1){position+=stream.position}else if(whence===2){position+=fs.fstatSync(stream.nfd).size}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}stream.position=position;return position}),read:(function(stream,buffer,offset,length,position){if(stream.stream_ops){return VFS.read(stream,buffer,offset,length,position)}var seeking=typeof position!==\"undefined\";if(!seeking&&stream.seekable)position=stream.position;var bytesRead=fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead}),write:(function(stream,buffer,offset,length,position){if(stream.stream_ops){return VFS.write(stream,buffer,offset,length,position)}if(stream.flags&+\"1024\"){FS.llseek(stream,0,+\"2\")}var seeking=typeof position!==\"undefined\";if(!seeking&&stream.seekable)position=stream.position;var bytesWritten=fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position);if(!seeking)stream.position+=bytesWritten;return bytesWritten}),allocate:(function(){throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP)}),mmap:(function(){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}),msync:(function(){return 0}),munmap:(function(){return 0}),ioctl:(function(){throw new FS.ErrnoError(ERRNO_CODES.ENOTTY)})};var ERRNO_MESSAGES={0:\"Success\",1:\"Not super-user\",2:\"No such file or directory\",3:\"No such process\",4:\"Interrupted system call\",5:\"I/O error\",6:\"No such device or address\",7:\"Arg list too long\",8:\"Exec format error\",9:\"Bad file number\",10:\"No children\",11:\"No more processes\",12:\"Not enough core\",13:\"Permission denied\",14:\"Bad address\",15:\"Block device required\",16:\"Mount device busy\",17:\"File exists\",18:\"Cross-device link\",19:\"No such device\",20:\"Not a directory\",21:\"Is a directory\",22:\"Invalid argument\",23:\"Too many open files in system\",24:\"Too many open files\",25:\"Not a typewriter\",26:\"Text file busy\",27:\"File too large\",28:\"No space left on device\",29:\"Illegal seek\",30:\"Read only file system\",31:\"Too many links\",32:\"Broken pipe\",33:\"Math arg out of domain of func\",34:\"Math result not representable\",35:\"File locking deadlock error\",36:\"File or path name too long\",37:\"No record locks available\",38:\"Function not implemented\",39:\"Directory not empty\",40:\"Too many symbolic links\",42:\"No message of desired type\",43:\"Identifier removed\",44:\"Channel number out of range\",45:\"Level 2 not synchronized\",46:\"Level 3 halted\",47:\"Level 3 reset\",48:\"Link number out of range\",49:\"Protocol driver not attached\",50:\"No CSI structure available\",51:\"Level 2 halted\",52:\"Invalid exchange\",53:\"Invalid request descriptor\",54:\"Exchange full\",55:\"No anode\",56:\"Invalid request code\",57:\"Invalid slot\",59:\"Bad font file fmt\",60:\"Device not a stream\",61:\"No data (for no delay io)\",62:\"Timer expired\",63:\"Out of streams resources\",64:\"Machine is not on the network\",65:\"Package not installed\",66:\"The object is remote\",67:\"The link has been severed\",68:\"Advertise error\",69:\"Srmount error\",70:\"Communication error on send\",71:\"Protocol error\",72:\"Multihop attempted\",73:\"Cross mount point (not really error)\",74:\"Trying to read unreadable message\",75:\"Value too large for defined data type\",76:\"Given log. name not unique\",77:\"f.d. invalid for this operation\",78:\"Remote address changed\",79:\"Can access a needed shared lib\",80:\"Accessing a corrupted shared lib\",81:\".lib section in a.out corrupted\",82:\"Attempting to link in too many libs\",83:\"Attempting to exec a shared library\",84:\"Illegal byte sequence\",86:\"Streams pipe error\",87:\"Too many users\",88:\"Socket operation on non-socket\",89:\"Destination address required\",90:\"Message too long\",91:\"Protocol wrong type for socket\",92:\"Protocol not available\",93:\"Unknown protocol\",94:\"Socket type not supported\",95:\"Not supported\",96:\"Protocol family not supported\",97:\"Address family not supported by protocol family\",98:\"Address already in use\",99:\"Address not available\",100:\"Network interface is not configured\",101:\"Network is unreachable\",102:\"Connection reset by network\",103:\"Connection aborted\",104:\"Connection reset by peer\",105:\"No buffer space available\",106:\"Socket is already connected\",107:\"Socket is not connected\",108:\"Can't send after socket shutdown\",109:\"Too many references\",110:\"Connection timed out\",111:\"Connection refused\",112:\"Host is down\",113:\"Host is unreachable\",114:\"Socket already connected\",115:\"Connection already in progress\",116:\"Stale file handle\",122:\"Quota exceeded\",123:\"No medium (in tape drive)\",125:\"Operation canceled\",130:\"Previous owner died\",131:\"State not recoverable\"};var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:\"/\",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:(function(e){if(!(e instanceof FS.ErrnoError))throw e+\" : \"+stackTrace();return ___setErrNo(e.errno)}),lookupPath:(function(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:\"\",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(40)}var parts=PATH.normalizeArray(path.split(\"/\").filter((function(p){return!!p})),false);var current=FS.root;var current_path=\"/\";for(var i=0;i40){throw new FS.ErrnoError(40)}}}}return{path:current_path,node:current}}),getPath:(function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!==\"/\"?mount+\"/\"+path:mount+path}path=path?node.name+\"/\"+path:node.name;node=node.parent}}),hashName:(function(parentid,name){var hash=0;for(var i=0;i>>0)%FS.nameTable.length}),hashAddNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node}),hashRemoveNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}}),lookupNode:(function(parent,name){var err=FS.mayLookup(parent);if(err){throw new FS.ErrnoError(err,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),flagModes:{\"r\":0,\"rs\":1052672,\"r+\":2,\"w\":577,\"wx\":705,\"xw\":705,\"w+\":578,\"wx+\":706,\"xw+\":706,\"a\":1089,\"ax\":1217,\"xa\":1217,\"a+\":1090,\"ax+\":1218,\"xa+\":1218},modeStringToFlags:(function(str){var flags=FS.flagModes[str];if(typeof flags===\"undefined\"){throw new Error(\"Unknown file open mode: \"+str)}return flags}),flagsToPermissionString:(function(flag){var perms=[\"r\",\"w\",\"rw\"][flag&3];if(flag&512){perms+=\"w\"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf(\"r\")!==-1&&!(node.mode&292)){return 13}else if(perms.indexOf(\"w\")!==-1&&!(node.mode&146)){return 13}else if(perms.indexOf(\"x\")!==-1&&!(node.mode&73)){return 13}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,\"x\");if(err)return err;if(!dir.node_ops.lookup)return 13;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return 17}catch(e){}return FS.nodePermissions(dir,\"wx\")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,\"wx\");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return 20}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 16}}else{if(FS.isDir(node.mode)){return 21}}return 0}),mayOpen:(function(node,flags){if(!node){return 2}if(FS.isLink(node.mode)){return 40}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!==\"r\"||flags&512){return 21}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(24)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(29)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate===\"function\"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log(\"warning: \"+FS.syncFSRequests+\" FS.syncfs operations in flight at once, probably just doing extra work\")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint===\"/\";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(16)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(16)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(20)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(22)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name===\".\"||name===\"..\"){throw new FS.ErrnoError(22)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(1)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdirTree:(function(path,mode){var dirs=path.split(\"/\");var d=\"\";for(var i=0;i\"}))}),staticInit:(function(){FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},\"/\");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={\"MEMFS\":MEMFS,\"NODEFS\":NODEFS}}),init:(function(input,output,error){assert(!FS.init.initialized,\"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)\");FS.init.initialized=true;FS.ensureErrnoError();Module[\"stdin\"]=input||Module[\"stdin\"];Module[\"stdout\"]=output||Module[\"stdout\"];Module[\"stderr\"]=error||Module[\"stderr\"];FS.createStandardStreams()}),quit:(function(){FS.init.initialized=false;var fflush=Module[\"_fflush\"];if(fflush)fflush(0);for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open(\"HEAD\",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error(\"Couldn't load \"+url+\". Status: \"+xhr.status);var datalength=Number(xhr.getResponseHeader(\"Content-length\"));var header;var hasByteServing=(header=xhr.getResponseHeader(\"Accept-Ranges\"))&&header===\"bytes\";var usesGzip=(header=xhr.getResponseHeader(\"Content-Encoding\"))&&header===\"gzip\";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error(\"invalid range (\"+from+\", \"+to+\") or no bytes requested!\");if(to>datalength-1)throw new Error(\"only \"+datalength+\" bytes available! programmer error!\");var xhr=new XMLHttpRequest;xhr.open(\"GET\",url,false);if(datalength!==chunkSize)xhr.setRequestHeader(\"Range\",\"bytes=\"+from+\"-\"+to);if(typeof Uint8Array!=\"undefined\")xhr.responseType=\"arraybuffer\";if(xhr.overrideMimeType){xhr.overrideMimeType(\"text/plain; charset=x-user-defined\")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error(\"Couldn't load \"+url+\". Status: \"+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||\"\",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]===\"undefined\"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]===\"undefined\")throw new Error(\"doXHR failed!\");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log(\"LazyFiles on gzip forces download of the whole file when length is accessed\")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!==\"undefined\"){if(!ENVIRONMENT_IS_WORKER)throw\"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc\";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(5)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(5)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall10(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr();FS.unlink(path);return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);SAFE_HEAP_STORE(result|0,stream.position|0,4);if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall15(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),mode=SYSCALLS.get();FS.chmod(path,mode);return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall195(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,path,buf)}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall197(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,stream.path,buf)}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;SAFE_HEAP_STORE(arg+offset|0,2|0,2);return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall38(which,varargs){SYSCALLS.varargs=varargs;try{var old_path=SYSCALLS.getStr(),new_path=SYSCALLS.getStr();FS.rename(old_path,new_path);return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall40(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr();FS.rmdir(path);return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21509:case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();SAFE_HEAP_STORE(argp|0,0|0,4);return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};case 21523:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21524:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};default:abort(\"bad ioctl syscall \"+op)}}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall60(which,varargs){SYSCALLS.varargs=varargs;try{var mask=SYSCALLS.get();var old=SYSCALLS.umask;SYSCALLS.umask=mask;return old}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___unlock(){}var ___tm_current=22560;var ___tm_timezone=(stringToUTF8(\"GMT\",22608,4),22608);function _tzset(){if(_tzset.called)return;_tzset.called=true;SAFE_HEAP_STORE(__get_timezone()|0,(new Date).getTimezoneOffset()*60|0,4);var winter=new Date(2e3,0,1);var summer=new Date(2e3,6,1);SAFE_HEAP_STORE(__get_daylight()|0,Number(winter.getTimezoneOffset()!=summer.getTimezoneOffset())|0,4);function extractZone(date){var match=date.toTimeString().match(/\\(([A-Za-z ]+)\\)$/);return match?match[1]:\"GMT\"}var winterName=extractZone(winter);var summerName=extractZone(summer);var winterNamePtr=allocate(intArrayFromString(winterName),\"i8\",ALLOC_NORMAL);var summerNamePtr=allocate(intArrayFromString(summerName),\"i8\",ALLOC_NORMAL);if(summer.getTimezoneOffset()0!=(dstOffset==guessedOffset)){var nonDstOffset=Math.max(winterOffset,summerOffset);var trueOffset=dst>0?dstOffset:nonDstOffset;date.setTime(date.getTime()+(trueOffset-guessedOffset)*6e4)}SAFE_HEAP_STORE(tmPtr+24|0,date.getDay()|0,4);var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;SAFE_HEAP_STORE(tmPtr+28|0,yday|0,4);return date.getTime()/1e3|0}function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){SAFE_HEAP_STORE(ptr|0,ret|0,4)}return ret}if(ENVIRONMENT_IS_NODE){_emscripten_get_now=function _emscripten_get_now_actual(){var t=process[\"hrtime\"]();return t[0]*1e3+t[1]/1e6}}else if(typeof dateNow!==\"undefined\"){_emscripten_get_now=dateNow}else if(typeof self===\"object\"&&self[\"performance\"]&&typeof self[\"performance\"][\"now\"]===\"function\"){_emscripten_get_now=(function(){return self[\"performance\"][\"now\"]()})}else if(typeof performance===\"object\"&&typeof performance[\"now\"]===\"function\"){_emscripten_get_now=(function(){return performance[\"now\"]()})}else{_emscripten_get_now=Date.now}FS.staticInit();__ATINIT__.unshift((function(){if(!Module[\"noFSInit\"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((function(){FS.quit()}));__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=frozenFs;var NODEJS_PATH=__webpack_require__(2);NODEFS.staticInit()}if(ENVIRONMENT_IS_NODE){var _wrapNodeError=(function(func){return(function(){try{return func.apply(this,arguments)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})});var VFS=Object.assign({},FS);for(var _key in NODERAWFS)FS[_key]=_wrapNodeError(NODERAWFS[_key])}else{throw new Error(\"NODERAWFS is currently only supported on Node.js environment.\")}function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}var decodeBase64=typeof atob===\"function\"?atob:(function(input){var keyStr=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";var output=\"\";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\\+\\/\\=]/g,\"\");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i0){return}writeStackCookie();preRun();if(runDependencies>0)return;if(Module[\"calledRun\"])return;function doRun(){if(Module[\"calledRun\"])return;Module[\"calledRun\"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module[\"onRuntimeInitialized\"])Module[\"onRuntimeInitialized\"]();assert(!Module[\"_main\"],'compiled without a main, but one is present. if you added it from JS, use Module[\"onRuntimeInitialized\"]');postRun()}if(Module[\"setStatus\"]){Module[\"setStatus\"](\"Running...\");setTimeout((function(){setTimeout((function(){Module[\"setStatus\"](\"\")}),1);doRun()}),1)}else{doRun()}checkStackCookie()}Module[\"run\"]=run;var abortDecorators=[];function abort(what){if(Module[\"onAbort\"]){Module[\"onAbort\"](what)}if(what!==undefined){out(what);err(what);what=JSON.stringify(what)}else{what=\"\"}ABORT=true;EXITSTATUS=1;var extra=\"\";var output=\"abort(\"+what+\") at \"+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module[\"abort\"]=abort;if(Module[\"preInit\"]){if(typeof Module[\"preInit\"]==\"function\")Module[\"preInit\"]=[Module[\"preInit\"]];while(Module[\"preInit\"].length>0){Module[\"preInit\"].pop()()}}Module[\"noExitRuntime\"]=true;run()\n\n\n\n\n\n/***/ }),\n/* 15 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"crypto\");\n\n/***/ }),\n/* 16 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"stream\");\n\n/***/ }),\n/* 17 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"util\");\n\n/***/ }),\n/* 18 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst fs_1 = __webpack_require__(7);\nconst path_1 = __webpack_require__(2);\nconst FakeFS_1 = __webpack_require__(8);\nconst NodeFS_1 = __webpack_require__(6);\nconst ZipFS_1 = __webpack_require__(12);\nclass ZipOpenFS extends FakeFS_1.FakeFS {\n constructor({ baseFs = new NodeFS_1.NodeFS(), filter = null, useCache = true } = {}) {\n super();\n this.isZip = new Set();\n this.notZip = new Set();\n this.baseFs = baseFs;\n this.zipInstances = useCache ? new Map() : null;\n this.filter = filter;\n this.isZip = new Set();\n this.notZip = new Set();\n }\n static open(fn) {\n const zipOpenFs = new ZipOpenFS();\n try {\n return fn(zipOpenFs);\n }\n finally {\n zipOpenFs.saveAndClose();\n }\n }\n static async openPromise(fn) {\n const zipOpenFs = new ZipOpenFS();\n try {\n return await fn(zipOpenFs);\n }\n finally {\n zipOpenFs.saveAndClose();\n }\n }\n getRealPath() {\n return this.baseFs.getRealPath();\n }\n saveAndClose() {\n if (this.zipInstances) {\n for (const [path, zipFs] of this.zipInstances.entries()) {\n zipFs.saveAndClose();\n this.zipInstances.delete(path);\n }\n }\n }\n discardAndClose() {\n if (this.zipInstances) {\n for (const [path, zipFs] of this.zipInstances.entries()) {\n zipFs.discardAndClose();\n this.zipInstances.delete(path);\n }\n }\n }\n async openPromise(p, flags, mode) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.openPromise(p, flags, mode);\n }, async (zipFs, { archivePath, subPath }) => {\n throw new Error(`Unsupported action (we wouldn't be able to disambiguate the close)`);\n });\n }\n openSync(p, flags, mode) {\n return this.makeCallSync(p, () => {\n return this.baseFs.openSync(p, flags, mode);\n }, (zipFs, { archivePath, subPath }) => {\n throw new Error(`Unsupported action (we wouldn't be able to disambiguate the close)`);\n });\n }\n async closePromise(fd) {\n return await this.baseFs.closePromise(fd);\n }\n closeSync(fd) {\n return this.baseFs.closeSync(fd);\n }\n createReadStream(p, opts) {\n return this.makeCallSync(p, () => {\n return this.baseFs.createReadStream(p, opts);\n }, (zipFs, { subPath }) => {\n return zipFs.createReadStream(subPath, opts);\n });\n }\n createWriteStream(p, opts) {\n return this.makeCallSync(p, () => {\n return this.baseFs.createWriteStream(p, opts);\n }, (zipFs, { subPath }) => {\n return zipFs.createWriteStream(subPath, opts);\n });\n }\n async realpathPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.realpathPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return path_1.posix.resolve(archivePath, path_1.posix.relative(`/`, await zipFs.realpathPromise(subPath)));\n });\n }\n realpathSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.realpathSync(p);\n }, (zipFs, { archivePath, subPath }) => {\n return path_1.posix.resolve(archivePath, path_1.posix.relative(`/`, zipFs.realpathSync(subPath)));\n });\n }\n async existsPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.existsPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.existsPromise(subPath);\n });\n }\n existsSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.existsSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.existsSync(subPath);\n });\n }\n async statPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.statPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.statPromise(subPath);\n });\n }\n statSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.statSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.statSync(subPath);\n });\n }\n async lstatPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.lstatPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.lstatPromise(subPath);\n });\n }\n lstatSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.lstatSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.lstatSync(subPath);\n });\n }\n async chmodPromise(p, mask) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.chmodPromise(p, mask);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.chmodPromise(subPath, mask);\n });\n }\n chmodSync(p, mask) {\n return this.makeCallSync(p, () => {\n return this.baseFs.chmodSync(p, mask);\n }, (zipFs, { subPath }) => {\n return zipFs.chmodSync(subPath, mask);\n });\n }\n async renamePromise(oldP, newP) {\n return await this.makeCallPromise(oldP, async () => {\n return await this.makeCallPromise(newP, async () => {\n return await this.baseFs.renamePromise(oldP, newP);\n }, async () => {\n throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });\n });\n }, async (zipFsO, { archivePath: archivePathO, subPath: subPathO }) => {\n return await this.makeCallPromise(newP, async () => {\n throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });\n }, async (zipFsN, { archivePath: archivePathN, subPath: subPathN }) => {\n if (zipFsO !== zipFsN) {\n throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });\n }\n else {\n return await zipFsO.renamePromise(subPathO, subPathN);\n }\n });\n });\n }\n renameSync(oldP, newP) {\n return this.makeCallSync(oldP, () => {\n return this.makeCallSync(newP, () => {\n return this.baseFs.renameSync(oldP, newP);\n }, async () => {\n throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });\n });\n }, (zipFsO, { archivePath: archivePathO, subPath: subPathO }) => {\n return this.makeCallSync(newP, () => {\n throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });\n }, (zipFsN, { archivePath: archivePathN, subPath: subPathN }) => {\n if (zipFsO !== zipFsN) {\n throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });\n }\n else {\n return zipFsO.renameSync(subPathO, subPathN);\n }\n });\n });\n }\n async copyFilePromise(sourceP, destP, flags = 0) {\n const fallback = async (sourceFs, sourceP, destFs, destP) => {\n if ((flags & fs_1.constants.COPYFILE_FICLONE_FORCE) !== 0)\n throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${sourceP}' -> ${destP}'`), { code: `EXDEV` });\n if ((flags & fs_1.constants.COPYFILE_EXCL) && await this.existsPromise(sourceP))\n throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${sourceP}' -> '${destP}'`), { code: `EEXIST` });\n let content;\n try {\n content = await sourceFs.readFilePromise(sourceP);\n }\n catch (error) {\n throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${sourceP}' -> '${destP}'`), { code: `EINVAL` });\n }\n await destFs.writeFilePromise(destP, content);\n };\n return await this.makeCallPromise(sourceP, async () => {\n return await this.makeCallPromise(destP, async () => {\n return await this.baseFs.copyFilePromise(sourceP, destP, flags);\n }, async (zipFsD, { archivePath: archivePathD, subPath: subPathD }) => {\n return await fallback(this.baseFs, sourceP, zipFsD, subPathD);\n });\n }, async (zipFsS, { archivePath: archivePathS, subPath: subPathS }) => {\n return await this.makeCallPromise(destP, async () => {\n return await fallback(zipFsS, subPathS, this.baseFs, destP);\n }, async (zipFsD, { archivePath: archivePathD, subPath: subPathD }) => {\n if (zipFsS !== zipFsD) {\n return await fallback(zipFsS, subPathS, zipFsD, subPathD);\n }\n else {\n return await zipFsS.copyFilePromise(subPathS, subPathD, flags);\n }\n });\n });\n }\n copyFileSync(sourceP, destP, flags = 0) {\n const fallback = (sourceFs, sourceP, destFs, destP) => {\n if ((flags & fs_1.constants.COPYFILE_FICLONE_FORCE) !== 0)\n throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${sourceP}' -> ${destP}'`), { code: `EXDEV` });\n if ((flags & fs_1.constants.COPYFILE_EXCL) && this.existsSync(sourceP))\n throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${sourceP}' -> '${destP}'`), { code: `EEXIST` });\n let content;\n try {\n content = sourceFs.readFileSync(sourceP);\n }\n catch (error) {\n throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${sourceP}' -> '${destP}'`), { code: `EINVAL` });\n }\n destFs.writeFileSync(destP, content);\n };\n return this.makeCallSync(sourceP, () => {\n return this.makeCallSync(destP, () => {\n return this.baseFs.copyFileSync(sourceP, destP, flags);\n }, (zipFsD, { archivePath: archivePathD, subPath: subPathD }) => {\n return fallback(this.baseFs, sourceP, zipFsD, subPathD);\n });\n }, (zipFsS, { archivePath: archivePathS, subPath: subPathS }) => {\n return this.makeCallSync(destP, () => {\n return fallback(zipFsS, subPathS, this.baseFs, destP);\n }, (zipFsD, { archivePath: archivePathD, subPath: subPathD }) => {\n if (zipFsS !== zipFsD) {\n return fallback(zipFsS, subPathS, zipFsD, subPathD);\n }\n else {\n return zipFsS.copyFileSync(subPathS, subPathD, flags);\n }\n });\n });\n }\n async writeFilePromise(p, content, opts) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.writeFilePromise(p, content, opts);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.writeFilePromise(subPath, content, opts);\n });\n }\n writeFileSync(p, content, opts) {\n return this.makeCallSync(p, () => {\n return this.baseFs.writeFileSync(p, content, opts);\n }, (zipFs, { subPath }) => {\n return zipFs.writeFileSync(subPath, content, opts);\n });\n }\n async unlinkPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.unlinkPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.unlinkPromise(subPath);\n });\n }\n unlinkSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.unlinkSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.unlinkSync(subPath);\n });\n }\n async utimesPromise(p, atime, mtime) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.utimesPromise(p, atime, mtime);\n }, async (zipFs, { subPath }) => {\n return await zipFs.utimesPromise(subPath, atime, mtime);\n });\n }\n utimesSync(p, atime, mtime) {\n return this.makeCallSync(p, () => {\n return this.baseFs.utimesSync(p, atime, mtime);\n }, (zipFs, { subPath }) => {\n return zipFs.utimesSync(subPath, atime, mtime);\n });\n }\n async mkdirPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.mkdirPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.mkdirPromise(subPath);\n });\n }\n mkdirSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.mkdirSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.mkdirSync(subPath);\n });\n }\n async rmdirPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.rmdirPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.rmdirPromise(subPath);\n });\n }\n rmdirSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.rmdirSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.rmdirSync(subPath);\n });\n }\n async symlinkPromise(target, p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.symlinkPromise(target, p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.symlinkPromise(target, subPath);\n });\n }\n symlinkSync(target, p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.symlinkSync(target, p);\n }, (zipFs, { subPath }) => {\n return zipFs.symlinkSync(target, subPath);\n });\n }\n async readFilePromise(p, encoding) {\n return this.makeCallPromise(p, async () => {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return await this.baseFs.readFilePromise(p, encoding);\n default:\n return await this.baseFs.readFilePromise(p, encoding);\n }\n }, async (zipFs, { subPath }) => {\n return await zipFs.readFilePromise(subPath, encoding);\n });\n }\n readFileSync(p, encoding) {\n return this.makeCallSync(p, () => {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return this.baseFs.readFileSync(p, encoding);\n default:\n return this.baseFs.readFileSync(p, encoding);\n }\n }, (zipFs, { subPath }) => {\n return zipFs.readFileSync(subPath, encoding);\n });\n }\n async readdirPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.readdirPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.readdirPromise(subPath);\n }, {\n requireSubpath: false,\n });\n }\n readdirSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.readdirSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.readdirSync(subPath);\n }, {\n requireSubpath: false,\n });\n }\n async readlinkPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.readlinkPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.readlinkPromise(subPath);\n });\n }\n readlinkSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.readlinkSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.readlinkSync(subPath);\n });\n }\n async makeCallPromise(p, discard, accept, { requireSubpath = true } = {}) {\n p = path_1.posix.normalize(path_1.posix.resolve(`/`, p));\n const zipInfo = this.findZip(p);\n if (!zipInfo)\n return await discard();\n if (requireSubpath && zipInfo.subPath === `/`)\n return await discard();\n return await this.getZipPromise(zipInfo.archivePath, async (zipFs) => await accept(zipFs, zipInfo));\n }\n makeCallSync(p, discard, accept, { requireSubpath = true } = {}) {\n p = path_1.posix.normalize(path_1.posix.resolve(`/`, p));\n const zipInfo = this.findZip(p);\n if (!zipInfo)\n return discard();\n if (requireSubpath && zipInfo.subPath === `/`)\n return discard();\n return this.getZipSync(zipInfo.archivePath, zipFs => accept(zipFs, zipInfo));\n }\n findZip(p) {\n if (this.filter && !this.filter.test(p))\n return null;\n const parts = p.split(/\\//g);\n for (let t = 2; t <= parts.length; ++t) {\n const archivePath = parts.slice(0, t).join(`/`);\n if (this.notZip.has(archivePath))\n continue;\n if (this.isZip.has(archivePath))\n return { archivePath, subPath: path_1.posix.resolve(`/`, parts.slice(t).join(`/`)) };\n let realArchivePath = archivePath;\n let stat;\n while (true) {\n try {\n stat = this.baseFs.lstatSync(realArchivePath);\n }\n catch (error) {\n return null;\n }\n if (stat.isSymbolicLink()) {\n realArchivePath = path_1.posix.resolve(path_1.posix.dirname(realArchivePath), this.baseFs.readlinkSync(realArchivePath));\n }\n else {\n break;\n }\n }\n const isZip = stat.isFile() && path_1.posix.extname(realArchivePath) === `.zip`;\n if (isZip) {\n this.isZip.add(archivePath);\n return { archivePath, subPath: path_1.posix.resolve(`/`, parts.slice(t).join(`/`)) };\n }\n else {\n this.notZip.add(archivePath);\n if (stat.isFile()) {\n return null;\n }\n }\n }\n return null;\n }\n async getZipPromise(p, accept) {\n if (this.zipInstances) {\n let zipFs = this.zipInstances.get(p);\n if (!zipFs)\n this.zipInstances.set(p, zipFs = new ZipFS_1.ZipFS(p, { baseFs: this.baseFs, stats: await this.baseFs.statPromise(p) }));\n return await accept(zipFs);\n }\n else {\n const zipFs = new ZipFS_1.ZipFS(p, { baseFs: this.baseFs, stats: await this.baseFs.statPromise(p) });\n try {\n return await accept(zipFs);\n }\n finally {\n zipFs.saveAndClose();\n }\n }\n }\n getZipSync(p, accept) {\n if (this.zipInstances) {\n let zipFs = this.zipInstances.get(p);\n if (!zipFs)\n this.zipInstances.set(p, zipFs = new ZipFS_1.ZipFS(p, { baseFs: this.baseFs }));\n return accept(zipFs);\n }\n else {\n const zipFs = new ZipFS_1.ZipFS(p, { baseFs: this.baseFs });\n try {\n return accept(zipFs);\n }\n finally {\n zipFs.saveAndClose();\n }\n }\n }\n}\nexports.ZipOpenFS = ZipOpenFS;\n\n\n/***/ }),\n/* 19 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n/**\n * Simple helper function that assign an error code to an error, so that it can more easily be caught and used\n * by third-parties.\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nfunction makeError(code, message, data = {}) {\n const error = new Error(message);\n return Object.assign(error, { code, data });\n}\nexports.makeError = makeError;\n/**\n * Returns the module that should be used to resolve require calls. It's usually the direct parent, except if we're\n * inside an eval expression.\n */\nfunction getIssuerModule(parent) {\n let issuer = parent;\n while (issuer && (issuer.id === '[eval]' || issuer.id === '' || !issuer.filename)) {\n issuer = issuer.parent;\n }\n return issuer;\n}\nexports.getIssuerModule = getIssuerModule;\n\n\n/***/ }),\n/* 20 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst path_1 = __importDefault(__webpack_require__(2));\nfunction hydrateRuntimeState(data, { basePath }) {\n const ignorePattern = data.ignorePatternData\n ? new RegExp(data.ignorePatternData)\n : null;\n const packageRegistry = new Map(data.packageRegistryData.map(([packageName, packageStoreData]) => {\n return [packageName, new Map(packageStoreData.map(([packageReference, packageInformationData]) => {\n return [packageReference, {\n packageLocation: path_1.default.resolve(basePath, packageInformationData.packageLocation),\n packageDependencies: new Map(packageInformationData.packageDependencies),\n }];\n }))];\n }));\n const packageLocatorsByLocations = new Map(data.locationBlacklistData.map(location => {\n return [location, null];\n }));\n for (const [packageName, storeData] of data.packageRegistryData) {\n for (const [packageReference, packageInformationData] of storeData) {\n if ((packageName === null) !== (packageReference === null))\n throw new Error(`Assertion failed: The name and reference should be null, or neither should`);\n // @ts-ignore: TypeScript isn't smart enough to understand the type assertion\n const packageLocator = { name: packageName, reference: packageReference };\n packageLocatorsByLocations.set(packageInformationData.packageLocation, packageLocator);\n }\n }\n const packageLocationLengths = data.locationLengthData;\n return {\n basePath,\n ignorePattern,\n packageRegistry,\n packageLocatorsByLocations,\n packageLocationLengths,\n };\n}\nexports.hydrateRuntimeState = hydrateRuntimeState;\n\n\n/***/ }),\n/* 21 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst fs_1 = __importDefault(__webpack_require__(7));\nconst module_1 = __importDefault(__webpack_require__(1));\nconst path_1 = __importDefault(__webpack_require__(2));\nconst internalTools_1 = __webpack_require__(19);\nfunction makeApi(runtimeState, opts) {\n // @ts-ignore\n const builtinModules = new Set(module_1.default.builtinModules || Object.keys(process.binding('natives')));\n // Splits a require request into its components, or return null if the request is a file path\n const pathRegExp = /^(?![a-zA-Z]:[\\\\\\/]|\\\\\\\\|\\.{0,2}(?:\\/|$))((?:@[^\\/]+\\/)?[^\\/]+)\\/?(.*|)$/;\n // Matches if the path starts with a valid path qualifier (./, ../, /)\n // eslint-disable-next-line no-unused-vars\n const isStrictRegExp = /^\\.{0,2}\\//;\n // Matches if the path must point to a directory (ie ends with /)\n const isDirRegExp = /\\/$/;\n // Matches backslashes of Windows paths\n const backwardSlashRegExp = /\\\\/g;\n // We only instantiate one of those so that we can use strict-equal comparisons\n const topLevelLocator = { name: null, reference: null };\n // Used for compatibility purposes - cf setupCompatibilityLayer\n const fallbackLocators = [topLevelLocator];\n if (opts.compatibilityMode) {\n // ESLint currently doesn't have any portable way for shared configs to specify their own\n // plugins that should be used (https://github.com/eslint/eslint/issues/10125). This will\n // likely get fixed at some point, but it'll take time and in the meantime we'll just add\n // additional fallback entries for common shared configs.\n for (const name of [`gatsby`, `react-scripts`]) {\n const packageStore = runtimeState.packageRegistry.get(name);\n if (packageStore) {\n for (const reference of packageStore.keys()) {\n if (reference === null) {\n throw new Error(`Assertion failed: This reference shouldn't be null`);\n }\n else {\n fallbackLocators.push({ name, reference });\n }\n }\n }\n }\n }\n /**\n * The setup code will be injected here. The tables listed below are guaranteed to be filled after the call to\n * the $$DYNAMICALLY_GENERATED_CODE function.\n */\n const { ignorePattern, packageRegistry, packageLocatorsByLocations, packageLocationLengths, } = runtimeState;\n /**\n * Returns information about a package in a safe way (will throw if they cannot be retrieved)\n */\n function getPackageInformationSafe(packageLocator) {\n const packageInformation = getPackageInformation(packageLocator);\n if (!packageInformation) {\n throw internalTools_1.makeError(`INTERNAL`, `Couldn't find a matching entry in the dependency tree for the specified parent (this is probably an internal error)`);\n }\n return packageInformation;\n }\n /**\n * Implements the node resolution for folder access and extension selection\n */\n function applyNodeExtensionResolution(unqualifiedPath, candidates, { extensions }) {\n // We use this \"infinite while\" so that we can restart the process as long as we hit package folders\n while (true) {\n let stat;\n try {\n candidates.push(unqualifiedPath);\n stat = fs_1.default.statSync(unqualifiedPath);\n }\n catch (error) { }\n // If the file exists and is a file, we can stop right there\n if (stat && !stat.isDirectory()) {\n // If the very last component of the resolved path is a symlink to a file, we then resolve it to a file. We only\n // do this first the last component, and not the rest of the path! This allows us to support the case of bin\n // symlinks, where a symlink in \"/xyz/pkg-name/.bin/bin-name\" will point somewhere else (like \"/xyz/pkg-name/index.js\").\n // In such a case, we want relative requires to be resolved relative to \"/xyz/pkg-name/\" rather than \"/xyz/pkg-name/.bin/\".\n //\n // Also note that the reason we must use readlink on the last component (instead of realpath on the whole path)\n // is that we must preserve the other symlinks, in particular those used by pnp to deambiguate packages using\n // peer dependencies. For example, \"/xyz/.pnp/local/pnp-01234569/.bin/bin-name\" should see its relative requires\n // be resolved relative to \"/xyz/.pnp/local/pnp-0123456789/\" rather than \"/xyz/pkg-with-peers/\", because otherwise\n // we would lose the information that would tell us what are the dependencies of pkg-with-peers relative to its\n // ancestors.\n if (fs_1.default.lstatSync(unqualifiedPath).isSymbolicLink())\n unqualifiedPath = path_1.default.normalize(path_1.default.resolve(path_1.default.dirname(unqualifiedPath), fs_1.default.readlinkSync(unqualifiedPath)));\n return unqualifiedPath;\n }\n // If the file is a directory, we must check if it contains a package.json with a \"main\" entry\n if (stat && stat.isDirectory()) {\n let pkgJson;\n try {\n pkgJson = JSON.parse(fs_1.default.readFileSync(`${unqualifiedPath}/package.json`, 'utf-8'));\n }\n catch (error) { }\n let nextUnqualifiedPath;\n if (pkgJson && pkgJson.main)\n nextUnqualifiedPath = path_1.default.resolve(unqualifiedPath, pkgJson.main);\n // If the \"main\" field changed the path, we start again from this new location\n if (nextUnqualifiedPath && nextUnqualifiedPath !== unqualifiedPath) {\n const resolution = applyNodeExtensionResolution(nextUnqualifiedPath, candidates, { extensions });\n if (resolution !== null) {\n return resolution;\n }\n }\n }\n // Otherwise we check if we find a file that match one of the supported extensions\n const qualifiedPath = extensions\n .map(extension => {\n return `${unqualifiedPath}${extension}`;\n })\n .find(candidateFile => {\n candidates.push(candidateFile);\n return fs_1.default.existsSync(candidateFile);\n });\n if (qualifiedPath)\n return qualifiedPath;\n // Otherwise, we check if the path is a folder - in such a case, we try to use its index\n if (stat && stat.isDirectory()) {\n const indexPath = extensions\n .map(extension => {\n return `${unqualifiedPath}/index${extension}`;\n })\n .find(candidateFile => {\n candidates.push(candidateFile);\n return fs_1.default.existsSync(candidateFile);\n });\n if (indexPath) {\n return indexPath;\n }\n }\n // Otherwise there's nothing else we can do :(\n return null;\n }\n }\n /**\n * This function creates fake modules that can be used with the _resolveFilename function.\n * Ideally it would be nice to be able to avoid this, since it causes useless allocations\n * and cannot be cached efficiently (we recompute the nodeModulePaths every time).\n *\n * Fortunately, this should only affect the fallback, and there hopefully shouldn't have a\n * lot of them.\n */\n function makeFakeModule(path) {\n // @ts-ignore\n const fakeModule = new module_1.default(path, null);\n fakeModule.filename = path;\n fakeModule.paths = module_1.default._nodeModulePaths(path);\n return fakeModule;\n }\n /**\n * Normalize path to posix format.\n */\n function normalizePath(p) {\n p = path_1.default.normalize(p);\n if (process.platform === 'win32')\n p = p.replace(backwardSlashRegExp, '/');\n return p;\n }\n /**\n * Forward the resolution to the next resolver (usually the native one)\n */\n function callNativeResolution(request, issuer) {\n if (issuer.endsWith('/'))\n issuer += 'internal.js';\n // Since we would need to create a fake module anyway (to call _resolveLookupPath that\n // would give us the paths to give to _resolveFilename), we can as well not use\n // the {paths} option at all, since it internally makes _resolveFilename create another\n // fake module anyway.\n return module_1.default._resolveFilename(request, makeFakeModule(issuer), false, { plugnplay: false });\n }\n /**\n * This key indicates which version of the standard is implemented by this resolver. The `std` key is the\n * Plug'n'Play standard, and any other key are third-party extensions. Third-party extensions are not allowed\n * to override the standard, and can only offer new methods.\n *\n * If an new version of the Plug'n'Play standard is released and some extensions conflict with newly added\n * functions, they'll just have to fix the conflicts and bump their own version number.\n */\n const VERSIONS = { std: 1 };\n /**\n * We export a special symbol for easy access to the top level locator.\n */\n const topLevel = topLevelLocator;\n /**\n * Gets the package information for a given locator. Returns null if they cannot be retrieved.\n */\n function getPackageInformation({ name, reference }) {\n const packageInformationStore = packageRegistry.get(name);\n if (!packageInformationStore)\n return null;\n const packageInformation = packageInformationStore.get(reference);\n if (!packageInformation)\n return null;\n return packageInformation;\n }\n ;\n /**\n * Finds the package locator that owns the specified path. If none is found, returns null instead.\n */\n function findPackageLocator(location) {\n let relativeLocation = normalizePath(path_1.default.relative(runtimeState.basePath, location));\n if (!relativeLocation.match(isStrictRegExp))\n relativeLocation = `./${relativeLocation}`;\n if (location.match(isDirRegExp) && !relativeLocation.endsWith(`/`))\n relativeLocation = `${relativeLocation}/`;\n let from = 0;\n // If someone wants to use a binary search to go from O(n) to O(log n), be my guest\n while (from < packageLocationLengths.length && packageLocationLengths[from] > relativeLocation.length)\n from += 1;\n for (let t = from; t < packageLocationLengths.length; ++t) {\n const locator = packageLocatorsByLocations.get(relativeLocation.substr(0, packageLocationLengths[t]));\n if (!locator)\n continue;\n // Ensures that the returned locator isn't a blacklisted one.\n //\n // Blacklisted packages are packages that cannot be used because their dependencies cannot be deduced. This only\n // happens with peer dependencies, which effectively have different sets of dependencies depending on their\n // parents.\n //\n // In order to deambiguate those different sets of dependencies, the Yarn implementation of PnP will generate a\n // symlink for each combination of // it will find, and will\n // blacklist the target of those symlinks. By doing this, we ensure that files loaded through a specific path\n // will always have the same set of dependencies, provided the symlinks are correctly preserved.\n //\n // Unfortunately, some tools do not preserve them, and when it happens PnP isn't able anymore to deduce the set of\n // dependencies based on the path of the file that makes the require calls. But since we've blacklisted those\n // paths, we're able to print a more helpful error message that points out that a third-party package is doing\n // something incompatible!\n if (locator === null) {\n throw internalTools_1.makeError(`BLACKLISTED`, [\n `A package has been resolved through a blacklisted path - this is usually caused by one of your tool`,\n `calling \"realpath\" on the return value of \"require.resolve\". Since the returned values use symlinks to`,\n `disambiguate peer dependencies, they must be passed untransformed to \"require\".`,\n ].join(` `));\n }\n return locator;\n }\n return null;\n }\n /**\n * Transforms a request (what's typically passed as argument to the require function) into an unqualified path.\n * This path is called \"unqualified\" because it only changes the package name to the package location on the disk,\n * which means that the end result still cannot be directly accessed (for example, it doesn't try to resolve the\n * file extension, or to resolve directories to their \"index.js\" content). Use the \"resolveUnqualified\" function\n * to convert them to fully-qualified paths, or just use \"resolveRequest\" that do both operations in one go.\n *\n * Note that it is extremely important that the `issuer` path ends with a forward slash if the issuer is to be\n * treated as a folder (ie. \"/tmp/foo/\" rather than \"/tmp/foo\" if \"foo\" is a directory). Otherwise relative\n * imports won't be computed correctly (they'll get resolved relative to \"/tmp/\" instead of \"/tmp/foo/\").\n */\n function resolveToUnqualified(request, issuer, { considerBuiltins = true } = {}) {\n // The 'pnpapi' request is reserved and will always return the path to the PnP file, from everywhere\n if (request === `pnpapi`)\n return opts.pnpapiResolution;\n // Bailout if the request is a native module\n if (considerBuiltins && builtinModules.has(request))\n return null;\n // We allow disabling the pnp resolution for some subpaths. This is because some projects, often legacy,\n // contain multiple levels of dependencies (ie. a yarn.lock inside a subfolder of a yarn.lock). This is\n // typically solved using workspaces, but not all of them have been converted already.\n if (ignorePattern && issuer && ignorePattern.test(normalizePath(issuer))) {\n const result = callNativeResolution(request, issuer);\n if (result === false) {\n throw internalTools_1.makeError(`BUILTIN_NODE_RESOLUTION_FAIL`, `The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer was explicitely ignored by the regexp)\\n\\nRequire request: \"${request}\"\\nRequired by: ${issuer}\\n`, { request, issuer });\n }\n return result;\n }\n let unqualifiedPath;\n // If the request is a relative or absolute path, we just return it normalized\n const dependencyNameMatch = request.match(pathRegExp);\n if (!dependencyNameMatch) {\n if (path_1.default.isAbsolute(request)) {\n unqualifiedPath = path_1.default.normalize(request);\n }\n else {\n if (!issuer) {\n throw internalTools_1.makeError(`API_ERROR`, `The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute`, { request, issuer });\n }\n if (issuer.match(isDirRegExp)) {\n unqualifiedPath = path_1.default.normalize(path_1.default.resolve(issuer, request));\n }\n else {\n unqualifiedPath = path_1.default.normalize(path_1.default.resolve(path_1.default.dirname(issuer), request));\n }\n }\n }\n // Things are more hairy if it's a package require - we then need to figure out which package is needed, and in\n // particular the exact version for the given location on the dependency tree\n else {\n if (!issuer) {\n throw internalTools_1.makeError(`API_ERROR`, `The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute`, { request, issuer });\n }\n const [, dependencyName, subPath] = dependencyNameMatch;\n const issuerLocator = findPackageLocator(issuer);\n // If the issuer file doesn't seem to be owned by a package managed through pnp, then we resort to using the next\n // resolution algorithm in the chain, usually the native Node resolution one\n if (!issuerLocator) {\n const result = callNativeResolution(request, issuer);\n if (result === false) {\n throw internalTools_1.makeError(`BUILTIN_NODE_RESOLUTION_FAIL`, `The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer doesn't seem to be part of the Yarn-managed dependency tree)\\n\\nRequire path: \"${request}\"\\nRequired by: ${issuer}\\n`, { request, issuer });\n }\n return result;\n }\n const issuerInformation = getPackageInformationSafe(issuerLocator);\n // We obtain the dependency reference in regard to the package that request it\n let dependencyReference = issuerInformation.packageDependencies.get(dependencyName);\n // If we can't find it, we check if we can potentially load it from the packages that have been defined as potential fallbacks.\n // It's a bit of a hack, but it improves compatibility with the existing Node ecosystem. Hopefully we should eventually be able\n // to kill this logic and become stricter once pnp gets enough traction and the affected packages fix themselves.\n if (issuerLocator.name !== null) {\n for (let t = 0, T = fallbackLocators.length; dependencyReference === undefined && t < T; ++t) {\n const fallbackInformation = getPackageInformationSafe(fallbackLocators[t]);\n dependencyReference = fallbackInformation.packageDependencies.get(dependencyName);\n }\n }\n // If we can't find the path, and if the package making the request is the top-level, we can offer nicer error messages\n if (!dependencyReference) {\n if (dependencyReference === null) {\n if (issuerLocator.name === null) {\n throw internalTools_1.makeError(`MISSING_PEER_DEPENDENCY`, `Something that got detected as your top-level application (because it doesn't seem to belong to any package) tried to access a peer dependency; this isn't allowed as the peer dependency cannot be provided by any parent package\\n\\nRequired package: ${dependencyName} (via \"${request}\")\\nRequired by: ${issuer}\\n`, { request, issuer, dependencyName });\n }\n else {\n throw internalTools_1.makeError(`MISSING_PEER_DEPENDENCY`, `A package is trying to access a peer dependency that should be provided by its direct ancestor but isn't\\n\\nRequired package: ${dependencyName} (via \"${request}\")\\nRequired by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuer})\\n`, { request, issuer, issuerLocator: Object.assign({}, issuerLocator), dependencyName });\n }\n }\n else {\n if (issuerLocator.name === null) {\n throw internalTools_1.makeError(`UNDECLARED_DEPENDENCY`, `Something that got detected as your top-level application (because it doesn't seem to belong to any package) tried to access a package that is not declared in your dependencies\\n\\nRequired package: ${dependencyName} (via \"${request}\")\\nRequired by: ${issuer}\\n`, { request, issuer, dependencyName });\n }\n else {\n const candidates = Array.from(issuerInformation.packageDependencies.keys());\n throw internalTools_1.makeError(`UNDECLARED_DEPENDENCY`, `A package is trying to access another package without the second one being listed as a dependency of the first one\\n\\nRequired package: ${dependencyName} (via \"${request}\")\\nRequired by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuer})\\n`, { request, issuer, issuerLocator: Object.assign({}, issuerLocator), dependencyName, candidates });\n }\n }\n }\n // We need to check that the package exists on the filesystem, because it might not have been installed\n const dependencyLocator = { name: dependencyName, reference: dependencyReference };\n const dependencyInformation = getPackageInformationSafe(dependencyLocator);\n if (!dependencyInformation.packageLocation) {\n throw internalTools_1.makeError(`MISSING_DEPENDENCY`, `A dependency seems valid but didn't get installed for some reason. This might be caused by a partial install, such as dev vs prod.\\n\\nRequired package: ${dependencyLocator.name}@${dependencyLocator.reference} (via \"${request}\")\\nRequired by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuer})\\n`, { request, issuer, dependencyLocator: Object.assign({}, dependencyLocator) });\n }\n // Now that we know which package we should resolve to, we only have to find out the file location\n const dependencyLocation = path_1.default.resolve(runtimeState.basePath, dependencyInformation.packageLocation);\n if (subPath) {\n unqualifiedPath = path_1.default.resolve(dependencyLocation, subPath);\n }\n else {\n unqualifiedPath = dependencyLocation;\n }\n }\n return path_1.default.normalize(unqualifiedPath);\n }\n ;\n /**\n * Transforms an unqualified path into a qualified path by using the Node resolution algorithm (which automatically\n * appends \".js\" / \".json\", and transforms directory accesses into \"index.js\").\n */\n function resolveUnqualified(unqualifiedPath, { extensions = Object.keys(module_1.default._extensions) } = {}) {\n const candidates = [];\n const qualifiedPath = applyNodeExtensionResolution(unqualifiedPath, candidates, { extensions });\n if (qualifiedPath) {\n return path_1.default.normalize(qualifiedPath);\n }\n else {\n throw internalTools_1.makeError(`QUALIFIED_PATH_RESOLUTION_FAILED`, `Couldn't find a suitable Node resolution for the specified unqualified path\\n\\nSource path: ${unqualifiedPath}\\n${candidates.map(candidate => `Rejected resolution: ${candidate}\\n`).join(``)}`, { unqualifiedPath });\n }\n }\n ;\n /**\n * Transforms a request into a fully qualified path.\n *\n * Note that it is extremely important that the `issuer` path ends with a forward slash if the issuer is to be\n * treated as a folder (ie. \"/tmp/foo/\" rather than \"/tmp/foo\" if \"foo\" is a directory). Otherwise relative\n * imports won't be computed correctly (they'll get resolved relative to \"/tmp/\" instead of \"/tmp/foo/\").\n */\n function resolveRequest(request, issuer, { considerBuiltins, extensions } = {}) {\n let unqualifiedPath = resolveToUnqualified(request, issuer, { considerBuiltins });\n if (unqualifiedPath === null) {\n return null;\n }\n try {\n return resolveUnqualified(unqualifiedPath, { extensions });\n }\n catch (resolutionError) {\n if (resolutionError.code === 'QUALIFIED_PATH_RESOLUTION_FAILED') {\n Object.assign(resolutionError.data, { request, issuer });\n }\n throw resolutionError;\n }\n }\n ;\n return {\n VERSIONS,\n topLevel,\n getPackageInformation,\n findPackageLocator,\n resolveToUnqualified,\n resolveUnqualified,\n resolveRequest,\n };\n}\nexports.makeApi = makeApi;\n\n\n/***/ })\n/******/ ]);"; +module.exports = "module.exports =\n/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// define __esModule on exports\n/******/ \t__webpack_require__.r = function(exports) {\n/******/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t}\n/******/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t};\n/******/\n/******/ \t// create a fake namespace object\n/******/ \t// mode & 1: value is a module id, require it\n/******/ \t// mode & 2: merge all properties of value into the ns\n/******/ \t// mode & 4: return value when already ns object\n/******/ \t// mode & 8|1: behave like require\n/******/ \t__webpack_require__.t = function(value, mode) {\n/******/ \t\tif(mode & 1) value = __webpack_require__(value);\n/******/ \t\tif(mode & 8) return value;\n/******/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/******/ \t\tvar ns = Object.create(null);\n/******/ \t\t__webpack_require__.r(ns);\n/******/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/******/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/******/ \t\treturn ns;\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 0);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst fslib_1 = __webpack_require__(1);\nconst fs_1 = __importDefault(__webpack_require__(3));\nconst module_1 = __importDefault(__webpack_require__(17));\nconst path_1 = __importDefault(__webpack_require__(4));\nconst string_decoder_1 = __importDefault(__webpack_require__(18));\nconst applyPatch_1 = __webpack_require__(19);\nconst hydrateRuntimeState_1 = __webpack_require__(21);\nconst makeApi_1 = __webpack_require__(22);\n// We must copy the fs into a local, because otherwise\n// 1. we would make the NodeFS instance use the function that we patched (infinite loop)\n// 2. Object.create(fs) isn't enough, since it won't prevent the proto from being modified\nconst localFs = Object.assign({}, fs_1.default);\nconst nodeFs = new fslib_1.NodeFS(localFs);\nconst zipOpenFs = new fslib_1.ZipOpenFS({ baseFs: nodeFs });\nmodule.exports = makeApi_1.makeApi($$SETUP_STATE(hydrateRuntimeState_1.hydrateRuntimeState), {\n compatibilityMode: true,\n pnpapiResolution: path_1.default.resolve(__dirname, __filename),\n fakeFs: zipOpenFs,\n});\nif (__non_webpack_module__.parent && __non_webpack_module__.parent.id === 'internal/preload') {\n applyPatch_1.applyPatch(module.exports, {\n compatibilityMode: true,\n fakeFs: zipOpenFs,\n });\n if (__non_webpack_module__.filename) {\n // We delete it from the cache in order to support the case where the CLI resolver is invoked from \"yarn run\"\n // It's annoying because it might cause some issues when the file is multiple times in NODE_OPTIONS, but it shouldn't happen anyway.\n delete module_1.default._cache[__non_webpack_module__.filename];\n }\n}\n// @ts-ignore\nif (process.mainModule === __non_webpack_module__) {\n const reportError = (code, message, data) => {\n process.stdout.write(`${JSON.stringify([{ code, message, data }, null])}\\n`);\n };\n const reportSuccess = (resolution) => {\n process.stdout.write(`${JSON.stringify([null, resolution])}\\n`);\n };\n const processResolution = (request, issuer) => {\n try {\n reportSuccess(module.exports.resolveRequest(request, issuer));\n }\n catch (error) {\n reportError(error.code, error.message, error.data);\n }\n };\n const processRequest = (data) => {\n try {\n const [request, issuer] = JSON.parse(data);\n processResolution(request, issuer);\n }\n catch (error) {\n reportError(`INVALID_JSON`, error.message, error.data);\n }\n };\n if (process.argv.length > 2) {\n if (process.argv.length !== 4) {\n process.stderr.write(`Usage: ${process.argv[0]} ${process.argv[1]} \\n`);\n process.exitCode = 64; /* EX_USAGE */\n }\n else {\n processResolution(process.argv[2], process.argv[3]);\n }\n }\n else {\n let buffer = '';\n const decoder = new string_decoder_1.default.StringDecoder();\n process.stdin.on('data', chunk => {\n buffer += decoder.write(chunk);\n do {\n const index = buffer.indexOf('\\n');\n if (index === -1)\n break;\n const line = buffer.slice(0, index);\n buffer = buffer.slice(index + 1);\n processRequest(line);\n } while (true);\n });\n }\n}\n\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst NodeFS_1 = __webpack_require__(2);\nvar AliasFS_1 = __webpack_require__(6);\nexports.AliasFS = AliasFS_1.AliasFS;\nvar FakeFS_1 = __webpack_require__(5);\nexports.FakeFS = FakeFS_1.FakeFS;\nvar CwdFS_1 = __webpack_require__(7);\nexports.CwdFS = CwdFS_1.CwdFS;\nvar JailFS_1 = __webpack_require__(8);\nexports.JailFS = JailFS_1.JailFS;\nvar NodeFS_2 = __webpack_require__(2);\nexports.NodeFS = NodeFS_2.NodeFS;\nvar PosixFS_1 = __webpack_require__(9);\nexports.PosixFS = PosixFS_1.PosixFS;\nvar ZipFS_1 = __webpack_require__(10);\nexports.ZipFS = ZipFS_1.ZipFS;\nvar ZipOpenFS_1 = __webpack_require__(16);\nexports.ZipOpenFS = ZipOpenFS_1.ZipOpenFS;\nfunction wrapSync(fn) {\n return fn;\n}\nfunction wrapAsync(fn) {\n return function (...args) {\n const cb = typeof args[args.length - 1] === `function`\n ? args.pop()\n : null;\n setImmediate(() => {\n let error, result;\n try {\n result = fn(...args);\n }\n catch (caught) {\n error = caught;\n }\n cb(error, result);\n });\n };\n}\nfunction patchFs(patchedFs, fakeFs) {\n const SYNC_IMPLEMENTATIONS = new Set([\n `createReadStream`,\n `chmodSync`,\n `copyFileSync`,\n `lstatSync`,\n `openSync`,\n `readlinkSync`,\n `readFileSync`,\n `readdirSync`,\n `readlinkSync`,\n `realpathSync`,\n `rmdirSync`,\n `statSync`,\n `symlinkSync`,\n `unlinkSync`,\n `utimesSync`,\n `writeFileSync`,\n ]);\n const ASYNC_IMPLEMENTATIONS = new Set([\n `chmodPromise`,\n `copyFilePromise`,\n `lstatPromise`,\n `openPromise`,\n `readdirPromise`,\n `realpathPromise`,\n `readFilePromise`,\n `readdirPromise`,\n `readlinkPromise`,\n `rmdirPromise`,\n `statPromise`,\n `symlinkPromise`,\n `unlinkPromise`,\n `utimesPromise`,\n `writeFilePromise`,\n ]);\n patchedFs.existsSync = (p) => {\n try {\n return fakeFs.existsSync(p);\n }\n catch (error) {\n return false;\n }\n };\n patchedFs.exists = (p, callback) => {\n fakeFs.existsPromise(p).then(result => {\n if (callback) {\n callback(result);\n }\n }, () => {\n if (callback) {\n callback(false);\n }\n });\n };\n for (const fnName of ASYNC_IMPLEMENTATIONS) {\n const fakeImpl = fakeFs[fnName].bind(fakeFs);\n const origName = fnName.replace(/Promise$/, ``);\n patchedFs[origName] = (...args) => {\n const hasCallback = typeof args[args.length - 1] === `function`;\n const callback = hasCallback ? args.pop() : () => { };\n fakeImpl(...args).then((result) => {\n callback(undefined, result);\n }, (error) => {\n callback(error);\n });\n };\n }\n for (const fnName of SYNC_IMPLEMENTATIONS) {\n const fakeImpl = fakeFs[fnName].bind(fakeFs);\n const origName = fnName;\n patchedFs[origName] = fakeImpl;\n }\n patchedFs.realpathSync.native = patchedFs.realpathSync;\n patchedFs.realpath.native = patchedFs.realpath;\n}\nexports.patchFs = patchFs;\nfunction extendFs(realFs, fakeFs) {\n const patchedFs = Object.create(realFs);\n patchFs(patchedFs, fakeFs);\n return patchedFs;\n}\nexports.extendFs = extendFs;\nexports.xfs = new NodeFS_1.NodeFS();\n\n\n/***/ }),\n/* 2 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst fs_1 = __importDefault(__webpack_require__(3));\nconst path_1 = __webpack_require__(4);\nconst FakeFS_1 = __webpack_require__(5);\nconst PORTABLE_PATH_PREFIX = `/mnt/`;\nconst PORTABLE_PREFIX_REGEXP = /^\\/mnt\\/([a-z])(?:\\/(.*))?$/;\nclass NodeFS extends FakeFS_1.FakeFS {\n constructor(realFs = fs_1.default) {\n super();\n this.realFs = realFs;\n }\n getRealPath() {\n return `/`;\n }\n async openPromise(p, flags, mode) {\n return await new Promise((resolve, reject) => {\n this.realFs.open(NodeFS.fromPortablePath(p), flags, mode, this.makeCallback(resolve, reject));\n });\n }\n openSync(p, flags, mode) {\n return this.realFs.openSync(NodeFS.fromPortablePath(p), flags, mode);\n }\n async closePromise(fd) {\n await new Promise((resolve, reject) => {\n this.realFs.close(fd, this.makeCallback(resolve, reject));\n });\n }\n closeSync(fd) {\n this.realFs.closeSync(fd);\n }\n createReadStream(p, opts) {\n return this.realFs.createReadStream(NodeFS.fromPortablePath(p), opts);\n }\n createWriteStream(p, opts) {\n return this.realFs.createWriteStream(NodeFS.fromPortablePath(p), opts);\n }\n async realpathPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.realpath(NodeFS.fromPortablePath(p), {}, this.makeCallback(resolve, reject));\n }).then(path => {\n return NodeFS.toPortablePath(path);\n });\n }\n realpathSync(p) {\n return NodeFS.toPortablePath(this.realFs.realpathSync(NodeFS.fromPortablePath(p), {}));\n }\n async existsPromise(p) {\n return await new Promise(resolve => {\n this.realFs.exists(NodeFS.fromPortablePath(p), resolve);\n });\n }\n existsSync(p) {\n return this.realFs.existsSync(NodeFS.fromPortablePath(p));\n }\n async statPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.stat(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject));\n });\n }\n statSync(p) {\n return this.realFs.statSync(NodeFS.fromPortablePath(p));\n }\n async lstatPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.lstat(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject));\n });\n }\n lstatSync(p) {\n return this.realFs.lstatSync(NodeFS.fromPortablePath(p));\n }\n async chmodPromise(p, mask) {\n return await new Promise((resolve, reject) => {\n this.realFs.chmod(NodeFS.fromPortablePath(p), mask, this.makeCallback(resolve, reject));\n });\n }\n chmodSync(p, mask) {\n return this.realFs.chmodSync(NodeFS.fromPortablePath(p), mask);\n }\n async renamePromise(oldP, newP) {\n return await new Promise((resolve, reject) => {\n this.realFs.rename(NodeFS.fromPortablePath(oldP), NodeFS.fromPortablePath(newP), this.makeCallback(resolve, reject));\n });\n }\n renameSync(oldP, newP) {\n return this.realFs.renameSync(NodeFS.fromPortablePath(oldP), NodeFS.fromPortablePath(newP));\n }\n async copyFilePromise(sourceP, destP, flags = 0) {\n return await new Promise((resolve, reject) => {\n this.realFs.copyFile(NodeFS.fromPortablePath(sourceP), NodeFS.fromPortablePath(destP), flags, this.makeCallback(resolve, reject));\n });\n }\n copyFileSync(sourceP, destP, flags = 0) {\n return this.realFs.copyFileSync(NodeFS.fromPortablePath(sourceP), NodeFS.fromPortablePath(destP), flags);\n }\n async writeFilePromise(p, content, opts) {\n return await new Promise((resolve, reject) => {\n if (opts) {\n this.realFs.writeFile(NodeFS.fromPortablePath(p), content, opts, this.makeCallback(resolve, reject));\n }\n else {\n this.realFs.writeFile(NodeFS.fromPortablePath(p), content, this.makeCallback(resolve, reject));\n }\n });\n }\n writeFileSync(p, content, opts) {\n if (opts) {\n this.realFs.writeFileSync(NodeFS.fromPortablePath(p), content, opts);\n }\n else {\n this.realFs.writeFileSync(NodeFS.fromPortablePath(p), content);\n }\n }\n async unlinkPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.unlink(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject));\n });\n }\n unlinkSync(p) {\n return this.realFs.unlinkSync(NodeFS.fromPortablePath(p));\n }\n async utimesPromise(p, atime, mtime) {\n return await new Promise((resolve, reject) => {\n this.realFs.utimes(NodeFS.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject));\n });\n }\n utimesSync(p, atime, mtime) {\n this.realFs.utimesSync(NodeFS.fromPortablePath(p), atime, mtime);\n }\n async mkdirPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.mkdir(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject));\n });\n }\n mkdirSync(p) {\n return this.realFs.mkdirSync(NodeFS.fromPortablePath(p));\n }\n async rmdirPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.rmdir(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject));\n });\n }\n rmdirSync(p) {\n return this.realFs.rmdirSync(NodeFS.fromPortablePath(p));\n }\n async symlinkPromise(target, p) {\n return await new Promise((resolve, reject) => {\n this.realFs.symlink(NodeFS.fromPortablePath(target), NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject));\n });\n }\n symlinkSync(target, p) {\n return this.realFs.symlinkSync(NodeFS.fromPortablePath(target), NodeFS.fromPortablePath(p));\n }\n async readFilePromise(p, encoding) {\n return await new Promise((resolve, reject) => {\n this.realFs.readFile(NodeFS.fromPortablePath(p), encoding, this.makeCallback(resolve, reject));\n });\n }\n readFileSync(p, encoding) {\n return this.realFs.readFileSync(NodeFS.fromPortablePath(p), encoding);\n }\n async readdirPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.readdir(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject));\n });\n }\n readdirSync(p) {\n return this.realFs.readdirSync(NodeFS.fromPortablePath(p));\n }\n async readlinkPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.readlink(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject));\n }).then(path => {\n return NodeFS.toPortablePath(path);\n });\n }\n readlinkSync(p) {\n return NodeFS.toPortablePath(this.realFs.readlinkSync(NodeFS.fromPortablePath(p)));\n }\n makeCallback(resolve, reject) {\n return (err, result) => {\n if (err) {\n reject(err);\n }\n else {\n resolve(result);\n }\n };\n }\n static fromPortablePath(p) {\n if (process.platform !== `win32`)\n return p;\n // Path should look like \"/mnt/n/berry/scripts/plugin-pack.js\"\n // And transform to \"N:\\berry/scripts/plugin-pack.js\"\n const match = p.match(PORTABLE_PREFIX_REGEXP);\n if (!match)\n return p;\n const [, drive, pathWithoutPrefix = ''] = match;\n const windowsPath = pathWithoutPrefix.replace(/\\//g, '\\\\');\n return `${drive.toUpperCase()}:\\\\${windowsPath}`;\n }\n static toPortablePath(p) {\n if (process.platform !== `win32`)\n return p;\n // Path should look like \"N:\\berry/scripts/plugin-pack.js\"\n // And transform to \"/mnt/n/berry/scripts/plugin-pack.js\"\n // Skip if the path is already portable\n if (p.startsWith(PORTABLE_PATH_PREFIX))\n return p;\n const { root } = path_1.win32.parse(p);\n // If relative path, just replace win32 slashes by posix slashes\n if (!root)\n return p.replace(/\\\\/g, '/');\n const driveLetter = root[0].toLowerCase();\n const pathWithoutRoot = p.substr(root.length);\n const posixPath = pathWithoutRoot.replace(/\\\\/g, '/');\n return `${PORTABLE_PATH_PREFIX}${driveLetter}/${posixPath}`;\n }\n}\nexports.NodeFS = NodeFS;\n\n\n/***/ }),\n/* 3 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"fs\");\n\n/***/ }),\n/* 4 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"path\");\n\n/***/ }),\n/* 5 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst path_1 = __webpack_require__(4);\nclass FakeFS {\n resolve(p) {\n return path_1.posix.resolve(`/`, p);\n }\n async removePromise(p) {\n let stat;\n try {\n stat = await this.lstatPromise(p);\n }\n catch (error) {\n if (error.code === `ENOENT`) {\n return;\n }\n else {\n throw error;\n }\n }\n if (stat.isDirectory()) {\n for (const entry of await this.readdirPromise(p))\n await this.removePromise(path_1.posix.resolve(p, entry));\n // 5 gives 1s worth of retries at worst\n for (let t = 0; t < 5; ++t) {\n try {\n await this.rmdirPromise(p);\n break;\n }\n catch (error) {\n if (error.code === `EBUSY` || error.code === `ENOTEMPTY`) {\n await new Promise(resolve => setTimeout(resolve, t * 100));\n continue;\n }\n else {\n throw error;\n }\n }\n }\n }\n else {\n await this.unlinkPromise(p);\n }\n }\n removeSync(p) {\n let stat;\n try {\n stat = this.lstatSync(p);\n }\n catch (error) {\n if (error.code === `ENOENT`) {\n return;\n }\n else {\n throw error;\n }\n }\n if (stat.isDirectory()) {\n for (const entry of this.readdirSync(p))\n this.removeSync(path_1.posix.resolve(p, entry));\n this.rmdirSync(p);\n }\n else {\n this.unlinkSync(p);\n }\n }\n async mkdirpPromise(p, { chmod, utimes } = {}) {\n p = this.resolve(p);\n if (p === `/`)\n return;\n const parts = p.split(`/`);\n for (let u = 2; u <= parts.length; ++u) {\n const subPath = parts.slice(0, u).join(`/`);\n if (!this.existsSync(subPath)) {\n try {\n await this.mkdirPromise(subPath);\n }\n catch (error) {\n if (error.code === `EEXIST`) {\n continue;\n }\n else {\n throw error;\n }\n }\n if (chmod != null)\n await this.chmodPromise(subPath, chmod);\n if (utimes != null) {\n await this.utimesPromise(subPath, utimes[0], utimes[1]);\n }\n }\n }\n }\n mkdirpSync(p, { chmod, utimes } = {}) {\n p = this.resolve(p);\n if (p === `/`)\n return;\n const parts = p.split(`/`);\n for (let u = 2; u <= parts.length; ++u) {\n const subPath = parts.slice(0, u).join(`/`);\n if (!this.existsSync(subPath)) {\n try {\n this.mkdirSync(subPath);\n }\n catch (error) {\n if (error.code === `EEXIST`) {\n continue;\n }\n else {\n throw error;\n }\n }\n if (chmod != null)\n this.chmodSync(subPath, chmod);\n if (utimes != null) {\n this.utimesSync(subPath, utimes[0], utimes[1]);\n }\n }\n }\n }\n async copyPromise(destination, source, { baseFs = this, overwrite = true } = {}) {\n const stat = await baseFs.lstatPromise(source);\n if (stat.isDirectory()) {\n await this.mkdirpPromise(destination);\n const directoryListing = await baseFs.readdirPromise(source);\n await Promise.all(directoryListing.map(entry => {\n return this.copyPromise(path_1.posix.join(destination, entry), path_1.posix.join(source, entry), { baseFs, overwrite });\n }));\n }\n else if (stat.isFile()) {\n if (!await this.existsPromise(destination) || overwrite) {\n const content = await baseFs.readFilePromise(source);\n await this.writeFilePromise(destination, content);\n }\n }\n else {\n throw new Error(`Unsupported file type (file: ${source}, mode: 0o${stat.mode.toString(8).padStart(6, `0`)})`);\n }\n const mode = stat.mode & 0o777;\n await this.chmodPromise(destination, mode);\n }\n copySync(destination, source, { baseFs = this, overwrite = true } = {}) {\n const stat = baseFs.lstatSync(source);\n if (stat.isDirectory()) {\n this.mkdirpSync(destination);\n const directoryListing = baseFs.readdirSync(source);\n for (const entry of directoryListing) {\n this.copySync(path_1.posix.join(destination, entry), path_1.posix.join(source, entry), { baseFs, overwrite });\n }\n }\n else if (stat.isFile()) {\n if (!this.existsSync(destination) || overwrite) {\n const content = baseFs.readFileSync(source);\n this.writeFileSync(destination, content);\n }\n }\n else {\n throw new Error(`Unsupported file type (file: ${source}, mode: 0o${stat.mode.toString(8).padStart(6, `0`)})`);\n }\n const mode = stat.mode & 0o777;\n this.chmodSync(destination, mode);\n }\n async changeFilePromise(p, content) {\n try {\n const current = await this.readFilePromise(p, `utf8`);\n if (current === content) {\n return;\n }\n }\n catch (error) {\n // ignore errors, no big deal\n }\n await this.writeFilePromise(p, content);\n }\n changeFileSync(p, content) {\n try {\n const current = this.readFileSync(p, `utf8`);\n if (current === content) {\n return;\n }\n }\n catch (error) {\n // ignore errors, no big deal\n }\n this.writeFileSync(p, content);\n }\n async movePromise(fromP, toP) {\n try {\n await this.renamePromise(fromP, toP);\n }\n catch (error) {\n if (error.code === `EXDEV`) {\n await this.copyPromise(toP, fromP);\n await this.removePromise(fromP);\n }\n else {\n throw error;\n }\n }\n }\n moveSync(fromP, toP) {\n try {\n this.renameSync(fromP, toP);\n }\n catch (error) {\n if (error.code === `EXDEV`) {\n this.copySync(toP, fromP);\n this.removeSync(fromP);\n }\n else {\n throw error;\n }\n }\n }\n async lockPromise(affectedPath, callback) {\n const lockPath = `${affectedPath}.lock`;\n const interval = 1000 / 60;\n const timeout = Date.now() + 60 * 1000;\n let fd = null;\n while (fd === null) {\n try {\n fd = await this.openPromise(lockPath, `wx`);\n }\n catch (error) {\n if (error.code === `EEXIST`) {\n if (Date.now() < timeout) {\n await new Promise(resolve => setTimeout(resolve, interval));\n }\n else {\n throw new Error(`Couldn't acquire a lock in a reasonable time (${timeout / 1000}s)`);\n }\n }\n else {\n throw error;\n }\n }\n }\n try {\n await callback();\n }\n finally {\n await this.closePromise(fd);\n await this.unlinkPromise(lockPath);\n }\n }\n}\nexports.FakeFS = FakeFS;\n;\n\n\n/***/ }),\n/* 6 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst FakeFS_1 = __webpack_require__(5);\nclass AliasFS extends FakeFS_1.FakeFS {\n constructor(target, { baseFs }) {\n super();\n this.target = target;\n this.baseFs = baseFs;\n }\n getRealPath() {\n return this.target;\n }\n getBaseFs() {\n return this.baseFs;\n }\n async openPromise(p, flags, mode) {\n return await this.baseFs.openPromise(p, flags, mode);\n }\n openSync(p, flags, mode) {\n return this.baseFs.openSync(p, flags, mode);\n }\n async closePromise(fd) {\n await this.baseFs.closePromise(fd);\n }\n closeSync(fd) {\n this.baseFs.closeSync(fd);\n }\n createReadStream(p, opts) {\n return this.baseFs.createReadStream(p, opts);\n }\n createWriteStream(p, opts) {\n return this.baseFs.createWriteStream(p, opts);\n }\n async realpathPromise(p) {\n return await this.baseFs.realpathPromise(p);\n }\n realpathSync(p) {\n return this.baseFs.realpathSync(p);\n }\n async existsPromise(p) {\n return await this.baseFs.existsPromise(p);\n }\n existsSync(p) {\n return this.baseFs.existsSync(p);\n }\n async statPromise(p) {\n return await this.baseFs.statPromise(p);\n }\n statSync(p) {\n return this.baseFs.statSync(p);\n }\n async lstatPromise(p) {\n return await this.baseFs.lstatPromise(p);\n }\n lstatSync(p) {\n return this.baseFs.lstatSync(p);\n }\n async chmodPromise(p, mask) {\n return await this.baseFs.chmodPromise(p, mask);\n }\n chmodSync(p, mask) {\n return this.baseFs.chmodSync(p, mask);\n }\n async renamePromise(oldP, newP) {\n return await this.baseFs.renamePromise(oldP, newP);\n }\n renameSync(oldP, newP) {\n return this.baseFs.renameSync(oldP, newP);\n }\n async copyFilePromise(sourceP, destP, flags) {\n return await this.baseFs.copyFilePromise(sourceP, destP, flags);\n }\n copyFileSync(sourceP, destP, flags) {\n return this.baseFs.copyFileSync(sourceP, destP, flags);\n }\n async writeFilePromise(p, content, opts) {\n return await this.baseFs.writeFilePromise(p, content, opts);\n }\n writeFileSync(p, content, opts) {\n return this.baseFs.writeFileSync(p, content, opts);\n }\n async unlinkPromise(p) {\n return await this.baseFs.unlinkPromise(p);\n }\n unlinkSync(p) {\n return this.baseFs.unlinkSync(p);\n }\n async utimesPromise(p, atime, mtime) {\n return await this.baseFs.utimesPromise(p, atime, mtime);\n }\n utimesSync(p, atime, mtime) {\n return this.baseFs.utimesSync(p, atime, mtime);\n }\n async mkdirPromise(p) {\n return await this.baseFs.mkdirPromise(p);\n }\n mkdirSync(p) {\n return this.baseFs.mkdirSync(p);\n }\n async rmdirPromise(p) {\n return await this.baseFs.rmdirPromise(p);\n }\n rmdirSync(p) {\n return this.baseFs.rmdirSync(p);\n }\n async symlinkPromise(target, p) {\n return await this.baseFs.symlinkPromise(target, p);\n }\n symlinkSync(target, p) {\n return this.baseFs.symlinkSync(target, p);\n }\n async readFilePromise(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return await this.baseFs.readFilePromise(p, encoding);\n default:\n return await this.baseFs.readFilePromise(p, encoding);\n }\n }\n readFileSync(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return this.baseFs.readFileSync(p, encoding);\n default:\n return this.baseFs.readFileSync(p, encoding);\n }\n }\n async readdirPromise(p) {\n return await this.baseFs.readdirPromise(p);\n }\n readdirSync(p) {\n return this.baseFs.readdirSync(p);\n }\n async readlinkPromise(p) {\n return await this.baseFs.readlinkPromise(p);\n }\n readlinkSync(p) {\n return this.baseFs.readlinkSync(p);\n }\n}\nexports.AliasFS = AliasFS;\n\n\n/***/ }),\n/* 7 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst path_1 = __webpack_require__(4);\nconst FakeFS_1 = __webpack_require__(5);\nconst NodeFS_1 = __webpack_require__(2);\nclass CwdFS extends FakeFS_1.FakeFS {\n constructor(target, { baseFs = new NodeFS_1.NodeFS() } = {}) {\n super();\n this.target = target;\n this.baseFs = baseFs;\n }\n getRealPath() {\n return path_1.posix.resolve(this.baseFs.getRealPath(), this.target);\n }\n getTarget() {\n return this.target;\n }\n getBaseFs() {\n return this.baseFs;\n }\n resolve(p) {\n return this.baseFs.resolve(this.fromCwdPath(p));\n }\n async openPromise(p, flags, mode) {\n return await this.baseFs.openPromise(this.fromCwdPath(p), flags, mode);\n }\n openSync(p, flags, mode) {\n return this.baseFs.openSync(this.fromCwdPath(p), flags, mode);\n }\n async closePromise(fd) {\n await this.baseFs.closePromise(fd);\n }\n closeSync(fd) {\n this.baseFs.closeSync(fd);\n }\n createReadStream(p, opts) {\n return this.baseFs.createReadStream(this.fromCwdPath(p), opts);\n }\n createWriteStream(p, opts) {\n return this.baseFs.createWriteStream(this.fromCwdPath(p), opts);\n }\n async realpathPromise(p) {\n return await this.baseFs.realpathPromise(this.fromCwdPath(p));\n }\n realpathSync(p) {\n return this.baseFs.realpathSync(this.fromCwdPath(p));\n }\n async existsPromise(p) {\n return await this.baseFs.existsPromise(this.fromCwdPath(p));\n }\n existsSync(p) {\n return this.baseFs.existsSync(this.fromCwdPath(p));\n }\n async statPromise(p) {\n return await this.baseFs.statPromise(this.fromCwdPath(p));\n }\n statSync(p) {\n return this.baseFs.statSync(this.fromCwdPath(p));\n }\n async lstatPromise(p) {\n return await this.baseFs.lstatPromise(this.fromCwdPath(p));\n }\n lstatSync(p) {\n return this.baseFs.lstatSync(this.fromCwdPath(p));\n }\n async chmodPromise(p, mask) {\n return await this.baseFs.chmodPromise(this.fromCwdPath(p), mask);\n }\n chmodSync(p, mask) {\n return this.baseFs.chmodSync(this.fromCwdPath(p), mask);\n }\n async renamePromise(oldP, newP) {\n return await this.baseFs.renamePromise(this.fromCwdPath(oldP), this.fromCwdPath(newP));\n }\n renameSync(oldP, newP) {\n return this.baseFs.renameSync(this.fromCwdPath(oldP), this.fromCwdPath(newP));\n }\n async copyFilePromise(sourceP, destP, flags) {\n return await this.baseFs.copyFilePromise(this.fromCwdPath(sourceP), this.fromCwdPath(destP), flags);\n }\n copyFileSync(sourceP, destP, flags) {\n return this.baseFs.copyFileSync(this.fromCwdPath(sourceP), this.fromCwdPath(destP), flags);\n }\n async writeFilePromise(p, content, opts) {\n return await this.baseFs.writeFilePromise(this.fromCwdPath(p), content, opts);\n }\n writeFileSync(p, content, opts) {\n return this.baseFs.writeFileSync(this.fromCwdPath(p), content, opts);\n }\n async unlinkPromise(p) {\n return await this.baseFs.unlinkPromise(this.fromCwdPath(p));\n }\n unlinkSync(p) {\n return this.baseFs.unlinkSync(this.fromCwdPath(p));\n }\n async utimesPromise(p, atime, mtime) {\n return await this.baseFs.utimesPromise(this.fromCwdPath(p), atime, mtime);\n }\n utimesSync(p, atime, mtime) {\n return this.baseFs.utimesSync(this.fromCwdPath(p), atime, mtime);\n }\n async mkdirPromise(p) {\n return await this.baseFs.mkdirPromise(this.fromCwdPath(p));\n }\n mkdirSync(p) {\n return this.baseFs.mkdirSync(this.fromCwdPath(p));\n }\n async rmdirPromise(p) {\n return await this.baseFs.rmdirPromise(this.fromCwdPath(p));\n }\n rmdirSync(p) {\n return this.baseFs.rmdirSync(this.fromCwdPath(p));\n }\n async symlinkPromise(target, p) {\n return await this.baseFs.symlinkPromise(target, this.fromCwdPath(p));\n }\n symlinkSync(target, p) {\n return this.baseFs.symlinkSync(target, this.fromCwdPath(p));\n }\n async readFilePromise(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return await this.baseFs.readFilePromise(this.fromCwdPath(p), encoding);\n default:\n return await this.baseFs.readFilePromise(this.fromCwdPath(p), encoding);\n }\n }\n readFileSync(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return this.baseFs.readFileSync(this.fromCwdPath(p), encoding);\n default:\n return this.baseFs.readFileSync(this.fromCwdPath(p), encoding);\n }\n }\n async readdirPromise(p) {\n return await this.baseFs.readdirPromise(this.fromCwdPath(p));\n }\n readdirSync(p) {\n return this.baseFs.readdirSync(this.fromCwdPath(p));\n }\n async readlinkPromise(p) {\n return await this.baseFs.readlinkPromise(this.fromCwdPath(p));\n }\n readlinkSync(p) {\n return this.baseFs.readlinkSync(this.fromCwdPath(p));\n }\n fromCwdPath(p) {\n return path_1.posix.resolve(this.getRealPath(), p);\n }\n}\nexports.CwdFS = CwdFS;\n\n\n/***/ }),\n/* 8 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst path_1 = __webpack_require__(4);\nconst FakeFS_1 = __webpack_require__(5);\nconst NodeFS_1 = __webpack_require__(2);\nclass JailFS extends FakeFS_1.FakeFS {\n constructor(target, { baseFs = new NodeFS_1.NodeFS() } = {}) {\n super();\n this.target = path_1.posix.resolve(`/`, target);\n this.baseFs = baseFs;\n }\n getRealPath() {\n return path_1.posix.resolve(this.baseFs.getRealPath(), path_1.posix.relative(`/`, this.target));\n }\n getTarget() {\n return this.target;\n }\n getBaseFs() {\n return this.baseFs;\n }\n async openPromise(p, flags, mode) {\n return await this.baseFs.openPromise(this.fromJailedPath(p), flags, mode);\n }\n openSync(p, flags, mode) {\n return this.baseFs.openSync(this.fromJailedPath(p), flags, mode);\n }\n async closePromise(fd) {\n await this.baseFs.closePromise(fd);\n }\n closeSync(fd) {\n this.baseFs.closeSync(fd);\n }\n createReadStream(p, opts) {\n return this.baseFs.createReadStream(this.fromJailedPath(p), opts);\n }\n createWriteStream(p, opts) {\n return this.baseFs.createWriteStream(this.fromJailedPath(p), opts);\n }\n async realpathPromise(p) {\n return this.toJailedPath(await this.baseFs.realpathPromise(this.fromJailedPath(p)));\n }\n realpathSync(p) {\n return this.toJailedPath(this.baseFs.realpathSync(this.fromJailedPath(p)));\n }\n async existsPromise(p) {\n return await this.baseFs.existsPromise(this.fromJailedPath(p));\n }\n existsSync(p) {\n return this.baseFs.existsSync(this.fromJailedPath(p));\n }\n async statPromise(p) {\n return await this.baseFs.statPromise(this.fromJailedPath(p));\n }\n statSync(p) {\n return this.baseFs.statSync(this.fromJailedPath(p));\n }\n async lstatPromise(p) {\n return await this.baseFs.lstatPromise(this.fromJailedPath(p));\n }\n lstatSync(p) {\n return this.baseFs.lstatSync(this.fromJailedPath(p));\n }\n async chmodPromise(p, mask) {\n return await this.baseFs.chmodPromise(this.fromJailedPath(p), mask);\n }\n chmodSync(p, mask) {\n return this.baseFs.chmodSync(this.fromJailedPath(p), mask);\n }\n async renamePromise(oldP, newP) {\n return await this.baseFs.renamePromise(this.fromJailedPath(oldP), this.fromJailedPath(newP));\n }\n renameSync(oldP, newP) {\n return this.baseFs.renameSync(this.fromJailedPath(oldP), this.fromJailedPath(newP));\n }\n async copyFilePromise(sourceP, destP, flags) {\n return await this.baseFs.copyFilePromise(this.fromJailedPath(sourceP), this.fromJailedPath(destP), flags);\n }\n copyFileSync(sourceP, destP, flags) {\n return this.baseFs.copyFileSync(this.fromJailedPath(sourceP), this.fromJailedPath(destP), flags);\n }\n async writeFilePromise(p, content, opts) {\n return await this.baseFs.writeFilePromise(this.fromJailedPath(p), content, opts);\n }\n writeFileSync(p, content, opts) {\n return this.baseFs.writeFileSync(this.fromJailedPath(p), content, opts);\n }\n async unlinkPromise(p) {\n return await this.baseFs.unlinkPromise(this.fromJailedPath(p));\n }\n unlinkSync(p) {\n return this.baseFs.unlinkSync(this.fromJailedPath(p));\n }\n async utimesPromise(p, atime, mtime) {\n return await this.baseFs.utimesPromise(this.fromJailedPath(p), atime, mtime);\n }\n utimesSync(p, atime, mtime) {\n return this.baseFs.utimesSync(this.fromJailedPath(p), atime, mtime);\n }\n async mkdirPromise(p) {\n return await this.baseFs.mkdirPromise(this.fromJailedPath(p));\n }\n mkdirSync(p) {\n return this.baseFs.mkdirSync(this.fromJailedPath(p));\n }\n async rmdirPromise(p) {\n return await this.baseFs.rmdirPromise(this.fromJailedPath(p));\n }\n rmdirSync(p) {\n return this.baseFs.rmdirSync(this.fromJailedPath(p));\n }\n async symlinkPromise(target, p) {\n return await this.baseFs.symlinkPromise(target, this.fromJailedPath(p));\n }\n symlinkSync(target, p) {\n return this.baseFs.symlinkSync(target, this.fromJailedPath(p));\n }\n async readFilePromise(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return await this.baseFs.readFilePromise(this.fromJailedPath(p), encoding);\n default:\n return await this.baseFs.readFilePromise(this.fromJailedPath(p), encoding);\n }\n }\n readFileSync(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return this.baseFs.readFileSync(this.fromJailedPath(p), encoding);\n default:\n return this.baseFs.readFileSync(this.fromJailedPath(p), encoding);\n }\n }\n async readdirPromise(p) {\n return await this.baseFs.readdirPromise(this.fromJailedPath(p));\n }\n readdirSync(p) {\n return this.baseFs.readdirSync(this.fromJailedPath(p));\n }\n async readlinkPromise(p) {\n return await this.baseFs.readlinkPromise(this.fromJailedPath(p));\n }\n readlinkSync(p) {\n return this.baseFs.readlinkSync(this.fromJailedPath(p));\n }\n fromJailedPath(p) {\n const normalized = path_1.posix.normalize(p);\n if (path_1.posix.isAbsolute(p))\n return path_1.posix.resolve(this.target, path_1.posix.relative(`/`, p));\n if (normalized.match(/^\\.\\.\\//))\n throw new Error(`Resolving this path (${p}) would escape the jail`);\n return path_1.posix.resolve(this.target, p);\n }\n toJailedPath(p) {\n return path_1.posix.resolve(`/`, path_1.posix.relative(this.target, p));\n }\n}\nexports.JailFS = JailFS;\n\n\n/***/ }),\n/* 9 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst FakeFS_1 = __webpack_require__(5);\nconst NodeFS_1 = __webpack_require__(2);\nclass PosixFS extends FakeFS_1.FakeFS {\n constructor(baseFs) {\n super();\n this.baseFs = baseFs;\n }\n getRealPath() {\n return NodeFS_1.NodeFS.fromPortablePath(this.baseFs.getRealPath());\n }\n async openPromise(p, flags, mode) {\n return await this.baseFs.openPromise(NodeFS_1.NodeFS.toPortablePath(p), flags, mode);\n }\n openSync(p, flags, mode) {\n return this.baseFs.openSync(NodeFS_1.NodeFS.toPortablePath(p), flags, mode);\n }\n async closePromise(fd) {\n await this.baseFs.closePromise(fd);\n }\n closeSync(fd) {\n this.baseFs.closeSync(fd);\n }\n createReadStream(p, opts) {\n return this.baseFs.createReadStream(NodeFS_1.NodeFS.toPortablePath(p), opts);\n }\n createWriteStream(p, opts) {\n return this.baseFs.createWriteStream(NodeFS_1.NodeFS.toPortablePath(p), opts);\n }\n async realpathPromise(p) {\n return NodeFS_1.NodeFS.fromPortablePath(await this.baseFs.realpathPromise(NodeFS_1.NodeFS.toPortablePath(p)));\n }\n realpathSync(p) {\n return NodeFS_1.NodeFS.fromPortablePath(this.baseFs.realpathSync(NodeFS_1.NodeFS.toPortablePath(p)));\n }\n async existsPromise(p) {\n return await this.baseFs.existsPromise(NodeFS_1.NodeFS.toPortablePath(p));\n }\n existsSync(p) {\n return this.baseFs.existsSync(NodeFS_1.NodeFS.toPortablePath(p));\n }\n async statPromise(p) {\n return await this.baseFs.statPromise(NodeFS_1.NodeFS.toPortablePath(p));\n }\n statSync(p) {\n return this.baseFs.statSync(NodeFS_1.NodeFS.toPortablePath(p));\n }\n async lstatPromise(p) {\n return await this.baseFs.lstatPromise(NodeFS_1.NodeFS.toPortablePath(p));\n }\n lstatSync(p) {\n return this.baseFs.lstatSync(NodeFS_1.NodeFS.toPortablePath(p));\n }\n async chmodPromise(p, mask) {\n return await this.baseFs.chmodPromise(NodeFS_1.NodeFS.toPortablePath(p), mask);\n }\n chmodSync(p, mask) {\n return this.baseFs.chmodSync(NodeFS_1.NodeFS.toPortablePath(p), mask);\n }\n async renamePromise(oldP, newP) {\n return await this.baseFs.renamePromise(NodeFS_1.NodeFS.toPortablePath(oldP), NodeFS_1.NodeFS.toPortablePath(newP));\n }\n renameSync(oldP, newP) {\n return this.baseFs.renameSync(NodeFS_1.NodeFS.toPortablePath(oldP), NodeFS_1.NodeFS.toPortablePath(newP));\n }\n async copyFilePromise(sourceP, destP, flags) {\n return await this.baseFs.copyFilePromise(NodeFS_1.NodeFS.toPortablePath(sourceP), NodeFS_1.NodeFS.toPortablePath(destP), flags);\n }\n copyFileSync(sourceP, destP, flags) {\n return this.baseFs.copyFileSync(NodeFS_1.NodeFS.toPortablePath(sourceP), NodeFS_1.NodeFS.toPortablePath(destP), flags);\n }\n async writeFilePromise(p, content, opts) {\n return await this.baseFs.writeFilePromise(NodeFS_1.NodeFS.toPortablePath(p), content, opts);\n }\n writeFileSync(p, content, opts) {\n return this.baseFs.writeFileSync(NodeFS_1.NodeFS.toPortablePath(p), content, opts);\n }\n async unlinkPromise(p) {\n return await this.baseFs.unlinkPromise(NodeFS_1.NodeFS.toPortablePath(p));\n }\n unlinkSync(p) {\n return this.baseFs.unlinkSync(NodeFS_1.NodeFS.toPortablePath(p));\n }\n async utimesPromise(p, atime, mtime) {\n return await this.baseFs.utimesPromise(NodeFS_1.NodeFS.toPortablePath(p), atime, mtime);\n }\n utimesSync(p, atime, mtime) {\n return this.baseFs.utimesSync(NodeFS_1.NodeFS.toPortablePath(p), atime, mtime);\n }\n async mkdirPromise(p) {\n return await this.baseFs.mkdirPromise(NodeFS_1.NodeFS.toPortablePath(p));\n }\n mkdirSync(p) {\n return this.baseFs.mkdirSync(NodeFS_1.NodeFS.toPortablePath(p));\n }\n async rmdirPromise(p) {\n return await this.baseFs.rmdirPromise(NodeFS_1.NodeFS.toPortablePath(p));\n }\n rmdirSync(p) {\n return this.baseFs.rmdirSync(NodeFS_1.NodeFS.toPortablePath(p));\n }\n async symlinkPromise(target, p) {\n return await this.baseFs.symlinkPromise(target, NodeFS_1.NodeFS.toPortablePath(p));\n }\n symlinkSync(target, p) {\n return this.baseFs.symlinkSync(target, NodeFS_1.NodeFS.toPortablePath(p));\n }\n async readFilePromise(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return await this.baseFs.readFilePromise(NodeFS_1.NodeFS.toPortablePath(p), encoding);\n default:\n return await this.baseFs.readFilePromise(NodeFS_1.NodeFS.toPortablePath(p), encoding);\n }\n }\n readFileSync(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return this.baseFs.readFileSync(NodeFS_1.NodeFS.toPortablePath(p), encoding);\n default:\n return this.baseFs.readFileSync(NodeFS_1.NodeFS.toPortablePath(p), encoding);\n }\n }\n async readdirPromise(p) {\n return await this.baseFs.readdirPromise(NodeFS_1.NodeFS.toPortablePath(p));\n }\n readdirSync(p) {\n return this.baseFs.readdirSync(NodeFS_1.NodeFS.toPortablePath(p));\n }\n async readlinkPromise(p) {\n return NodeFS_1.NodeFS.fromPortablePath(await this.baseFs.readlinkPromise(NodeFS_1.NodeFS.toPortablePath(p)));\n }\n readlinkSync(p) {\n return NodeFS_1.NodeFS.fromPortablePath(this.baseFs.readlinkSync(NodeFS_1.NodeFS.toPortablePath(p)));\n }\n}\nexports.PosixFS = PosixFS;\n\n\n/***/ }),\n/* 10 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst libzip_1 = __importDefault(__webpack_require__(11));\nconst fs_1 = __webpack_require__(3);\nconst path_1 = __webpack_require__(4);\nconst stream_1 = __webpack_require__(14);\nconst util_1 = __webpack_require__(15);\nconst FakeFS_1 = __webpack_require__(5);\nconst NodeFS_1 = __webpack_require__(2);\nconst S_IFMT = 0o170000;\nconst S_IFDIR = 0o040000;\nconst S_IFREG = 0o100000;\nconst S_IFLNK = 0o120000;\nclass StatEntry {\n constructor() {\n this.dev = 0;\n this.ino = 0;\n this.mode = 0;\n this.nlink = 1;\n this.rdev = 0;\n this.blocks = 1;\n }\n isBlockDevice() {\n return false;\n }\n isCharacterDevice() {\n return false;\n }\n isDirectory() {\n return (this.mode & S_IFMT) === S_IFDIR;\n }\n isFIFO() {\n return false;\n }\n isFile() {\n return (this.mode & S_IFMT) === S_IFREG;\n }\n isSocket() {\n return false;\n }\n isSymbolicLink() {\n return (this.mode & S_IFMT) === S_IFLNK;\n }\n}\nfunction toUnixTimestamp(time) {\n if (typeof time === 'string' && String(+time) === time) {\n return +time;\n }\n // @ts-ignore\n if (Number.isFinite(time)) {\n if (time < 0) {\n return Date.now() / 1000;\n }\n else {\n return time;\n }\n }\n if (util_1.isDate(time)) {\n // convert to 123.456 UNIX timestamp\n // @ts-ignore\n return time.getTime() / 1000;\n }\n throw new Error(`Invalid time`);\n}\nclass ZipFS extends FakeFS_1.FakeFS {\n constructor(p, { baseFs = new NodeFS_1.NodeFS(), create = false, readOnly = false, stats } = {}) {\n super();\n this.listings = new Map();\n this.entries = new Map();\n this.ready = false;\n this.path = p;\n this.baseFs = baseFs;\n if (stats) {\n this.stats = stats;\n }\n else {\n try {\n this.stats = this.baseFs.statSync(p);\n }\n catch (error) {\n if (error.code === `ENOENT` && create) {\n this.stats = Object.assign(new StatEntry(), { uid: 0, gid: 0, size: 0, blksize: 0, atimeMs: 0, mtimeMs: 0, ctimeMs: 0, birthtimeMs: 0, atime: new Date(0), mtime: new Date(0), ctime: new Date(0), birthtime: new Date(0), mode: S_IFREG | 0o644 });\n }\n else {\n throw error;\n }\n }\n }\n const errPtr = libzip_1.default.malloc(4);\n try {\n let flags = 0;\n if (create)\n flags |= libzip_1.default.ZIP_CREATE | libzip_1.default.ZIP_TRUNCATE;\n if (readOnly)\n flags |= libzip_1.default.ZIP_RDONLY;\n this.zip = libzip_1.default.open(NodeFS_1.NodeFS.fromPortablePath(p), flags, errPtr);\n if (this.zip === 0) {\n const error = libzip_1.default.struct.errorS();\n libzip_1.default.error.initWithCode(error, libzip_1.default.getValue(errPtr, `i32`));\n throw new Error(libzip_1.default.error.strerror(error));\n }\n }\n finally {\n libzip_1.default.free(errPtr);\n }\n const entryCount = libzip_1.default.getNumEntries(this.zip, 0);\n this.listings.set(`/`, new Set());\n for (let t = 0; t < entryCount; ++t) {\n const raw = libzip_1.default.getName(this.zip, t, 0);\n if (path_1.posix.isAbsolute(raw))\n continue;\n const p = path_1.posix.resolve(`/`, raw);\n this.registerEntry(p, t);\n }\n this.ready = true;\n }\n getRealPath() {\n return this.path;\n }\n saveAndClose() {\n if (!this.ready)\n throw Object.assign(new Error(`EBUSY: archive closed, close`), { code: `EBUSY` });\n const previousMod = this.baseFs.existsSync(this.path)\n ? this.baseFs.statSync(this.path).mode & 0o777\n : null;\n const rc = libzip_1.default.close(this.zip);\n if (rc === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n // Libzip overrides the chmod when writing the archive, which is a weird\n // behavior I don't totally understand (plus the umask seems bogus in some\n // weird cases - maybe related to emscripten?)\n //\n // See also https://github.com/nih-at/libzip/issues/77\n if (previousMod !== null && previousMod !== (this.baseFs.statSync(this.path).mode & 0o777))\n this.baseFs.chmodSync(this.path, previousMod);\n this.ready = false;\n }\n discardAndClose() {\n libzip_1.default.discard(this.zip);\n this.ready = false;\n }\n async openPromise(p, flags, mode) {\n return this.openSync(p, flags, mode);\n }\n openSync(p, flags, mode) {\n throw new Error(`Unimplemented`);\n }\n async closePromise(fd) {\n this.closeSync(fd);\n }\n closeSync(fd) {\n throw new Error(`Unimplemented`);\n }\n createReadStream(p, { encoding } = {}) {\n const stream = Object.assign(new stream_1.PassThrough(), {\n bytesRead: 0,\n path: p,\n close: () => {\n clearImmediate(immediate);\n }\n });\n const immediate = setImmediate(() => {\n try {\n const data = this.readFileSync(p, encoding);\n stream.bytesRead = data.length;\n stream.write(data);\n stream.end();\n }\n catch (error) {\n stream.emit(`error`, error);\n stream.end();\n }\n });\n return stream;\n }\n createWriteStream(p, { encoding } = {}) {\n const stream = Object.assign(new stream_1.PassThrough(), {\n bytesWritten: 0,\n path: p,\n close: () => {\n stream.end();\n },\n });\n const chunks = [];\n stream.on(`data`, chunk => {\n const chunkBuffer = Buffer.from(chunk);\n stream.bytesWritten += chunkBuffer.length;\n chunks.push(chunkBuffer);\n });\n stream.on(`end`, () => {\n this.writeFileSync(p, Buffer.concat(chunks), encoding);\n });\n return stream;\n }\n async realpathPromise(p) {\n return this.realpathSync(p);\n }\n realpathSync(p) {\n const resolvedP = this.resolveFilename(`lstat '${p}'`, p);\n if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOENT: no such file or directory, lstat '${p}'`), { code: `ENOENT` });\n return resolvedP;\n }\n async existsPromise(p) {\n return this.existsSync(p);\n }\n existsSync(p) {\n let resolvedP;\n try {\n resolvedP = this.resolveFilename(`stat '${p}'`, p);\n }\n catch (error) {\n return false;\n }\n return this.entries.has(resolvedP) || this.listings.has(resolvedP);\n }\n async statPromise(p) {\n return this.statSync(p);\n }\n statSync(p) {\n const resolvedP = this.resolveFilename(`stat '${p}'`, p);\n if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOENT: no such file or directory, stat '${p}'`), { code: `ENOENT` });\n if (p[p.length - 1] === `/` && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOTDIR: not a directory, stat '${p}'`), { code: `ENOTDIR` });\n return this.statImpl(`stat '${p}'`, resolvedP);\n }\n async lstatPromise(p) {\n return this.lstatSync(p);\n }\n lstatSync(p) {\n const resolvedP = this.resolveFilename(`lstat '${p}'`, p, false);\n if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOENT: no such file or directory, lstat '${p}'`), { code: `ENOENT` });\n if (p[p.length - 1] === `/` && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOTDIR: not a directory, lstat '${p}'`), { code: `ENOTDIR` });\n return this.statImpl(`lstat '${p}'`, resolvedP);\n }\n statImpl(reason, p) {\n if (this.listings.has(p)) {\n const uid = this.stats.uid;\n const gid = this.stats.gid;\n const size = 0;\n const blksize = 512;\n const blocks = 0;\n const atimeMs = this.stats.mtimeMs;\n const birthtimeMs = this.stats.mtimeMs;\n const ctimeMs = this.stats.mtimeMs;\n const mtimeMs = this.stats.mtimeMs;\n const atime = new Date(atimeMs);\n const birthtime = new Date(birthtimeMs);\n const ctime = new Date(ctimeMs);\n const mtime = new Date(mtimeMs);\n const mode = S_IFDIR | 0o755;\n return Object.assign(new StatEntry(), { uid, gid, size, blksize, blocks, atime, birthtime, ctime, mtime, atimeMs, birthtimeMs, ctimeMs, mtimeMs, mode });\n }\n const entry = this.entries.get(p);\n if (entry !== undefined) {\n const stat = libzip_1.default.struct.statS();\n const rc = libzip_1.default.statIndex(this.zip, entry, 0, 0, stat);\n if (rc === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n const uid = this.stats.uid;\n const gid = this.stats.gid;\n const size = (libzip_1.default.struct.statSize(stat) >>> 0);\n const blksize = 512;\n const blocks = Math.ceil(size / blksize);\n const mtimeMs = (libzip_1.default.struct.statMtime(stat) >>> 0) * 1000;\n const atimeMs = mtimeMs;\n const birthtimeMs = mtimeMs;\n const ctimeMs = mtimeMs;\n const atime = new Date(atimeMs);\n const birthtime = new Date(birthtimeMs);\n const ctime = new Date(ctimeMs);\n const mtime = new Date(mtimeMs);\n const mode = this.getUnixMode(entry, S_IFREG | 0o644);\n return Object.assign(new StatEntry(), { uid, gid, size, blksize, blocks, atime, birthtime, ctime, mtime, atimeMs, birthtimeMs, ctimeMs, mtimeMs, mode });\n }\n throw new Error(`Unreachable`);\n }\n getUnixMode(index, defaultMode) {\n const rc = libzip_1.default.file.getExternalAttributes(this.zip, index, 0, 0, libzip_1.default.uint08S, libzip_1.default.uint32S);\n if (rc === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n const opsys = libzip_1.default.getValue(libzip_1.default.uint08S, `i8`) >>> 0;\n if (opsys !== libzip_1.default.ZIP_OPSYS_UNIX)\n return defaultMode;\n return libzip_1.default.getValue(libzip_1.default.uint32S, `i32`) >>> 16;\n }\n registerListing(p) {\n let listing = this.listings.get(p);\n if (listing)\n return listing;\n const parentListing = this.registerListing(path_1.posix.dirname(p));\n listing = new Set();\n parentListing.add(path_1.posix.basename(p));\n this.listings.set(p, listing);\n return listing;\n }\n registerEntry(p, index) {\n const parentListing = this.registerListing(path_1.posix.dirname(p));\n parentListing.add(path_1.posix.basename(p));\n this.entries.set(p, index);\n }\n resolveFilename(reason, p, resolveLastComponent = true) {\n if (!this.ready)\n throw Object.assign(new Error(`EBUSY: archive closed, ${reason}`), { code: `EBUSY` });\n let resolvedP = path_1.posix.resolve(`/`, p);\n if (resolvedP === `/`)\n return `/`;\n while (true) {\n const parentP = this.resolveFilename(reason, path_1.posix.dirname(resolvedP), true);\n const isDir = this.listings.has(parentP);\n const doesExist = this.entries.has(parentP);\n if (!isDir && !doesExist)\n throw Object.assign(new Error(`ENOENT: no such file or directory, ${reason}`), { code: `ENOENT` });\n if (!isDir)\n throw Object.assign(new Error(`ENOTDIR: not a directory, ${reason}`), { code: `ENOTDIR` });\n resolvedP = path_1.posix.resolve(parentP, path_1.posix.basename(resolvedP));\n if (!resolveLastComponent)\n break;\n const index = libzip_1.default.name.locate(this.zip, resolvedP);\n if (index === -1)\n break;\n if (this.isSymbolicLink(index)) {\n const target = this.getFileSource(index).toString();\n resolvedP = path_1.posix.resolve(path_1.posix.dirname(resolvedP), target);\n }\n else {\n break;\n }\n }\n return resolvedP;\n }\n setFileSource(p, content) {\n if (!Buffer.isBuffer(content))\n content = Buffer.from(content);\n const buffer = libzip_1.default.malloc(content.byteLength);\n if (!buffer)\n throw new Error(`Couldn't allocate enough memory`);\n // Copy the file into the Emscripten heap\n const heap = new Uint8Array(libzip_1.default.HEAPU8.buffer, buffer, content.byteLength);\n heap.set(content);\n const source = libzip_1.default.source.fromBuffer(this.zip, buffer, content.byteLength, 0, true);\n if (source === 0) {\n libzip_1.default.free(buffer);\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n }\n return libzip_1.default.file.add(this.zip, path_1.posix.relative(`/`, p), source, libzip_1.default.ZIP_FL_OVERWRITE);\n }\n isSymbolicLink(index) {\n const attrs = libzip_1.default.file.getExternalAttributes(this.zip, index, 0, 0, libzip_1.default.uint08S, libzip_1.default.uint32S);\n if (attrs === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n const opsys = libzip_1.default.getValue(libzip_1.default.uint08S, `i8`) >>> 0;\n if (opsys !== libzip_1.default.ZIP_OPSYS_UNIX)\n return false;\n const attributes = libzip_1.default.getValue(libzip_1.default.uint32S, `i32`) >>> 16;\n return (attributes & S_IFMT) === S_IFLNK;\n }\n getFileSource(index) {\n const stat = libzip_1.default.struct.statS();\n const rc = libzip_1.default.statIndex(this.zip, index, 0, 0, stat);\n if (rc === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n const size = libzip_1.default.struct.statSize(stat);\n const buffer = libzip_1.default.malloc(size);\n try {\n const file = libzip_1.default.fopenIndex(this.zip, index, 0, 0);\n if (file === 0)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n try {\n const rc = libzip_1.default.fread(file, buffer, size, 0);\n if (rc === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.file.getError(file)));\n else if (rc < size)\n throw new Error(`Incomplete read`);\n else if (rc > size)\n throw new Error(`Overread`);\n const memory = libzip_1.default.HEAPU8.subarray(buffer, buffer + size);\n const data = Buffer.from(memory);\n return data;\n }\n finally {\n libzip_1.default.fclose(file);\n }\n }\n finally {\n libzip_1.default.free(buffer);\n }\n }\n async chmodPromise(p, mask) {\n return this.chmodSync(p, mask);\n }\n chmodSync(p, mask) {\n const resolvedP = this.resolveFilename(`chmod '${p}'`, p, false);\n if (this.listings.has(resolvedP)) {\n if ((mask & 0o755) === 0o755) {\n return;\n }\n else {\n throw Object.assign(new Error(`EISDIR: illegal operation on a directory, chmod '${p}'`), { code: `EISDIR` });\n }\n }\n const entry = this.entries.get(resolvedP);\n if (entry === undefined)\n throw new Error(`Unreachable`);\n const oldMod = this.getUnixMode(entry, S_IFREG | 0o000);\n const newMod = oldMod & (~0o777) | mask;\n const rc = libzip_1.default.file.setExternalAttributes(this.zip, entry, 0, 0, libzip_1.default.ZIP_OPSYS_UNIX, newMod << 16);\n if (rc === -1) {\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n }\n }\n async renamePromise(oldP, newP) {\n return this.renameSync(oldP, newP);\n }\n renameSync(oldP, newP) {\n throw new Error(`Unimplemented`);\n }\n async copyFilePromise(sourceP, destP, flags) {\n return this.copyFileSync(sourceP, destP, flags);\n }\n copyFileSync(sourceP, destP, flags = 0) {\n if ((flags & fs_1.constants.COPYFILE_FICLONE_FORCE) !== 0)\n throw Object.assign(new Error(`ENOSYS: unsupported clone operation, copyfile '${sourceP}' -> ${destP}'`), { code: `ENOSYS` });\n const resolvedSourceP = this.resolveFilename(`copyfile '${sourceP} -> ${destP}'`, sourceP);\n const indexSource = this.entries.get(resolvedSourceP);\n if (typeof indexSource === `undefined`)\n throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${sourceP}' -> '${destP}'`), { code: `EINVAL` });\n const resolvedDestP = this.resolveFilename(`copyfile '${sourceP}' -> ${destP}'`, destP);\n const indexDest = this.entries.get(resolvedDestP);\n if ((flags & (fs_1.constants.COPYFILE_EXCL | fs_1.constants.COPYFILE_FICLONE_FORCE)) !== 0 && typeof indexDest !== `undefined`)\n throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${sourceP}' -> '${destP}'`), { code: `EEXIST` });\n const source = this.getFileSource(indexSource);\n const newIndex = this.setFileSource(resolvedDestP, source);\n if (newIndex !== indexDest) {\n this.registerEntry(resolvedDestP, newIndex);\n }\n }\n async writeFilePromise(p, content, opts) {\n return this.writeFileSync(p, content, opts);\n }\n writeFileSync(p, content, opts) {\n const resolvedP = this.resolveFilename(`open '${p}'`, p);\n if (this.listings.has(resolvedP))\n throw Object.assign(new Error(`EISDIR: illegal operation on a directory, open '${p}'`), { code: `EISDIR` });\n const index = this.entries.get(resolvedP);\n if (index !== undefined && typeof opts === `object` && opts.flag && opts.flag.includes(`a`))\n content = Buffer.concat([this.getFileSource(index), Buffer.from(content)]);\n let encoding = null;\n if (typeof opts === `string`)\n encoding = opts;\n else if (typeof opts === `object` && opts.encoding)\n encoding = opts.encoding;\n if (encoding !== null)\n content = content.toString(encoding);\n const newIndex = this.setFileSource(resolvedP, content);\n if (newIndex !== index) {\n this.registerEntry(resolvedP, newIndex);\n }\n }\n async unlinkPromise(p) {\n return this.unlinkSync(p);\n }\n unlinkSync(p) {\n throw new Error(`Unimplemented`);\n }\n async utimesPromise(p, atime, mtime) {\n return this.utimesSync(p, atime, mtime);\n }\n utimesSync(p, atime, mtime) {\n const resolvedP = this.resolveFilename(`chmod '${p}'`, p);\n return this.utimesImpl(resolvedP, mtime);\n }\n async lutimesPromise(p, atime, mtime) {\n return this.lutimesSync(p, atime, mtime);\n }\n lutimesSync(p, atime, mtime) {\n const resolvedP = this.resolveFilename(`chmod '${p}'`, p, false);\n return this.utimesImpl(resolvedP, mtime);\n }\n utimesImpl(resolvedP, mtime) {\n if (this.listings.has(resolvedP))\n if (!this.entries.has(resolvedP))\n this.hydrateDirectory(resolvedP);\n const entry = this.entries.get(resolvedP);\n if (entry === undefined)\n throw new Error(`Unreachable`);\n const rc = libzip_1.default.file.setMtime(this.zip, entry, 0, toUnixTimestamp(mtime), 0);\n if (rc === -1) {\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n }\n }\n async mkdirPromise(p) {\n return this.mkdirSync(p);\n }\n mkdirSync(p) {\n const resolvedP = this.resolveFilename(`mkdir '${p}'`, p);\n if (this.entries.has(resolvedP) || this.listings.has(resolvedP))\n throw Object.assign(new Error(`EEXIST: file already exists, mkdir '${p}'`), { code: `EEXIST` });\n this.hydrateDirectory(resolvedP);\n }\n async rmdirPromise(p) {\n return this.rmdirSync(p);\n }\n rmdirSync(p) {\n throw new Error(`Unimplemented`);\n }\n hydrateDirectory(resolvedP) {\n const index = libzip_1.default.dir.add(this.zip, path_1.posix.relative(`/`, resolvedP));\n if (index === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n this.registerListing(resolvedP);\n this.registerEntry(resolvedP, index);\n return index;\n }\n async symlinkPromise(target, p) {\n return this.symlinkSync(target, p);\n }\n symlinkSync(target, p) {\n const resolvedP = this.resolveFilename(`symlink '${target}' -> '${p}'`, p);\n if (this.listings.has(resolvedP))\n throw Object.assign(new Error(`EISDIR: illegal operation on a directory, symlink '${target}' -> '${p}'`), { code: `EISDIR` });\n if (this.entries.has(resolvedP))\n throw Object.assign(new Error(`EEXIST: file already exists, symlink '${target}' -> '${p}'`), { code: `EEXIST` });\n const index = this.setFileSource(resolvedP, target);\n this.registerEntry(resolvedP, index);\n const rc = libzip_1.default.file.setExternalAttributes(this.zip, index, 0, 0, libzip_1.default.ZIP_OPSYS_UNIX, (0o120000 | 0o777) << 16);\n if (rc === -1) {\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n }\n }\n async readFilePromise(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return this.readFileSync(p, encoding);\n default:\n return this.readFileSync(p, encoding);\n }\n }\n readFileSync(p, encoding) {\n // This is messed up regarding the TS signatures\n if (typeof encoding === `object`)\n // @ts-ignore\n encoding = encoding ? encoding.encoding : undefined;\n const resolvedP = this.resolveFilename(`open '${p}'`, p);\n if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOENT: no such file or directory, open '${p}'`), { code: `ENOENT` });\n // Ensures that the last component is a directory, if the user said so (even if it is we'll throw right after with EISDIR anyway)\n if (p[p.length - 1] === `/` && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOTDIR: not a directory, open '${p}'`), { code: `ENOTDIR` });\n if (this.listings.has(resolvedP))\n throw Object.assign(new Error(`EISDIR: illegal operation on a directory, read`), { code: `EISDIR` });\n const entry = this.entries.get(resolvedP);\n if (entry === undefined)\n throw new Error(`Unreachable`);\n const data = this.getFileSource(entry);\n return encoding ? data.toString(encoding) : data;\n }\n async readdirPromise(p) {\n return this.readdirSync(p);\n }\n readdirSync(p) {\n const resolvedP = this.resolveFilename(`scandir '${p}'`, p);\n if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOENT: no such file or directory, scandir '${p}'`), { code: `ENOENT` });\n const directoryListing = this.listings.get(resolvedP);\n if (!directoryListing)\n throw Object.assign(new Error(`ENOTDIR: not a directory, scandir '${p}'`), { code: `ENOTDIR` });\n return Array.from(directoryListing);\n }\n async readlinkPromise(p) {\n return this.readlinkSync(p);\n }\n readlinkSync(p) {\n const resolvedP = this.resolveFilename(`readlink '${p}'`, p, false);\n if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOENT: no such file or directory, readlink '${p}'`), { code: `ENOENT` });\n // Ensure that the last component is a directory (if it is we'll throw right after with EISDIR anyway)\n if (p[p.length - 1] === `/` && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOTDIR: not a directory, open '${p}'`), { code: `ENOTDIR` });\n if (this.listings.has(resolvedP))\n throw Object.assign(new Error(`EINVAL: invalid argument, readlink '${p}'`), { code: `EINVAL` });\n const entry = this.entries.get(resolvedP);\n if (entry === undefined)\n throw new Error(`Unreachable`);\n const rc = libzip_1.default.file.getExternalAttributes(this.zip, entry, 0, 0, libzip_1.default.uint08S, libzip_1.default.uint32S);\n if (rc === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n const opsys = libzip_1.default.getValue(libzip_1.default.uint08S, `i8`) >>> 0;\n if (opsys !== libzip_1.default.ZIP_OPSYS_UNIX)\n throw Object.assign(new Error(`EINVAL: invalid argument, readlink '${p}'`), { code: `EINVAL` });\n const attributes = libzip_1.default.getValue(libzip_1.default.uint32S, `i32`) >>> 16;\n if ((attributes & 0o170000) !== 0o120000)\n throw Object.assign(new Error(`EINVAL: invalid argument, readlink '${p}'`), { code: `EINVAL` });\n return this.getFileSource(entry).toString();\n }\n}\nexports.ZipFS = ZipFS;\n;\n\n\n/***/ }),\n/* 11 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst libzip_1 = __importDefault(__webpack_require__(12));\nconst number64 = [\n `number`,\n `number`,\n];\nexports.default = {\n // Those are getters because they can change after memory growth\n get HEAP8() { return libzip_1.default.HEAP8; },\n get HEAPU8() { return libzip_1.default.HEAPU8; },\n ZIP_CHECKCONS: 4,\n ZIP_CREATE: 1,\n ZIP_EXCL: 2,\n ZIP_TRUNCATE: 8,\n ZIP_RDONLY: 16,\n ZIP_FL_OVERWRITE: 8192,\n ZIP_OPSYS_DOS: 0x00,\n ZIP_OPSYS_AMIGA: 0x01,\n ZIP_OPSYS_OPENVMS: 0x02,\n ZIP_OPSYS_UNIX: 0x03,\n ZIP_OPSYS_VM_CMS: 0x04,\n ZIP_OPSYS_ATARI_ST: 0x05,\n ZIP_OPSYS_OS_2: 0x06,\n ZIP_OPSYS_MACINTOSH: 0x07,\n ZIP_OPSYS_Z_SYSTEM: 0x08,\n ZIP_OPSYS_CPM: 0x09,\n ZIP_OPSYS_WINDOWS_NTFS: 0x0a,\n ZIP_OPSYS_MVS: 0x0b,\n ZIP_OPSYS_VSE: 0x0c,\n ZIP_OPSYS_ACORN_RISC: 0x0d,\n ZIP_OPSYS_VFAT: 0x0e,\n ZIP_OPSYS_ALTERNATE_MVS: 0x0f,\n ZIP_OPSYS_BEOS: 0x10,\n ZIP_OPSYS_TANDEM: 0x11,\n ZIP_OPSYS_OS_400: 0x12,\n ZIP_OPSYS_OS_X: 0x13,\n uint08S: libzip_1.default._malloc(1),\n uint16S: libzip_1.default._malloc(2),\n uint32S: libzip_1.default._malloc(4),\n uint64S: libzip_1.default._malloc(8),\n malloc: libzip_1.default._malloc,\n free: libzip_1.default._free,\n getValue: libzip_1.default.getValue,\n open: libzip_1.default.cwrap(`zip_open`, `number`, [`string`, `number`, `number`]),\n close: libzip_1.default.cwrap(`zip_close`, `number`, [`number`]),\n discard: libzip_1.default.cwrap(`zip_discard`, `void`, [`number`]),\n getError: libzip_1.default.cwrap(`zip_get_error`, `number`, [`number`]),\n getName: libzip_1.default.cwrap(`zip_get_name`, `string`, [`number`, `number`, `number`]),\n getNumEntries: libzip_1.default.cwrap(`zip_get_num_entries`, `number`, [`number`, `number`]),\n stat: libzip_1.default.cwrap(`zip_stat`, `number`, [`number`, `string`, `number`, `number`]),\n statIndex: libzip_1.default.cwrap(`zip_stat_index`, `number`, [`number`, ...number64, `number`, `number`]),\n fopen: libzip_1.default.cwrap(`zip_fopen`, `number`, [`number`, `string`, `number`]),\n fopenIndex: libzip_1.default.cwrap(`zip_fopen_index`, `number`, [`number`, ...number64, `number`]),\n fread: libzip_1.default.cwrap(`zip_fread`, `number`, [`number`, `number`, `number`, `number`]),\n fclose: libzip_1.default.cwrap(`zip_fclose`, `number`, [`number`]),\n dir: {\n add: libzip_1.default.cwrap(`zip_dir_add`, `number`, [`number`, `string`]),\n },\n file: {\n add: libzip_1.default.cwrap(`zip_file_add`, `number`, [`number`, `string`, `number`, `number`]),\n getError: libzip_1.default.cwrap(`zip_file_get_error`, `number`, [`number`]),\n getExternalAttributes: libzip_1.default.cwrap(`zip_file_get_external_attributes`, `number`, [`number`, ...number64, `number`, `number`, `number`]),\n setExternalAttributes: libzip_1.default.cwrap(`zip_file_set_external_attributes`, `number`, [`number`, ...number64, `number`, `number`, `number`]),\n setMtime: libzip_1.default.cwrap(`zip_file_set_mtime`, `number`, [`number`, ...number64, `number`, `number`]),\n },\n error: {\n initWithCode: libzip_1.default.cwrap(`zip_error_init_with_code`, `void`, [`number`, `number`]),\n strerror: libzip_1.default.cwrap(`zip_error_strerror`, `string`, [`number`]),\n },\n name: {\n locate: libzip_1.default.cwrap(`zip_name_locate`, `number`, [`number`, `string`, `number`]),\n },\n source: {\n fromBuffer: libzip_1.default.cwrap(`zip_source_buffer`, `number`, [`number`, `number`, ...number64, `number`]),\n },\n struct: {\n stat: libzip_1.default.cwrap(`zipstruct_stat`, `number`, []),\n statS: libzip_1.default.cwrap(`zipstruct_statS`, `number`, []),\n statName: libzip_1.default.cwrap(`zipstruct_stat_name`, `string`, [`number`]),\n statIndex: libzip_1.default.cwrap(`zipstruct_stat_index`, `number`, [`number`]),\n statSize: libzip_1.default.cwrap(`zipstruct_stat_size`, `number`, [`number`]),\n statMtime: libzip_1.default.cwrap(`zipstruct_stat_mtime`, `number`, [`number`]),\n error: libzip_1.default.cwrap(`zipstruct_error`, `number`, []),\n errorS: libzip_1.default.cwrap(`zipstruct_errorS`, `number`, []),\n },\n};\n\n\n/***/ }),\n/* 12 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar frozenFs = Object.assign({}, __webpack_require__(3));\nvar Module=typeof Module!==\"undefined\"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module[\"arguments\"]=[];Module[\"thisProgram\"]=\"./this.program\";Module[\"quit\"]=(function(status,toThrow){throw toThrow});Module[\"preRun\"]=[];Module[\"postRun\"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=true;if(Module[\"ENVIRONMENT\"]){throw new Error(\"Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)\")}var scriptDirectory=\"\";function locateFile(path){if(Module[\"locateFile\"]){return Module[\"locateFile\"](path,scriptDirectory)}else{return scriptDirectory+path}}if(ENVIRONMENT_IS_NODE){if(!(typeof process===\"object\"&&\"function\"===\"function\"))throw new Error(\"not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)\");scriptDirectory=__dirname+\"/\";var nodeFS;var nodePath;Module[\"read\"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=frozenFs;if(!nodePath)nodePath=__webpack_require__(4);filename=nodePath[\"normalize\"](filename);ret=nodeFS[\"readFileSync\"](filename)}return binary?ret:ret.toString()};Module[\"readBinary\"]=function readBinary(filename){var ret=Module[\"read\"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process[\"argv\"].length>1){Module[\"thisProgram\"]=process[\"argv\"][1].replace(/\\\\/g,\"/\")}Module[\"arguments\"]=process[\"argv\"].slice(2);if(true){module[\"exports\"]=Module}(function(){})(\"uncaughtException\",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));(function(){})(\"unhandledRejection\",abort);Module[\"quit\"]=(function(status){process[\"exit\"](status)});Module[\"inspect\"]=(function(){return\"[Emscripten Module object]\"})}else{throw new Error(\"environment detection error\")}var out=Module[\"print\"]||(typeof console!==\"undefined\"?console.log.bind(console):typeof print!==\"undefined\"?print:null);var err=Module[\"printErr\"]||(typeof printErr!==\"undefined\"?printErr:typeof console!==\"undefined\"&&console.warn.bind(console)||out);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;assert(typeof Module[\"memoryInitializerPrefixURL\"]===\"undefined\",\"Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead\");assert(typeof Module[\"pthreadMainPrefixURL\"]===\"undefined\",\"Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead\");assert(typeof Module[\"cdInitializerPrefixURL\"]===\"undefined\",\"Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead\");assert(typeof Module[\"filePackagePrefixURL\"]===\"undefined\",\"Module.filePackagePrefixURL option was removed, use Module.locateFile instead\");stackSave=stackRestore=stackAlloc=(function(){abort(\"cannot use the stack before compiled code is ready to run, and has provided stack access\")});function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function getNativeTypeSize(type){switch(type){case\"i1\":case\"i8\":return 1;case\"i16\":return 2;case\"i32\":return 4;case\"i64\":return 8;case\"float\":return 4;case\"double\":return 8;default:{if(type[type.length-1]===\"*\"){return 4}else if(type[0]===\"i\"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}var asm2wasmImports={\"f64-rem\":(function(x,y){return x%y}),\"debugger\":(function(){debugger})};var functionPointers=new Array(0);var tempRet0=0;var setTempRet0=(function(value){tempRet0=value});var GLOBAL_BASE=1024;function getSafeHeapType(bytes,isFloat){switch(bytes){case 1:return\"i8\";case 2:return\"i16\";case 4:return isFloat?\"float\":\"i32\";case 8:return\"double\";default:assert(0)}}function SAFE_HEAP_STORE(dest,value,bytes,isFloat){if(dest<=0)abort(\"segmentation fault storing \"+bytes+\" bytes to address \"+dest);if(dest%bytes!==0)abort(\"alignment error storing to address \"+dest+\", which was expected to be aligned to a multiple of \"+bytes);if(dest+bytes>HEAP32[DYNAMICTOP_PTR>>2])abort(\"segmentation fault, exceeded the top of the available dynamic heap when storing \"+bytes+\" bytes to address \"+dest+\". DYNAMICTOP=\"+HEAP32[DYNAMICTOP_PTR>>2]);assert(DYNAMICTOP_PTR);assert(HEAP32[DYNAMICTOP_PTR>>2]<=TOTAL_MEMORY);setValue(dest,value,getSafeHeapType(bytes,isFloat),1)}function SAFE_HEAP_STORE_D(dest,value,bytes){SAFE_HEAP_STORE(dest,value,bytes,true)}function SAFE_HEAP_LOAD(dest,bytes,unsigned,isFloat){if(dest<=0)abort(\"segmentation fault loading \"+bytes+\" bytes from address \"+dest);if(dest%bytes!==0)abort(\"alignment error loading from address \"+dest+\", which was expected to be aligned to a multiple of \"+bytes);if(dest+bytes>HEAP32[DYNAMICTOP_PTR>>2])abort(\"segmentation fault, exceeded the top of the available dynamic heap when loading \"+bytes+\" bytes from address \"+dest+\". DYNAMICTOP=\"+HEAP32[DYNAMICTOP_PTR>>2]);assert(DYNAMICTOP_PTR);assert(HEAP32[DYNAMICTOP_PTR>>2]<=TOTAL_MEMORY);var type=getSafeHeapType(bytes,isFloat);var ret=getValue(dest,type,1);if(unsigned)ret=unSign(ret,parseInt(type.substr(1)),1);return ret}function SAFE_HEAP_LOAD_D(dest,bytes,unsigned){return SAFE_HEAP_LOAD(dest,bytes,unsigned,true)}function segfault(){abort(\"segmentation fault\")}function alignfault(){abort(\"alignment fault\")}var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort(\"Assertion failed: \"+text)}}function getCFunc(ident){var func=Module[\"_\"+ident];assert(func,\"Cannot call unknown function \"+ident+\", make sure it is exported\");return func}var JSfuncs={\"stackSave\":(function(){stackSave()}),\"stackRestore\":(function(){stackRestore()}),\"arrayToC\":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),\"stringToC\":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={\"string\":JSfuncs[\"stringToC\"],\"array\":JSfuncs[\"arrayToC\"]};function ccall(ident,returnType,argTypes,args,opts){function convertReturnValue(ret){if(returnType===\"string\")return Pointer_stringify(ret);if(returnType===\"boolean\")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;assert(returnType!==\"array\",'Return type should not be \"array\".');if(args){for(var i=0;i>0]=value;break;case\"i8\":HEAP8[ptr>>0]=value;break;case\"i16\":HEAP16[ptr>>1]=value;break;case\"i32\":HEAP32[ptr>>2]=value;break;case\"i64\":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case\"float\":HEAPF32[ptr>>2]=value;break;case\"double\":HEAPF64[ptr>>3]=value;break;default:abort(\"invalid type for setValue: \"+type)}}else{switch(type){case\"i1\":SAFE_HEAP_STORE(ptr|0,value|0,1);break;case\"i8\":SAFE_HEAP_STORE(ptr|0,value|0,1);break;case\"i16\":SAFE_HEAP_STORE(ptr|0,value|0,2);break;case\"i32\":SAFE_HEAP_STORE(ptr|0,value|0,4);break;case\"i64\":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/4294967296)>>>0:0)],SAFE_HEAP_STORE(ptr|0,tempI64[0]|0,4),SAFE_HEAP_STORE(ptr+4|0,tempI64[1]|0,4);break;case\"float\":SAFE_HEAP_STORE_D(ptr|0,Math_fround(value),4);break;case\"double\":SAFE_HEAP_STORE_D(ptr|0,+value,8);break;default:abort(\"invalid type for setValue: \"+type)}}}function getValue(ptr,type,noSafe){type=type||\"i8\";if(type.charAt(type.length-1)===\"*\")type=\"i32\";if(noSafe){switch(type){case\"i1\":return HEAP8[ptr>>0];case\"i8\":return HEAP8[ptr>>0];case\"i16\":return HEAP16[ptr>>1];case\"i32\":return HEAP32[ptr>>2];case\"i64\":return HEAP32[ptr>>2];case\"float\":return HEAPF32[ptr>>2];case\"double\":return HEAPF64[ptr>>3];default:abort(\"invalid type for getValue: \"+type)}}else{switch(type){case\"i1\":return SAFE_HEAP_LOAD(ptr|0,1,0)|0;case\"i8\":return SAFE_HEAP_LOAD(ptr|0,1,0)|0;case\"i16\":return SAFE_HEAP_LOAD(ptr|0,2,0)|0;case\"i32\":return SAFE_HEAP_LOAD(ptr|0,4,0)|0;case\"i64\":return SAFE_HEAP_LOAD(ptr|0,8,0)|0;case\"float\":return Math_fround(SAFE_HEAP_LOAD_D(ptr|0,4,0));case\"double\":return+SAFE_HEAP_LOAD_D(ptr|0,8,0);default:abort(\"invalid type for getValue: \"+type)}}return null}var ALLOC_NORMAL=0;var ALLOC_NONE=3;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab===\"number\"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types===\"string\"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[_malloc,stackAlloc,dynamicAlloc][allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType===\"i8\"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!==\"undefined\"?new TextDecoder(\"utf8\"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str=\"\";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){assert(typeof maxBytesToWrite==\"number\",\"stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!\");return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!==\"undefined\"?new TextDecoder(\"utf-16le\"):undefined;function demangle(func){warnOnce(\"warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling\");return func}function demangleAll(text){var regex=/__Z[\\w\\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:y+\" [\"+x+\"]\"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return\"(no stack trace available)\"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module[\"extraStackTrace\"])js+=\"\\n\"+Module[\"extraStackTrace\"]();return demangleAll(js)}var WASM_PAGE_SIZE=65536;var MIN_TOTAL_MEMORY=16777216;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBuffer(buf){Module[\"buffer\"]=buffer=buf}function updateGlobalBufferViews(){Module[\"HEAP8\"]=HEAP8=new Int8Array(buffer);Module[\"HEAP16\"]=HEAP16=new Int16Array(buffer);Module[\"HEAP32\"]=HEAP32=new Int32Array(buffer);Module[\"HEAPU8\"]=HEAPU8=new Uint8Array(buffer);Module[\"HEAPU16\"]=HEAPU16=new Uint16Array(buffer);Module[\"HEAPU32\"]=HEAPU32=new Uint32Array(buffer);Module[\"HEAPF32\"]=HEAPF32=new Float32Array(buffer);Module[\"HEAPF64\"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE=1024,STACK_BASE=22720,STACK_MAX=5265600,DYNAMIC_BASE=5265600,DYNAMICTOP_PTR=22464;assert(STACK_BASE%16===0,\"stack must start aligned\");assert(DYNAMIC_BASE%16===0,\"heap must start aligned\");function writeStackCookie(){assert((STACK_MAX&3)==0);HEAPU32[(STACK_MAX>>2)-1]=34821223;HEAPU32[(STACK_MAX>>2)-2]=2310721022}function checkStackCookie(){if(HEAPU32[(STACK_MAX>>2)-1]!=34821223||HEAPU32[(STACK_MAX>>2)-2]!=2310721022){abort(\"Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x\"+HEAPU32[(STACK_MAX>>2)-2].toString(16)+\" \"+HEAPU32[(STACK_MAX>>2)-1].toString(16))}if(HEAP32[0]!==1668509029)throw\"Runtime error: The application has corrupted its heap memory area (address zero)!\"}function abortStackOverflow(allocSize){abort(\"Stack overflow! Attempted to allocate \"+allocSize+\" bytes on the stack, but stack has only \"+(STACK_MAX-stackSave()+allocSize)+\" bytes available!\")}function abortOnCannotGrowMemory(){abort(\"Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value \"+TOTAL_MEMORY+\", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 \")}function enlargeMemory(){assert(HEAP32[DYNAMICTOP_PTR>>2]>TOTAL_MEMORY);var PAGE_MULTIPLE=65536;var LIMIT=2147483648-PAGE_MULTIPLE;if(HEAP32[DYNAMICTOP_PTR>>2]>LIMIT){err(\"Cannot enlarge memory, asked to go up to \"+HEAP32[DYNAMICTOP_PTR>>2]+\" bytes, but the limit is \"+LIMIT+\" bytes!\");return false}var OLD_TOTAL_MEMORY=TOTAL_MEMORY;TOTAL_MEMORY=Math.max(TOTAL_MEMORY,MIN_TOTAL_MEMORY);while(TOTAL_MEMORY>2]){if(TOTAL_MEMORY<=536870912){TOTAL_MEMORY=alignUp(2*TOTAL_MEMORY,PAGE_MULTIPLE)}else{TOTAL_MEMORY=Math.min(alignUp((3*TOTAL_MEMORY+2147483648)/4,PAGE_MULTIPLE),LIMIT);if(TOTAL_MEMORY===OLD_TOTAL_MEMORY){warnOnce(\"Cannot ask for more memory since we reached the practical limit in browsers (which is just below 2GB), so the request would have failed. Requesting only \"+TOTAL_MEMORY)}}}var start=Date.now();var replacement=Module[\"reallocBuffer\"](TOTAL_MEMORY);if(!replacement||replacement.byteLength!=TOTAL_MEMORY){err(\"Failed to grow the heap from \"+OLD_TOTAL_MEMORY+\" bytes to \"+TOTAL_MEMORY+\" bytes, not enough memory!\");if(replacement){err(\"Expected to get back a buffer of size \"+TOTAL_MEMORY+\" bytes, but instead got back a buffer of size \"+replacement.byteLength)}TOTAL_MEMORY=OLD_TOTAL_MEMORY;return false}updateGlobalBuffer(replacement);updateGlobalBufferViews();return true}var byteLength;try{byteLength=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,\"byteLength\").get);byteLength(new ArrayBuffer(4))}catch(e){byteLength=(function(buffer){return buffer.byteLength})}var TOTAL_STACK=5242880;if(Module[\"TOTAL_STACK\"])assert(TOTAL_STACK===Module[\"TOTAL_STACK\"],\"the stack size can no longer be determined at runtime\");var TOTAL_MEMORY=Module[\"TOTAL_MEMORY\"]||16777216;if(TOTAL_MEMORY>2]=DYNAMIC_BASE;function getTotalMemory(){return TOTAL_MEMORY}HEAP32[0]=1668509029;HEAP16[1]=25459;if(HEAPU8[2]!==115||HEAPU8[3]!==99)throw\"Runtime error: expected the system to be little-endian!\";function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback==\"function\"){callback();continue}var func=callback.func;if(typeof func===\"number\"){if(callback.arg===undefined){Module[\"dynCall_v\"](func)}else{Module[\"dynCall_vi\"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module[\"preRun\"]){if(typeof Module[\"preRun\"]==\"function\")Module[\"preRun\"]=[Module[\"preRun\"]];while(Module[\"preRun\"].length){addOnPreRun(Module[\"preRun\"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){checkStackCookie();if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){checkStackCookie();callRuntimeCallbacks(__ATMAIN__)}function postRun(){checkStackCookie();if(Module[\"postRun\"]){if(typeof Module[\"postRun\"]==\"function\")Module[\"postRun\"]=[Module[\"postRun\"]];while(Module[\"postRun\"].length){addOnPostRun(Module[\"postRun\"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}function writeArrayToMemory(array,buffer){assert(array.length>=0,\"writeArrayToMemory array must have a length (should be an array or typed array)\");HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i=0){return value}return bits<=32?2*Math.abs(1<=0){err(\"Memory size incompatibility issues may be due to changing TOTAL_MEMORY at runtime to something too large. Use ALLOW_MEMORY_GROWTH to allow any size memory (and also make sure not to set TOTAL_MEMORY at runtime to something smaller than it was at compile time).\")}return false}receiveInstance(instance,module);return exports}Module[\"asmPreload\"]=Module[\"asm\"];var wasmReallocBuffer=(function(size){var PAGE_MULTIPLE=65536;size=alignUp(size,PAGE_MULTIPLE);var old=Module[\"buffer\"];var oldSize=old.byteLength;try{var result=Module[\"wasmMemory\"].grow((size-oldSize)/wasmPageSize);if(result!==(-1|0)){return Module[\"buffer\"]=Module[\"wasmMemory\"].buffer}else{return null}}catch(e){console.error(\"Module.reallocBuffer: Attempted to grow from \"+oldSize+\" bytes to \"+size+\" bytes, but got error: \"+e);return null}});Module[\"reallocBuffer\"]=(function(size){return wasmReallocBuffer(size)});Module[\"asm\"]=(function(global,env,providedBuffer){if(!env[\"table\"]){assert(Module[\"wasmTableSize\"]!==undefined);var TABLE_SIZE=Module[\"wasmTableSize\"];var MAX_TABLE_SIZE=Module[\"wasmMaxTableSize\"];if(typeof WebAssembly===\"object\"&&typeof WebAssembly.Table===\"function\"){if(MAX_TABLE_SIZE!==undefined){env[\"table\"]=new WebAssembly.Table({\"initial\":TABLE_SIZE,\"maximum\":MAX_TABLE_SIZE,\"element\":\"anyfunc\"})}else{env[\"table\"]=new WebAssembly.Table({\"initial\":TABLE_SIZE,element:\"anyfunc\"})}}else{env[\"table\"]=new Array(TABLE_SIZE)}Module[\"wasmTable\"]=env[\"table\"]}if(!env[\"__memory_base\"]){env[\"__memory_base\"]=Module[\"STATIC_BASE\"]}if(!env[\"__table_base\"]){env[\"__table_base\"]=0}var exports=createWasm(global,env,providedBuffer);assert(exports,\"binaryen setup failed (no wasm support?)\");return exports})}integrateWasmJS();STATIC_BASE=GLOBAL_BASE;__ATINIT__.push({func:(function(){___emscripten_environ_constructor()})});var STATIC_BUMP=21696;Module[\"STATIC_BASE\"]=STATIC_BASE;Module[\"STATIC_BUMP\"]=STATIC_BUMP;var tempDoublePtr=22704;assert(tempDoublePtr%8==0);var ENV={};function ___buildEnvironment(environ){var MAX_ENV_VALUES=64;var TOTAL_ENV_SIZE=1024;var poolPtr;var envPtr;if(!___buildEnvironment.called){___buildEnvironment.called=true;ENV[\"USER\"]=ENV[\"LOGNAME\"]=\"web_user\";ENV[\"PATH\"]=\"/\";ENV[\"PWD\"]=\"/\";ENV[\"HOME\"]=\"/home/web_user\";ENV[\"LANG\"]=\"C.UTF-8\";ENV[\"_\"]=Module[\"thisProgram\"];poolPtr=getMemory(TOTAL_ENV_SIZE);envPtr=getMemory(MAX_ENV_VALUES*4);SAFE_HEAP_STORE(envPtr|0,poolPtr|0,4);SAFE_HEAP_STORE(environ|0,envPtr|0,4)}else{envPtr=SAFE_HEAP_LOAD(environ|0,4,0)|0;poolPtr=SAFE_HEAP_LOAD(envPtr|0,4,0)|0}var strings=[];var totalSize=0;for(var key in ENV){if(typeof ENV[key]===\"string\"){var line=key+\"=\"+ENV[key];strings.push(line);totalSize+=line.length}}if(totalSize>TOTAL_ENV_SIZE){throw new Error(\"Environment size exceeded TOTAL_ENV_SIZE!\")}var ptrSize=4;for(var i=0;i=0;i--){var last=parts[i];if(last===\".\"){parts.splice(i,1)}else if(last===\"..\"){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift(\"..\")}}return parts}),normalize:(function(path){var isAbsolute=path.charAt(0)===\"/\",trailingSlash=path.substr(-1)===\"/\";path=PATH.normalizeArray(path.split(\"/\").filter((function(p){return!!p})),!isAbsolute).join(\"/\");if(!path&&!isAbsolute){path=\".\"}if(path&&trailingSlash){path+=\"/\"}return(isAbsolute?\"/\":\"\")+path}),dirname:(function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return\".\"}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir}),basename:(function(path){if(path===\"/\")return\"/\";var lastSlash=path.lastIndexOf(\"/\");if(lastSlash===-1)return path;return path.substr(lastSlash+1)}),extname:(function(path){return PATH.splitPath(path)[3]}),join:(function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join(\"/\"))}),join2:(function(l,r){return PATH.normalize(l+\"/\"+r)}),resolve:(function(){var resolvedPath=\"\",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!==\"string\"){throw new TypeError(\"Arguments to path.resolve must be strings\")}else if(!path){return\"\"}resolvedPath=path+\"/\"+resolvedPath;resolvedAbsolute=path.charAt(0)===\"/\"}resolvedPath=PATH.normalizeArray(resolvedPath.split(\"/\").filter((function(p){return!!p})),!resolvedAbsolute).join(\"/\");return(resolvedAbsolute?\"/\":\"\")+resolvedPath||\".\"}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!==\"\")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split(\"/\"));var toParts=trim(to.split(\"/\"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i0){result=buf.slice(0,bytesRead).toString(\"utf-8\")}else{result=null}}else if(typeof window!=\"undefined\"&&typeof window.prompt==\"function\"){result=window.prompt(\"Input: \");if(result!==null){result+=\"\\n\"}}else if(typeof readline==\"function\"){result=readline();if(result!==null){result+=\"\\n\"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){out(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,\"/\",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;inode.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}if(!node.contents&&newCapacity>0)node.contents=[];while(node.contents.lengthnewSize)node.contents.length=newSize;else while(node.contents.length=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);assert(size>=0);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+length>2}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return stat.mode}),realPath:(function(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join.apply(null,parts)}),flagsForNode:(function(flags){flags&=~2097152;flags&=~2048;flags&=~32768;flags&=~524288;var newFlags=0;for(var k in NODEFS.flagsForNodeMap){if(flags&k){newFlags|=NODEFS.flagsForNodeMap[k];flags^=k}}if(!flags){return newFlags}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,\"\",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.flagsForNode(stream.flags))}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),close:(function(stream){try{if(FS.isFile(stream.node.mode)&&stream.nfd){fs.closeSync(stream.nfd)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),read:(function(stream,buffer,offset,length,position){if(length===0)return 0;try{return fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),write:(function(stream,buffer,offset,length,position){try{return fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};var NODERAWFS={lookupPath:(function(path){return{path:path,node:{mode:NODEFS.getMode(path)}}}),createStandardStreams:(function(){FS.streams[0]={fd:0,nfd:0,position:0,path:\"\",flags:0,tty:true,seekable:false};for(var i=1;i<3;i++){FS.streams[i]={fd:i,nfd:i,position:0,path:\"\",flags:577,tty:true,seekable:false}}}),cwd:(function(){return process.cwd()}),chdir:(function(){process.chdir.apply(void 0,arguments)}),mknod:(function(path,mode){if(FS.isDir(path)){fs.mkdirSync(path,mode)}else{fs.writeFileSync(path,\"\",{mode:mode})}}),mkdir:(function(){fs.mkdirSync.apply(void 0,arguments)}),symlink:(function(){fs.symlinkSync.apply(void 0,arguments)}),rename:(function(){fs.renameSync.apply(void 0,arguments)}),rmdir:(function(){fs.rmdirSync.apply(void 0,arguments)}),readdir:(function(){fs.readdirSync.apply(void 0,arguments)}),unlink:(function(){fs.unlinkSync.apply(void 0,arguments)}),readlink:(function(){return fs.readlinkSync.apply(void 0,arguments)}),stat:(function(){return fs.statSync.apply(void 0,arguments)}),lstat:(function(){return fs.lstatSync.apply(void 0,arguments)}),chmod:(function(){fs.chmodSync.apply(void 0,arguments)}),fchmod:(function(){fs.fchmodSync.apply(void 0,arguments)}),chown:(function(){fs.chownSync.apply(void 0,arguments)}),fchown:(function(){fs.fchownSync.apply(void 0,arguments)}),truncate:(function(){fs.truncateSync.apply(void 0,arguments)}),ftruncate:(function(){fs.ftruncateSync.apply(void 0,arguments)}),utime:(function(){fs.utimesSync.apply(void 0,arguments)}),open:(function(path,flags,mode,suggestFD){if(typeof flags===\"string\"){flags=VFS.modeStringToFlags(flags)}var nfd=fs.openSync(path,NODEFS.flagsForNode(flags),mode);var fd=suggestFD!=null?suggestFD:FS.nextfd(nfd);var stream={fd:fd,nfd:nfd,position:0,path:path,flags:flags,seekable:true};FS.streams[fd]=stream;return stream}),close:(function(stream){if(!stream.stream_ops){fs.closeSync(stream.nfd)}FS.closeStream(stream.fd)}),llseek:(function(stream,offset,whence){if(stream.stream_ops){return VFS.llseek(stream,offset,whence)}var position=offset;if(whence===1){position+=stream.position}else if(whence===2){position+=fs.fstatSync(stream.nfd).size}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}stream.position=position;return position}),read:(function(stream,buffer,offset,length,position){if(stream.stream_ops){return VFS.read(stream,buffer,offset,length,position)}var seeking=typeof position!==\"undefined\";if(!seeking&&stream.seekable)position=stream.position;var bytesRead=fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead}),write:(function(stream,buffer,offset,length,position){if(stream.stream_ops){return VFS.write(stream,buffer,offset,length,position)}if(stream.flags&+\"1024\"){FS.llseek(stream,0,+\"2\")}var seeking=typeof position!==\"undefined\";if(!seeking&&stream.seekable)position=stream.position;var bytesWritten=fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position);if(!seeking)stream.position+=bytesWritten;return bytesWritten}),allocate:(function(){throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP)}),mmap:(function(){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}),msync:(function(){return 0}),munmap:(function(){return 0}),ioctl:(function(){throw new FS.ErrnoError(ERRNO_CODES.ENOTTY)})};var ERRNO_MESSAGES={0:\"Success\",1:\"Not super-user\",2:\"No such file or directory\",3:\"No such process\",4:\"Interrupted system call\",5:\"I/O error\",6:\"No such device or address\",7:\"Arg list too long\",8:\"Exec format error\",9:\"Bad file number\",10:\"No children\",11:\"No more processes\",12:\"Not enough core\",13:\"Permission denied\",14:\"Bad address\",15:\"Block device required\",16:\"Mount device busy\",17:\"File exists\",18:\"Cross-device link\",19:\"No such device\",20:\"Not a directory\",21:\"Is a directory\",22:\"Invalid argument\",23:\"Too many open files in system\",24:\"Too many open files\",25:\"Not a typewriter\",26:\"Text file busy\",27:\"File too large\",28:\"No space left on device\",29:\"Illegal seek\",30:\"Read only file system\",31:\"Too many links\",32:\"Broken pipe\",33:\"Math arg out of domain of func\",34:\"Math result not representable\",35:\"File locking deadlock error\",36:\"File or path name too long\",37:\"No record locks available\",38:\"Function not implemented\",39:\"Directory not empty\",40:\"Too many symbolic links\",42:\"No message of desired type\",43:\"Identifier removed\",44:\"Channel number out of range\",45:\"Level 2 not synchronized\",46:\"Level 3 halted\",47:\"Level 3 reset\",48:\"Link number out of range\",49:\"Protocol driver not attached\",50:\"No CSI structure available\",51:\"Level 2 halted\",52:\"Invalid exchange\",53:\"Invalid request descriptor\",54:\"Exchange full\",55:\"No anode\",56:\"Invalid request code\",57:\"Invalid slot\",59:\"Bad font file fmt\",60:\"Device not a stream\",61:\"No data (for no delay io)\",62:\"Timer expired\",63:\"Out of streams resources\",64:\"Machine is not on the network\",65:\"Package not installed\",66:\"The object is remote\",67:\"The link has been severed\",68:\"Advertise error\",69:\"Srmount error\",70:\"Communication error on send\",71:\"Protocol error\",72:\"Multihop attempted\",73:\"Cross mount point (not really error)\",74:\"Trying to read unreadable message\",75:\"Value too large for defined data type\",76:\"Given log. name not unique\",77:\"f.d. invalid for this operation\",78:\"Remote address changed\",79:\"Can access a needed shared lib\",80:\"Accessing a corrupted shared lib\",81:\".lib section in a.out corrupted\",82:\"Attempting to link in too many libs\",83:\"Attempting to exec a shared library\",84:\"Illegal byte sequence\",86:\"Streams pipe error\",87:\"Too many users\",88:\"Socket operation on non-socket\",89:\"Destination address required\",90:\"Message too long\",91:\"Protocol wrong type for socket\",92:\"Protocol not available\",93:\"Unknown protocol\",94:\"Socket type not supported\",95:\"Not supported\",96:\"Protocol family not supported\",97:\"Address family not supported by protocol family\",98:\"Address already in use\",99:\"Address not available\",100:\"Network interface is not configured\",101:\"Network is unreachable\",102:\"Connection reset by network\",103:\"Connection aborted\",104:\"Connection reset by peer\",105:\"No buffer space available\",106:\"Socket is already connected\",107:\"Socket is not connected\",108:\"Can't send after socket shutdown\",109:\"Too many references\",110:\"Connection timed out\",111:\"Connection refused\",112:\"Host is down\",113:\"Host is unreachable\",114:\"Socket already connected\",115:\"Connection already in progress\",116:\"Stale file handle\",122:\"Quota exceeded\",123:\"No medium (in tape drive)\",125:\"Operation canceled\",130:\"Previous owner died\",131:\"State not recoverable\"};var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:\"/\",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:(function(e){if(!(e instanceof FS.ErrnoError))throw e+\" : \"+stackTrace();return ___setErrNo(e.errno)}),lookupPath:(function(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:\"\",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(40)}var parts=PATH.normalizeArray(path.split(\"/\").filter((function(p){return!!p})),false);var current=FS.root;var current_path=\"/\";for(var i=0;i40){throw new FS.ErrnoError(40)}}}}return{path:current_path,node:current}}),getPath:(function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!==\"/\"?mount+\"/\"+path:mount+path}path=path?node.name+\"/\"+path:node.name;node=node.parent}}),hashName:(function(parentid,name){var hash=0;for(var i=0;i>>0)%FS.nameTable.length}),hashAddNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node}),hashRemoveNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}}),lookupNode:(function(parent,name){var err=FS.mayLookup(parent);if(err){throw new FS.ErrnoError(err,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),flagModes:{\"r\":0,\"rs\":1052672,\"r+\":2,\"w\":577,\"wx\":705,\"xw\":705,\"w+\":578,\"wx+\":706,\"xw+\":706,\"a\":1089,\"ax\":1217,\"xa\":1217,\"a+\":1090,\"ax+\":1218,\"xa+\":1218},modeStringToFlags:(function(str){var flags=FS.flagModes[str];if(typeof flags===\"undefined\"){throw new Error(\"Unknown file open mode: \"+str)}return flags}),flagsToPermissionString:(function(flag){var perms=[\"r\",\"w\",\"rw\"][flag&3];if(flag&512){perms+=\"w\"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf(\"r\")!==-1&&!(node.mode&292)){return 13}else if(perms.indexOf(\"w\")!==-1&&!(node.mode&146)){return 13}else if(perms.indexOf(\"x\")!==-1&&!(node.mode&73)){return 13}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,\"x\");if(err)return err;if(!dir.node_ops.lookup)return 13;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return 17}catch(e){}return FS.nodePermissions(dir,\"wx\")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,\"wx\");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return 20}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 16}}else{if(FS.isDir(node.mode)){return 21}}return 0}),mayOpen:(function(node,flags){if(!node){return 2}if(FS.isLink(node.mode)){return 40}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!==\"r\"||flags&512){return 21}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(24)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(29)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate===\"function\"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log(\"warning: \"+FS.syncFSRequests+\" FS.syncfs operations in flight at once, probably just doing extra work\")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint===\"/\";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(16)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(16)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(20)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(22)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name===\".\"||name===\"..\"){throw new FS.ErrnoError(22)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(1)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdirTree:(function(path,mode){var dirs=path.split(\"/\");var d=\"\";for(var i=0;i\"}))}),staticInit:(function(){FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},\"/\");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={\"MEMFS\":MEMFS,\"NODEFS\":NODEFS}}),init:(function(input,output,error){assert(!FS.init.initialized,\"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)\");FS.init.initialized=true;FS.ensureErrnoError();Module[\"stdin\"]=input||Module[\"stdin\"];Module[\"stdout\"]=output||Module[\"stdout\"];Module[\"stderr\"]=error||Module[\"stderr\"];FS.createStandardStreams()}),quit:(function(){FS.init.initialized=false;var fflush=Module[\"_fflush\"];if(fflush)fflush(0);for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open(\"HEAD\",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error(\"Couldn't load \"+url+\". Status: \"+xhr.status);var datalength=Number(xhr.getResponseHeader(\"Content-length\"));var header;var hasByteServing=(header=xhr.getResponseHeader(\"Accept-Ranges\"))&&header===\"bytes\";var usesGzip=(header=xhr.getResponseHeader(\"Content-Encoding\"))&&header===\"gzip\";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error(\"invalid range (\"+from+\", \"+to+\") or no bytes requested!\");if(to>datalength-1)throw new Error(\"only \"+datalength+\" bytes available! programmer error!\");var xhr=new XMLHttpRequest;xhr.open(\"GET\",url,false);if(datalength!==chunkSize)xhr.setRequestHeader(\"Range\",\"bytes=\"+from+\"-\"+to);if(typeof Uint8Array!=\"undefined\")xhr.responseType=\"arraybuffer\";if(xhr.overrideMimeType){xhr.overrideMimeType(\"text/plain; charset=x-user-defined\")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error(\"Couldn't load \"+url+\". Status: \"+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||\"\",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]===\"undefined\"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]===\"undefined\")throw new Error(\"doXHR failed!\");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log(\"LazyFiles on gzip forces download of the whole file when length is accessed\")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!==\"undefined\"){if(!ENVIRONMENT_IS_WORKER)throw\"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc\";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(5)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(5)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall10(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr();FS.unlink(path);return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);SAFE_HEAP_STORE(result|0,stream.position|0,4);if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall15(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),mode=SYSCALLS.get();FS.chmod(path,mode);return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall195(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,path,buf)}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall197(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,stream.path,buf)}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;SAFE_HEAP_STORE(arg+offset|0,2|0,2);return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall38(which,varargs){SYSCALLS.varargs=varargs;try{var old_path=SYSCALLS.getStr(),new_path=SYSCALLS.getStr();FS.rename(old_path,new_path);return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall40(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr();FS.rmdir(path);return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21509:case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();SAFE_HEAP_STORE(argp|0,0|0,4);return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};case 21523:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21524:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};default:abort(\"bad ioctl syscall \"+op)}}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall60(which,varargs){SYSCALLS.varargs=varargs;try{var mask=SYSCALLS.get();var old=SYSCALLS.umask;SYSCALLS.umask=mask;return old}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___unlock(){}var ___tm_current=22560;var ___tm_timezone=(stringToUTF8(\"GMT\",22608,4),22608);function _tzset(){if(_tzset.called)return;_tzset.called=true;SAFE_HEAP_STORE(__get_timezone()|0,(new Date).getTimezoneOffset()*60|0,4);var winter=new Date(2e3,0,1);var summer=new Date(2e3,6,1);SAFE_HEAP_STORE(__get_daylight()|0,Number(winter.getTimezoneOffset()!=summer.getTimezoneOffset())|0,4);function extractZone(date){var match=date.toTimeString().match(/\\(([A-Za-z ]+)\\)$/);return match?match[1]:\"GMT\"}var winterName=extractZone(winter);var summerName=extractZone(summer);var winterNamePtr=allocate(intArrayFromString(winterName),\"i8\",ALLOC_NORMAL);var summerNamePtr=allocate(intArrayFromString(summerName),\"i8\",ALLOC_NORMAL);if(summer.getTimezoneOffset()0!=(dstOffset==guessedOffset)){var nonDstOffset=Math.max(winterOffset,summerOffset);var trueOffset=dst>0?dstOffset:nonDstOffset;date.setTime(date.getTime()+(trueOffset-guessedOffset)*6e4)}SAFE_HEAP_STORE(tmPtr+24|0,date.getDay()|0,4);var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;SAFE_HEAP_STORE(tmPtr+28|0,yday|0,4);return date.getTime()/1e3|0}function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){SAFE_HEAP_STORE(ptr|0,ret|0,4)}return ret}if(ENVIRONMENT_IS_NODE){_emscripten_get_now=function _emscripten_get_now_actual(){var t=process[\"hrtime\"]();return t[0]*1e3+t[1]/1e6}}else if(typeof dateNow!==\"undefined\"){_emscripten_get_now=dateNow}else if(typeof self===\"object\"&&self[\"performance\"]&&typeof self[\"performance\"][\"now\"]===\"function\"){_emscripten_get_now=(function(){return self[\"performance\"][\"now\"]()})}else if(typeof performance===\"object\"&&typeof performance[\"now\"]===\"function\"){_emscripten_get_now=(function(){return performance[\"now\"]()})}else{_emscripten_get_now=Date.now}FS.staticInit();__ATINIT__.unshift((function(){if(!Module[\"noFSInit\"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((function(){FS.quit()}));__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=frozenFs;var NODEJS_PATH=__webpack_require__(4);NODEFS.staticInit()}if(ENVIRONMENT_IS_NODE){var _wrapNodeError=(function(func){return(function(){try{return func.apply(this,arguments)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})});var VFS=Object.assign({},FS);for(var _key in NODERAWFS)FS[_key]=_wrapNodeError(NODERAWFS[_key])}else{throw new Error(\"NODERAWFS is currently only supported on Node.js environment.\")}function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}var decodeBase64=typeof atob===\"function\"?atob:(function(input){var keyStr=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";var output=\"\";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\\+\\/\\=]/g,\"\");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i0){return}writeStackCookie();preRun();if(runDependencies>0)return;if(Module[\"calledRun\"])return;function doRun(){if(Module[\"calledRun\"])return;Module[\"calledRun\"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module[\"onRuntimeInitialized\"])Module[\"onRuntimeInitialized\"]();assert(!Module[\"_main\"],'compiled without a main, but one is present. if you added it from JS, use Module[\"onRuntimeInitialized\"]');postRun()}if(Module[\"setStatus\"]){Module[\"setStatus\"](\"Running...\");setTimeout((function(){setTimeout((function(){Module[\"setStatus\"](\"\")}),1);doRun()}),1)}else{doRun()}checkStackCookie()}Module[\"run\"]=run;var abortDecorators=[];function abort(what){if(Module[\"onAbort\"]){Module[\"onAbort\"](what)}if(what!==undefined){out(what);err(what);what=JSON.stringify(what)}else{what=\"\"}ABORT=true;EXITSTATUS=1;var extra=\"\";var output=\"abort(\"+what+\") at \"+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module[\"abort\"]=abort;if(Module[\"preInit\"]){if(typeof Module[\"preInit\"]==\"function\")Module[\"preInit\"]=[Module[\"preInit\"]];while(Module[\"preInit\"].length>0){Module[\"preInit\"].pop()()}}Module[\"noExitRuntime\"]=true;run()\n\n\n\n\n\n/***/ }),\n/* 13 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"crypto\");\n\n/***/ }),\n/* 14 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"stream\");\n\n/***/ }),\n/* 15 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"util\");\n\n/***/ }),\n/* 16 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst fs_1 = __webpack_require__(3);\nconst path_1 = __webpack_require__(4);\nconst FakeFS_1 = __webpack_require__(5);\nconst NodeFS_1 = __webpack_require__(2);\nconst ZipFS_1 = __webpack_require__(10);\nclass ZipOpenFS extends FakeFS_1.FakeFS {\n constructor({ baseFs = new NodeFS_1.NodeFS(), filter = null, useCache = true } = {}) {\n super();\n this.isZip = new Set();\n this.notZip = new Set();\n this.baseFs = baseFs;\n this.zipInstances = useCache ? new Map() : null;\n this.filter = filter;\n this.isZip = new Set();\n this.notZip = new Set();\n }\n static open(fn) {\n const zipOpenFs = new ZipOpenFS();\n try {\n return fn(zipOpenFs);\n }\n finally {\n zipOpenFs.saveAndClose();\n }\n }\n static async openPromise(fn) {\n const zipOpenFs = new ZipOpenFS();\n try {\n return await fn(zipOpenFs);\n }\n finally {\n zipOpenFs.saveAndClose();\n }\n }\n getRealPath() {\n return this.baseFs.getRealPath();\n }\n saveAndClose() {\n if (this.zipInstances) {\n for (const [path, zipFs] of this.zipInstances.entries()) {\n zipFs.saveAndClose();\n this.zipInstances.delete(path);\n }\n }\n }\n discardAndClose() {\n if (this.zipInstances) {\n for (const [path, zipFs] of this.zipInstances.entries()) {\n zipFs.discardAndClose();\n this.zipInstances.delete(path);\n }\n }\n }\n async openPromise(p, flags, mode) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.openPromise(p, flags, mode);\n }, async (zipFs, { archivePath, subPath }) => {\n throw new Error(`Unsupported action (we wouldn't be able to disambiguate the close)`);\n });\n }\n openSync(p, flags, mode) {\n return this.makeCallSync(p, () => {\n return this.baseFs.openSync(p, flags, mode);\n }, (zipFs, { archivePath, subPath }) => {\n throw new Error(`Unsupported action (we wouldn't be able to disambiguate the close)`);\n });\n }\n async closePromise(fd) {\n return await this.baseFs.closePromise(fd);\n }\n closeSync(fd) {\n return this.baseFs.closeSync(fd);\n }\n createReadStream(p, opts) {\n return this.makeCallSync(p, () => {\n return this.baseFs.createReadStream(p, opts);\n }, (zipFs, { subPath }) => {\n return zipFs.createReadStream(subPath, opts);\n });\n }\n createWriteStream(p, opts) {\n return this.makeCallSync(p, () => {\n return this.baseFs.createWriteStream(p, opts);\n }, (zipFs, { subPath }) => {\n return zipFs.createWriteStream(subPath, opts);\n });\n }\n async realpathPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.realpathPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return path_1.posix.resolve(archivePath, path_1.posix.relative(`/`, await zipFs.realpathPromise(subPath)));\n });\n }\n realpathSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.realpathSync(p);\n }, (zipFs, { archivePath, subPath }) => {\n return path_1.posix.resolve(archivePath, path_1.posix.relative(`/`, zipFs.realpathSync(subPath)));\n });\n }\n async existsPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.existsPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.existsPromise(subPath);\n });\n }\n existsSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.existsSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.existsSync(subPath);\n });\n }\n async statPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.statPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.statPromise(subPath);\n });\n }\n statSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.statSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.statSync(subPath);\n });\n }\n async lstatPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.lstatPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.lstatPromise(subPath);\n });\n }\n lstatSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.lstatSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.lstatSync(subPath);\n });\n }\n async chmodPromise(p, mask) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.chmodPromise(p, mask);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.chmodPromise(subPath, mask);\n });\n }\n chmodSync(p, mask) {\n return this.makeCallSync(p, () => {\n return this.baseFs.chmodSync(p, mask);\n }, (zipFs, { subPath }) => {\n return zipFs.chmodSync(subPath, mask);\n });\n }\n async renamePromise(oldP, newP) {\n return await this.makeCallPromise(oldP, async () => {\n return await this.makeCallPromise(newP, async () => {\n return await this.baseFs.renamePromise(oldP, newP);\n }, async () => {\n throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });\n });\n }, async (zipFsO, { archivePath: archivePathO, subPath: subPathO }) => {\n return await this.makeCallPromise(newP, async () => {\n throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });\n }, async (zipFsN, { archivePath: archivePathN, subPath: subPathN }) => {\n if (zipFsO !== zipFsN) {\n throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });\n }\n else {\n return await zipFsO.renamePromise(subPathO, subPathN);\n }\n });\n });\n }\n renameSync(oldP, newP) {\n return this.makeCallSync(oldP, () => {\n return this.makeCallSync(newP, () => {\n return this.baseFs.renameSync(oldP, newP);\n }, async () => {\n throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });\n });\n }, (zipFsO, { archivePath: archivePathO, subPath: subPathO }) => {\n return this.makeCallSync(newP, () => {\n throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });\n }, (zipFsN, { archivePath: archivePathN, subPath: subPathN }) => {\n if (zipFsO !== zipFsN) {\n throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });\n }\n else {\n return zipFsO.renameSync(subPathO, subPathN);\n }\n });\n });\n }\n async copyFilePromise(sourceP, destP, flags = 0) {\n const fallback = async (sourceFs, sourceP, destFs, destP) => {\n if ((flags & fs_1.constants.COPYFILE_FICLONE_FORCE) !== 0)\n throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${sourceP}' -> ${destP}'`), { code: `EXDEV` });\n if ((flags & fs_1.constants.COPYFILE_EXCL) && await this.existsPromise(sourceP))\n throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${sourceP}' -> '${destP}'`), { code: `EEXIST` });\n let content;\n try {\n content = await sourceFs.readFilePromise(sourceP);\n }\n catch (error) {\n throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${sourceP}' -> '${destP}'`), { code: `EINVAL` });\n }\n await destFs.writeFilePromise(destP, content);\n };\n return await this.makeCallPromise(sourceP, async () => {\n return await this.makeCallPromise(destP, async () => {\n return await this.baseFs.copyFilePromise(sourceP, destP, flags);\n }, async (zipFsD, { archivePath: archivePathD, subPath: subPathD }) => {\n return await fallback(this.baseFs, sourceP, zipFsD, subPathD);\n });\n }, async (zipFsS, { archivePath: archivePathS, subPath: subPathS }) => {\n return await this.makeCallPromise(destP, async () => {\n return await fallback(zipFsS, subPathS, this.baseFs, destP);\n }, async (zipFsD, { archivePath: archivePathD, subPath: subPathD }) => {\n if (zipFsS !== zipFsD) {\n return await fallback(zipFsS, subPathS, zipFsD, subPathD);\n }\n else {\n return await zipFsS.copyFilePromise(subPathS, subPathD, flags);\n }\n });\n });\n }\n copyFileSync(sourceP, destP, flags = 0) {\n const fallback = (sourceFs, sourceP, destFs, destP) => {\n if ((flags & fs_1.constants.COPYFILE_FICLONE_FORCE) !== 0)\n throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${sourceP}' -> ${destP}'`), { code: `EXDEV` });\n if ((flags & fs_1.constants.COPYFILE_EXCL) && this.existsSync(sourceP))\n throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${sourceP}' -> '${destP}'`), { code: `EEXIST` });\n let content;\n try {\n content = sourceFs.readFileSync(sourceP);\n }\n catch (error) {\n throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${sourceP}' -> '${destP}'`), { code: `EINVAL` });\n }\n destFs.writeFileSync(destP, content);\n };\n return this.makeCallSync(sourceP, () => {\n return this.makeCallSync(destP, () => {\n return this.baseFs.copyFileSync(sourceP, destP, flags);\n }, (zipFsD, { archivePath: archivePathD, subPath: subPathD }) => {\n return fallback(this.baseFs, sourceP, zipFsD, subPathD);\n });\n }, (zipFsS, { archivePath: archivePathS, subPath: subPathS }) => {\n return this.makeCallSync(destP, () => {\n return fallback(zipFsS, subPathS, this.baseFs, destP);\n }, (zipFsD, { archivePath: archivePathD, subPath: subPathD }) => {\n if (zipFsS !== zipFsD) {\n return fallback(zipFsS, subPathS, zipFsD, subPathD);\n }\n else {\n return zipFsS.copyFileSync(subPathS, subPathD, flags);\n }\n });\n });\n }\n async writeFilePromise(p, content, opts) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.writeFilePromise(p, content, opts);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.writeFilePromise(subPath, content, opts);\n });\n }\n writeFileSync(p, content, opts) {\n return this.makeCallSync(p, () => {\n return this.baseFs.writeFileSync(p, content, opts);\n }, (zipFs, { subPath }) => {\n return zipFs.writeFileSync(subPath, content, opts);\n });\n }\n async unlinkPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.unlinkPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.unlinkPromise(subPath);\n });\n }\n unlinkSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.unlinkSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.unlinkSync(subPath);\n });\n }\n async utimesPromise(p, atime, mtime) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.utimesPromise(p, atime, mtime);\n }, async (zipFs, { subPath }) => {\n return await zipFs.utimesPromise(subPath, atime, mtime);\n });\n }\n utimesSync(p, atime, mtime) {\n return this.makeCallSync(p, () => {\n return this.baseFs.utimesSync(p, atime, mtime);\n }, (zipFs, { subPath }) => {\n return zipFs.utimesSync(subPath, atime, mtime);\n });\n }\n async mkdirPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.mkdirPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.mkdirPromise(subPath);\n });\n }\n mkdirSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.mkdirSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.mkdirSync(subPath);\n });\n }\n async rmdirPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.rmdirPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.rmdirPromise(subPath);\n });\n }\n rmdirSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.rmdirSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.rmdirSync(subPath);\n });\n }\n async symlinkPromise(target, p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.symlinkPromise(target, p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.symlinkPromise(target, subPath);\n });\n }\n symlinkSync(target, p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.symlinkSync(target, p);\n }, (zipFs, { subPath }) => {\n return zipFs.symlinkSync(target, subPath);\n });\n }\n async readFilePromise(p, encoding) {\n return this.makeCallPromise(p, async () => {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return await this.baseFs.readFilePromise(p, encoding);\n default:\n return await this.baseFs.readFilePromise(p, encoding);\n }\n }, async (zipFs, { subPath }) => {\n return await zipFs.readFilePromise(subPath, encoding);\n });\n }\n readFileSync(p, encoding) {\n return this.makeCallSync(p, () => {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return this.baseFs.readFileSync(p, encoding);\n default:\n return this.baseFs.readFileSync(p, encoding);\n }\n }, (zipFs, { subPath }) => {\n return zipFs.readFileSync(subPath, encoding);\n });\n }\n async readdirPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.readdirPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.readdirPromise(subPath);\n }, {\n requireSubpath: false,\n });\n }\n readdirSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.readdirSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.readdirSync(subPath);\n }, {\n requireSubpath: false,\n });\n }\n async readlinkPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.readlinkPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.readlinkPromise(subPath);\n });\n }\n readlinkSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.readlinkSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.readlinkSync(subPath);\n });\n }\n async makeCallPromise(p, discard, accept, { requireSubpath = true } = {}) {\n p = path_1.posix.normalize(path_1.posix.resolve(`/`, p));\n const zipInfo = this.findZip(p);\n if (!zipInfo)\n return await discard();\n if (requireSubpath && zipInfo.subPath === `/`)\n return await discard();\n return await this.getZipPromise(zipInfo.archivePath, async (zipFs) => await accept(zipFs, zipInfo));\n }\n makeCallSync(p, discard, accept, { requireSubpath = true } = {}) {\n p = path_1.posix.normalize(path_1.posix.resolve(`/`, p));\n const zipInfo = this.findZip(p);\n if (!zipInfo)\n return discard();\n if (requireSubpath && zipInfo.subPath === `/`)\n return discard();\n return this.getZipSync(zipInfo.archivePath, zipFs => accept(zipFs, zipInfo));\n }\n findZip(p) {\n if (this.filter && !this.filter.test(p))\n return null;\n const parts = p.split(/\\//g);\n for (let t = 2; t <= parts.length; ++t) {\n const archivePath = parts.slice(0, t).join(`/`);\n if (this.notZip.has(archivePath))\n continue;\n if (this.isZip.has(archivePath))\n return { archivePath, subPath: path_1.posix.resolve(`/`, parts.slice(t).join(`/`)) };\n let realArchivePath = archivePath;\n let stat;\n while (true) {\n try {\n stat = this.baseFs.lstatSync(realArchivePath);\n }\n catch (error) {\n return null;\n }\n if (stat.isSymbolicLink()) {\n realArchivePath = path_1.posix.resolve(path_1.posix.dirname(realArchivePath), this.baseFs.readlinkSync(realArchivePath));\n }\n else {\n break;\n }\n }\n const isZip = stat.isFile() && path_1.posix.extname(realArchivePath) === `.zip`;\n if (isZip) {\n this.isZip.add(archivePath);\n return { archivePath, subPath: path_1.posix.resolve(`/`, parts.slice(t).join(`/`)) };\n }\n else {\n this.notZip.add(archivePath);\n if (stat.isFile()) {\n return null;\n }\n }\n }\n return null;\n }\n async getZipPromise(p, accept) {\n if (this.zipInstances) {\n let zipFs = this.zipInstances.get(p);\n if (!zipFs)\n this.zipInstances.set(p, zipFs = new ZipFS_1.ZipFS(p, { baseFs: this.baseFs, stats: await this.baseFs.statPromise(p) }));\n return await accept(zipFs);\n }\n else {\n const zipFs = new ZipFS_1.ZipFS(p, { baseFs: this.baseFs, stats: await this.baseFs.statPromise(p) });\n try {\n return await accept(zipFs);\n }\n finally {\n zipFs.saveAndClose();\n }\n }\n }\n getZipSync(p, accept) {\n if (this.zipInstances) {\n let zipFs = this.zipInstances.get(p);\n if (!zipFs)\n this.zipInstances.set(p, zipFs = new ZipFS_1.ZipFS(p, { baseFs: this.baseFs }));\n return accept(zipFs);\n }\n else {\n const zipFs = new ZipFS_1.ZipFS(p, { baseFs: this.baseFs });\n try {\n return accept(zipFs);\n }\n finally {\n zipFs.saveAndClose();\n }\n }\n }\n}\nexports.ZipOpenFS = ZipOpenFS;\n\n\n/***/ }),\n/* 17 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"module\");\n\n/***/ }),\n/* 18 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"string_decoder\");\n\n/***/ }),\n/* 19 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst fslib_1 = __webpack_require__(1);\nconst fs_1 = __importDefault(__webpack_require__(3));\nconst module_1 = __importDefault(__webpack_require__(17));\nconst path_1 = __importDefault(__webpack_require__(4));\nconst internalTools_1 = __webpack_require__(20);\nfunction applyPatch(pnpapi, opts) {\n // @ts-ignore\n const builtinModules = new Set(module_1.default.builtinModules || Object.keys(process.binding('natives')));\n // The callback function gets called to wrap the return value of the module names matching the regexp\n const patchedModules = [];\n if (opts.compatibilityMode) {\n // Modern versions of `resolve` support a specific entry point that custom resolvers can use\n // to inject a specific resolution logic without having to patch the whole package.\n //\n // Cf: https://github.com/browserify/resolve/pull/174\n patchedModules.push([\n /^\\.\\/normalize-options\\.js$/,\n (issuer, normalizeOptions) => {\n if (!issuer || issuer.name !== 'resolve')\n return normalizeOptions;\n return (request, opts) => {\n opts = opts || {};\n if (opts.forceNodeResolution)\n return opts;\n opts.preserveSymlinks = true;\n opts.paths = function (request, basedir, getNodeModulesDir, opts) {\n // Extract the name of the package being requested (1=full name, 2=scope name, 3=local name)\n const parts = request.match(/^((?:(@[^\\/]+)\\/)?([^\\/]+))/);\n if (!parts)\n throw new Error(`Assertion failed: Expected the \"resolve\" package to call the \"paths\" callback with package names only (got \"${request}\")`);\n // make sure that basedir ends with a slash\n if (basedir.charAt(basedir.length - 1) !== '/')\n basedir = path_1.default.join(basedir, '/');\n // TODO Handle portable paths\n // This is guaranteed to return the path to the \"package.json\" file from the given package\n const manifestPath = pnpapi.resolveToUnqualified(`${parts[1]}/package.json`, basedir, {\n considerBuiltins: false,\n });\n if (manifestPath === null)\n throw new Error(`Assertion failed: The resolution thinks that \"${parts[1]}\" is a Node builtin`);\n // The first dirname strips the package.json, the second strips the local named folder\n let nodeModules = path_1.default.dirname(path_1.default.dirname(manifestPath));\n // Strips the scope named folder if needed\n if (parts[2])\n nodeModules = path_1.default.dirname(nodeModules);\n return [nodeModules];\n };\n return opts;\n };\n },\n ]);\n }\n /**\n * Used to disable the resolution hooks (for when we want to fallback to the previous resolution - we then need\n * a way to \"reset\" the environment temporarily)\n */\n let enableNativeHooks = true;\n // @ts-ignore\n process.versions.pnp = String(pnpapi.VERSIONS.std);\n // A small note: we don't replace the cache here (and instead use the native one). This is an effort to not\n // break code similar to \"delete require.cache[require.resolve(FOO)]\", where FOO is a package located outside\n // of the Yarn dependency tree. In this case, we defer the load to the native loader. If we were to replace the\n // cache by our own, the native loader would populate its own cache, which wouldn't be exposed anymore, so the\n // delete call would be broken.\n const originalModuleLoad = module_1.default._load;\n module_1.default._load = function (request, parent, isMain) {\n if (!enableNativeHooks) {\n return originalModuleLoad.call(module_1.default, request, parent, isMain);\n }\n // Builtins are managed by the regular Node loader\n if (builtinModules.has(request)) {\n try {\n enableNativeHooks = false;\n return originalModuleLoad.call(module_1.default, request, parent, isMain);\n }\n finally {\n enableNativeHooks = true;\n }\n }\n // The 'pnpapi' name is reserved to return the PnP api currently in use by the program\n if (request === `pnpapi`)\n return pnpapi;\n // Request `Module._resolveFilename` (ie. `resolveRequest`) to tell us which file we should load\n const modulePath = module_1.default._resolveFilename(request, parent, isMain);\n // Check if the module has already been created for the given file\n const cacheEntry = module_1.default._cache[modulePath];\n if (cacheEntry)\n return cacheEntry.exports;\n // Create a new module and store it into the cache\n // @ts-ignore\n const module = new module_1.default(modulePath, parent);\n module_1.default._cache[modulePath] = module;\n // The main module is exposed as global variable\n if (isMain) {\n // @ts-ignore\n process.mainModule = module;\n module.id = '.';\n }\n // Try to load the module, and remove it from the cache if it fails\n let hasThrown = true;\n try {\n module.load(modulePath);\n hasThrown = false;\n }\n finally {\n if (hasThrown) {\n delete module_1.default._cache[modulePath];\n }\n }\n // Some modules might have to be patched for compatibility purposes\n for (const [filter, patchFn] of patchedModules) {\n if (filter.test(request)) {\n const issuer = parent && parent.filename ? pnpapi.findPackageLocator(parent.filename) : null;\n module.exports = patchFn(issuer, module.exports);\n }\n }\n return module.exports;\n };\n const originalModuleResolveFilename = module_1.default._resolveFilename;\n module_1.default._resolveFilename = function (request, parent, isMain, options) {\n if (request === `pnpapi`)\n return request;\n if (!enableNativeHooks)\n return originalModuleResolveFilename.call(module_1.default, request, parent, isMain, options);\n if (options && options.plugnplay === false) {\n try {\n enableNativeHooks = false;\n return originalModuleResolveFilename.call(module_1.default, request, parent, isMain, options);\n }\n finally {\n enableNativeHooks = true;\n }\n }\n let issuers;\n if (options) {\n const optionNames = new Set(Object.keys(options));\n optionNames.delete(`paths`);\n optionNames.delete(`plugnplay`);\n if (optionNames.size > 0) {\n throw internalTools_1.makeError(`UNSUPPORTED`, `Some options passed to require() aren't supported by PnP yet (${Array.from(optionNames).join(', ')})`);\n }\n if (options.paths) {\n issuers = options.paths.map((entry) => {\n return `${path_1.default.normalize(entry)}/`;\n });\n }\n }\n if (!issuers) {\n const issuerModule = internalTools_1.getIssuerModule(parent);\n const issuer = issuerModule ? issuerModule.filename : `${fslib_1.NodeFS.toPortablePath(process.cwd())}/`;\n issuers = [issuer];\n }\n // When Node is called, it tries to require the main script but can't\n // because PnP already patched 'Module'\n // We test it for an absolute Windows path and convert it to a portable path.\n // We should probably always call toPortablePath and check for this directly\n if (/^[A-Z]:.*/.test(request)) {\n request = fslib_1.NodeFS.toPortablePath(request);\n }\n let firstError;\n for (const issuer of issuers) {\n let resolution;\n try {\n resolution = pnpapi.resolveRequest(request, issuer);\n }\n catch (error) {\n firstError = firstError || error;\n continue;\n }\n return resolution !== null ? resolution : request;\n }\n throw firstError;\n };\n const originalFindPath = module_1.default._findPath;\n module_1.default._findPath = function (request, paths, isMain) {\n if (request === `pnpapi`)\n return false;\n if (!enableNativeHooks)\n return originalFindPath.call(module_1.default, request, paths, isMain);\n for (const path of paths) {\n let resolution;\n try {\n // TODO Convert path to portable path?\n resolution = pnpapi.resolveRequest(request, path);\n }\n catch (error) {\n continue;\n }\n if (resolution) {\n return resolution;\n }\n }\n return false;\n };\n fslib_1.patchFs(fs_1.default, new fslib_1.PosixFS(opts.fakeFs));\n}\nexports.applyPatch = applyPatch;\n;\n\n\n/***/ }),\n/* 20 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n/**\n * Simple helper function that assign an error code to an error, so that it can more easily be caught and used\n * by third-parties.\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nfunction makeError(code, message, data = {}) {\n const error = new Error(message);\n return Object.assign(error, { code, data });\n}\nexports.makeError = makeError;\n/**\n * Returns the module that should be used to resolve require calls. It's usually the direct parent, except if we're\n * inside an eval expression.\n */\nfunction getIssuerModule(parent) {\n let issuer = parent;\n while (issuer && (issuer.id === '[eval]' || issuer.id === '' || !issuer.filename)) {\n issuer = issuer.parent;\n }\n return issuer;\n}\nexports.getIssuerModule = getIssuerModule;\n\n\n/***/ }),\n/* 21 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst fslib_1 = __webpack_require__(1);\nconst path_1 = __webpack_require__(4);\nfunction hydrateRuntimeState(data, { basePath }) {\n const portablePath = fslib_1.NodeFS.toPortablePath(basePath);\n const ignorePattern = data.ignorePatternData\n ? new RegExp(data.ignorePatternData)\n : null;\n const packageRegistry = new Map(data.packageRegistryData.map(([packageName, packageStoreData]) => {\n return [packageName, new Map(packageStoreData.map(([packageReference, packageInformationData]) => {\n return [packageReference, {\n packageLocation: path_1.posix.resolve(portablePath, packageInformationData.packageLocation),\n packageDependencies: new Map(packageInformationData.packageDependencies),\n }];\n }))];\n }));\n const packageLocatorsByLocations = new Map(data.locationBlacklistData.map(location => {\n return [location, null];\n }));\n for (const [packageName, storeData] of data.packageRegistryData) {\n for (const [packageReference, packageInformationData] of storeData) {\n if ((packageName === null) !== (packageReference === null))\n throw new Error(`Assertion failed: The name and reference should be null, or neither should`);\n // @ts-ignore: TypeScript isn't smart enough to understand the type assertion\n const packageLocator = { name: packageName, reference: packageReference };\n packageLocatorsByLocations.set(packageInformationData.packageLocation, packageLocator);\n }\n }\n const packageLocationLengths = data.locationLengthData;\n return {\n basePath: portablePath,\n ignorePattern,\n packageRegistry,\n packageLocatorsByLocations,\n packageLocationLengths,\n };\n}\nexports.hydrateRuntimeState = hydrateRuntimeState;\n\n\n/***/ }),\n/* 22 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst fslib_1 = __webpack_require__(1);\nconst module_1 = __importDefault(__webpack_require__(17));\nconst path_1 = __webpack_require__(4);\nconst internalTools_1 = __webpack_require__(20);\nfunction makeApi(runtimeState, opts) {\n // @ts-ignore\n const builtinModules = new Set(module_1.default.builtinModules || Object.keys(process.binding('natives')));\n // Splits a require request into its components, or return null if the request is a file path\n const pathRegExp = /^(?![a-zA-Z]:[\\\\\\/]|\\\\\\\\|\\.{0,2}(?:\\/|$))((?:@[^\\/]+\\/)?[^\\/]+)\\/?(.*|)$/;\n // Matches if the path starts with a valid path qualifier (./, ../, /)\n // eslint-disable-next-line no-unused-vars\n const isStrictRegExp = /^\\.{0,2}\\//;\n // Matches if the path must point to a directory (ie ends with /)\n const isDirRegExp = /\\/$/;\n // Matches backslashes of Windows paths\n const backwardSlashRegExp = /\\\\/g;\n // We only instantiate one of those so that we can use strict-equal comparisons\n const topLevelLocator = { name: null, reference: null };\n // Used for compatibility purposes - cf setupCompatibilityLayer\n const fallbackLocators = [topLevelLocator];\n if (opts.compatibilityMode) {\n // ESLint currently doesn't have any portable way for shared configs to specify their own\n // plugins that should be used (https://github.com/eslint/eslint/issues/10125). This will\n // likely get fixed at some point, but it'll take time and in the meantime we'll just add\n // additional fallback entries for common shared configs.\n for (const name of [`react-scripts`]) {\n const packageStore = runtimeState.packageRegistry.get(name);\n if (packageStore) {\n for (const reference of packageStore.keys()) {\n if (reference === null) {\n throw new Error(`Assertion failed: This reference shouldn't be null`);\n }\n else {\n fallbackLocators.push({ name, reference });\n }\n }\n }\n }\n }\n /**\n * The setup code will be injected here. The tables listed below are guaranteed to be filled after the call to\n * the $$DYNAMICALLY_GENERATED_CODE function.\n */\n const { ignorePattern, packageRegistry, packageLocatorsByLocations, packageLocationLengths, } = runtimeState;\n /**\n * Returns information about a package in a safe way (will throw if they cannot be retrieved)\n */\n function getPackageInformationSafe(packageLocator) {\n const packageInformation = getPackageInformation(packageLocator);\n if (!packageInformation) {\n throw internalTools_1.makeError(`INTERNAL`, `Couldn't find a matching entry in the dependency tree for the specified parent (this is probably an internal error)`);\n }\n return packageInformation;\n }\n /**\n * Implements the node resolution for folder access and extension selection\n */\n function applyNodeExtensionResolution(unqualifiedPath, candidates, { extensions }) {\n // We use this \"infinite while\" so that we can restart the process as long as we hit package folders\n while (true) {\n let stat;\n try {\n candidates.push(unqualifiedPath);\n stat = opts.fakeFs.statSync(unqualifiedPath);\n }\n catch (error) { }\n // If the file exists and is a file, we can stop right there\n if (stat && !stat.isDirectory()) {\n // If the very last component of the resolved path is a symlink to a file, we then resolve it to a file. We only\n // do this first the last component, and not the rest of the path! This allows us to support the case of bin\n // symlinks, where a symlink in \"/xyz/pkg-name/.bin/bin-name\" will point somewhere else (like \"/xyz/pkg-name/index.js\").\n // In such a case, we want relative requires to be resolved relative to \"/xyz/pkg-name/\" rather than \"/xyz/pkg-name/.bin/\".\n //\n // Also note that the reason we must use readlink on the last component (instead of realpath on the whole path)\n // is that we must preserve the other symlinks, in particular those used by pnp to deambiguate packages using\n // peer dependencies. For example, \"/xyz/.pnp/local/pnp-01234569/.bin/bin-name\" should see its relative requires\n // be resolved relative to \"/xyz/.pnp/local/pnp-0123456789/\" rather than \"/xyz/pkg-with-peers/\", because otherwise\n // we would lose the information that would tell us what are the dependencies of pkg-with-peers relative to its\n // ancestors.\n if (opts.fakeFs.lstatSync(unqualifiedPath).isSymbolicLink())\n unqualifiedPath = path_1.posix.normalize(path_1.posix.resolve(path_1.posix.dirname(unqualifiedPath), opts.fakeFs.readlinkSync(unqualifiedPath)));\n return unqualifiedPath;\n }\n // If the file is a directory, we must check if it contains a package.json with a \"main\" entry\n if (stat && stat.isDirectory()) {\n let pkgJson;\n try {\n pkgJson = JSON.parse(opts.fakeFs.readFileSync(`${unqualifiedPath}/package.json`, `utf8`));\n }\n catch (error) { }\n let nextUnqualifiedPath;\n if (pkgJson && pkgJson.main)\n nextUnqualifiedPath = path_1.posix.resolve(unqualifiedPath, pkgJson.main);\n // If the \"main\" field changed the path, we start again from this new location\n if (nextUnqualifiedPath && nextUnqualifiedPath !== unqualifiedPath) {\n const resolution = applyNodeExtensionResolution(nextUnqualifiedPath, candidates, { extensions });\n if (resolution !== null) {\n return resolution;\n }\n }\n }\n // Otherwise we check if we find a file that match one of the supported extensions\n const qualifiedPath = extensions\n .map(extension => {\n return `${unqualifiedPath}${extension}`;\n })\n .find(candidateFile => {\n candidates.push(candidateFile);\n return opts.fakeFs.existsSync(candidateFile);\n });\n if (qualifiedPath)\n return qualifiedPath;\n // Otherwise, we check if the path is a folder - in such a case, we try to use its index\n if (stat && stat.isDirectory()) {\n const indexPath = extensions\n .map(extension => {\n return `${unqualifiedPath}/index${extension}`;\n })\n .find(candidateFile => {\n candidates.push(candidateFile);\n return opts.fakeFs.existsSync(candidateFile);\n });\n if (indexPath) {\n return indexPath;\n }\n }\n // Otherwise there's nothing else we can do :(\n return null;\n }\n }\n /**\n * This function creates fake modules that can be used with the _resolveFilename function.\n * Ideally it would be nice to be able to avoid this, since it causes useless allocations\n * and cannot be cached efficiently (we recompute the nodeModulePaths every time).\n *\n * Fortunately, this should only affect the fallback, and there hopefully shouldn't have a\n * lot of them.\n */\n function makeFakeModule(path) {\n // @ts-ignore\n const fakeModule = new module_1.default(path, null);\n fakeModule.filename = path;\n fakeModule.paths = module_1.default._nodeModulePaths(path);\n return fakeModule;\n }\n /**\n * Normalize path to posix format.\n */\n function normalizePath(p) {\n p = path_1.posix.normalize(p);\n if (process.platform === 'win32')\n p = p.replace(backwardSlashRegExp, '/');\n return p;\n }\n /**\n * Forward the resolution to the next resolver (usually the native one)\n */\n function callNativeResolution(request, issuer) {\n if (issuer.endsWith('/'))\n issuer += 'internal.js';\n request = fslib_1.NodeFS.fromPortablePath(request);\n issuer = fslib_1.NodeFS.fromPortablePath(issuer);\n // Since we would need to create a fake module anyway (to call _resolveLookupPath that\n // would give us the paths to give to _resolveFilename), we can as well not use\n // the {paths} option at all, since it internally makes _resolveFilename create another\n // fake module anyway.\n return module_1.default._resolveFilename(request, makeFakeModule(issuer), false, { plugnplay: false });\n }\n /**\n * This key indicates which version of the standard is implemented by this resolver. The `std` key is the\n * Plug'n'Play standard, and any other key are third-party extensions. Third-party extensions are not allowed\n * to override the standard, and can only offer new methods.\n *\n * If an new version of the Plug'n'Play standard is released and some extensions conflict with newly added\n * functions, they'll just have to fix the conflicts and bump their own version number.\n */\n const VERSIONS = { std: 1 };\n /**\n * We export a special symbol for easy access to the top level locator.\n */\n const topLevel = topLevelLocator;\n /**\n * Gets the package information for a given locator. Returns null if they cannot be retrieved.\n */\n function getPackageInformation({ name, reference }) {\n const packageInformationStore = packageRegistry.get(name);\n if (!packageInformationStore)\n return null;\n const packageInformation = packageInformationStore.get(reference);\n if (!packageInformation)\n return null;\n return packageInformation;\n }\n /**\n * Finds the package locator that owns the specified path. If none is found, returns null instead.\n */\n function findPackageLocator(location) {\n let relativeLocation = normalizePath(path_1.posix.relative(runtimeState.basePath, location));\n if (!relativeLocation.match(isStrictRegExp))\n relativeLocation = `./${relativeLocation}`;\n if (location.match(isDirRegExp) && !relativeLocation.endsWith(`/`))\n relativeLocation = `${relativeLocation}/`;\n let from = 0;\n // If someone wants to use a binary search to go from O(n) to O(log n), be my guest\n while (from < packageLocationLengths.length && packageLocationLengths[from] > relativeLocation.length)\n from += 1;\n for (let t = from; t < packageLocationLengths.length; ++t) {\n const locator = packageLocatorsByLocations.get(relativeLocation.substr(0, packageLocationLengths[t]));\n if (!locator)\n continue;\n // Ensures that the returned locator isn't a blacklisted one.\n //\n // Blacklisted packages are packages that cannot be used because their dependencies cannot be deduced. This only\n // happens with peer dependencies, which effectively have different sets of dependencies depending on their\n // parents.\n //\n // In order to deambiguate those different sets of dependencies, the Yarn implementation of PnP will generate a\n // symlink for each combination of // it will find, and will\n // blacklist the target of those symlinks. By doing this, we ensure that files loaded through a specific path\n // will always have the same set of dependencies, provided the symlinks are correctly preserved.\n //\n // Unfortunately, some tools do not preserve them, and when it happens PnP isn't able anymore to deduce the set of\n // dependencies based on the path of the file that makes the require calls. But since we've blacklisted those\n // paths, we're able to print a more helpful error message that points out that a third-party package is doing\n // something incompatible!\n if (locator === null) {\n throw internalTools_1.makeError(`BLACKLISTED`, [\n `A package has been resolved through a blacklisted path - this is usually caused by one of your tool`,\n `calling \"realpath\" on the return value of \"require.resolve\". Since the returned values use symlinks to`,\n `disambiguate peer dependencies, they must be passed untransformed to \"require\".`,\n ].join(` `));\n }\n return locator;\n }\n return null;\n }\n /**\n * Transforms a request (what's typically passed as argument to the require function) into an unqualified path.\n * This path is called \"unqualified\" because it only changes the package name to the package location on the disk,\n * which means that the end result still cannot be directly accessed (for example, it doesn't try to resolve the\n * file extension, or to resolve directories to their \"index.js\" content). Use the \"resolveUnqualified\" function\n * to convert them to fully-qualified paths, or just use \"resolveRequest\" that do both operations in one go.\n *\n * Note that it is extremely important that the `issuer` path ends with a forward slash if the issuer is to be\n * treated as a folder (ie. \"/tmp/foo/\" rather than \"/tmp/foo\" if \"foo\" is a directory). Otherwise relative\n * imports won't be computed correctly (they'll get resolved relative to \"/tmp/\" instead of \"/tmp/foo/\").\n */\n function resolveToUnqualified(request, issuer, { considerBuiltins = true } = {}) {\n // The 'pnpapi' request is reserved and will always return the path to the PnP file, from everywhere\n if (request === `pnpapi`)\n return opts.pnpapiResolution;\n // Bailout if the request is a native module\n if (considerBuiltins && builtinModules.has(request))\n return null;\n // We allow disabling the pnp resolution for some subpaths. This is because some projects, often legacy,\n // contain multiple levels of dependencies (ie. a yarn.lock inside a subfolder of a yarn.lock). This is\n // typically solved using workspaces, but not all of them have been converted already.\n if (ignorePattern && issuer && ignorePattern.test(normalizePath(issuer))) {\n const result = callNativeResolution(request, issuer);\n if (result === false) {\n throw internalTools_1.makeError(`BUILTIN_NODE_RESOLUTION_FAIL`, `The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer was explicitely ignored by the regexp)\\n\\nRequire request: \"${request}\"\\nRequired by: ${issuer}\\n`, { request, issuer });\n }\n return result;\n }\n let unqualifiedPath;\n // If the request is a relative or absolute path, we just return it normalized\n const dependencyNameMatch = request.match(pathRegExp);\n if (!dependencyNameMatch) {\n if (path_1.posix.isAbsolute(request)) {\n unqualifiedPath = path_1.posix.normalize(request);\n }\n else {\n if (!issuer) {\n throw internalTools_1.makeError(`API_ERROR`, `The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute`, { request, issuer });\n }\n if (issuer.match(isDirRegExp)) {\n unqualifiedPath = path_1.posix.normalize(path_1.posix.resolve(issuer, request));\n }\n else {\n unqualifiedPath = path_1.posix.normalize(path_1.posix.resolve(path_1.posix.dirname(issuer), request));\n }\n }\n }\n // Things are more hairy if it's a package require - we then need to figure out which package is needed, and in\n // particular the exact version for the given location on the dependency tree\n else {\n if (!issuer) {\n throw internalTools_1.makeError(`API_ERROR`, `The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute`, { request, issuer });\n }\n const [, dependencyName, subPath] = dependencyNameMatch;\n const issuerLocator = findPackageLocator(issuer);\n // If the issuer file doesn't seem to be owned by a package managed through pnp, then we resort to using the next\n // resolution algorithm in the chain, usually the native Node resolution one\n if (!issuerLocator) {\n const result = callNativeResolution(request, issuer);\n if (result === false) {\n throw internalTools_1.makeError(`BUILTIN_NODE_RESOLUTION_FAIL`, `The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer doesn't seem to be part of the Yarn-managed dependency tree)\\n\\nRequire path: \"${request}\"\\nRequired by: ${issuer}\\n`, { request, issuer });\n }\n return result;\n }\n const issuerInformation = getPackageInformationSafe(issuerLocator);\n // We obtain the dependency reference in regard to the package that request it\n let dependencyReference = issuerInformation.packageDependencies.get(dependencyName);\n // If we can't find it, we check if we can potentially load it from the packages that have been defined as potential fallbacks.\n // It's a bit of a hack, but it improves compatibility with the existing Node ecosystem. Hopefully we should eventually be able\n // to kill this logic and become stricter once pnp gets enough traction and the affected packages fix themselves.\n if (issuerLocator.name !== null) {\n for (let t = 0, T = fallbackLocators.length; dependencyReference === undefined && t < T; ++t) {\n const fallbackInformation = getPackageInformationSafe(fallbackLocators[t]);\n dependencyReference = fallbackInformation.packageDependencies.get(dependencyName);\n }\n }\n // If we can't find the path, and if the package making the request is the top-level, we can offer nicer error messages\n if (!dependencyReference) {\n if (dependencyReference === null) {\n if (issuerLocator.name === null) {\n throw internalTools_1.makeError(`MISSING_PEER_DEPENDENCY`, `Something that got detected as your top-level application (because it doesn't seem to belong to any package) tried to access a peer dependency; this isn't allowed as the peer dependency cannot be provided by any parent package\\n\\nRequired package: ${dependencyName} (via \"${request}\")\\nRequired by: ${issuer}\\n`, { request, issuer, dependencyName });\n }\n else {\n throw internalTools_1.makeError(`MISSING_PEER_DEPENDENCY`, `A package is trying to access a peer dependency that should be provided by its direct ancestor but isn't\\n\\nRequired package: ${dependencyName} (via \"${request}\")\\nRequired by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuer})\\n`, { request, issuer, issuerLocator: Object.assign({}, issuerLocator), dependencyName });\n }\n }\n else {\n if (issuerLocator.name === null) {\n throw internalTools_1.makeError(`UNDECLARED_DEPENDENCY`, `Something that got detected as your top-level application (because it doesn't seem to belong to any package) tried to access a package that is not declared in your dependencies\\n\\nRequired package: ${dependencyName} (via \"${request}\")\\nRequired by: ${issuer}\\n`, { request, issuer, dependencyName });\n }\n else {\n const candidates = Array.from(issuerInformation.packageDependencies.keys());\n throw internalTools_1.makeError(`UNDECLARED_DEPENDENCY`, `A package is trying to access another package without the second one being listed as a dependency of the first one\\n\\nRequired package: ${dependencyName} (via \"${request}\")\\nRequired by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuer})\\n`, { request, issuer, issuerLocator: Object.assign({}, issuerLocator), dependencyName, candidates });\n }\n }\n }\n // We need to check that the package exists on the filesystem, because it might not have been installed\n const dependencyLocator = { name: dependencyName, reference: dependencyReference };\n const dependencyInformation = getPackageInformationSafe(dependencyLocator);\n if (!dependencyInformation.packageLocation) {\n throw internalTools_1.makeError(`MISSING_DEPENDENCY`, `A dependency seems valid but didn't get installed for some reason. This might be caused by a partial install, such as dev vs prod.\\n\\nRequired package: ${dependencyLocator.name}@${dependencyLocator.reference} (via \"${request}\")\\nRequired by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuer})\\n`, { request, issuer, dependencyLocator: Object.assign({}, dependencyLocator) });\n }\n // Now that we know which package we should resolve to, we only have to find out the file location\n const dependencyLocation = path_1.posix.resolve(runtimeState.basePath, dependencyInformation.packageLocation);\n if (subPath) {\n unqualifiedPath = path_1.posix.resolve(dependencyLocation, subPath);\n }\n else {\n unqualifiedPath = dependencyLocation;\n }\n }\n return path_1.posix.normalize(unqualifiedPath);\n }\n ;\n /**\n * Transforms an unqualified path into a qualified path by using the Node resolution algorithm (which automatically\n * appends \".js\" / \".json\", and transforms directory accesses into \"index.js\").\n */\n function resolveUnqualified(unqualifiedPath, { extensions = Object.keys(module_1.default._extensions) } = {}) {\n const candidates = [];\n const qualifiedPath = applyNodeExtensionResolution(unqualifiedPath, candidates, { extensions });\n if (qualifiedPath) {\n return path_1.posix.normalize(qualifiedPath);\n }\n else {\n throw internalTools_1.makeError(`QUALIFIED_PATH_RESOLUTION_FAILED`, `Couldn't find a suitable Node resolution for the specified unqualified path\\n\\nSource path: ${unqualifiedPath}\\n${candidates.map(candidate => `Rejected resolution: ${candidate}\\n`).join(``)}`, { unqualifiedPath });\n }\n }\n ;\n /**\n * Transforms a request into a fully qualified path.\n *\n * Note that it is extremely important that the `issuer` path ends with a forward slash if the issuer is to be\n * treated as a folder (ie. \"/tmp/foo/\" rather than \"/tmp/foo\" if \"foo\" is a directory). Otherwise relative\n * imports won't be computed correctly (they'll get resolved relative to \"/tmp/\" instead of \"/tmp/foo/\").\n */\n function resolveRequest(request, issuer, { considerBuiltins, extensions } = {}) {\n let unqualifiedPath = resolveToUnqualified(request, issuer, { considerBuiltins });\n if (unqualifiedPath === null) {\n return null;\n }\n try {\n return resolveUnqualified(unqualifiedPath, { extensions });\n }\n catch (resolutionError) {\n if (resolutionError.code === 'QUALIFIED_PATH_RESOLUTION_FAILED') {\n Object.assign(resolutionError.data, { request, issuer });\n }\n throw resolutionError;\n }\n }\n ;\n return {\n VERSIONS,\n topLevel,\n getPackageInformation: (locator) => {\n const info = getPackageInformation(locator);\n if (info === null)\n return null;\n const packageLocation = fslib_1.NodeFS.fromPortablePath(info.packageLocation);\n const nativeInfo = Object.assign({}, info, { packageLocation });\n return nativeInfo;\n },\n findPackageLocator: (path) => {\n path = fslib_1.NodeFS.toPortablePath(path);\n return findPackageLocator(path);\n },\n resolveToUnqualified: (request, issuer, opts) => {\n request = fslib_1.NodeFS.toPortablePath(request);\n if (issuer !== null)\n issuer = fslib_1.NodeFS.toPortablePath(issuer);\n const resolution = resolveToUnqualified(request, issuer, opts);\n if (resolution === null)\n return null;\n return fslib_1.NodeFS.fromPortablePath(resolution);\n },\n resolveUnqualified: (unqualifiedPath, opts) => {\n unqualifiedPath = fslib_1.NodeFS.fromPortablePath(unqualifiedPath);\n return fslib_1.NodeFS.fromPortablePath(resolveUnqualified(unqualifiedPath, opts));\n },\n resolveRequest: (request, issuer, opts) => {\n request = fslib_1.NodeFS.toPortablePath(request);\n if (issuer !== null)\n issuer = fslib_1.NodeFS.toPortablePath(issuer);\n const resolution = resolveRequest(request, issuer, opts);\n if (resolution === null)\n return null;\n return fslib_1.NodeFS.fromPortablePath(resolution);\n },\n };\n}\nexports.makeApi = makeApi;\n\n\n/***/ })\n/******/ ]);"; /***/ }), -/* 757 */ +/* 758 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -116338,17 +116575,17 @@ exports.generateSerializedState = generateSerializedState; /***/ }), -/* 758 */ +/* 759 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const fs_1 = __webpack_require__(5); -const path_1 = __webpack_require__(7); -const util_1 = __webpack_require__(16); -const hydrateRuntimeState_1 = __webpack_require__(759); -const makeApi_1 = __webpack_require__(760); +const path_1 = __webpack_require__(6); +const util_1 = __webpack_require__(17); +const hydrateRuntimeState_1 = __webpack_require__(760); +const makeApi_1 = __webpack_require__(761); const readFileP = util_1.promisify(fs_1.readFile); // Note that using those functions is typically NOT needed! The PnP API is // designed to be consumed directly from within Node - meaning that depending @@ -116368,21 +116605,23 @@ const readFileP = util_1.promisify(fs_1.readFile); // outside of the loader (pnpEnableInlining = false in Yarn), and their only // real use case is to access the PnP API without running the risk of executing // third-party Javascript code. -async function hydratePnpFile(location, { pnpapiResolution }) { +async function hydratePnpFile(location, { fakeFs, pnpapiResolution }) { const source = await readFileP(location, `utf8`); return hydratePnpSource(source, { basePath: path_1.dirname(location), + fakeFs, pnpapiResolution, }); } exports.hydratePnpFile = hydratePnpFile; -function hydratePnpSource(source, { basePath, pnpapiResolution }) { +function hydratePnpSource(source, { basePath, fakeFs, pnpapiResolution }) { const data = JSON.parse(source); const runtimeState = hydrateRuntimeState_1.hydrateRuntimeState(data, { basePath, }); return makeApi_1.makeApi(runtimeState, { compatibilityMode: true, + fakeFs, pnpapiResolution, }); } @@ -116390,24 +116629,23 @@ exports.hydratePnpSource = hydratePnpSource; /***/ }), -/* 759 */ +/* 760 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; Object.defineProperty(exports, "__esModule", { value: true }); -const path_1 = __importDefault(__webpack_require__(7)); +const fslib_1 = __webpack_require__(3); +const path_1 = __webpack_require__(6); function hydrateRuntimeState(data, { basePath }) { + const portablePath = fslib_1.NodeFS.toPortablePath(basePath); const ignorePattern = data.ignorePatternData ? new RegExp(data.ignorePatternData) : null; const packageRegistry = new Map(data.packageRegistryData.map(([packageName, packageStoreData]) => { return [packageName, new Map(packageStoreData.map(([packageReference, packageInformationData]) => { return [packageReference, { - packageLocation: path_1.default.resolve(basePath, packageInformationData.packageLocation), + packageLocation: path_1.posix.resolve(portablePath, packageInformationData.packageLocation), packageDependencies: new Map(packageInformationData.packageDependencies), }]; }))]; @@ -116426,7 +116664,7 @@ function hydrateRuntimeState(data, { basePath }) { } const packageLocationLengths = data.locationLengthData; return { - basePath, + basePath: portablePath, ignorePattern, packageRegistry, packageLocatorsByLocations, @@ -116437,7 +116675,7 @@ exports.hydrateRuntimeState = hydrateRuntimeState; /***/ }), -/* 760 */ +/* 761 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -116446,10 +116684,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); -const fs_1 = __importDefault(__webpack_require__(5)); -const module_1 = __importDefault(__webpack_require__(71)); -const path_1 = __importDefault(__webpack_require__(7)); -const internalTools_1 = __webpack_require__(761); +const fslib_1 = __webpack_require__(3); +const module_1 = __importDefault(__webpack_require__(72)); +const path_1 = __webpack_require__(6); +const internalTools_1 = __webpack_require__(762); function makeApi(runtimeState, opts) { // @ts-ignore const builtinModules = new Set(module_1.default.builtinModules || Object.keys(process.binding('natives'))); @@ -116509,7 +116747,7 @@ function makeApi(runtimeState, opts) { let stat; try { candidates.push(unqualifiedPath); - stat = fs_1.default.statSync(unqualifiedPath); + stat = opts.fakeFs.statSync(unqualifiedPath); } catch (error) { } // If the file exists and is a file, we can stop right there @@ -116525,20 +116763,20 @@ function makeApi(runtimeState, opts) { // be resolved relative to "/xyz/.pnp/local/pnp-0123456789/" rather than "/xyz/pkg-with-peers/", because otherwise // we would lose the information that would tell us what are the dependencies of pkg-with-peers relative to its // ancestors. - if (fs_1.default.lstatSync(unqualifiedPath).isSymbolicLink()) - unqualifiedPath = path_1.default.normalize(path_1.default.resolve(path_1.default.dirname(unqualifiedPath), fs_1.default.readlinkSync(unqualifiedPath))); + if (opts.fakeFs.lstatSync(unqualifiedPath).isSymbolicLink()) + unqualifiedPath = path_1.posix.normalize(path_1.posix.resolve(path_1.posix.dirname(unqualifiedPath), opts.fakeFs.readlinkSync(unqualifiedPath))); return unqualifiedPath; } // If the file is a directory, we must check if it contains a package.json with a "main" entry if (stat && stat.isDirectory()) { let pkgJson; try { - pkgJson = JSON.parse(fs_1.default.readFileSync(`${unqualifiedPath}/package.json`, 'utf-8')); + pkgJson = JSON.parse(opts.fakeFs.readFileSync(`${unqualifiedPath}/package.json`, `utf8`)); } catch (error) { } let nextUnqualifiedPath; if (pkgJson && pkgJson.main) - nextUnqualifiedPath = path_1.default.resolve(unqualifiedPath, pkgJson.main); + nextUnqualifiedPath = path_1.posix.resolve(unqualifiedPath, pkgJson.main); // If the "main" field changed the path, we start again from this new location if (nextUnqualifiedPath && nextUnqualifiedPath !== unqualifiedPath) { const resolution = applyNodeExtensionResolution(nextUnqualifiedPath, candidates, { extensions }); @@ -116554,7 +116792,7 @@ function makeApi(runtimeState, opts) { }) .find(candidateFile => { candidates.push(candidateFile); - return fs_1.default.existsSync(candidateFile); + return opts.fakeFs.existsSync(candidateFile); }); if (qualifiedPath) return qualifiedPath; @@ -116566,7 +116804,7 @@ function makeApi(runtimeState, opts) { }) .find(candidateFile => { candidates.push(candidateFile); - return fs_1.default.existsSync(candidateFile); + return opts.fakeFs.existsSync(candidateFile); }); if (indexPath) { return indexPath; @@ -116595,7 +116833,7 @@ function makeApi(runtimeState, opts) { * Normalize path to posix format. */ function normalizePath(p) { - p = path_1.default.normalize(p); + p = path_1.posix.normalize(p); if (process.platform === 'win32') p = p.replace(backwardSlashRegExp, '/'); return p; @@ -116606,6 +116844,8 @@ function makeApi(runtimeState, opts) { function callNativeResolution(request, issuer) { if (issuer.endsWith('/')) issuer += 'internal.js'; + request = fslib_1.NodeFS.fromPortablePath(request); + issuer = fslib_1.NodeFS.fromPortablePath(issuer); // Since we would need to create a fake module anyway (to call _resolveLookupPath that // would give us the paths to give to _resolveFilename), we can as well not use // the {paths} option at all, since it internally makes _resolveFilename create another @@ -116637,12 +116877,11 @@ function makeApi(runtimeState, opts) { return null; return packageInformation; } - ; /** * Finds the package locator that owns the specified path. If none is found, returns null instead. */ function findPackageLocator(location) { - let relativeLocation = normalizePath(path_1.default.relative(runtimeState.basePath, location)); + let relativeLocation = normalizePath(path_1.posix.relative(runtimeState.basePath, location)); if (!relativeLocation.match(isStrictRegExp)) relativeLocation = `./${relativeLocation}`; if (location.match(isDirRegExp) && !relativeLocation.endsWith(`/`)) @@ -116713,18 +116952,18 @@ function makeApi(runtimeState, opts) { // If the request is a relative or absolute path, we just return it normalized const dependencyNameMatch = request.match(pathRegExp); if (!dependencyNameMatch) { - if (path_1.default.isAbsolute(request)) { - unqualifiedPath = path_1.default.normalize(request); + if (path_1.posix.isAbsolute(request)) { + unqualifiedPath = path_1.posix.normalize(request); } else { if (!issuer) { throw internalTools_1.makeError(`API_ERROR`, `The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute`, { request, issuer }); } if (issuer.match(isDirRegExp)) { - unqualifiedPath = path_1.default.normalize(path_1.default.resolve(issuer, request)); + unqualifiedPath = path_1.posix.normalize(path_1.posix.resolve(issuer, request)); } else { - unqualifiedPath = path_1.default.normalize(path_1.default.resolve(path_1.default.dirname(issuer), request)); + unqualifiedPath = path_1.posix.normalize(path_1.posix.resolve(path_1.posix.dirname(issuer), request)); } } } @@ -116784,15 +117023,15 @@ function makeApi(runtimeState, opts) { throw internalTools_1.makeError(`MISSING_DEPENDENCY`, `A dependency seems valid but didn't get installed for some reason. This might be caused by a partial install, such as dev vs prod.\n\nRequired package: ${dependencyLocator.name}@${dependencyLocator.reference} (via "${request}")\nRequired by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuer})\n`, { request, issuer, dependencyLocator: Object.assign({}, dependencyLocator) }); } // Now that we know which package we should resolve to, we only have to find out the file location - const dependencyLocation = path_1.default.resolve(runtimeState.basePath, dependencyInformation.packageLocation); + const dependencyLocation = path_1.posix.resolve(runtimeState.basePath, dependencyInformation.packageLocation); if (subPath) { - unqualifiedPath = path_1.default.resolve(dependencyLocation, subPath); + unqualifiedPath = path_1.posix.resolve(dependencyLocation, subPath); } else { unqualifiedPath = dependencyLocation; } } - return path_1.default.normalize(unqualifiedPath); + return path_1.posix.normalize(unqualifiedPath); } ; /** @@ -116803,7 +117042,7 @@ function makeApi(runtimeState, opts) { const candidates = []; const qualifiedPath = applyNodeExtensionResolution(unqualifiedPath, candidates, { extensions }); if (qualifiedPath) { - return path_1.default.normalize(qualifiedPath); + return path_1.posix.normalize(qualifiedPath); } else { throw internalTools_1.makeError(`QUALIFIED_PATH_RESOLUTION_FAILED`, `Couldn't find a suitable Node resolution for the specified unqualified path\n\nSource path: ${unqualifiedPath}\n${candidates.map(candidate => `Rejected resolution: ${candidate}\n`).join(``)}`, { unqualifiedPath }); @@ -116836,18 +117075,47 @@ function makeApi(runtimeState, opts) { return { VERSIONS, topLevel, - getPackageInformation, - findPackageLocator, - resolveToUnqualified, - resolveUnqualified, - resolveRequest, + getPackageInformation: (locator) => { + const info = getPackageInformation(locator); + if (info === null) + return null; + const packageLocation = fslib_1.NodeFS.fromPortablePath(info.packageLocation); + const nativeInfo = Object.assign({}, info, { packageLocation }); + return nativeInfo; + }, + findPackageLocator: (path) => { + path = fslib_1.NodeFS.toPortablePath(path); + return findPackageLocator(path); + }, + resolveToUnqualified: (request, issuer, opts) => { + request = fslib_1.NodeFS.toPortablePath(request); + if (issuer !== null) + issuer = fslib_1.NodeFS.toPortablePath(issuer); + const resolution = resolveToUnqualified(request, issuer, opts); + if (resolution === null) + return null; + return fslib_1.NodeFS.fromPortablePath(resolution); + }, + resolveUnqualified: (unqualifiedPath, opts) => { + unqualifiedPath = fslib_1.NodeFS.fromPortablePath(unqualifiedPath); + return fslib_1.NodeFS.fromPortablePath(resolveUnqualified(unqualifiedPath, opts)); + }, + resolveRequest: (request, issuer, opts) => { + request = fslib_1.NodeFS.toPortablePath(request); + if (issuer !== null) + issuer = fslib_1.NodeFS.toPortablePath(issuer); + const resolution = resolveRequest(request, issuer, opts); + if (resolution === null) + return null; + return fslib_1.NodeFS.fromPortablePath(resolution); + }, }; } exports.makeApi = makeApi; /***/ }), -/* 761 */ +/* 762 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; diff --git a/packages/berry-cli/sources/cli.ts b/packages/berry-cli/sources/cli.ts index 2d12d5cfb752..c08cb54944e7 100644 --- a/packages/berry-cli/sources/cli.ts +++ b/packages/berry-cli/sources/cli.ts @@ -1,5 +1,5 @@ import {Configuration} from '@berry/core'; -import {xfs} from '@berry/fslib'; +import {xfs, NodeFS} from '@berry/fslib'; import {UsageError, Concierge} from '@manaflair/concierge'; import {execFileSync} from 'child_process'; import Joi from 'joi'; @@ -13,8 +13,10 @@ concierge.topLevel(`[--cwd PATH]`).validate(Joi.object().unknown().keys({ })); function runBinary(path: string) { - if (path.endsWith(`.js`)) { - execFileSync(process.execPath, [path, ...process.argv.slice(2)], { + const physicalPath = NodeFS.fromPortablePath(path); + + if (physicalPath) { + execFileSync(process.execPath, [physicalPath, ...process.argv.slice(2)], { stdio: `inherit`, env: { ... process.env, @@ -22,7 +24,7 @@ function runBinary(path: string) { } }); } else { - execFileSync(path, process.argv.slice(2), { + execFileSync(physicalPath, process.argv.slice(2), { stdio: `inherit`, env: { ... process.env, @@ -33,7 +35,7 @@ function runBinary(path: string) { } async function run() { - const configuration = await Configuration.find(process.cwd(), pluginConfiguration); + const configuration = await Configuration.find(NodeFS.toPortablePath(process.cwd()), pluginConfiguration); const yarnPath = configuration.get(`yarnPath`); const ignorePath = configuration.get(`ignorePath`); @@ -54,7 +56,9 @@ async function run() { for (const command of plugin.commands || []) command(concierge, pluginConfiguration); - concierge.runExit(`yarn`, process.argv.slice(2)); + concierge.runExit(`yarn`, process.argv.slice(2), { + cwd: NodeFS.toPortablePath(process.cwd()) + }); } } diff --git a/packages/berry-core/sources/Cache.ts b/packages/berry-core/sources/Cache.ts index 08e8723635c5..60372a712666 100644 --- a/packages/berry-core/sources/Cache.ts +++ b/packages/berry-core/sources/Cache.ts @@ -1,6 +1,6 @@ import {NodeFS, ZipFS, xfs} from '@berry/fslib'; import {lock, unlock} from 'lockfile'; -import posix from 'path'; +import {posix} from 'path'; import {promisify} from 'util'; import {Configuration} from './Configuration'; @@ -59,7 +59,7 @@ export class Cache { if (expectedChecksum !== null && actualChecksum !== expectedChecksum) throw new ReportError(MessageName.CACHE_CHECKSUM_MISMATCH, `${structUtils.prettyLocator(this.configuration, locator)} doesn't resolve to an archive that matches the expected checksum`); - + return actualChecksum; }; @@ -115,7 +115,7 @@ export class Cache { } async writeFileIntoCache(file: string, generator: (file: string) => Promise) { - const lock = `${file}.lock`; + const lock = NodeFS.fromPortablePath(`${file}.lock`); try { await lockP(lock); diff --git a/packages/berry-core/sources/Configuration.ts b/packages/berry-core/sources/Configuration.ts index a663be2eb130..86a6732c7254 100644 --- a/packages/berry-core/sources/Configuration.ts +++ b/packages/berry-core/sources/Configuration.ts @@ -1,9 +1,9 @@ -import {xfs} from '@berry/fslib'; +import {xfs, NodeFS} from '@berry/fslib'; import {parseSyml, stringifySyml} from '@berry/parsers'; import {UsageError} from '@manaflair/concierge'; import chalk from 'chalk'; import {homedir} from 'os'; -import {posix} from 'path'; +import {posix, win32} from 'path'; import supportsColor from 'supports-color'; import {MultiFetcher} from './MultiFetcher'; @@ -234,7 +234,7 @@ function parseValue(value: unknown, type: SettingsType, folder: string) { throw new Error(`Expected value to be a string`); if (type === SettingsType.ABSOLUTE_PATH) { - return posix.resolve(folder, value); + return posix.resolve(folder, NodeFS.toPortablePath(value)); } else if (type === SettingsType.LOCATOR_LOOSE) { return structUtils.parseLocator(value, false); } else if (type === SettingsType.LOCATOR) { @@ -246,7 +246,8 @@ function parseValue(value: unknown, type: SettingsType, folder: string) { function getDefaultGlobalFolder() { if (process.platform === `win32`) { - return posix.resolve(process.env.LOCALAPPDATA || posix.join(homedir(), 'AppData', 'Local')); + const folder = NodeFS.toPortablePath(process.env.LOCALAPPDATA || win32.join(homedir(), 'AppData', 'Local')); + return posix.resolve(folder); } else if (process.env.XDG_DATA_HOME) { return posix.resolve(process.env.XDG_DATA_HOME, 'yarn/modern'); } else { @@ -359,8 +360,9 @@ export class Configuration { if (!Array.isArray(data.plugins)) continue; - for (const pluginPath of data.plugins) { - const {factory, name} = nodeUtils.dynamicRequire(posix.resolve(cwd, pluginPath)); + for (const userProvidedPath of data.plugins) { + const pluginPath = posix.resolve(cwd, NodeFS.toPortablePath(userProvidedPath)); + const {factory, name} = nodeUtils.dynamicRequire(NodeFS.fromPortablePath(pluginPath)); // Prevent plugin redefinition so that the ones declared deeper in the // filesystem always have precedence over the ones below. diff --git a/packages/berry-core/sources/Project.ts b/packages/berry-core/sources/Project.ts index ca55fac95e98..a6f4283ae163 100644 --- a/packages/berry-core/sources/Project.ts +++ b/packages/berry-core/sources/Project.ts @@ -3,7 +3,7 @@ import {parseSyml, stringifySyml} from '@berry/parsers'; import {createHmac} from 'crypto'; // @ts-ignore import Logic from 'logic-solver'; -import {dirname, posix} from 'path'; +import {posix} from 'path'; // @ts-ignore import pLimit from 'p-limit'; import semver from 'semver'; @@ -80,7 +80,7 @@ export class Project { packageCwd = currentCwd; } } - nextCwd = dirname(currentCwd); + nextCwd = posix.dirname(currentCwd); } if (!projectCwd || !packageCwd) @@ -307,7 +307,7 @@ export class Project { if (!dependencyMetaSet) return dependencyMeta; - + const defaultMeta = dependencyMetaSet.get(null); if (defaultMeta) Object.assign(dependencyMeta, defaultMeta); @@ -366,7 +366,7 @@ export class Project { const fetcher = this.configuration.makeFetcher(); const resolverOptions = {checksums: this.storedChecksums, project: this, cache, fetcher, report, resolver}; - + const allDescriptors = new Map(); const allPackages = new Map(); const allResolutions = new Map(); @@ -560,79 +560,79 @@ export class Project { allDescriptors.set(descriptor.descriptorHash, descriptor); mustBeResolved.add(descriptor.descriptorHash); - // We must check and make sure that the descriptor didn't get aliased - // to something else + // We must check and make sure that the descriptor didn't get aliased + // to something else const aliasHash = this.resolutionAliases.get(descriptor.descriptorHash); - if (aliasHash === undefined) - continue; + if (aliasHash === undefined) + continue; - // It doesn't cost us much to support the case where a descriptor is - // equal to its own alias (which should mean "no alias") - if (descriptor.descriptorHash === aliasHash) - continue; + // It doesn't cost us much to support the case where a descriptor is + // equal to its own alias (which should mean "no alias") + if (descriptor.descriptorHash === aliasHash) + continue; - const alias = this.storedDescriptors.get(aliasHash); - if (!alias) - throw new Error(`Assertion failed: The alias should have been registered`); + const alias = this.storedDescriptors.get(aliasHash); + if (!alias) + throw new Error(`Assertion failed: The alias should have been registered`); - // If it's already been "resolved" (in reality it will be the temporary - // resolution we've set in the next few lines) we simply must skip it - if (allResolutions.has(descriptor.descriptorHash)) - continue; + // If it's already been "resolved" (in reality it will be the temporary + // resolution we've set in the next few lines) we simply must skip it + if (allResolutions.has(descriptor.descriptorHash)) + continue; - // Temporarily set an invalid resolution so that it won't be resolved - // multiple times if it is found multiple times in the dependency - // tree (this is only temporary, we will replace it by the actual - // resolution after we've finished resolving everything) - allResolutions.set(descriptor.descriptorHash, `temporary` as LocatorHash); + // Temporarily set an invalid resolution so that it won't be resolved + // multiple times if it is found multiple times in the dependency + // tree (this is only temporary, we will replace it by the actual + // resolution after we've finished resolving everything) + allResolutions.set(descriptor.descriptorHash, `temporary` as LocatorHash); - // We can now replace the descriptor by its alias in the list of - // descriptors that must be resolved - mustBeResolved.delete(descriptor.descriptorHash); - mustBeResolved.add(aliasHash); + // We can now replace the descriptor by its alias in the list of + // descriptors that must be resolved + mustBeResolved.delete(descriptor.descriptorHash); + mustBeResolved.add(aliasHash); - allDescriptors.set(aliasHash, alias); + allDescriptors.set(aliasHash, alias); haveBeenAliased.add(descriptor.descriptorHash); } } } - // Each package that should have been resolved but was skipped because it - // was aliased will now see the resolution for its alias propagated to it + // Each package that should have been resolved but was skipped because it + // was aliased will now see the resolution for its alias propagated to it - while (haveBeenAliased.size > 0) { - let hasChanged = false; + while (haveBeenAliased.size > 0) { + let hasChanged = false; - for (const descriptorHash of haveBeenAliased) { - const descriptor = allDescriptors.get(descriptorHash); - if (!descriptor) - throw new Error(`Assertion failed: The descriptor should have been registered`); + for (const descriptorHash of haveBeenAliased) { + const descriptor = allDescriptors.get(descriptorHash); + if (!descriptor) + throw new Error(`Assertion failed: The descriptor should have been registered`); - const aliasHash = this.resolutionAliases.get(descriptorHash); - if (aliasHash === undefined) - throw new Error(`Assertion failed: The descriptor should have an alias`); + const aliasHash = this.resolutionAliases.get(descriptorHash); + if (aliasHash === undefined) + throw new Error(`Assertion failed: The descriptor should have an alias`); - const resolution = allResolutions.get(aliasHash); - if (resolution === undefined) - throw new Error(`Assertion failed: The resolution should have been registered`); + const resolution = allResolutions.get(aliasHash); + if (resolution === undefined) + throw new Error(`Assertion failed: The resolution should have been registered`); - // The following can happen if a package gets aliased to another package - // that's itself aliased - in this case we just process all those we can - // do, then make new passes until everything is resolved - if (resolution === `temporary`) - continue; + // The following can happen if a package gets aliased to another package + // that's itself aliased - in this case we just process all those we can + // do, then make new passes until everything is resolved + if (resolution === `temporary`) + continue; - haveBeenAliased.delete(descriptorHash); + haveBeenAliased.delete(descriptorHash); - allResolutions.set(descriptorHash, resolution); + allResolutions.set(descriptorHash, resolution); - hasChanged = true; - } + hasChanged = true; + } - if (!hasChanged) { - throw new Error(`Alias loop detected`); - } + if (!hasChanged) { + throw new Error(`Alias loop detected`); + } } // In this step we now create virtual packages for each package with at @@ -846,7 +846,7 @@ export class Project { const installer = installers.get(linker); if (!installer) throw new Error(`Assertion failed: The installer should have been registered`); - + const fetchResult = await fetcher.fetch(pkg, fetcherOptions); let installStatus; @@ -878,7 +878,7 @@ export class Project { const installer = installers.get(packageLinker); if (!installer) throw new Error(`Assertion failed: The installer should have been registered`); - + const packageLocation = packageLocations.get(pkg.locatorHash); if (!packageLocation) throw new Error(`Assertion failed: The package (${structUtils.prettyLocator(this.configuration, pkg)}) should have been registered`); @@ -889,22 +889,22 @@ export class Project { const resolution = this.storedResolutions.get(descriptor.descriptorHash); if (!resolution) throw new Error(`Assertion failed: The resolution (${structUtils.prettyDescriptor(this.configuration, descriptor)}) should have been registered`); - + const dependency = this.storedPackages.get(resolution); if (!dependency) throw new Error(`Assertion failed: The package (${resolution}, resolved from ${structUtils.prettyDescriptor(this.configuration, descriptor)}) should have been registered`); - + const dependencyLinker = packageLinkers.get(resolution); if (!dependencyLinker) throw new Error(`Assertion failed: The package (${resolution}, resolved from ${structUtils.prettyDescriptor(this.configuration, descriptor)}) should have been registered`); - + if (dependencyLinker === packageLinker) { internalDependencies.push(dependency); } else { let externalEntry = externalDependents.get(resolution); if (!externalEntry) externalDependents.set(resolution, externalEntry = []); - + externalEntry.push(packageLocation); } } @@ -924,7 +924,7 @@ export class Project { const installer = installers.get(packageLinker); if (!installer) throw new Error(`Assertion failed: The installer should have been registered`); - + await installer.attachExternalDependents(pkg, dependentPaths); } @@ -940,16 +940,16 @@ export class Project { for (const locatorHash of buildablePackages) readyPackages.delete(locatorHash); - + // We'll use this function is order to compute a hash for each package // that exposes a build directive. If the hash changes compared to the // previous run, the package is rebuilt. This has the advantage of making // the rebuilds much more predictable than before, and to give us the tools // later to improve this further by explaining *why* a rebuild happened. - + const getBuildHash = (locator: Locator) => { const hash = createHmac(`sha512`, `berry`); - + const traverse = (locatorHash: LocatorHash, seenPackages: Set = new Set()) => { hash.update(locatorHash); @@ -990,13 +990,13 @@ export class Project { const pkg = this.storedPackages.get(locatorHash); if (!pkg) throw new Error(`Assertion failed: The package should have been registered`); - + let isBuildable = true; for (const dependency of pkg.dependencies.values()) { const resolution = this.storedResolutions.get(dependency.descriptorHash); if (!resolution) throw new Error(`Assertion failed: The resolution (${structUtils.prettyDescriptor(this.configuration, dependency)}) should have been registered`); - + if (buildablePackages.has(resolution)) { isBuildable = false; break; @@ -1007,7 +1007,7 @@ export class Project { // before trying to build it (since it might need them to build itself) if (!isBuildable) continue; - + buildablePackages.delete(locatorHash); const buildHash = getBuildHash(pkg); @@ -1020,7 +1020,7 @@ export class Project { report.reportInfo(MessageName.MUST_REBUILD, `${structUtils.prettyLocator(this.configuration, pkg)} must be rebuilt because its dependency tree changed`); else report.reportInfo(MessageName.MUST_BUILD, `${structUtils.prettyLocator(this.configuration, pkg)} must be built because it never did before or the last one failed`); - + const buildDirective = packageBuildDirectives.get(pkg.locatorHash); if (!buildDirective) throw new Error(`Assertion failed: The build directive should have been registered`); @@ -1064,7 +1064,7 @@ export class Project { const pkg = this.storedPackages.get(locatorHash); if (!pkg) throw new Error(`Assertion failed: The package should have been registered`); - + return structUtils.prettyLocator(this.configuration, pkg); }).join(`, `); diff --git a/packages/berry-core/sources/VirtualFetcher.ts b/packages/berry-core/sources/VirtualFetcher.ts index c728fd17abfe..531af080ae8e 100644 --- a/packages/berry-core/sources/VirtualFetcher.ts +++ b/packages/berry-core/sources/VirtualFetcher.ts @@ -1,5 +1,5 @@ import {AliasFS, xfs} from '@berry/fslib'; -import {dirname, relative, resolve} from 'path'; +import {posix} from 'path'; import {Fetcher, FetchOptions, FetchResult, MinimalFetchOptions} from './Fetcher'; import * as structUtils from './structUtils'; @@ -45,17 +45,17 @@ export class VirtualFetcher implements Fetcher { getLocatorPath(locator: Locator, opts: MinimalFetchOptions) { const virtualFolder = opts.project.configuration.get(`virtualFolder`); - const virtualPath = resolve(virtualFolder, this.getLocatorFilename(locator)); + const virtualPath = posix.resolve(virtualFolder, this.getLocatorFilename(locator)); return virtualPath; } private async ensureVirtualLink(locator: Locator, sourceFetch: FetchResult, opts: FetchOptions) { const virtualPath = this.getLocatorPath(locator, opts); - const relativeTarget = relative(dirname(virtualPath), sourceFetch.packageFs.getRealPath()); + const relativeTarget = posix.relative(posix.dirname(virtualPath), sourceFetch.packageFs.getRealPath()); // Doesn't need locking, and the folder must exist for the lock to succeed - await xfs.mkdirpPromise(dirname(virtualPath)); + await xfs.mkdirpPromise(posix.dirname(virtualPath)); await xfs.lockPromise(virtualPath, async () => { let currentLink; diff --git a/packages/berry-core/sources/Workspace.ts b/packages/berry-core/sources/Workspace.ts index 540ec211b280..438eb4c304f0 100644 --- a/packages/berry-core/sources/Workspace.ts +++ b/packages/berry-core/sources/Workspace.ts @@ -1,4 +1,4 @@ -import {xfs} from '@berry/fslib'; +import {xfs, NodeFS} from '@berry/fslib'; import {makeUpdater} from '@berry/json-proxy'; import {createHmac} from 'crypto'; import globby from 'globby'; @@ -69,7 +69,7 @@ export class Workspace { for (const definition of this.manifest.workspaceDefinitions) { const relativeCwds = await globby(definition.pattern, { absolute: true, - cwd: this.cwd, + cwd: NodeFS.fromPortablePath(this.cwd), expandDirectories: false, onlyDirectories: true, onlyFiles: false, @@ -79,7 +79,7 @@ export class Workspace { relativeCwds.sort(); for (const relativeCwd of relativeCwds) { - const candidateCwd = posix.resolve(this.cwd, relativeCwd); + const candidateCwd = posix.resolve(this.cwd, NodeFS.toPortablePath(relativeCwd)); if (xfs.existsSync(`${candidateCwd}/package.json`)) { this.workspacesCwds.add(candidateCwd); @@ -101,13 +101,13 @@ export class Workspace { if (protocol === WorkspaceResolver.protocol && pathname === this.relativeCwd) return true; - + if (!semver.validRange(pathname)) return false; if (protocol === WorkspaceResolver.protocol) return semver.satisfies(this.manifest.version !== null ? this.manifest.version : `0.0.0`, pathname); - + if (this.manifest.version !== null) return semver.satisfies(this.manifest.version, pathname); diff --git a/packages/berry-core/sources/execUtils.ts b/packages/berry-core/sources/execUtils.ts index 1993d94df292..90c8001e0fe1 100644 --- a/packages/berry-core/sources/execUtils.ts +++ b/packages/berry-core/sources/execUtils.ts @@ -1,3 +1,4 @@ +import {NodeFS} from '@berry/fslib'; import execa from 'execa'; import {Readable, Writable} from 'stream'; @@ -20,7 +21,15 @@ export async function execFile(fileName: string, args: Array, {cwd, env if (stderr === process.stderr) stdio[2] = stderr; - const subprocess = execa(fileName, args, {cwd, env, stdio}); + const effectiveFilename = process.platform !== `win32` + ? fileName + : `"${fileName}"`; // ?! + + const subprocess = execa(effectiveFilename, args, { + cwd: NodeFS.fromPortablePath(cwd), + env, + stdio, + }); if (stdin !== process.stdin) stdin.pipe(subprocess.stdin); diff --git a/packages/berry-core/sources/scriptUtils.ts b/packages/berry-core/sources/scriptUtils.ts index e79b15a7c8f9..17f2e21a6226 100644 --- a/packages/berry-core/sources/scriptUtils.ts +++ b/packages/berry-core/sources/scriptUtils.ts @@ -1,4 +1,4 @@ -import {CwdFS, ZipOpenFS, xfs} from '@berry/fslib'; +import {CwdFS, ZipOpenFS, xfs, NodeFS} from '@berry/fslib'; import {execute} from '@berry/shell'; import {delimiter, posix} from 'path'; import {PassThrough, Readable, Writable} from 'stream'; @@ -14,15 +14,18 @@ import {Locator} from './types'; async function makePathWrapper(location: string, name: string, argv0: string, args: Array = []) { if (process.platform === `win32`) { - await xfs.writeFilePromise(`${location}/${name}.cmd`, `@"${location}\\${name}.cmd" ${args.join(` `)} %*\n`); + await xfs.writeFilePromise(`${location}/${name}.cmd`, `"${argv0}" ${args.join(` `)} %*\n`); } else { - await xfs.writeFilePromise(`${location}/${name}`, `#!/usr/bin/env bash\n"${argv0}" ${args.map(arg => `'${arg.replace(/'/g, `'"'"'`)}'`).join(` `)} "$@"\n`); + await xfs.writeFilePromise(`${location}/${name}`, `#!/usr/bin/env bash\nexec "${argv0}" ${args.map(arg => `'${arg.replace(/'/g, `'"'"'`)}'`).join(` `)} "$@"\n`); await xfs.chmodPromise(`${location}/${name}`, 0o755); } } export async function makeScriptEnv(project: Project) { - const scriptEnv = {... process.env}; + const scriptEnv: {[key: string]: string} = {}; + for (const key of Object.keys(process.env)) + scriptEnv[key.toUpperCase()] = process.env[key] as string; + const binFolder = scriptEnv.BERRY_BIN_FOLDER = dirSync().name; // Register some binaries that must be made available in all subprocesses @@ -41,7 +44,7 @@ export async function makeScriptEnv(project: Project) { // Add the .pnp.js file to the Node options, so that we're sure that PnP will // be correctly setup - const pnpPath = `${project.cwd}/.pnp.js`; + const pnpPath = NodeFS.fromPortablePath(`${project.cwd}/.pnp.js`); const pnpRequire = `--require ${pnpPath}`; if (xfs.existsSync(pnpPath)) { @@ -145,7 +148,7 @@ type GetPackageAccessibleBinariesOptions = { /** * Return the binaries that can be accessed by the specified package - * + * * @param locator The queried package * @param project The project owning the package */ @@ -162,43 +165,44 @@ export async function getPackageAccessibleBinaries(locator: Locator, {project}: const linkers = project.configuration.getLinkers(); const linkerOptions = {project, report: new StreamReport({ configuration, stdout })}; - + const binaries: Map = new Map(); - + const descriptors = [ ... pkg.dependencies.values(), ... pkg.peerDependencies.values(), ]; - + for (const descriptor of descriptors) { const resolution = project.storedResolutions.get(descriptor.descriptorHash); if (!resolution) continue; - + const pkg = project.storedPackages.get(resolution); if (!pkg) continue; - + const linker = linkers.find(linker => linker.supportsPackage(pkg, linkerOptions)); if (!linker) continue; - + const packageLocation = await linker.findPackageLocation(pkg, linkerOptions); const packageFs = new CwdFS(packageLocation, {baseFs: zipOpenFs}); const manifest = await Manifest.find(`.`, {baseFs: packageFs}); - + for (const [binName, file] of manifest.bin.entries()) { - binaries.set(binName, [pkg, posix.resolve(packageLocation, file)]); + const physicalPath = NodeFS.fromPortablePath(posix.resolve(packageLocation, file)); + binaries.set(binName, [pkg, physicalPath]); } } - + return binaries; }); } /** * Return the binaries that can be accessed by the specified workspace - * + * * @param workspace The queried workspace */ @@ -216,11 +220,11 @@ type ExecutePackageAccessibleBinaryOptions = { /** * Execute a binary from the specified package. - * + * * Note that "binary" in this sense means "a Javascript file". Actual native * binaries cannot be executed this way, because we use Node in order to * transparently read from the archives. - * + * * @param locator The queried package * @param binaryName The name of the binary file to execute * @param args The arguments to pass to the file @@ -255,7 +259,7 @@ type ExecuteWorkspaceAccessibleBinaryOptions = { /** * Execute a binary from the specified workspace - * + * * @param workspace The queried package * @param binaryName The name of the binary file to execute * @param args The arguments to pass to the file diff --git a/packages/berry-fslib/sources/FakeFS.ts b/packages/berry-fslib/sources/FakeFS.ts index 4f98a0e5d69c..edae040bb13f 100644 --- a/packages/berry-fslib/sources/FakeFS.ts +++ b/packages/berry-fslib/sources/FakeFS.ts @@ -97,8 +97,21 @@ export abstract class FakeFS { if (stat.isDirectory()) { for (const entry of await this.readdirPromise(p)) await this.removePromise(posix.resolve(p, entry)); - - await this.rmdirPromise(p); + + // 5 gives 1s worth of retries at worst + for (let t = 0; t < 5; ++t) { + try { + await this.rmdirPromise(p); + break; + } catch (error) { + if (error.code === `EBUSY` || error.code === `ENOTEMPTY`) { + await new Promise(resolve => setTimeout(resolve, t * 100)); + continue; + } else { + throw error; + } + } + } } else { await this.unlinkPromise(p); } diff --git a/packages/berry-fslib/sources/JailFS.ts b/packages/berry-fslib/sources/JailFS.ts index 14fb6a2752d8..8c95ec8d4a2d 100644 --- a/packages/berry-fslib/sources/JailFS.ts +++ b/packages/berry-fslib/sources/JailFS.ts @@ -122,11 +122,11 @@ export class JailFS extends FakeFS { } async unlinkPromise(p: string) { - return await this.baseFs.rmdirPromise(this.fromJailedPath(p)); + return await this.baseFs.unlinkPromise(this.fromJailedPath(p)); } unlinkSync(p: string) { - return this.baseFs.rmdirSync(this.fromJailedPath(p)); + return this.baseFs.unlinkSync(this.fromJailedPath(p)); } async utimesPromise(p: string, atime: Date | string | number, mtime: Date | string | number) { diff --git a/packages/berry-fslib/sources/NodeFS.ts b/packages/berry-fslib/sources/NodeFS.ts index 5ea15a3e3d5d..4ebe0ae3e14a 100644 --- a/packages/berry-fslib/sources/NodeFS.ts +++ b/packages/berry-fslib/sources/NodeFS.ts @@ -1,8 +1,13 @@ import fs, {Stats} from 'fs'; +import {win32} from 'path'; import {CreateReadStreamOptions, CreateWriteStreamOptions} from './FakeFS'; import {FakeFS, WriteFileOptions} from './FakeFS'; + +const PORTABLE_PATH_PREFIX = `/mnt/`; +const PORTABLE_PREFIX_REGEXP = /^\/mnt\/([a-z])(?:\/(.*))?$/; + export class NodeFS extends FakeFS { private readonly realFs: typeof fs; @@ -18,12 +23,12 @@ export class NodeFS extends FakeFS { async openPromise(p: string, flags: string, mode?: number) { return await new Promise((resolve, reject) => { - this.realFs.open(p, flags, mode, this.makeCallback(resolve, reject)); + this.realFs.open(NodeFS.fromPortablePath(p), flags, mode, this.makeCallback(resolve, reject)); }); } openSync(p: string, flags: string, mode?: number) { - return this.realFs.openSync(p, flags, mode); + return this.realFs.openSync(NodeFS.fromPortablePath(p), flags, mode); } async closePromise(fd: number) { @@ -37,183 +42,187 @@ export class NodeFS extends FakeFS { } createReadStream(p: string, opts?: CreateReadStreamOptions) { - return this.realFs.createReadStream(this.fromPortablePath(p), opts); + return this.realFs.createReadStream(NodeFS.fromPortablePath(p), opts); } createWriteStream(p: string, opts?: CreateWriteStreamOptions) { - return this.realFs.createWriteStream(this.fromPortablePath(p), opts); + return this.realFs.createWriteStream(NodeFS.fromPortablePath(p), opts); } async realpathPromise(p: string) { return await new Promise((resolve, reject) => { - this.realFs.realpath(p, {}, this.makeCallback(resolve, reject)); + this.realFs.realpath(NodeFS.fromPortablePath(p), {}, this.makeCallback(resolve, reject)); + }).then(path => { + return NodeFS.toPortablePath(path); }); } realpathSync(p: string) { - return this.toPortablePath(this.realFs.realpathSync(this.fromPortablePath(p), {})); + return NodeFS.toPortablePath(this.realFs.realpathSync(NodeFS.fromPortablePath(p), {})); } async existsPromise(p: string) { return await new Promise(resolve => { - this.realFs.exists(this.fromPortablePath(p), resolve); + this.realFs.exists(NodeFS.fromPortablePath(p), resolve); }); } existsSync(p: string) { - return this.realFs.existsSync(this.fromPortablePath(p)); + return this.realFs.existsSync(NodeFS.fromPortablePath(p)); } async statPromise(p: string) { return await new Promise((resolve, reject) => { - this.realFs.stat(p, this.makeCallback(resolve, reject)); + this.realFs.stat(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject)); }); } statSync(p: string) { - return this.realFs.statSync(this.fromPortablePath(p)); + return this.realFs.statSync(NodeFS.fromPortablePath(p)); } async lstatPromise(p: string) { return await new Promise((resolve, reject) => { - this.realFs.lstat(p, this.makeCallback(resolve, reject)); + this.realFs.lstat(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject)); }); } lstatSync(p: string) { - return this.realFs.lstatSync(this.fromPortablePath(p)); + return this.realFs.lstatSync(NodeFS.fromPortablePath(p)); } async chmodPromise(p: string, mask: number) { return await new Promise((resolve, reject) => { - this.realFs.chmod(this.fromPortablePath(p), mask, this.makeCallback(resolve, reject)); + this.realFs.chmod(NodeFS.fromPortablePath(p), mask, this.makeCallback(resolve, reject)); }); } chmodSync(p: string, mask: number) { - return this.realFs.chmodSync(this.fromPortablePath(p), mask); + return this.realFs.chmodSync(NodeFS.fromPortablePath(p), mask); } async renamePromise(oldP: string, newP: string) { return await new Promise((resolve, reject) => { - this.realFs.rename(this.fromPortablePath(oldP), this.fromPortablePath(newP), this.makeCallback(resolve, reject)); + this.realFs.rename(NodeFS.fromPortablePath(oldP), NodeFS.fromPortablePath(newP), this.makeCallback(resolve, reject)); }); } renameSync(oldP: string, newP: string) { - return this.realFs.renameSync(this.fromPortablePath(oldP), this.fromPortablePath(newP)); + return this.realFs.renameSync(NodeFS.fromPortablePath(oldP), NodeFS.fromPortablePath(newP)); } async copyFilePromise(sourceP: string, destP: string, flags: number = 0) { return await new Promise((resolve, reject) => { - this.realFs.copyFile(this.fromPortablePath(sourceP), this.fromPortablePath(destP), flags, this.makeCallback(resolve, reject)); + this.realFs.copyFile(NodeFS.fromPortablePath(sourceP), NodeFS.fromPortablePath(destP), flags, this.makeCallback(resolve, reject)); }); } copyFileSync(sourceP: string, destP: string, flags: number = 0) { - return this.realFs.copyFileSync(this.fromPortablePath(sourceP), this.fromPortablePath(destP), flags); + return this.realFs.copyFileSync(NodeFS.fromPortablePath(sourceP), NodeFS.fromPortablePath(destP), flags); } async writeFilePromise(p: string, content: string | Buffer | ArrayBuffer | DataView, opts?: WriteFileOptions) { return await new Promise((resolve, reject) => { if (opts) { - this.realFs.writeFile(p, content, opts, this.makeCallback(resolve, reject)); + this.realFs.writeFile(NodeFS.fromPortablePath(p), content, opts, this.makeCallback(resolve, reject)); } else { - this.realFs.writeFile(p, content, this.makeCallback(resolve, reject)); + this.realFs.writeFile(NodeFS.fromPortablePath(p), content, this.makeCallback(resolve, reject)); } }); } writeFileSync(p: string, content: string | Buffer | ArrayBuffer | DataView, opts?: WriteFileOptions) { if (opts) { - this.realFs.writeFileSync(this.fromPortablePath(p), content, opts); + this.realFs.writeFileSync(NodeFS.fromPortablePath(p), content, opts); } else { - this.realFs.writeFileSync(this.fromPortablePath(p), content); + this.realFs.writeFileSync(NodeFS.fromPortablePath(p), content); } } async unlinkPromise(p: string) { return await new Promise((resolve, reject) => { - this.realFs.unlink(p, this.makeCallback(resolve, reject)); + this.realFs.unlink(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject)); }); } unlinkSync(p: string) { - return this.realFs.unlinkSync(this.fromPortablePath(p)); + return this.realFs.unlinkSync(NodeFS.fromPortablePath(p)); } async utimesPromise(p: string, atime: Date | string | number, mtime: Date | string | number) { return await new Promise((resolve, reject) => { - this.realFs.utimes(p, atime, mtime, this.makeCallback(resolve, reject)); + this.realFs.utimes(NodeFS.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); }); } utimesSync(p: string, atime: Date | string | number, mtime: Date | string | number) { - this.realFs.utimesSync(p, atime, mtime); + this.realFs.utimesSync(NodeFS.fromPortablePath(p), atime, mtime); } async mkdirPromise(p: string) { return await new Promise((resolve, reject) => { - this.realFs.mkdir(p, this.makeCallback(resolve, reject)); + this.realFs.mkdir(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject)); }); } mkdirSync(p: string) { - return this.realFs.mkdirSync(this.fromPortablePath(p)); + return this.realFs.mkdirSync(NodeFS.fromPortablePath(p)); } async rmdirPromise(p: string) { return await new Promise((resolve, reject) => { - this.realFs.rmdir(p, this.makeCallback(resolve, reject)); + this.realFs.rmdir(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject)); }); } rmdirSync(p: string) { - return this.realFs.rmdirSync(this.fromPortablePath(p)); + return this.realFs.rmdirSync(NodeFS.fromPortablePath(p)); } async symlinkPromise(target: string, p: string) { return await new Promise((resolve, reject) => { - this.realFs.symlink(target, this.fromPortablePath(p), this.makeCallback(resolve, reject)); + this.realFs.symlink(NodeFS.fromPortablePath(target), NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject)); }); } symlinkSync(target: string, p: string) { - return this.realFs.symlinkSync(target, this.fromPortablePath(p)); + return this.realFs.symlinkSync(NodeFS.fromPortablePath(target), NodeFS.fromPortablePath(p)); } readFilePromise(p: string, encoding: 'utf8'): Promise; readFilePromise(p: string, encoding?: string): Promise; async readFilePromise(p: string, encoding?: string) { return await new Promise((resolve, reject) => { - this.realFs.readFile(this.fromPortablePath(p), encoding, this.makeCallback(resolve, reject)); + this.realFs.readFile(NodeFS.fromPortablePath(p), encoding, this.makeCallback(resolve, reject)); }); } readFileSync(p: string, encoding: 'utf8'): string; readFileSync(p: string, encoding?: string): Buffer; readFileSync(p: string, encoding?: string) { - return this.realFs.readFileSync(this.fromPortablePath(p), encoding); + return this.realFs.readFileSync(NodeFS.fromPortablePath(p), encoding); } async readdirPromise(p: string) { return await new Promise>((resolve, reject) => { - this.realFs.readdir(p, this.makeCallback(resolve, reject)); + this.realFs.readdir(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject)); }); } readdirSync(p: string) { - return this.realFs.readdirSync(this.fromPortablePath(p)); + return this.realFs.readdirSync(NodeFS.fromPortablePath(p)); } async readlinkPromise(p: string) { return await new Promise((resolve, reject) => { - this.realFs.readlink(p, this.makeCallback(resolve, reject)); + this.realFs.readlink(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject)); + }).then(path => { + return NodeFS.toPortablePath(path); }); } readlinkSync(p: string) { - return this.realFs.readlinkSync(this.fromPortablePath(p)); + return NodeFS.toPortablePath(this.realFs.readlinkSync(NodeFS.fromPortablePath(p))); } private makeCallback(resolve: (value?: T) => void, reject: (reject: Error) => void) { @@ -226,11 +235,44 @@ export class NodeFS extends FakeFS { }; } - private fromPortablePath(p: string) { - return p; + static fromPortablePath(p: string) { + if (process.platform !== `win32`) + return p; + + // Path should look like "/mnt/n/berry/scripts/plugin-pack.js" + // And transform to "N:\berry/scripts/plugin-pack.js" + + const match = p.match(PORTABLE_PREFIX_REGEXP); + if (!match) + return p; + + const [, drive, pathWithoutPrefix = ''] = match; + const windowsPath = pathWithoutPrefix.replace(/\//g, '\\'); + + return `${drive.toUpperCase()}:\\${windowsPath}`; } - private toPortablePath(p: string) { - return p; + static toPortablePath(p: string) { + if (process.platform !== `win32`) + return p; + + // Path should look like "N:\berry/scripts/plugin-pack.js" + // And transform to "/mnt/n/berry/scripts/plugin-pack.js" + + // Skip if the path is already portable + if (p.startsWith(PORTABLE_PATH_PREFIX)) + return p; + + const {root} = win32.parse(p); + + // If relative path, just replace win32 slashes by posix slashes + if (!root) + return p.replace(/\\/g, '/'); + + const driveLetter = root[0].toLowerCase(); + const pathWithoutRoot = p.substr(root.length); + const posixPath = pathWithoutRoot.replace(/\\/g, '/'); + + return `${PORTABLE_PATH_PREFIX}${driveLetter}/${posixPath}`; } } diff --git a/packages/berry-fslib/sources/PosixFS.ts b/packages/berry-fslib/sources/PosixFS.ts new file mode 100644 index 000000000000..2cc6b35704b4 --- /dev/null +++ b/packages/berry-fslib/sources/PosixFS.ts @@ -0,0 +1,187 @@ +import {posix} from 'path'; + +import {CreateReadStreamOptions, CreateWriteStreamOptions} from './FakeFS'; +import {FakeFS, WriteFileOptions} from './FakeFS'; +import {NodeFS} from './NodeFS'; + +export class PosixFS extends FakeFS { + private readonly baseFs: FakeFS; + + constructor(baseFs: FakeFS) { + super(); + + this.baseFs = baseFs; + } + + getRealPath() { + return NodeFS.fromPortablePath(this.baseFs.getRealPath()); + } + + async openPromise(p: string, flags: string, mode?: number) { + return await this.baseFs.openPromise(NodeFS.toPortablePath(p), flags, mode); + } + + openSync(p: string, flags: string, mode?: number) { + return this.baseFs.openSync(NodeFS.toPortablePath(p), flags, mode); + } + + async closePromise(fd: number) { + await this.baseFs.closePromise(fd); + } + + closeSync(fd: number) { + this.baseFs.closeSync(fd); + } + + createReadStream(p: string, opts?: CreateReadStreamOptions) { + return this.baseFs.createReadStream(NodeFS.toPortablePath(p), opts); + } + + createWriteStream(p: string, opts?: CreateWriteStreamOptions) { + return this.baseFs.createWriteStream(NodeFS.toPortablePath(p), opts); + } + + async realpathPromise(p: string) { + return NodeFS.fromPortablePath(await this.baseFs.realpathPromise(NodeFS.toPortablePath(p))); + } + + realpathSync(p: string) { + return NodeFS.fromPortablePath(this.baseFs.realpathSync(NodeFS.toPortablePath(p))); + } + + async existsPromise(p: string) { + return await this.baseFs.existsPromise(NodeFS.toPortablePath(p)); + } + + existsSync(p: string) { + return this.baseFs.existsSync(NodeFS.toPortablePath(p)); + } + + async statPromise(p: string) { + return await this.baseFs.statPromise(NodeFS.toPortablePath(p)); + } + + statSync(p: string) { + return this.baseFs.statSync(NodeFS.toPortablePath(p)); + } + + async lstatPromise(p: string) { + return await this.baseFs.lstatPromise(NodeFS.toPortablePath(p)); + } + + lstatSync(p: string) { + return this.baseFs.lstatSync(NodeFS.toPortablePath(p)); + } + + async chmodPromise(p: string, mask: number) { + return await this.baseFs.chmodPromise(NodeFS.toPortablePath(p), mask); + } + + chmodSync(p: string, mask: number) { + return this.baseFs.chmodSync(NodeFS.toPortablePath(p), mask); + } + + async renamePromise(oldP: string, newP: string) { + return await this.baseFs.renamePromise(NodeFS.toPortablePath(oldP), NodeFS.toPortablePath(newP)); + } + + renameSync(oldP: string, newP: string) { + return this.baseFs.renameSync(NodeFS.toPortablePath(oldP), NodeFS.toPortablePath(newP)); + } + + async copyFilePromise(sourceP: string, destP: string, flags?: number) { + return await this.baseFs.copyFilePromise(NodeFS.toPortablePath(sourceP), NodeFS.toPortablePath(destP), flags); + } + + copyFileSync(sourceP: string, destP: string, flags?: number) { + return this.baseFs.copyFileSync(NodeFS.toPortablePath(sourceP), NodeFS.toPortablePath(destP), flags); + } + + async writeFilePromise(p: string, content: string | Buffer | ArrayBuffer | DataView, opts?: WriteFileOptions) { + return await this.baseFs.writeFilePromise(NodeFS.toPortablePath(p), content, opts); + } + + writeFileSync(p: string, content: string | Buffer | ArrayBuffer | DataView, opts?: WriteFileOptions) { + return this.baseFs.writeFileSync(NodeFS.toPortablePath(p), content, opts); + } + + async unlinkPromise(p: string) { + return await this.baseFs.unlinkPromise(NodeFS.toPortablePath(p)); + } + + unlinkSync(p: string) { + return this.baseFs.unlinkSync(NodeFS.toPortablePath(p)); + } + + async utimesPromise(p: string, atime: Date | string | number, mtime: Date | string | number) { + return await this.baseFs.utimesPromise(NodeFS.toPortablePath(p), atime, mtime); + } + + utimesSync(p: string, atime: Date | string | number, mtime: Date | string | number) { + return this.baseFs.utimesSync(NodeFS.toPortablePath(p), atime, mtime); + } + + async mkdirPromise(p: string) { + return await this.baseFs.mkdirPromise(NodeFS.toPortablePath(p)); + } + + mkdirSync(p: string) { + return this.baseFs.mkdirSync(NodeFS.toPortablePath(p)); + } + + async rmdirPromise(p: string) { + return await this.baseFs.rmdirPromise(NodeFS.toPortablePath(p)); + } + + rmdirSync(p: string) { + return this.baseFs.rmdirSync(NodeFS.toPortablePath(p)); + } + + async symlinkPromise(target: string, p: string) { + return await this.baseFs.symlinkPromise(target, NodeFS.toPortablePath(p)); + } + + symlinkSync(target: string, p: string) { + return this.baseFs.symlinkSync(target, NodeFS.toPortablePath(p)); + } + + readFilePromise(p: string, encoding: 'utf8'): Promise; + readFilePromise(p: string, encoding?: string): Promise; + async readFilePromise(p: string, encoding?: string) { + // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered) + switch (encoding) { + case `utf8`: + return await this.baseFs.readFilePromise(NodeFS.toPortablePath(p), encoding); + default: + return await this.baseFs.readFilePromise(NodeFS.toPortablePath(p), encoding); + } + } + + readFileSync(p: string, encoding: 'utf8'): string; + readFileSync(p: string, encoding?: string): Buffer; + readFileSync(p: string, encoding?: string) { + // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered) + switch (encoding) { + case `utf8`: + return this.baseFs.readFileSync(NodeFS.toPortablePath(p), encoding); + default: + return this.baseFs.readFileSync(NodeFS.toPortablePath(p), encoding); + } + } + + async readdirPromise(p: string) { + return await this.baseFs.readdirPromise(NodeFS.toPortablePath(p)); + } + + readdirSync(p: string) { + return this.baseFs.readdirSync(NodeFS.toPortablePath(p)); + } + + async readlinkPromise(p: string) { + return NodeFS.fromPortablePath(await this.baseFs.readlinkPromise(NodeFS.toPortablePath(p))); + } + + readlinkSync(p: string) { + return NodeFS.fromPortablePath(this.baseFs.readlinkSync(NodeFS.toPortablePath(p))); + } +} diff --git a/packages/berry-fslib/sources/ZipFS.ts b/packages/berry-fslib/sources/ZipFS.ts index 6a9edcd5caec..4f7a47f9edcd 100644 --- a/packages/berry-fslib/sources/ZipFS.ts +++ b/packages/berry-fslib/sources/ZipFS.ts @@ -123,7 +123,7 @@ export class ZipFS extends FakeFS { if (readOnly) flags |= libzip.ZIP_RDONLY; - this.zip = libzip.open(p, flags, errPtr); + this.zip = libzip.open(NodeFS.fromPortablePath(p), flags, errPtr); if (this.zip === 0) { const error = libzip.struct.errorS(); diff --git a/packages/berry-fslib/sources/index.ts b/packages/berry-fslib/sources/index.ts index baba003820b7..58863cf13ebf 100644 --- a/packages/berry-fslib/sources/index.ts +++ b/packages/berry-fslib/sources/index.ts @@ -4,10 +4,11 @@ import {FakeFS} from './FakeFS'; import {NodeFS} from './NodeFS'; export {AliasFS} from './AliasFS'; +export {FakeFS} from './FakeFS'; export {CwdFS} from './CwdFS'; export {JailFS} from './JailFS'; export {NodeFS} from './NodeFS'; -export {FakeFS} from './FakeFS'; +export {PosixFS} from './PosixFS'; export {ZipFS} from './ZipFS'; export {ZipOpenFS} from './ZipOpenFS'; diff --git a/packages/berry-json-proxy/package.json b/packages/berry-json-proxy/package.json index 6dbb7451098f..5b4c8e21b3df 100644 --- a/packages/berry-json-proxy/package.json +++ b/packages/berry-json-proxy/package.json @@ -1,5 +1,8 @@ { "name": "@berry/json-proxy", "private": true, - "main": "./sources/index.ts" + "main": "./sources/index.ts", + "dependencies": { + "@berry/fslib": "workspace:*" + } } diff --git a/packages/berry-json-proxy/sources/makeUpdater.ts b/packages/berry-json-proxy/sources/makeUpdater.ts index 01a9a759a290..018d2ad0a9d7 100644 --- a/packages/berry-json-proxy/sources/makeUpdater.ts +++ b/packages/berry-json-proxy/sources/makeUpdater.ts @@ -1,28 +1,24 @@ -import {existsSync, readFile, writeFile} from 'fs'; -import {promisify} from 'util'; +import {xfs} from '@berry/fslib'; -import {makeTracker} from './makeTracker'; - -const readFileP = promisify(readFile); -const writeFileP = promisify(writeFile); +import {makeTracker} from './makeTracker'; export async function makeUpdater(filename: string) { let indent = ` `; let obj; - if (existsSync(filename)) { - const content = await readFileP(filename, `utf8`); + if (xfs.existsSync(filename)) { + const content = await xfs.readFilePromise(filename, `utf8`); const indentMatch = content.match(/^[ \t]+/m); - + if (indentMatch) indent = indentMatch[0]; obj = JSON.parse(content || `{}`); } - + if (!obj) obj = {}; - + const tracker = makeTracker(obj); const initial = tracker.immutable; @@ -35,7 +31,7 @@ export async function makeUpdater(filename: string) { return; const data = JSON.stringify(tracker.immutable, null, indent) + `\n`; - await writeFileP(filename, data); + await xfs.writeFilePromise(filename, data); } }; } diff --git a/packages/berry-pnp/bundles/hook.js b/packages/berry-pnp/bundles/hook.js index 22a91f4d06c6..b5c6b130f885 100644 --- a/packages/berry-pnp/bundles/hook.js +++ b/packages/berry-pnp/bundles/hook.js @@ -1 +1 @@ -module.exports = "module.exports =\n/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// define __esModule on exports\n/******/ \t__webpack_require__.r = function(exports) {\n/******/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t}\n/******/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t};\n/******/\n/******/ \t// create a fake namespace object\n/******/ \t// mode & 1: value is a module id, require it\n/******/ \t// mode & 2: merge all properties of value into the ns\n/******/ \t// mode & 4: return value when already ns object\n/******/ \t// mode & 8|1: behave like require\n/******/ \t__webpack_require__.t = function(value, mode) {\n/******/ \t\tif(mode & 1) value = __webpack_require__(value);\n/******/ \t\tif(mode & 8) return value;\n/******/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/******/ \t\tvar ns = Object.create(null);\n/******/ \t\t__webpack_require__.r(ns);\n/******/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/******/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/******/ \t\treturn ns;\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 0);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst module_1 = __importDefault(__webpack_require__(1));\nconst path_1 = __importDefault(__webpack_require__(2));\nconst string_decoder_1 = __importDefault(__webpack_require__(3));\nconst applyPatch_1 = __webpack_require__(4);\nconst hydrateRuntimeState_1 = __webpack_require__(20);\nconst makeApi_1 = __webpack_require__(21);\nmodule.exports = makeApi_1.makeApi($$SETUP_STATE(hydrateRuntimeState_1.hydrateRuntimeState), {\n compatibilityMode: true,\n pnpapiResolution: path_1.default.resolve(__dirname, __filename),\n});\nif (__non_webpack_module__.parent && __non_webpack_module__.parent.id === 'internal/preload') {\n applyPatch_1.applyPatch(module.exports, {\n compatibilityMode: true,\n });\n if (__non_webpack_module__.filename) {\n // We delete it from the cache in order to support the case where the CLI resolver is invoked from \"yarn run\"\n // It's annoying because it might cause some issues when the file is multiple times in NODE_OPTIONS, but it shouldn't happen anyway.\n delete module_1.default._cache[__non_webpack_module__.filename];\n }\n}\n// @ts-ignore\nif (process.mainModule === __non_webpack_module__) {\n const reportError = (code, message, data) => {\n process.stdout.write(`${JSON.stringify([{ code, message, data }, null])}\\n`);\n };\n const reportSuccess = (resolution) => {\n process.stdout.write(`${JSON.stringify([null, resolution])}\\n`);\n };\n const processResolution = (request, issuer) => {\n try {\n reportSuccess(module.exports.resolveRequest(request, issuer));\n }\n catch (error) {\n reportError(error.code, error.message, error.data);\n }\n };\n const processRequest = (data) => {\n try {\n const [request, issuer] = JSON.parse(data);\n processResolution(request, issuer);\n }\n catch (error) {\n reportError(`INVALID_JSON`, error.message, error.data);\n }\n };\n if (process.argv.length > 2) {\n if (process.argv.length !== 4) {\n process.stderr.write(`Usage: ${process.argv[0]} ${process.argv[1]} \\n`);\n process.exitCode = 64; /* EX_USAGE */\n }\n else {\n processResolution(process.argv[2], process.argv[3]);\n }\n }\n else {\n let buffer = '';\n const decoder = new string_decoder_1.default.StringDecoder();\n process.stdin.on('data', chunk => {\n buffer += decoder.write(chunk);\n do {\n const index = buffer.indexOf('\\n');\n if (index === -1)\n break;\n const line = buffer.slice(0, index);\n buffer = buffer.slice(index + 1);\n processRequest(line);\n } while (true);\n });\n }\n}\n\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"module\");\n\n/***/ }),\n/* 2 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"path\");\n\n/***/ }),\n/* 3 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"string_decoder\");\n\n/***/ }),\n/* 4 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst fslib_1 = __webpack_require__(5);\nconst fs_1 = __importDefault(__webpack_require__(7));\nconst module_1 = __importDefault(__webpack_require__(1));\nconst path_1 = __importDefault(__webpack_require__(2));\nconst internalTools_1 = __webpack_require__(19);\nfunction applyPatch(pnpapi, opts) {\n // @ts-ignore\n const builtinModules = new Set(module_1.default.builtinModules || Object.keys(process.binding('natives')));\n // The callback function gets called to wrap the return value of the module names matching the regexp\n const patchedModules = [];\n if (opts.compatibilityMode) {\n // Modern versions of `resolve` support a specific entry point that custom resolvers can use\n // to inject a specific resolution logic without having to patch the whole package.\n //\n // Cf: https://github.com/browserify/resolve/pull/174\n patchedModules.push([\n /^\\.\\/normalize-options\\.js$/,\n (issuer, normalizeOptions) => {\n if (!issuer || issuer.name !== 'resolve')\n return normalizeOptions;\n return (request, opts) => {\n opts = opts || {};\n if (opts.forceNodeResolution)\n return opts;\n opts.preserveSymlinks = true;\n opts.paths = function (request, basedir, getNodeModulesDir, opts) {\n // Extract the name of the package being requested (1=full name, 2=scope name, 3=local name)\n const parts = request.match(/^((?:(@[^\\/]+)\\/)?([^\\/]+))/);\n if (!parts)\n throw new Error(`Assertion failed: Expected the \"resolve\" package to call the \"paths\" callback with package names only (got \"${request}\")`);\n // make sure that basedir ends with a slash\n if (basedir.charAt(basedir.length - 1) !== '/')\n basedir = path_1.default.join(basedir, '/');\n // This is guaranteed to return the path to the \"package.json\" file from the given package\n const manifestPath = pnpapi.resolveToUnqualified(`${parts[1]}/package.json`, basedir, {\n considerBuiltins: false,\n });\n if (manifestPath === null)\n throw new Error(`Assertion failed: The resolution thinks that \"${parts[1]}\" is a Node builtin`);\n // The first dirname strips the package.json, the second strips the local named folder\n let nodeModules = path_1.default.dirname(path_1.default.dirname(manifestPath));\n // Strips the scope named folder if needed\n if (parts[2])\n nodeModules = path_1.default.dirname(nodeModules);\n return [nodeModules];\n };\n return opts;\n };\n },\n ]);\n }\n /**\n * Used to disable the resolution hooks (for when we want to fallback to the previous resolution - we then need\n * a way to \"reset\" the environment temporarily)\n */\n let enableNativeHooks = true;\n // @ts-ignore\n process.versions.pnp = String(pnpapi.VERSIONS.std);\n // A small note: we don't replace the cache here (and instead use the native one). This is an effort to not\n // break code similar to \"delete require.cache[require.resolve(FOO)]\", where FOO is a package located outside\n // of the Yarn dependency tree. In this case, we defer the load to the native loader. If we were to replace the\n // cache by our own, the native loader would populate its own cache, which wouldn't be exposed anymore, so the\n // delete call would be broken.\n const originalModuleLoad = module_1.default._load;\n module_1.default._load = function (request, parent, isMain) {\n if (!enableNativeHooks) {\n return originalModuleLoad.call(module_1.default, request, parent, isMain);\n }\n // Builtins are managed by the regular Node loader\n if (builtinModules.has(request)) {\n try {\n enableNativeHooks = false;\n return originalModuleLoad.call(module_1.default, request, parent, isMain);\n }\n finally {\n enableNativeHooks = true;\n }\n }\n // The 'pnpapi' name is reserved to return the PnP api currently in use by the program\n if (request === `pnpapi`)\n return pnpapi;\n // Request `Module._resolveFilename` (ie. `resolveRequest`) to tell us which file we should load\n const modulePath = module_1.default._resolveFilename(request, parent, isMain);\n // Check if the module has already been created for the given file\n const cacheEntry = module_1.default._cache[modulePath];\n if (cacheEntry)\n return cacheEntry.exports;\n // Create a new module and store it into the cache\n // @ts-ignore\n const module = new module_1.default(modulePath, parent);\n module_1.default._cache[modulePath] = module;\n // The main module is exposed as global variable\n if (isMain) {\n // @ts-ignore\n process.mainModule = module;\n module.id = '.';\n }\n // Try to load the module, and remove it from the cache if it fails\n let hasThrown = true;\n try {\n module.load(modulePath);\n hasThrown = false;\n }\n finally {\n if (hasThrown) {\n delete module_1.default._cache[modulePath];\n }\n }\n // Some modules might have to be patched for compatibility purposes\n for (const [filter, patchFn] of patchedModules)\n if (filter.test(request))\n module.exports = patchFn(parent && parent.filename ? pnpapi.findPackageLocator(parent.filename) : null, module.exports);\n return module.exports;\n };\n const originalModuleResolveFilename = module_1.default._resolveFilename;\n module_1.default._resolveFilename = function (request, parent, isMain, options) {\n if (request === `pnpapi`)\n return request;\n if (!enableNativeHooks)\n return originalModuleResolveFilename.call(module_1.default, request, parent, isMain, options);\n if (options && options.plugnplay === false) {\n try {\n enableNativeHooks = false;\n return originalModuleResolveFilename.call(module_1.default, request, parent, isMain, options);\n }\n finally {\n enableNativeHooks = true;\n }\n }\n let issuers;\n if (options) {\n const optionNames = new Set(Object.keys(options));\n optionNames.delete(`paths`);\n optionNames.delete(`plugnplay`);\n if (optionNames.size > 0) {\n throw internalTools_1.makeError(`UNSUPPORTED`, `Some options passed to require() aren't supported by PnP yet (${Array.from(optionNames).join(', ')})`);\n }\n if (options.paths) {\n issuers = options.paths.map((entry) => {\n return `${path_1.default.normalize(entry)}/`;\n });\n }\n }\n if (!issuers) {\n const issuerModule = internalTools_1.getIssuerModule(parent);\n const issuer = issuerModule ? issuerModule.filename : `${process.cwd()}/`;\n issuers = [issuer];\n }\n let firstError;\n for (const issuer of issuers) {\n let resolution;\n try {\n resolution = pnpapi.resolveRequest(request, issuer);\n }\n catch (error) {\n firstError = firstError || error;\n continue;\n }\n return resolution !== null ? resolution : request;\n }\n throw firstError;\n };\n const originalFindPath = module_1.default._findPath;\n module_1.default._findPath = function (request, paths, isMain) {\n if (request === `pnpapi`)\n return false;\n if (!enableNativeHooks)\n return originalFindPath.call(module_1.default, request, paths, isMain);\n for (const path of paths) {\n let resolution;\n try {\n resolution = pnpapi.resolveRequest(request, path);\n }\n catch (error) {\n continue;\n }\n if (resolution) {\n return resolution;\n }\n }\n return false;\n };\n // We must copy the fs into a local, because otherwise\n // 1. we would make the NodeFS instance use the function that we patched (infinite loop)\n // 2. Object.create(fs) isn't enough, since it won't prevent the proto from being modified\n const localFs = Object.assign({}, fs_1.default);\n const nodeFs = new fslib_1.NodeFS(localFs);\n fslib_1.patchFs(fs_1.default, new fslib_1.ZipOpenFS({ baseFs: nodeFs }));\n}\nexports.applyPatch = applyPatch;\n;\n\n\n/***/ }),\n/* 5 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst NodeFS_1 = __webpack_require__(6);\nvar AliasFS_1 = __webpack_require__(9);\nexports.AliasFS = AliasFS_1.AliasFS;\nvar CwdFS_1 = __webpack_require__(10);\nexports.CwdFS = CwdFS_1.CwdFS;\nvar JailFS_1 = __webpack_require__(11);\nexports.JailFS = JailFS_1.JailFS;\nvar NodeFS_2 = __webpack_require__(6);\nexports.NodeFS = NodeFS_2.NodeFS;\nvar FakeFS_1 = __webpack_require__(8);\nexports.FakeFS = FakeFS_1.FakeFS;\nvar ZipFS_1 = __webpack_require__(12);\nexports.ZipFS = ZipFS_1.ZipFS;\nvar ZipOpenFS_1 = __webpack_require__(18);\nexports.ZipOpenFS = ZipOpenFS_1.ZipOpenFS;\nfunction wrapSync(fn) {\n return fn;\n}\nfunction wrapAsync(fn) {\n return function (...args) {\n const cb = typeof args[args.length - 1] === `function`\n ? args.pop()\n : null;\n setImmediate(() => {\n let error, result;\n try {\n result = fn(...args);\n }\n catch (caught) {\n error = caught;\n }\n cb(error, result);\n });\n };\n}\nfunction patchFs(patchedFs, fakeFs) {\n const SYNC_IMPLEMENTATIONS = new Set([\n `createReadStream`,\n `chmodSync`,\n `copyFileSync`,\n `lstatSync`,\n `openSync`,\n `readlinkSync`,\n `readFileSync`,\n `readdirSync`,\n `readlinkSync`,\n `realpathSync`,\n `rmdirSync`,\n `statSync`,\n `symlinkSync`,\n `unlinkSync`,\n `utimesSync`,\n `writeFileSync`,\n ]);\n const ASYNC_IMPLEMENTATIONS = new Set([\n `chmodPromise`,\n `copyFilePromise`,\n `lstatPromise`,\n `openPromise`,\n `readdirPromise`,\n `realpathPromise`,\n `readFilePromise`,\n `readdirPromise`,\n `readlinkPromise`,\n `rmdirPromise`,\n `statPromise`,\n `symlinkPromise`,\n `unlinkPromise`,\n `utimesPromise`,\n `writeFilePromise`,\n ]);\n patchedFs.existsSync = (p) => {\n try {\n return fakeFs.existsSync(p);\n }\n catch (error) {\n return false;\n }\n };\n patchedFs.exists = (p, callback) => {\n fakeFs.existsPromise(p).then(result => {\n if (callback) {\n callback(result);\n }\n }, () => {\n if (callback) {\n callback(false);\n }\n });\n };\n for (const fnName of ASYNC_IMPLEMENTATIONS) {\n const fakeImpl = fakeFs[fnName].bind(fakeFs);\n const origName = fnName.replace(/Promise$/, ``);\n patchedFs[origName] = (...args) => {\n const hasCallback = typeof args[args.length - 1] === `function`;\n const callback = hasCallback ? args.pop() : () => { };\n fakeImpl(...args).then((result) => {\n callback(undefined, result);\n }, (error) => {\n callback(error);\n });\n };\n }\n for (const fnName of SYNC_IMPLEMENTATIONS) {\n const fakeImpl = fakeFs[fnName].bind(fakeFs);\n const origName = fnName;\n patchedFs[origName] = fakeImpl;\n }\n patchedFs.realpathSync.native = patchedFs.realpathSync;\n patchedFs.realpath.native = patchedFs.realpath;\n}\nexports.patchFs = patchFs;\nfunction extendFs(realFs, fakeFs) {\n const patchedFs = Object.create(realFs);\n patchFs(patchedFs, fakeFs);\n return patchedFs;\n}\nexports.extendFs = extendFs;\nexports.xfs = new NodeFS_1.NodeFS();\n\n\n/***/ }),\n/* 6 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst fs_1 = __importDefault(__webpack_require__(7));\nconst FakeFS_1 = __webpack_require__(8);\nclass NodeFS extends FakeFS_1.FakeFS {\n constructor(realFs = fs_1.default) {\n super();\n this.realFs = realFs;\n }\n getRealPath() {\n return `/`;\n }\n async openPromise(p, flags, mode) {\n return await new Promise((resolve, reject) => {\n this.realFs.open(p, flags, mode, this.makeCallback(resolve, reject));\n });\n }\n openSync(p, flags, mode) {\n return this.realFs.openSync(p, flags, mode);\n }\n async closePromise(fd) {\n await new Promise((resolve, reject) => {\n this.realFs.close(fd, this.makeCallback(resolve, reject));\n });\n }\n closeSync(fd) {\n this.realFs.closeSync(fd);\n }\n createReadStream(p, opts) {\n return this.realFs.createReadStream(this.fromPortablePath(p), opts);\n }\n createWriteStream(p, opts) {\n return this.realFs.createWriteStream(this.fromPortablePath(p), opts);\n }\n async realpathPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.realpath(p, {}, this.makeCallback(resolve, reject));\n });\n }\n realpathSync(p) {\n return this.toPortablePath(this.realFs.realpathSync(this.fromPortablePath(p), {}));\n }\n async existsPromise(p) {\n return await new Promise(resolve => {\n this.realFs.exists(this.fromPortablePath(p), resolve);\n });\n }\n existsSync(p) {\n return this.realFs.existsSync(this.fromPortablePath(p));\n }\n async statPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.stat(p, this.makeCallback(resolve, reject));\n });\n }\n statSync(p) {\n return this.realFs.statSync(this.fromPortablePath(p));\n }\n async lstatPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.lstat(p, this.makeCallback(resolve, reject));\n });\n }\n lstatSync(p) {\n return this.realFs.lstatSync(this.fromPortablePath(p));\n }\n async chmodPromise(p, mask) {\n return await new Promise((resolve, reject) => {\n this.realFs.chmod(this.fromPortablePath(p), mask, this.makeCallback(resolve, reject));\n });\n }\n chmodSync(p, mask) {\n return this.realFs.chmodSync(this.fromPortablePath(p), mask);\n }\n async renamePromise(oldP, newP) {\n return await new Promise((resolve, reject) => {\n this.realFs.rename(this.fromPortablePath(oldP), this.fromPortablePath(newP), this.makeCallback(resolve, reject));\n });\n }\n renameSync(oldP, newP) {\n return this.realFs.renameSync(this.fromPortablePath(oldP), this.fromPortablePath(newP));\n }\n async copyFilePromise(sourceP, destP, flags = 0) {\n return await new Promise((resolve, reject) => {\n this.realFs.copyFile(this.fromPortablePath(sourceP), this.fromPortablePath(destP), flags, this.makeCallback(resolve, reject));\n });\n }\n copyFileSync(sourceP, destP, flags = 0) {\n return this.realFs.copyFileSync(this.fromPortablePath(sourceP), this.fromPortablePath(destP), flags);\n }\n async writeFilePromise(p, content, opts) {\n return await new Promise((resolve, reject) => {\n if (opts) {\n this.realFs.writeFile(p, content, opts, this.makeCallback(resolve, reject));\n }\n else {\n this.realFs.writeFile(p, content, this.makeCallback(resolve, reject));\n }\n });\n }\n writeFileSync(p, content, opts) {\n if (opts) {\n this.realFs.writeFileSync(this.fromPortablePath(p), content, opts);\n }\n else {\n this.realFs.writeFileSync(this.fromPortablePath(p), content);\n }\n }\n async unlinkPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.unlink(p, this.makeCallback(resolve, reject));\n });\n }\n unlinkSync(p) {\n return this.realFs.unlinkSync(this.fromPortablePath(p));\n }\n async utimesPromise(p, atime, mtime) {\n return await new Promise((resolve, reject) => {\n this.realFs.utimes(p, atime, mtime, this.makeCallback(resolve, reject));\n });\n }\n utimesSync(p, atime, mtime) {\n this.realFs.utimesSync(p, atime, mtime);\n }\n async mkdirPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.mkdir(p, this.makeCallback(resolve, reject));\n });\n }\n mkdirSync(p) {\n return this.realFs.mkdirSync(this.fromPortablePath(p));\n }\n async rmdirPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.rmdir(p, this.makeCallback(resolve, reject));\n });\n }\n rmdirSync(p) {\n return this.realFs.rmdirSync(this.fromPortablePath(p));\n }\n async symlinkPromise(target, p) {\n return await new Promise((resolve, reject) => {\n this.realFs.symlink(target, this.fromPortablePath(p), this.makeCallback(resolve, reject));\n });\n }\n symlinkSync(target, p) {\n return this.realFs.symlinkSync(target, this.fromPortablePath(p));\n }\n async readFilePromise(p, encoding) {\n return await new Promise((resolve, reject) => {\n this.realFs.readFile(this.fromPortablePath(p), encoding, this.makeCallback(resolve, reject));\n });\n }\n readFileSync(p, encoding) {\n return this.realFs.readFileSync(this.fromPortablePath(p), encoding);\n }\n async readdirPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.readdir(p, this.makeCallback(resolve, reject));\n });\n }\n readdirSync(p) {\n return this.realFs.readdirSync(this.fromPortablePath(p));\n }\n async readlinkPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.readlink(p, this.makeCallback(resolve, reject));\n });\n }\n readlinkSync(p) {\n return this.realFs.readlinkSync(this.fromPortablePath(p));\n }\n makeCallback(resolve, reject) {\n return (err, result) => {\n if (err) {\n reject(err);\n }\n else {\n resolve(result);\n }\n };\n }\n fromPortablePath(p) {\n return p;\n }\n toPortablePath(p) {\n return p;\n }\n}\nexports.NodeFS = NodeFS;\n\n\n/***/ }),\n/* 7 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"fs\");\n\n/***/ }),\n/* 8 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst path_1 = __webpack_require__(2);\nclass FakeFS {\n resolve(p) {\n return path_1.posix.resolve(`/`, p);\n }\n async removePromise(p) {\n let stat;\n try {\n stat = await this.lstatPromise(p);\n }\n catch (error) {\n if (error.code === `ENOENT`) {\n return;\n }\n else {\n throw error;\n }\n }\n if (stat.isDirectory()) {\n for (const entry of await this.readdirPromise(p))\n await this.removePromise(path_1.posix.resolve(p, entry));\n await this.rmdirPromise(p);\n }\n else {\n await this.unlinkPromise(p);\n }\n }\n removeSync(p) {\n let stat;\n try {\n stat = this.lstatSync(p);\n }\n catch (error) {\n if (error.code === `ENOENT`) {\n return;\n }\n else {\n throw error;\n }\n }\n if (stat.isDirectory()) {\n for (const entry of this.readdirSync(p))\n this.removeSync(path_1.posix.resolve(p, entry));\n this.rmdirSync(p);\n }\n else {\n this.unlinkSync(p);\n }\n }\n async mkdirpPromise(p, { chmod, utimes } = {}) {\n p = this.resolve(p);\n if (p === `/`)\n return;\n const parts = p.split(`/`);\n for (let u = 2; u <= parts.length; ++u) {\n const subPath = parts.slice(0, u).join(`/`);\n if (!this.existsSync(subPath)) {\n try {\n await this.mkdirPromise(subPath);\n }\n catch (error) {\n if (error.code === `EEXIST`) {\n continue;\n }\n else {\n throw error;\n }\n }\n if (chmod != null)\n await this.chmodPromise(subPath, chmod);\n if (utimes != null) {\n await this.utimesPromise(subPath, utimes[0], utimes[1]);\n }\n }\n }\n }\n mkdirpSync(p, { chmod, utimes } = {}) {\n p = this.resolve(p);\n if (p === `/`)\n return;\n const parts = p.split(`/`);\n for (let u = 2; u <= parts.length; ++u) {\n const subPath = parts.slice(0, u).join(`/`);\n if (!this.existsSync(subPath)) {\n try {\n this.mkdirSync(subPath);\n }\n catch (error) {\n if (error.code === `EEXIST`) {\n continue;\n }\n else {\n throw error;\n }\n }\n if (chmod != null)\n this.chmodSync(subPath, chmod);\n if (utimes != null) {\n this.utimesSync(subPath, utimes[0], utimes[1]);\n }\n }\n }\n }\n async copyPromise(destination, source, { baseFs = this, overwrite = true } = {}) {\n const stat = await baseFs.lstatPromise(source);\n if (stat.isDirectory()) {\n await this.mkdirpPromise(destination);\n const directoryListing = await baseFs.readdirPromise(source);\n await Promise.all(directoryListing.map(entry => {\n return this.copyPromise(path_1.posix.join(destination, entry), path_1.posix.join(source, entry), { baseFs, overwrite });\n }));\n }\n else if (stat.isFile()) {\n if (!await this.existsPromise(destination) || overwrite) {\n const content = await baseFs.readFilePromise(source);\n await this.writeFilePromise(destination, content);\n }\n }\n else {\n throw new Error(`Unsupported file type (file: ${source}, mode: 0o${stat.mode.toString(8).padStart(6, `0`)})`);\n }\n const mode = stat.mode & 0o777;\n await this.chmodPromise(destination, mode);\n }\n copySync(destination, source, { baseFs = this, overwrite = true } = {}) {\n const stat = baseFs.lstatSync(source);\n if (stat.isDirectory()) {\n this.mkdirpSync(destination);\n const directoryListing = baseFs.readdirSync(source);\n for (const entry of directoryListing) {\n this.copySync(path_1.posix.join(destination, entry), path_1.posix.join(source, entry), { baseFs, overwrite });\n }\n }\n else if (stat.isFile()) {\n if (!this.existsSync(destination) || overwrite) {\n const content = baseFs.readFileSync(source);\n this.writeFileSync(destination, content);\n }\n }\n else {\n throw new Error(`Unsupported file type (file: ${source}, mode: 0o${stat.mode.toString(8).padStart(6, `0`)})`);\n }\n const mode = stat.mode & 0o777;\n this.chmodSync(destination, mode);\n }\n async changeFilePromise(p, content) {\n try {\n const current = await this.readFilePromise(p, `utf8`);\n if (current === content) {\n return;\n }\n }\n catch (error) {\n // ignore errors, no big deal\n }\n await this.writeFilePromise(p, content);\n }\n changeFileSync(p, content) {\n try {\n const current = this.readFileSync(p, `utf8`);\n if (current === content) {\n return;\n }\n }\n catch (error) {\n // ignore errors, no big deal\n }\n this.writeFileSync(p, content);\n }\n async movePromise(fromP, toP) {\n try {\n await this.renamePromise(fromP, toP);\n }\n catch (error) {\n if (error.code === `EXDEV`) {\n await this.copyPromise(toP, fromP);\n await this.removePromise(fromP);\n }\n else {\n throw error;\n }\n }\n }\n moveSync(fromP, toP) {\n try {\n this.renameSync(fromP, toP);\n }\n catch (error) {\n if (error.code === `EXDEV`) {\n this.copySync(toP, fromP);\n this.removeSync(fromP);\n }\n else {\n throw error;\n }\n }\n }\n async lockPromise(affectedPath, callback) {\n const lockPath = `${affectedPath}.lock`;\n const interval = 1000 / 60;\n const timeout = Date.now() + 60 * 1000;\n let fd = null;\n while (fd === null) {\n try {\n fd = await this.openPromise(lockPath, `wx`);\n }\n catch (error) {\n if (error.code === `EEXIST`) {\n if (Date.now() < timeout) {\n await new Promise(resolve => setTimeout(resolve, interval));\n }\n else {\n throw new Error(`Couldn't acquire a lock in a reasonable time (${timeout / 1000}s)`);\n }\n }\n else {\n throw error;\n }\n }\n }\n try {\n await callback();\n }\n finally {\n await this.closePromise(fd);\n await this.unlinkPromise(lockPath);\n }\n }\n}\nexports.FakeFS = FakeFS;\n;\n\n\n/***/ }),\n/* 9 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst FakeFS_1 = __webpack_require__(8);\nclass AliasFS extends FakeFS_1.FakeFS {\n constructor(target, { baseFs }) {\n super();\n this.target = target;\n this.baseFs = baseFs;\n }\n getRealPath() {\n return this.target;\n }\n getBaseFs() {\n return this.baseFs;\n }\n async openPromise(p, flags, mode) {\n return await this.baseFs.openPromise(p, flags, mode);\n }\n openSync(p, flags, mode) {\n return this.baseFs.openSync(p, flags, mode);\n }\n async closePromise(fd) {\n await this.baseFs.closePromise(fd);\n }\n closeSync(fd) {\n this.baseFs.closeSync(fd);\n }\n createReadStream(p, opts) {\n return this.baseFs.createReadStream(p, opts);\n }\n createWriteStream(p, opts) {\n return this.baseFs.createWriteStream(p, opts);\n }\n async realpathPromise(p) {\n return await this.baseFs.realpathPromise(p);\n }\n realpathSync(p) {\n return this.baseFs.realpathSync(p);\n }\n async existsPromise(p) {\n return await this.baseFs.existsPromise(p);\n }\n existsSync(p) {\n return this.baseFs.existsSync(p);\n }\n async statPromise(p) {\n return await this.baseFs.statPromise(p);\n }\n statSync(p) {\n return this.baseFs.statSync(p);\n }\n async lstatPromise(p) {\n return await this.baseFs.lstatPromise(p);\n }\n lstatSync(p) {\n return this.baseFs.lstatSync(p);\n }\n async chmodPromise(p, mask) {\n return await this.baseFs.chmodPromise(p, mask);\n }\n chmodSync(p, mask) {\n return this.baseFs.chmodSync(p, mask);\n }\n async renamePromise(oldP, newP) {\n return await this.baseFs.renamePromise(oldP, newP);\n }\n renameSync(oldP, newP) {\n return this.baseFs.renameSync(oldP, newP);\n }\n async copyFilePromise(sourceP, destP, flags) {\n return await this.baseFs.copyFilePromise(sourceP, destP, flags);\n }\n copyFileSync(sourceP, destP, flags) {\n return this.baseFs.copyFileSync(sourceP, destP, flags);\n }\n async writeFilePromise(p, content, opts) {\n return await this.baseFs.writeFilePromise(p, content, opts);\n }\n writeFileSync(p, content, opts) {\n return this.baseFs.writeFileSync(p, content, opts);\n }\n async unlinkPromise(p) {\n return await this.baseFs.unlinkPromise(p);\n }\n unlinkSync(p) {\n return this.baseFs.unlinkSync(p);\n }\n async utimesPromise(p, atime, mtime) {\n return await this.baseFs.utimesPromise(p, atime, mtime);\n }\n utimesSync(p, atime, mtime) {\n return this.baseFs.utimesSync(p, atime, mtime);\n }\n async mkdirPromise(p) {\n return await this.baseFs.mkdirPromise(p);\n }\n mkdirSync(p) {\n return this.baseFs.mkdirSync(p);\n }\n async rmdirPromise(p) {\n return await this.baseFs.rmdirPromise(p);\n }\n rmdirSync(p) {\n return this.baseFs.rmdirSync(p);\n }\n async symlinkPromise(target, p) {\n return await this.baseFs.symlinkPromise(target, p);\n }\n symlinkSync(target, p) {\n return this.baseFs.symlinkSync(target, p);\n }\n async readFilePromise(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return await this.baseFs.readFilePromise(p, encoding);\n default:\n return await this.baseFs.readFilePromise(p, encoding);\n }\n }\n readFileSync(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return this.baseFs.readFileSync(p, encoding);\n default:\n return this.baseFs.readFileSync(p, encoding);\n }\n }\n async readdirPromise(p) {\n return await this.baseFs.readdirPromise(p);\n }\n readdirSync(p) {\n return this.baseFs.readdirSync(p);\n }\n async readlinkPromise(p) {\n return await this.baseFs.readlinkPromise(p);\n }\n readlinkSync(p) {\n return this.baseFs.readlinkSync(p);\n }\n}\nexports.AliasFS = AliasFS;\n\n\n/***/ }),\n/* 10 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst path_1 = __webpack_require__(2);\nconst FakeFS_1 = __webpack_require__(8);\nconst NodeFS_1 = __webpack_require__(6);\nclass CwdFS extends FakeFS_1.FakeFS {\n constructor(target, { baseFs = new NodeFS_1.NodeFS() } = {}) {\n super();\n this.target = target;\n this.baseFs = baseFs;\n }\n getRealPath() {\n return path_1.posix.resolve(this.baseFs.getRealPath(), this.target);\n }\n getTarget() {\n return this.target;\n }\n getBaseFs() {\n return this.baseFs;\n }\n resolve(p) {\n return this.baseFs.resolve(this.fromCwdPath(p));\n }\n async openPromise(p, flags, mode) {\n return await this.baseFs.openPromise(this.fromCwdPath(p), flags, mode);\n }\n openSync(p, flags, mode) {\n return this.baseFs.openSync(this.fromCwdPath(p), flags, mode);\n }\n async closePromise(fd) {\n await this.baseFs.closePromise(fd);\n }\n closeSync(fd) {\n this.baseFs.closeSync(fd);\n }\n createReadStream(p, opts) {\n return this.baseFs.createReadStream(this.fromCwdPath(p), opts);\n }\n createWriteStream(p, opts) {\n return this.baseFs.createWriteStream(this.fromCwdPath(p), opts);\n }\n async realpathPromise(p) {\n return await this.baseFs.realpathPromise(this.fromCwdPath(p));\n }\n realpathSync(p) {\n return this.baseFs.realpathSync(this.fromCwdPath(p));\n }\n async existsPromise(p) {\n return await this.baseFs.existsPromise(this.fromCwdPath(p));\n }\n existsSync(p) {\n return this.baseFs.existsSync(this.fromCwdPath(p));\n }\n async statPromise(p) {\n return await this.baseFs.statPromise(this.fromCwdPath(p));\n }\n statSync(p) {\n return this.baseFs.statSync(this.fromCwdPath(p));\n }\n async lstatPromise(p) {\n return await this.baseFs.lstatPromise(this.fromCwdPath(p));\n }\n lstatSync(p) {\n return this.baseFs.lstatSync(this.fromCwdPath(p));\n }\n async chmodPromise(p, mask) {\n return await this.baseFs.chmodPromise(this.fromCwdPath(p), mask);\n }\n chmodSync(p, mask) {\n return this.baseFs.chmodSync(this.fromCwdPath(p), mask);\n }\n async renamePromise(oldP, newP) {\n return await this.baseFs.renamePromise(this.fromCwdPath(oldP), this.fromCwdPath(newP));\n }\n renameSync(oldP, newP) {\n return this.baseFs.renameSync(this.fromCwdPath(oldP), this.fromCwdPath(newP));\n }\n async copyFilePromise(sourceP, destP, flags) {\n return await this.baseFs.copyFilePromise(this.fromCwdPath(sourceP), this.fromCwdPath(destP), flags);\n }\n copyFileSync(sourceP, destP, flags) {\n return this.baseFs.copyFileSync(this.fromCwdPath(sourceP), this.fromCwdPath(destP), flags);\n }\n async writeFilePromise(p, content, opts) {\n return await this.baseFs.writeFilePromise(this.fromCwdPath(p), content, opts);\n }\n writeFileSync(p, content, opts) {\n return this.baseFs.writeFileSync(this.fromCwdPath(p), content, opts);\n }\n async unlinkPromise(p) {\n return await this.baseFs.unlinkPromise(this.fromCwdPath(p));\n }\n unlinkSync(p) {\n return this.baseFs.unlinkSync(this.fromCwdPath(p));\n }\n async utimesPromise(p, atime, mtime) {\n return await this.baseFs.utimesPromise(this.fromCwdPath(p), atime, mtime);\n }\n utimesSync(p, atime, mtime) {\n return this.baseFs.utimesSync(this.fromCwdPath(p), atime, mtime);\n }\n async mkdirPromise(p) {\n return await this.baseFs.mkdirPromise(this.fromCwdPath(p));\n }\n mkdirSync(p) {\n return this.baseFs.mkdirSync(this.fromCwdPath(p));\n }\n async rmdirPromise(p) {\n return await this.baseFs.rmdirPromise(this.fromCwdPath(p));\n }\n rmdirSync(p) {\n return this.baseFs.rmdirSync(this.fromCwdPath(p));\n }\n async symlinkPromise(target, p) {\n return await this.baseFs.symlinkPromise(target, this.fromCwdPath(p));\n }\n symlinkSync(target, p) {\n return this.baseFs.symlinkSync(target, this.fromCwdPath(p));\n }\n async readFilePromise(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return await this.baseFs.readFilePromise(this.fromCwdPath(p), encoding);\n default:\n return await this.baseFs.readFilePromise(this.fromCwdPath(p), encoding);\n }\n }\n readFileSync(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return this.baseFs.readFileSync(this.fromCwdPath(p), encoding);\n default:\n return this.baseFs.readFileSync(this.fromCwdPath(p), encoding);\n }\n }\n async readdirPromise(p) {\n return await this.baseFs.readdirPromise(this.fromCwdPath(p));\n }\n readdirSync(p) {\n return this.baseFs.readdirSync(this.fromCwdPath(p));\n }\n async readlinkPromise(p) {\n return await this.baseFs.readlinkPromise(this.fromCwdPath(p));\n }\n readlinkSync(p) {\n return this.baseFs.readlinkSync(this.fromCwdPath(p));\n }\n fromCwdPath(p) {\n return path_1.posix.resolve(this.getRealPath(), p);\n }\n}\nexports.CwdFS = CwdFS;\n\n\n/***/ }),\n/* 11 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst path_1 = __webpack_require__(2);\nconst FakeFS_1 = __webpack_require__(8);\nconst NodeFS_1 = __webpack_require__(6);\nclass JailFS extends FakeFS_1.FakeFS {\n constructor(target, { baseFs = new NodeFS_1.NodeFS() } = {}) {\n super();\n this.target = path_1.posix.resolve(`/`, target);\n this.baseFs = baseFs;\n }\n getRealPath() {\n return path_1.posix.resolve(this.baseFs.getRealPath(), path_1.posix.relative(`/`, this.target));\n }\n getTarget() {\n return this.target;\n }\n getBaseFs() {\n return this.baseFs;\n }\n async openPromise(p, flags, mode) {\n return await this.baseFs.openPromise(this.fromJailedPath(p), flags, mode);\n }\n openSync(p, flags, mode) {\n return this.baseFs.openSync(this.fromJailedPath(p), flags, mode);\n }\n async closePromise(fd) {\n await this.baseFs.closePromise(fd);\n }\n closeSync(fd) {\n this.baseFs.closeSync(fd);\n }\n createReadStream(p, opts) {\n return this.baseFs.createReadStream(this.fromJailedPath(p), opts);\n }\n createWriteStream(p, opts) {\n return this.baseFs.createWriteStream(this.fromJailedPath(p), opts);\n }\n async realpathPromise(p) {\n return this.toJailedPath(await this.baseFs.realpathPromise(this.fromJailedPath(p)));\n }\n realpathSync(p) {\n return this.toJailedPath(this.baseFs.realpathSync(this.fromJailedPath(p)));\n }\n async existsPromise(p) {\n return await this.baseFs.existsPromise(this.fromJailedPath(p));\n }\n existsSync(p) {\n return this.baseFs.existsSync(this.fromJailedPath(p));\n }\n async statPromise(p) {\n return await this.baseFs.statPromise(this.fromJailedPath(p));\n }\n statSync(p) {\n return this.baseFs.statSync(this.fromJailedPath(p));\n }\n async lstatPromise(p) {\n return await this.baseFs.lstatPromise(this.fromJailedPath(p));\n }\n lstatSync(p) {\n return this.baseFs.lstatSync(this.fromJailedPath(p));\n }\n async chmodPromise(p, mask) {\n return await this.baseFs.chmodPromise(this.fromJailedPath(p), mask);\n }\n chmodSync(p, mask) {\n return this.baseFs.chmodSync(this.fromJailedPath(p), mask);\n }\n async renamePromise(oldP, newP) {\n return await this.baseFs.renamePromise(this.fromJailedPath(oldP), this.fromJailedPath(newP));\n }\n renameSync(oldP, newP) {\n return this.baseFs.renameSync(this.fromJailedPath(oldP), this.fromJailedPath(newP));\n }\n async copyFilePromise(sourceP, destP, flags) {\n return await this.baseFs.copyFilePromise(this.fromJailedPath(sourceP), this.fromJailedPath(destP), flags);\n }\n copyFileSync(sourceP, destP, flags) {\n return this.baseFs.copyFileSync(this.fromJailedPath(sourceP), this.fromJailedPath(destP), flags);\n }\n async writeFilePromise(p, content, opts) {\n return await this.baseFs.writeFilePromise(this.fromJailedPath(p), content, opts);\n }\n writeFileSync(p, content, opts) {\n return this.baseFs.writeFileSync(this.fromJailedPath(p), content, opts);\n }\n async unlinkPromise(p) {\n return await this.baseFs.rmdirPromise(this.fromJailedPath(p));\n }\n unlinkSync(p) {\n return this.baseFs.rmdirSync(this.fromJailedPath(p));\n }\n async utimesPromise(p, atime, mtime) {\n return await this.baseFs.utimesPromise(this.fromJailedPath(p), atime, mtime);\n }\n utimesSync(p, atime, mtime) {\n return this.baseFs.utimesSync(this.fromJailedPath(p), atime, mtime);\n }\n async mkdirPromise(p) {\n return await this.baseFs.mkdirPromise(this.fromJailedPath(p));\n }\n mkdirSync(p) {\n return this.baseFs.mkdirSync(this.fromJailedPath(p));\n }\n async rmdirPromise(p) {\n return await this.baseFs.rmdirPromise(this.fromJailedPath(p));\n }\n rmdirSync(p) {\n return this.baseFs.rmdirSync(this.fromJailedPath(p));\n }\n async symlinkPromise(target, p) {\n return await this.baseFs.symlinkPromise(target, this.fromJailedPath(p));\n }\n symlinkSync(target, p) {\n return this.baseFs.symlinkSync(target, this.fromJailedPath(p));\n }\n async readFilePromise(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return await this.baseFs.readFilePromise(this.fromJailedPath(p), encoding);\n default:\n return await this.baseFs.readFilePromise(this.fromJailedPath(p), encoding);\n }\n }\n readFileSync(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return this.baseFs.readFileSync(this.fromJailedPath(p), encoding);\n default:\n return this.baseFs.readFileSync(this.fromJailedPath(p), encoding);\n }\n }\n async readdirPromise(p) {\n return await this.baseFs.readdirPromise(this.fromJailedPath(p));\n }\n readdirSync(p) {\n return this.baseFs.readdirSync(this.fromJailedPath(p));\n }\n async readlinkPromise(p) {\n return await this.baseFs.readlinkPromise(this.fromJailedPath(p));\n }\n readlinkSync(p) {\n return this.baseFs.readlinkSync(this.fromJailedPath(p));\n }\n fromJailedPath(p) {\n const normalized = path_1.posix.normalize(p);\n if (path_1.posix.isAbsolute(p))\n return path_1.posix.resolve(this.target, path_1.posix.relative(`/`, p));\n if (normalized.match(/^\\.\\.\\//))\n throw new Error(`Resolving this path (${p}) would escape the jail`);\n return path_1.posix.resolve(this.target, p);\n }\n toJailedPath(p) {\n return path_1.posix.resolve(`/`, path_1.posix.relative(this.target, p));\n }\n}\nexports.JailFS = JailFS;\n\n\n/***/ }),\n/* 12 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst libzip_1 = __importDefault(__webpack_require__(13));\nconst fs_1 = __webpack_require__(7);\nconst path_1 = __webpack_require__(2);\nconst stream_1 = __webpack_require__(16);\nconst util_1 = __webpack_require__(17);\nconst FakeFS_1 = __webpack_require__(8);\nconst NodeFS_1 = __webpack_require__(6);\nconst S_IFMT = 0o170000;\nconst S_IFDIR = 0o040000;\nconst S_IFREG = 0o100000;\nconst S_IFLNK = 0o120000;\nclass StatEntry {\n constructor() {\n this.dev = 0;\n this.ino = 0;\n this.mode = 0;\n this.nlink = 1;\n this.rdev = 0;\n this.blocks = 1;\n }\n isBlockDevice() {\n return false;\n }\n isCharacterDevice() {\n return false;\n }\n isDirectory() {\n return (this.mode & S_IFMT) === S_IFDIR;\n }\n isFIFO() {\n return false;\n }\n isFile() {\n return (this.mode & S_IFMT) === S_IFREG;\n }\n isSocket() {\n return false;\n }\n isSymbolicLink() {\n return (this.mode & S_IFMT) === S_IFLNK;\n }\n}\nfunction toUnixTimestamp(time) {\n if (typeof time === 'string' && String(+time) === time) {\n return +time;\n }\n // @ts-ignore\n if (Number.isFinite(time)) {\n if (time < 0) {\n return Date.now() / 1000;\n }\n else {\n return time;\n }\n }\n if (util_1.isDate(time)) {\n // convert to 123.456 UNIX timestamp\n // @ts-ignore\n return time.getTime() / 1000;\n }\n throw new Error(`Invalid time`);\n}\nclass ZipFS extends FakeFS_1.FakeFS {\n constructor(p, { baseFs = new NodeFS_1.NodeFS(), create = false, readOnly = false, stats } = {}) {\n super();\n this.listings = new Map();\n this.entries = new Map();\n this.ready = false;\n this.path = p;\n this.baseFs = baseFs;\n if (stats) {\n this.stats = stats;\n }\n else {\n try {\n this.stats = this.baseFs.statSync(p);\n }\n catch (error) {\n if (error.code === `ENOENT` && create) {\n this.stats = Object.assign(new StatEntry(), { uid: 0, gid: 0, size: 0, blksize: 0, atimeMs: 0, mtimeMs: 0, ctimeMs: 0, birthtimeMs: 0, atime: new Date(0), mtime: new Date(0), ctime: new Date(0), birthtime: new Date(0), mode: S_IFREG | 0o644 });\n }\n else {\n throw error;\n }\n }\n }\n const errPtr = libzip_1.default.malloc(4);\n try {\n let flags = 0;\n if (create)\n flags |= libzip_1.default.ZIP_CREATE | libzip_1.default.ZIP_TRUNCATE;\n if (readOnly)\n flags |= libzip_1.default.ZIP_RDONLY;\n this.zip = libzip_1.default.open(p, flags, errPtr);\n if (this.zip === 0) {\n const error = libzip_1.default.struct.errorS();\n libzip_1.default.error.initWithCode(error, libzip_1.default.getValue(errPtr, `i32`));\n throw new Error(libzip_1.default.error.strerror(error));\n }\n }\n finally {\n libzip_1.default.free(errPtr);\n }\n const entryCount = libzip_1.default.getNumEntries(this.zip, 0);\n this.listings.set(`/`, new Set());\n for (let t = 0; t < entryCount; ++t) {\n const raw = libzip_1.default.getName(this.zip, t, 0);\n if (path_1.posix.isAbsolute(raw))\n continue;\n const p = path_1.posix.resolve(`/`, raw);\n this.registerEntry(p, t);\n }\n this.ready = true;\n }\n getRealPath() {\n return this.path;\n }\n saveAndClose() {\n if (!this.ready)\n throw Object.assign(new Error(`EBUSY: archive closed, close`), { code: `EBUSY` });\n const previousMod = this.baseFs.existsSync(this.path)\n ? this.baseFs.statSync(this.path).mode & 0o777\n : null;\n const rc = libzip_1.default.close(this.zip);\n if (rc === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n // Libzip overrides the chmod when writing the archive, which is a weird\n // behavior I don't totally understand (plus the umask seems bogus in some\n // weird cases - maybe related to emscripten?)\n //\n // See also https://github.com/nih-at/libzip/issues/77\n if (previousMod !== null && previousMod !== (this.baseFs.statSync(this.path).mode & 0o777))\n this.baseFs.chmodSync(this.path, previousMod);\n this.ready = false;\n }\n discardAndClose() {\n libzip_1.default.discard(this.zip);\n this.ready = false;\n }\n async openPromise(p, flags, mode) {\n return this.openSync(p, flags, mode);\n }\n openSync(p, flags, mode) {\n throw new Error(`Unimplemented`);\n }\n async closePromise(fd) {\n this.closeSync(fd);\n }\n closeSync(fd) {\n throw new Error(`Unimplemented`);\n }\n createReadStream(p, { encoding } = {}) {\n const stream = Object.assign(new stream_1.PassThrough(), {\n bytesRead: 0,\n path: p,\n close: () => {\n clearImmediate(immediate);\n }\n });\n const immediate = setImmediate(() => {\n try {\n const data = this.readFileSync(p, encoding);\n stream.bytesRead = data.length;\n stream.write(data);\n stream.end();\n }\n catch (error) {\n stream.emit(`error`, error);\n stream.end();\n }\n });\n return stream;\n }\n createWriteStream(p, { encoding } = {}) {\n const stream = Object.assign(new stream_1.PassThrough(), {\n bytesWritten: 0,\n path: p,\n close: () => {\n stream.end();\n },\n });\n const chunks = [];\n stream.on(`data`, chunk => {\n const chunkBuffer = Buffer.from(chunk);\n stream.bytesWritten += chunkBuffer.length;\n chunks.push(chunkBuffer);\n });\n stream.on(`end`, () => {\n this.writeFileSync(p, Buffer.concat(chunks), encoding);\n });\n return stream;\n }\n async realpathPromise(p) {\n return this.realpathSync(p);\n }\n realpathSync(p) {\n const resolvedP = this.resolveFilename(`lstat '${p}'`, p);\n if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOENT: no such file or directory, lstat '${p}'`), { code: `ENOENT` });\n return resolvedP;\n }\n async existsPromise(p) {\n return this.existsSync(p);\n }\n existsSync(p) {\n let resolvedP;\n try {\n resolvedP = this.resolveFilename(`stat '${p}'`, p);\n }\n catch (error) {\n return false;\n }\n return this.entries.has(resolvedP) || this.listings.has(resolvedP);\n }\n async statPromise(p) {\n return this.statSync(p);\n }\n statSync(p) {\n const resolvedP = this.resolveFilename(`stat '${p}'`, p);\n if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOENT: no such file or directory, stat '${p}'`), { code: `ENOENT` });\n if (p[p.length - 1] === `/` && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOTDIR: not a directory, stat '${p}'`), { code: `ENOTDIR` });\n return this.statImpl(`stat '${p}'`, resolvedP);\n }\n async lstatPromise(p) {\n return this.lstatSync(p);\n }\n lstatSync(p) {\n const resolvedP = this.resolveFilename(`lstat '${p}'`, p, false);\n if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOENT: no such file or directory, lstat '${p}'`), { code: `ENOENT` });\n if (p[p.length - 1] === `/` && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOTDIR: not a directory, lstat '${p}'`), { code: `ENOTDIR` });\n return this.statImpl(`lstat '${p}'`, resolvedP);\n }\n statImpl(reason, p) {\n if (this.listings.has(p)) {\n const uid = this.stats.uid;\n const gid = this.stats.gid;\n const size = 0;\n const blksize = 512;\n const blocks = 0;\n const atimeMs = this.stats.mtimeMs;\n const birthtimeMs = this.stats.mtimeMs;\n const ctimeMs = this.stats.mtimeMs;\n const mtimeMs = this.stats.mtimeMs;\n const atime = new Date(atimeMs);\n const birthtime = new Date(birthtimeMs);\n const ctime = new Date(ctimeMs);\n const mtime = new Date(mtimeMs);\n const mode = S_IFDIR | 0o755;\n return Object.assign(new StatEntry(), { uid, gid, size, blksize, blocks, atime, birthtime, ctime, mtime, atimeMs, birthtimeMs, ctimeMs, mtimeMs, mode });\n }\n const entry = this.entries.get(p);\n if (entry !== undefined) {\n const stat = libzip_1.default.struct.statS();\n const rc = libzip_1.default.statIndex(this.zip, entry, 0, 0, stat);\n if (rc === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n const uid = this.stats.uid;\n const gid = this.stats.gid;\n const size = (libzip_1.default.struct.statSize(stat) >>> 0);\n const blksize = 512;\n const blocks = Math.ceil(size / blksize);\n const mtimeMs = (libzip_1.default.struct.statMtime(stat) >>> 0) * 1000;\n const atimeMs = mtimeMs;\n const birthtimeMs = mtimeMs;\n const ctimeMs = mtimeMs;\n const atime = new Date(atimeMs);\n const birthtime = new Date(birthtimeMs);\n const ctime = new Date(ctimeMs);\n const mtime = new Date(mtimeMs);\n const mode = this.getUnixMode(entry, S_IFREG | 0o644);\n return Object.assign(new StatEntry(), { uid, gid, size, blksize, blocks, atime, birthtime, ctime, mtime, atimeMs, birthtimeMs, ctimeMs, mtimeMs, mode });\n }\n throw new Error(`Unreachable`);\n }\n getUnixMode(index, defaultMode) {\n const rc = libzip_1.default.file.getExternalAttributes(this.zip, index, 0, 0, libzip_1.default.uint08S, libzip_1.default.uint32S);\n if (rc === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n const opsys = libzip_1.default.getValue(libzip_1.default.uint08S, `i8`) >>> 0;\n if (opsys !== libzip_1.default.ZIP_OPSYS_UNIX)\n return defaultMode;\n return libzip_1.default.getValue(libzip_1.default.uint32S, `i32`) >>> 16;\n }\n registerListing(p) {\n let listing = this.listings.get(p);\n if (listing)\n return listing;\n const parentListing = this.registerListing(path_1.posix.dirname(p));\n listing = new Set();\n parentListing.add(path_1.posix.basename(p));\n this.listings.set(p, listing);\n return listing;\n }\n registerEntry(p, index) {\n const parentListing = this.registerListing(path_1.posix.dirname(p));\n parentListing.add(path_1.posix.basename(p));\n this.entries.set(p, index);\n }\n resolveFilename(reason, p, resolveLastComponent = true) {\n if (!this.ready)\n throw Object.assign(new Error(`EBUSY: archive closed, ${reason}`), { code: `EBUSY` });\n let resolvedP = path_1.posix.resolve(`/`, p);\n if (resolvedP === `/`)\n return `/`;\n while (true) {\n const parentP = this.resolveFilename(reason, path_1.posix.dirname(resolvedP), true);\n const isDir = this.listings.has(parentP);\n const doesExist = this.entries.has(parentP);\n if (!isDir && !doesExist)\n throw Object.assign(new Error(`ENOENT: no such file or directory, ${reason}`), { code: `ENOENT` });\n if (!isDir)\n throw Object.assign(new Error(`ENOTDIR: not a directory, ${reason}`), { code: `ENOTDIR` });\n resolvedP = path_1.posix.resolve(parentP, path_1.posix.basename(resolvedP));\n if (!resolveLastComponent)\n break;\n const index = libzip_1.default.name.locate(this.zip, resolvedP);\n if (index === -1)\n break;\n if (this.isSymbolicLink(index)) {\n const target = this.getFileSource(index).toString();\n resolvedP = path_1.posix.resolve(path_1.posix.dirname(resolvedP), target);\n }\n else {\n break;\n }\n }\n return resolvedP;\n }\n setFileSource(p, content) {\n if (!Buffer.isBuffer(content))\n content = Buffer.from(content);\n const buffer = libzip_1.default.malloc(content.byteLength);\n if (!buffer)\n throw new Error(`Couldn't allocate enough memory`);\n // Copy the file into the Emscripten heap\n const heap = new Uint8Array(libzip_1.default.HEAPU8.buffer, buffer, content.byteLength);\n heap.set(content);\n const source = libzip_1.default.source.fromBuffer(this.zip, buffer, content.byteLength, 0, true);\n if (source === 0) {\n libzip_1.default.free(buffer);\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n }\n return libzip_1.default.file.add(this.zip, path_1.posix.relative(`/`, p), source, libzip_1.default.ZIP_FL_OVERWRITE);\n }\n isSymbolicLink(index) {\n const attrs = libzip_1.default.file.getExternalAttributes(this.zip, index, 0, 0, libzip_1.default.uint08S, libzip_1.default.uint32S);\n if (attrs === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n const opsys = libzip_1.default.getValue(libzip_1.default.uint08S, `i8`) >>> 0;\n if (opsys !== libzip_1.default.ZIP_OPSYS_UNIX)\n return false;\n const attributes = libzip_1.default.getValue(libzip_1.default.uint32S, `i32`) >>> 16;\n return (attributes & S_IFMT) === S_IFLNK;\n }\n getFileSource(index) {\n const stat = libzip_1.default.struct.statS();\n const rc = libzip_1.default.statIndex(this.zip, index, 0, 0, stat);\n if (rc === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n const size = libzip_1.default.struct.statSize(stat);\n const buffer = libzip_1.default.malloc(size);\n try {\n const file = libzip_1.default.fopenIndex(this.zip, index, 0, 0);\n if (file === 0)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n try {\n const rc = libzip_1.default.fread(file, buffer, size, 0);\n if (rc === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.file.getError(file)));\n else if (rc < size)\n throw new Error(`Incomplete read`);\n else if (rc > size)\n throw new Error(`Overread`);\n const memory = libzip_1.default.HEAPU8.subarray(buffer, buffer + size);\n const data = Buffer.from(memory);\n return data;\n }\n finally {\n libzip_1.default.fclose(file);\n }\n }\n finally {\n libzip_1.default.free(buffer);\n }\n }\n async chmodPromise(p, mask) {\n return this.chmodSync(p, mask);\n }\n chmodSync(p, mask) {\n const resolvedP = this.resolveFilename(`chmod '${p}'`, p, false);\n if (this.listings.has(resolvedP)) {\n if ((mask & 0o755) === 0o755) {\n return;\n }\n else {\n throw Object.assign(new Error(`EISDIR: illegal operation on a directory, chmod '${p}'`), { code: `EISDIR` });\n }\n }\n const entry = this.entries.get(resolvedP);\n if (entry === undefined)\n throw new Error(`Unreachable`);\n const oldMod = this.getUnixMode(entry, S_IFREG | 0o000);\n const newMod = oldMod & (~0o777) | mask;\n const rc = libzip_1.default.file.setExternalAttributes(this.zip, entry, 0, 0, libzip_1.default.ZIP_OPSYS_UNIX, newMod << 16);\n if (rc === -1) {\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n }\n }\n async renamePromise(oldP, newP) {\n return this.renameSync(oldP, newP);\n }\n renameSync(oldP, newP) {\n throw new Error(`Unimplemented`);\n }\n async copyFilePromise(sourceP, destP, flags) {\n return this.copyFileSync(sourceP, destP, flags);\n }\n copyFileSync(sourceP, destP, flags = 0) {\n if ((flags & fs_1.constants.COPYFILE_FICLONE_FORCE) !== 0)\n throw Object.assign(new Error(`ENOSYS: unsupported clone operation, copyfile '${sourceP}' -> ${destP}'`), { code: `ENOSYS` });\n const resolvedSourceP = this.resolveFilename(`copyfile '${sourceP} -> ${destP}'`, sourceP);\n const indexSource = this.entries.get(resolvedSourceP);\n if (typeof indexSource === `undefined`)\n throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${sourceP}' -> '${destP}'`), { code: `EINVAL` });\n const resolvedDestP = this.resolveFilename(`copyfile '${sourceP}' -> ${destP}'`, destP);\n const indexDest = this.entries.get(resolvedDestP);\n if ((flags & (fs_1.constants.COPYFILE_EXCL | fs_1.constants.COPYFILE_FICLONE_FORCE)) !== 0 && typeof indexDest !== `undefined`)\n throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${sourceP}' -> '${destP}'`), { code: `EEXIST` });\n const source = this.getFileSource(indexSource);\n const newIndex = this.setFileSource(resolvedDestP, source);\n if (newIndex !== indexDest) {\n this.registerEntry(resolvedDestP, newIndex);\n }\n }\n async writeFilePromise(p, content, opts) {\n return this.writeFileSync(p, content, opts);\n }\n writeFileSync(p, content, opts) {\n const resolvedP = this.resolveFilename(`open '${p}'`, p);\n if (this.listings.has(resolvedP))\n throw Object.assign(new Error(`EISDIR: illegal operation on a directory, open '${p}'`), { code: `EISDIR` });\n const index = this.entries.get(resolvedP);\n if (index !== undefined && typeof opts === `object` && opts.flag && opts.flag.includes(`a`))\n content = Buffer.concat([this.getFileSource(index), Buffer.from(content)]);\n let encoding = null;\n if (typeof opts === `string`)\n encoding = opts;\n else if (typeof opts === `object` && opts.encoding)\n encoding = opts.encoding;\n if (encoding !== null)\n content = content.toString(encoding);\n const newIndex = this.setFileSource(resolvedP, content);\n if (newIndex !== index) {\n this.registerEntry(resolvedP, newIndex);\n }\n }\n async unlinkPromise(p) {\n return this.unlinkSync(p);\n }\n unlinkSync(p) {\n throw new Error(`Unimplemented`);\n }\n async utimesPromise(p, atime, mtime) {\n return this.utimesSync(p, atime, mtime);\n }\n utimesSync(p, atime, mtime) {\n const resolvedP = this.resolveFilename(`chmod '${p}'`, p);\n return this.utimesImpl(resolvedP, mtime);\n }\n async lutimesPromise(p, atime, mtime) {\n return this.lutimesSync(p, atime, mtime);\n }\n lutimesSync(p, atime, mtime) {\n const resolvedP = this.resolveFilename(`chmod '${p}'`, p, false);\n return this.utimesImpl(resolvedP, mtime);\n }\n utimesImpl(resolvedP, mtime) {\n if (this.listings.has(resolvedP))\n if (!this.entries.has(resolvedP))\n this.hydrateDirectory(resolvedP);\n const entry = this.entries.get(resolvedP);\n if (entry === undefined)\n throw new Error(`Unreachable`);\n const rc = libzip_1.default.file.setMtime(this.zip, entry, 0, toUnixTimestamp(mtime), 0);\n if (rc === -1) {\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n }\n }\n async mkdirPromise(p) {\n return this.mkdirSync(p);\n }\n mkdirSync(p) {\n const resolvedP = this.resolveFilename(`mkdir '${p}'`, p);\n if (this.entries.has(resolvedP) || this.listings.has(resolvedP))\n throw Object.assign(new Error(`EEXIST: file already exists, mkdir '${p}'`), { code: `EEXIST` });\n this.hydrateDirectory(resolvedP);\n }\n async rmdirPromise(p) {\n return this.rmdirSync(p);\n }\n rmdirSync(p) {\n throw new Error(`Unimplemented`);\n }\n hydrateDirectory(resolvedP) {\n const index = libzip_1.default.dir.add(this.zip, path_1.posix.relative(`/`, resolvedP));\n if (index === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n this.registerListing(resolvedP);\n this.registerEntry(resolvedP, index);\n return index;\n }\n async symlinkPromise(target, p) {\n return this.symlinkSync(target, p);\n }\n symlinkSync(target, p) {\n const resolvedP = this.resolveFilename(`symlink '${target}' -> '${p}'`, p);\n if (this.listings.has(resolvedP))\n throw Object.assign(new Error(`EISDIR: illegal operation on a directory, symlink '${target}' -> '${p}'`), { code: `EISDIR` });\n if (this.entries.has(resolvedP))\n throw Object.assign(new Error(`EEXIST: file already exists, symlink '${target}' -> '${p}'`), { code: `EEXIST` });\n const index = this.setFileSource(resolvedP, target);\n this.registerEntry(resolvedP, index);\n const rc = libzip_1.default.file.setExternalAttributes(this.zip, index, 0, 0, libzip_1.default.ZIP_OPSYS_UNIX, (0o120000 | 0o777) << 16);\n if (rc === -1) {\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n }\n }\n async readFilePromise(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return this.readFileSync(p, encoding);\n default:\n return this.readFileSync(p, encoding);\n }\n }\n readFileSync(p, encoding) {\n // This is messed up regarding the TS signatures\n if (typeof encoding === `object`)\n // @ts-ignore\n encoding = encoding ? encoding.encoding : undefined;\n const resolvedP = this.resolveFilename(`open '${p}'`, p);\n if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOENT: no such file or directory, open '${p}'`), { code: `ENOENT` });\n // Ensures that the last component is a directory, if the user said so (even if it is we'll throw right after with EISDIR anyway)\n if (p[p.length - 1] === `/` && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOTDIR: not a directory, open '${p}'`), { code: `ENOTDIR` });\n if (this.listings.has(resolvedP))\n throw Object.assign(new Error(`EISDIR: illegal operation on a directory, read`), { code: `EISDIR` });\n const entry = this.entries.get(resolvedP);\n if (entry === undefined)\n throw new Error(`Unreachable`);\n const data = this.getFileSource(entry);\n return encoding ? data.toString(encoding) : data;\n }\n async readdirPromise(p) {\n return this.readdirSync(p);\n }\n readdirSync(p) {\n const resolvedP = this.resolveFilename(`scandir '${p}'`, p);\n if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOENT: no such file or directory, scandir '${p}'`), { code: `ENOENT` });\n const directoryListing = this.listings.get(resolvedP);\n if (!directoryListing)\n throw Object.assign(new Error(`ENOTDIR: not a directory, scandir '${p}'`), { code: `ENOTDIR` });\n return Array.from(directoryListing);\n }\n async readlinkPromise(p) {\n return this.readlinkSync(p);\n }\n readlinkSync(p) {\n const resolvedP = this.resolveFilename(`readlink '${p}'`, p, false);\n if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOENT: no such file or directory, readlink '${p}'`), { code: `ENOENT` });\n // Ensure that the last component is a directory (if it is we'll throw right after with EISDIR anyway)\n if (p[p.length - 1] === `/` && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOTDIR: not a directory, open '${p}'`), { code: `ENOTDIR` });\n if (this.listings.has(resolvedP))\n throw Object.assign(new Error(`EINVAL: invalid argument, readlink '${p}'`), { code: `EINVAL` });\n const entry = this.entries.get(resolvedP);\n if (entry === undefined)\n throw new Error(`Unreachable`);\n const rc = libzip_1.default.file.getExternalAttributes(this.zip, entry, 0, 0, libzip_1.default.uint08S, libzip_1.default.uint32S);\n if (rc === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n const opsys = libzip_1.default.getValue(libzip_1.default.uint08S, `i8`) >>> 0;\n if (opsys !== libzip_1.default.ZIP_OPSYS_UNIX)\n throw Object.assign(new Error(`EINVAL: invalid argument, readlink '${p}'`), { code: `EINVAL` });\n const attributes = libzip_1.default.getValue(libzip_1.default.uint32S, `i32`) >>> 16;\n if ((attributes & 0o170000) !== 0o120000)\n throw Object.assign(new Error(`EINVAL: invalid argument, readlink '${p}'`), { code: `EINVAL` });\n return this.getFileSource(entry).toString();\n }\n}\nexports.ZipFS = ZipFS;\n;\n\n\n/***/ }),\n/* 13 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst libzip_1 = __importDefault(__webpack_require__(14));\nconst number64 = [\n `number`,\n `number`,\n];\nexports.default = {\n // Those are getters because they can change after memory growth\n get HEAP8() { return libzip_1.default.HEAP8; },\n get HEAPU8() { return libzip_1.default.HEAPU8; },\n ZIP_CHECKCONS: 4,\n ZIP_CREATE: 1,\n ZIP_EXCL: 2,\n ZIP_TRUNCATE: 8,\n ZIP_RDONLY: 16,\n ZIP_FL_OVERWRITE: 8192,\n ZIP_OPSYS_DOS: 0x00,\n ZIP_OPSYS_AMIGA: 0x01,\n ZIP_OPSYS_OPENVMS: 0x02,\n ZIP_OPSYS_UNIX: 0x03,\n ZIP_OPSYS_VM_CMS: 0x04,\n ZIP_OPSYS_ATARI_ST: 0x05,\n ZIP_OPSYS_OS_2: 0x06,\n ZIP_OPSYS_MACINTOSH: 0x07,\n ZIP_OPSYS_Z_SYSTEM: 0x08,\n ZIP_OPSYS_CPM: 0x09,\n ZIP_OPSYS_WINDOWS_NTFS: 0x0a,\n ZIP_OPSYS_MVS: 0x0b,\n ZIP_OPSYS_VSE: 0x0c,\n ZIP_OPSYS_ACORN_RISC: 0x0d,\n ZIP_OPSYS_VFAT: 0x0e,\n ZIP_OPSYS_ALTERNATE_MVS: 0x0f,\n ZIP_OPSYS_BEOS: 0x10,\n ZIP_OPSYS_TANDEM: 0x11,\n ZIP_OPSYS_OS_400: 0x12,\n ZIP_OPSYS_OS_X: 0x13,\n uint08S: libzip_1.default._malloc(1),\n uint16S: libzip_1.default._malloc(2),\n uint32S: libzip_1.default._malloc(4),\n uint64S: libzip_1.default._malloc(8),\n malloc: libzip_1.default._malloc,\n free: libzip_1.default._free,\n getValue: libzip_1.default.getValue,\n open: libzip_1.default.cwrap(`zip_open`, `number`, [`string`, `number`, `number`]),\n close: libzip_1.default.cwrap(`zip_close`, `number`, [`number`]),\n discard: libzip_1.default.cwrap(`zip_discard`, `void`, [`number`]),\n getError: libzip_1.default.cwrap(`zip_get_error`, `number`, [`number`]),\n getName: libzip_1.default.cwrap(`zip_get_name`, `string`, [`number`, `number`, `number`]),\n getNumEntries: libzip_1.default.cwrap(`zip_get_num_entries`, `number`, [`number`, `number`]),\n stat: libzip_1.default.cwrap(`zip_stat`, `number`, [`number`, `string`, `number`, `number`]),\n statIndex: libzip_1.default.cwrap(`zip_stat_index`, `number`, [`number`, ...number64, `number`, `number`]),\n fopen: libzip_1.default.cwrap(`zip_fopen`, `number`, [`number`, `string`, `number`]),\n fopenIndex: libzip_1.default.cwrap(`zip_fopen_index`, `number`, [`number`, ...number64, `number`]),\n fread: libzip_1.default.cwrap(`zip_fread`, `number`, [`number`, `number`, `number`, `number`]),\n fclose: libzip_1.default.cwrap(`zip_fclose`, `number`, [`number`]),\n dir: {\n add: libzip_1.default.cwrap(`zip_dir_add`, `number`, [`number`, `string`]),\n },\n file: {\n add: libzip_1.default.cwrap(`zip_file_add`, `number`, [`number`, `string`, `number`, `number`]),\n getError: libzip_1.default.cwrap(`zip_file_get_error`, `number`, [`number`]),\n getExternalAttributes: libzip_1.default.cwrap(`zip_file_get_external_attributes`, `number`, [`number`, ...number64, `number`, `number`, `number`]),\n setExternalAttributes: libzip_1.default.cwrap(`zip_file_set_external_attributes`, `number`, [`number`, ...number64, `number`, `number`, `number`]),\n setMtime: libzip_1.default.cwrap(`zip_file_set_mtime`, `number`, [`number`, ...number64, `number`, `number`]),\n },\n error: {\n initWithCode: libzip_1.default.cwrap(`zip_error_init_with_code`, `void`, [`number`, `number`]),\n strerror: libzip_1.default.cwrap(`zip_error_strerror`, `string`, [`number`]),\n },\n name: {\n locate: libzip_1.default.cwrap(`zip_name_locate`, `number`, [`number`, `string`, `number`]),\n },\n source: {\n fromBuffer: libzip_1.default.cwrap(`zip_source_buffer`, `number`, [`number`, `number`, ...number64, `number`]),\n },\n struct: {\n stat: libzip_1.default.cwrap(`zipstruct_stat`, `number`, []),\n statS: libzip_1.default.cwrap(`zipstruct_statS`, `number`, []),\n statName: libzip_1.default.cwrap(`zipstruct_stat_name`, `string`, [`number`]),\n statIndex: libzip_1.default.cwrap(`zipstruct_stat_index`, `number`, [`number`]),\n statSize: libzip_1.default.cwrap(`zipstruct_stat_size`, `number`, [`number`]),\n statMtime: libzip_1.default.cwrap(`zipstruct_stat_mtime`, `number`, [`number`]),\n error: libzip_1.default.cwrap(`zipstruct_error`, `number`, []),\n errorS: libzip_1.default.cwrap(`zipstruct_errorS`, `number`, []),\n },\n};\n\n\n/***/ }),\n/* 14 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar frozenFs = Object.assign({}, __webpack_require__(7));\nvar Module=typeof Module!==\"undefined\"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module[\"arguments\"]=[];Module[\"thisProgram\"]=\"./this.program\";Module[\"quit\"]=(function(status,toThrow){throw toThrow});Module[\"preRun\"]=[];Module[\"postRun\"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=true;if(Module[\"ENVIRONMENT\"]){throw new Error(\"Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)\")}var scriptDirectory=\"\";function locateFile(path){if(Module[\"locateFile\"]){return Module[\"locateFile\"](path,scriptDirectory)}else{return scriptDirectory+path}}if(ENVIRONMENT_IS_NODE){if(!(typeof process===\"object\"&&\"function\"===\"function\"))throw new Error(\"not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)\");scriptDirectory=__dirname+\"/\";var nodeFS;var nodePath;Module[\"read\"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=frozenFs;if(!nodePath)nodePath=__webpack_require__(2);filename=nodePath[\"normalize\"](filename);ret=nodeFS[\"readFileSync\"](filename)}return binary?ret:ret.toString()};Module[\"readBinary\"]=function readBinary(filename){var ret=Module[\"read\"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process[\"argv\"].length>1){Module[\"thisProgram\"]=process[\"argv\"][1].replace(/\\\\/g,\"/\")}Module[\"arguments\"]=process[\"argv\"].slice(2);if(true){module[\"exports\"]=Module}(function(){})(\"uncaughtException\",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));(function(){})(\"unhandledRejection\",abort);Module[\"quit\"]=(function(status){process[\"exit\"](status)});Module[\"inspect\"]=(function(){return\"[Emscripten Module object]\"})}else{throw new Error(\"environment detection error\")}var out=Module[\"print\"]||(typeof console!==\"undefined\"?console.log.bind(console):typeof print!==\"undefined\"?print:null);var err=Module[\"printErr\"]||(typeof printErr!==\"undefined\"?printErr:typeof console!==\"undefined\"&&console.warn.bind(console)||out);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;assert(typeof Module[\"memoryInitializerPrefixURL\"]===\"undefined\",\"Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead\");assert(typeof Module[\"pthreadMainPrefixURL\"]===\"undefined\",\"Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead\");assert(typeof Module[\"cdInitializerPrefixURL\"]===\"undefined\",\"Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead\");assert(typeof Module[\"filePackagePrefixURL\"]===\"undefined\",\"Module.filePackagePrefixURL option was removed, use Module.locateFile instead\");stackSave=stackRestore=stackAlloc=(function(){abort(\"cannot use the stack before compiled code is ready to run, and has provided stack access\")});function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function getNativeTypeSize(type){switch(type){case\"i1\":case\"i8\":return 1;case\"i16\":return 2;case\"i32\":return 4;case\"i64\":return 8;case\"float\":return 4;case\"double\":return 8;default:{if(type[type.length-1]===\"*\"){return 4}else if(type[0]===\"i\"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}var asm2wasmImports={\"f64-rem\":(function(x,y){return x%y}),\"debugger\":(function(){debugger})};var functionPointers=new Array(0);var tempRet0=0;var setTempRet0=(function(value){tempRet0=value});var GLOBAL_BASE=1024;function getSafeHeapType(bytes,isFloat){switch(bytes){case 1:return\"i8\";case 2:return\"i16\";case 4:return isFloat?\"float\":\"i32\";case 8:return\"double\";default:assert(0)}}function SAFE_HEAP_STORE(dest,value,bytes,isFloat){if(dest<=0)abort(\"segmentation fault storing \"+bytes+\" bytes to address \"+dest);if(dest%bytes!==0)abort(\"alignment error storing to address \"+dest+\", which was expected to be aligned to a multiple of \"+bytes);if(dest+bytes>HEAP32[DYNAMICTOP_PTR>>2])abort(\"segmentation fault, exceeded the top of the available dynamic heap when storing \"+bytes+\" bytes to address \"+dest+\". DYNAMICTOP=\"+HEAP32[DYNAMICTOP_PTR>>2]);assert(DYNAMICTOP_PTR);assert(HEAP32[DYNAMICTOP_PTR>>2]<=TOTAL_MEMORY);setValue(dest,value,getSafeHeapType(bytes,isFloat),1)}function SAFE_HEAP_STORE_D(dest,value,bytes){SAFE_HEAP_STORE(dest,value,bytes,true)}function SAFE_HEAP_LOAD(dest,bytes,unsigned,isFloat){if(dest<=0)abort(\"segmentation fault loading \"+bytes+\" bytes from address \"+dest);if(dest%bytes!==0)abort(\"alignment error loading from address \"+dest+\", which was expected to be aligned to a multiple of \"+bytes);if(dest+bytes>HEAP32[DYNAMICTOP_PTR>>2])abort(\"segmentation fault, exceeded the top of the available dynamic heap when loading \"+bytes+\" bytes from address \"+dest+\". DYNAMICTOP=\"+HEAP32[DYNAMICTOP_PTR>>2]);assert(DYNAMICTOP_PTR);assert(HEAP32[DYNAMICTOP_PTR>>2]<=TOTAL_MEMORY);var type=getSafeHeapType(bytes,isFloat);var ret=getValue(dest,type,1);if(unsigned)ret=unSign(ret,parseInt(type.substr(1)),1);return ret}function SAFE_HEAP_LOAD_D(dest,bytes,unsigned){return SAFE_HEAP_LOAD(dest,bytes,unsigned,true)}function segfault(){abort(\"segmentation fault\")}function alignfault(){abort(\"alignment fault\")}var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort(\"Assertion failed: \"+text)}}function getCFunc(ident){var func=Module[\"_\"+ident];assert(func,\"Cannot call unknown function \"+ident+\", make sure it is exported\");return func}var JSfuncs={\"stackSave\":(function(){stackSave()}),\"stackRestore\":(function(){stackRestore()}),\"arrayToC\":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),\"stringToC\":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={\"string\":JSfuncs[\"stringToC\"],\"array\":JSfuncs[\"arrayToC\"]};function ccall(ident,returnType,argTypes,args,opts){function convertReturnValue(ret){if(returnType===\"string\")return Pointer_stringify(ret);if(returnType===\"boolean\")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;assert(returnType!==\"array\",'Return type should not be \"array\".');if(args){for(var i=0;i>0]=value;break;case\"i8\":HEAP8[ptr>>0]=value;break;case\"i16\":HEAP16[ptr>>1]=value;break;case\"i32\":HEAP32[ptr>>2]=value;break;case\"i64\":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case\"float\":HEAPF32[ptr>>2]=value;break;case\"double\":HEAPF64[ptr>>3]=value;break;default:abort(\"invalid type for setValue: \"+type)}}else{switch(type){case\"i1\":SAFE_HEAP_STORE(ptr|0,value|0,1);break;case\"i8\":SAFE_HEAP_STORE(ptr|0,value|0,1);break;case\"i16\":SAFE_HEAP_STORE(ptr|0,value|0,2);break;case\"i32\":SAFE_HEAP_STORE(ptr|0,value|0,4);break;case\"i64\":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/4294967296)>>>0:0)],SAFE_HEAP_STORE(ptr|0,tempI64[0]|0,4),SAFE_HEAP_STORE(ptr+4|0,tempI64[1]|0,4);break;case\"float\":SAFE_HEAP_STORE_D(ptr|0,Math_fround(value),4);break;case\"double\":SAFE_HEAP_STORE_D(ptr|0,+value,8);break;default:abort(\"invalid type for setValue: \"+type)}}}function getValue(ptr,type,noSafe){type=type||\"i8\";if(type.charAt(type.length-1)===\"*\")type=\"i32\";if(noSafe){switch(type){case\"i1\":return HEAP8[ptr>>0];case\"i8\":return HEAP8[ptr>>0];case\"i16\":return HEAP16[ptr>>1];case\"i32\":return HEAP32[ptr>>2];case\"i64\":return HEAP32[ptr>>2];case\"float\":return HEAPF32[ptr>>2];case\"double\":return HEAPF64[ptr>>3];default:abort(\"invalid type for getValue: \"+type)}}else{switch(type){case\"i1\":return SAFE_HEAP_LOAD(ptr|0,1,0)|0;case\"i8\":return SAFE_HEAP_LOAD(ptr|0,1,0)|0;case\"i16\":return SAFE_HEAP_LOAD(ptr|0,2,0)|0;case\"i32\":return SAFE_HEAP_LOAD(ptr|0,4,0)|0;case\"i64\":return SAFE_HEAP_LOAD(ptr|0,8,0)|0;case\"float\":return Math_fround(SAFE_HEAP_LOAD_D(ptr|0,4,0));case\"double\":return+SAFE_HEAP_LOAD_D(ptr|0,8,0);default:abort(\"invalid type for getValue: \"+type)}}return null}var ALLOC_NORMAL=0;var ALLOC_NONE=3;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab===\"number\"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types===\"string\"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[_malloc,stackAlloc,dynamicAlloc][allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType===\"i8\"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!==\"undefined\"?new TextDecoder(\"utf8\"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str=\"\";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){assert(typeof maxBytesToWrite==\"number\",\"stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!\");return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!==\"undefined\"?new TextDecoder(\"utf-16le\"):undefined;function demangle(func){warnOnce(\"warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling\");return func}function demangleAll(text){var regex=/__Z[\\w\\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:y+\" [\"+x+\"]\"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return\"(no stack trace available)\"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module[\"extraStackTrace\"])js+=\"\\n\"+Module[\"extraStackTrace\"]();return demangleAll(js)}var WASM_PAGE_SIZE=65536;var MIN_TOTAL_MEMORY=16777216;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBuffer(buf){Module[\"buffer\"]=buffer=buf}function updateGlobalBufferViews(){Module[\"HEAP8\"]=HEAP8=new Int8Array(buffer);Module[\"HEAP16\"]=HEAP16=new Int16Array(buffer);Module[\"HEAP32\"]=HEAP32=new Int32Array(buffer);Module[\"HEAPU8\"]=HEAPU8=new Uint8Array(buffer);Module[\"HEAPU16\"]=HEAPU16=new Uint16Array(buffer);Module[\"HEAPU32\"]=HEAPU32=new Uint32Array(buffer);Module[\"HEAPF32\"]=HEAPF32=new Float32Array(buffer);Module[\"HEAPF64\"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE=1024,STACK_BASE=22720,STACK_MAX=5265600,DYNAMIC_BASE=5265600,DYNAMICTOP_PTR=22464;assert(STACK_BASE%16===0,\"stack must start aligned\");assert(DYNAMIC_BASE%16===0,\"heap must start aligned\");function writeStackCookie(){assert((STACK_MAX&3)==0);HEAPU32[(STACK_MAX>>2)-1]=34821223;HEAPU32[(STACK_MAX>>2)-2]=2310721022}function checkStackCookie(){if(HEAPU32[(STACK_MAX>>2)-1]!=34821223||HEAPU32[(STACK_MAX>>2)-2]!=2310721022){abort(\"Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x\"+HEAPU32[(STACK_MAX>>2)-2].toString(16)+\" \"+HEAPU32[(STACK_MAX>>2)-1].toString(16))}if(HEAP32[0]!==1668509029)throw\"Runtime error: The application has corrupted its heap memory area (address zero)!\"}function abortStackOverflow(allocSize){abort(\"Stack overflow! Attempted to allocate \"+allocSize+\" bytes on the stack, but stack has only \"+(STACK_MAX-stackSave()+allocSize)+\" bytes available!\")}function abortOnCannotGrowMemory(){abort(\"Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value \"+TOTAL_MEMORY+\", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 \")}function enlargeMemory(){assert(HEAP32[DYNAMICTOP_PTR>>2]>TOTAL_MEMORY);var PAGE_MULTIPLE=65536;var LIMIT=2147483648-PAGE_MULTIPLE;if(HEAP32[DYNAMICTOP_PTR>>2]>LIMIT){err(\"Cannot enlarge memory, asked to go up to \"+HEAP32[DYNAMICTOP_PTR>>2]+\" bytes, but the limit is \"+LIMIT+\" bytes!\");return false}var OLD_TOTAL_MEMORY=TOTAL_MEMORY;TOTAL_MEMORY=Math.max(TOTAL_MEMORY,MIN_TOTAL_MEMORY);while(TOTAL_MEMORY>2]){if(TOTAL_MEMORY<=536870912){TOTAL_MEMORY=alignUp(2*TOTAL_MEMORY,PAGE_MULTIPLE)}else{TOTAL_MEMORY=Math.min(alignUp((3*TOTAL_MEMORY+2147483648)/4,PAGE_MULTIPLE),LIMIT);if(TOTAL_MEMORY===OLD_TOTAL_MEMORY){warnOnce(\"Cannot ask for more memory since we reached the practical limit in browsers (which is just below 2GB), so the request would have failed. Requesting only \"+TOTAL_MEMORY)}}}var start=Date.now();var replacement=Module[\"reallocBuffer\"](TOTAL_MEMORY);if(!replacement||replacement.byteLength!=TOTAL_MEMORY){err(\"Failed to grow the heap from \"+OLD_TOTAL_MEMORY+\" bytes to \"+TOTAL_MEMORY+\" bytes, not enough memory!\");if(replacement){err(\"Expected to get back a buffer of size \"+TOTAL_MEMORY+\" bytes, but instead got back a buffer of size \"+replacement.byteLength)}TOTAL_MEMORY=OLD_TOTAL_MEMORY;return false}updateGlobalBuffer(replacement);updateGlobalBufferViews();return true}var byteLength;try{byteLength=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,\"byteLength\").get);byteLength(new ArrayBuffer(4))}catch(e){byteLength=(function(buffer){return buffer.byteLength})}var TOTAL_STACK=5242880;if(Module[\"TOTAL_STACK\"])assert(TOTAL_STACK===Module[\"TOTAL_STACK\"],\"the stack size can no longer be determined at runtime\");var TOTAL_MEMORY=Module[\"TOTAL_MEMORY\"]||16777216;if(TOTAL_MEMORY>2]=DYNAMIC_BASE;function getTotalMemory(){return TOTAL_MEMORY}HEAP32[0]=1668509029;HEAP16[1]=25459;if(HEAPU8[2]!==115||HEAPU8[3]!==99)throw\"Runtime error: expected the system to be little-endian!\";function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback==\"function\"){callback();continue}var func=callback.func;if(typeof func===\"number\"){if(callback.arg===undefined){Module[\"dynCall_v\"](func)}else{Module[\"dynCall_vi\"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module[\"preRun\"]){if(typeof Module[\"preRun\"]==\"function\")Module[\"preRun\"]=[Module[\"preRun\"]];while(Module[\"preRun\"].length){addOnPreRun(Module[\"preRun\"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){checkStackCookie();if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){checkStackCookie();callRuntimeCallbacks(__ATMAIN__)}function postRun(){checkStackCookie();if(Module[\"postRun\"]){if(typeof Module[\"postRun\"]==\"function\")Module[\"postRun\"]=[Module[\"postRun\"]];while(Module[\"postRun\"].length){addOnPostRun(Module[\"postRun\"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}function writeArrayToMemory(array,buffer){assert(array.length>=0,\"writeArrayToMemory array must have a length (should be an array or typed array)\");HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i=0){return value}return bits<=32?2*Math.abs(1<=0){err(\"Memory size incompatibility issues may be due to changing TOTAL_MEMORY at runtime to something too large. Use ALLOW_MEMORY_GROWTH to allow any size memory (and also make sure not to set TOTAL_MEMORY at runtime to something smaller than it was at compile time).\")}return false}receiveInstance(instance,module);return exports}Module[\"asmPreload\"]=Module[\"asm\"];var wasmReallocBuffer=(function(size){var PAGE_MULTIPLE=65536;size=alignUp(size,PAGE_MULTIPLE);var old=Module[\"buffer\"];var oldSize=old.byteLength;try{var result=Module[\"wasmMemory\"].grow((size-oldSize)/wasmPageSize);if(result!==(-1|0)){return Module[\"buffer\"]=Module[\"wasmMemory\"].buffer}else{return null}}catch(e){console.error(\"Module.reallocBuffer: Attempted to grow from \"+oldSize+\" bytes to \"+size+\" bytes, but got error: \"+e);return null}});Module[\"reallocBuffer\"]=(function(size){return wasmReallocBuffer(size)});Module[\"asm\"]=(function(global,env,providedBuffer){if(!env[\"table\"]){assert(Module[\"wasmTableSize\"]!==undefined);var TABLE_SIZE=Module[\"wasmTableSize\"];var MAX_TABLE_SIZE=Module[\"wasmMaxTableSize\"];if(typeof WebAssembly===\"object\"&&typeof WebAssembly.Table===\"function\"){if(MAX_TABLE_SIZE!==undefined){env[\"table\"]=new WebAssembly.Table({\"initial\":TABLE_SIZE,\"maximum\":MAX_TABLE_SIZE,\"element\":\"anyfunc\"})}else{env[\"table\"]=new WebAssembly.Table({\"initial\":TABLE_SIZE,element:\"anyfunc\"})}}else{env[\"table\"]=new Array(TABLE_SIZE)}Module[\"wasmTable\"]=env[\"table\"]}if(!env[\"__memory_base\"]){env[\"__memory_base\"]=Module[\"STATIC_BASE\"]}if(!env[\"__table_base\"]){env[\"__table_base\"]=0}var exports=createWasm(global,env,providedBuffer);assert(exports,\"binaryen setup failed (no wasm support?)\");return exports})}integrateWasmJS();STATIC_BASE=GLOBAL_BASE;__ATINIT__.push({func:(function(){___emscripten_environ_constructor()})});var STATIC_BUMP=21696;Module[\"STATIC_BASE\"]=STATIC_BASE;Module[\"STATIC_BUMP\"]=STATIC_BUMP;var tempDoublePtr=22704;assert(tempDoublePtr%8==0);var ENV={};function ___buildEnvironment(environ){var MAX_ENV_VALUES=64;var TOTAL_ENV_SIZE=1024;var poolPtr;var envPtr;if(!___buildEnvironment.called){___buildEnvironment.called=true;ENV[\"USER\"]=ENV[\"LOGNAME\"]=\"web_user\";ENV[\"PATH\"]=\"/\";ENV[\"PWD\"]=\"/\";ENV[\"HOME\"]=\"/home/web_user\";ENV[\"LANG\"]=\"C.UTF-8\";ENV[\"_\"]=Module[\"thisProgram\"];poolPtr=getMemory(TOTAL_ENV_SIZE);envPtr=getMemory(MAX_ENV_VALUES*4);SAFE_HEAP_STORE(envPtr|0,poolPtr|0,4);SAFE_HEAP_STORE(environ|0,envPtr|0,4)}else{envPtr=SAFE_HEAP_LOAD(environ|0,4,0)|0;poolPtr=SAFE_HEAP_LOAD(envPtr|0,4,0)|0}var strings=[];var totalSize=0;for(var key in ENV){if(typeof ENV[key]===\"string\"){var line=key+\"=\"+ENV[key];strings.push(line);totalSize+=line.length}}if(totalSize>TOTAL_ENV_SIZE){throw new Error(\"Environment size exceeded TOTAL_ENV_SIZE!\")}var ptrSize=4;for(var i=0;i=0;i--){var last=parts[i];if(last===\".\"){parts.splice(i,1)}else if(last===\"..\"){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift(\"..\")}}return parts}),normalize:(function(path){var isAbsolute=path.charAt(0)===\"/\",trailingSlash=path.substr(-1)===\"/\";path=PATH.normalizeArray(path.split(\"/\").filter((function(p){return!!p})),!isAbsolute).join(\"/\");if(!path&&!isAbsolute){path=\".\"}if(path&&trailingSlash){path+=\"/\"}return(isAbsolute?\"/\":\"\")+path}),dirname:(function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return\".\"}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir}),basename:(function(path){if(path===\"/\")return\"/\";var lastSlash=path.lastIndexOf(\"/\");if(lastSlash===-1)return path;return path.substr(lastSlash+1)}),extname:(function(path){return PATH.splitPath(path)[3]}),join:(function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join(\"/\"))}),join2:(function(l,r){return PATH.normalize(l+\"/\"+r)}),resolve:(function(){var resolvedPath=\"\",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!==\"string\"){throw new TypeError(\"Arguments to path.resolve must be strings\")}else if(!path){return\"\"}resolvedPath=path+\"/\"+resolvedPath;resolvedAbsolute=path.charAt(0)===\"/\"}resolvedPath=PATH.normalizeArray(resolvedPath.split(\"/\").filter((function(p){return!!p})),!resolvedAbsolute).join(\"/\");return(resolvedAbsolute?\"/\":\"\")+resolvedPath||\".\"}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!==\"\")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split(\"/\"));var toParts=trim(to.split(\"/\"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i0){result=buf.slice(0,bytesRead).toString(\"utf-8\")}else{result=null}}else if(typeof window!=\"undefined\"&&typeof window.prompt==\"function\"){result=window.prompt(\"Input: \");if(result!==null){result+=\"\\n\"}}else if(typeof readline==\"function\"){result=readline();if(result!==null){result+=\"\\n\"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){out(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,\"/\",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;inode.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}if(!node.contents&&newCapacity>0)node.contents=[];while(node.contents.lengthnewSize)node.contents.length=newSize;else while(node.contents.length=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);assert(size>=0);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+length>2}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return stat.mode}),realPath:(function(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join.apply(null,parts)}),flagsForNode:(function(flags){flags&=~2097152;flags&=~2048;flags&=~32768;flags&=~524288;var newFlags=0;for(var k in NODEFS.flagsForNodeMap){if(flags&k){newFlags|=NODEFS.flagsForNodeMap[k];flags^=k}}if(!flags){return newFlags}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,\"\",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.flagsForNode(stream.flags))}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),close:(function(stream){try{if(FS.isFile(stream.node.mode)&&stream.nfd){fs.closeSync(stream.nfd)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),read:(function(stream,buffer,offset,length,position){if(length===0)return 0;try{return fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),write:(function(stream,buffer,offset,length,position){try{return fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};var NODERAWFS={lookupPath:(function(path){return{path:path,node:{mode:NODEFS.getMode(path)}}}),createStandardStreams:(function(){FS.streams[0]={fd:0,nfd:0,position:0,path:\"\",flags:0,tty:true,seekable:false};for(var i=1;i<3;i++){FS.streams[i]={fd:i,nfd:i,position:0,path:\"\",flags:577,tty:true,seekable:false}}}),cwd:(function(){return process.cwd()}),chdir:(function(){process.chdir.apply(void 0,arguments)}),mknod:(function(path,mode){if(FS.isDir(path)){fs.mkdirSync(path,mode)}else{fs.writeFileSync(path,\"\",{mode:mode})}}),mkdir:(function(){fs.mkdirSync.apply(void 0,arguments)}),symlink:(function(){fs.symlinkSync.apply(void 0,arguments)}),rename:(function(){fs.renameSync.apply(void 0,arguments)}),rmdir:(function(){fs.rmdirSync.apply(void 0,arguments)}),readdir:(function(){fs.readdirSync.apply(void 0,arguments)}),unlink:(function(){fs.unlinkSync.apply(void 0,arguments)}),readlink:(function(){return fs.readlinkSync.apply(void 0,arguments)}),stat:(function(){return fs.statSync.apply(void 0,arguments)}),lstat:(function(){return fs.lstatSync.apply(void 0,arguments)}),chmod:(function(){fs.chmodSync.apply(void 0,arguments)}),fchmod:(function(){fs.fchmodSync.apply(void 0,arguments)}),chown:(function(){fs.chownSync.apply(void 0,arguments)}),fchown:(function(){fs.fchownSync.apply(void 0,arguments)}),truncate:(function(){fs.truncateSync.apply(void 0,arguments)}),ftruncate:(function(){fs.ftruncateSync.apply(void 0,arguments)}),utime:(function(){fs.utimesSync.apply(void 0,arguments)}),open:(function(path,flags,mode,suggestFD){if(typeof flags===\"string\"){flags=VFS.modeStringToFlags(flags)}var nfd=fs.openSync(path,NODEFS.flagsForNode(flags),mode);var fd=suggestFD!=null?suggestFD:FS.nextfd(nfd);var stream={fd:fd,nfd:nfd,position:0,path:path,flags:flags,seekable:true};FS.streams[fd]=stream;return stream}),close:(function(stream){if(!stream.stream_ops){fs.closeSync(stream.nfd)}FS.closeStream(stream.fd)}),llseek:(function(stream,offset,whence){if(stream.stream_ops){return VFS.llseek(stream,offset,whence)}var position=offset;if(whence===1){position+=stream.position}else if(whence===2){position+=fs.fstatSync(stream.nfd).size}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}stream.position=position;return position}),read:(function(stream,buffer,offset,length,position){if(stream.stream_ops){return VFS.read(stream,buffer,offset,length,position)}var seeking=typeof position!==\"undefined\";if(!seeking&&stream.seekable)position=stream.position;var bytesRead=fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead}),write:(function(stream,buffer,offset,length,position){if(stream.stream_ops){return VFS.write(stream,buffer,offset,length,position)}if(stream.flags&+\"1024\"){FS.llseek(stream,0,+\"2\")}var seeking=typeof position!==\"undefined\";if(!seeking&&stream.seekable)position=stream.position;var bytesWritten=fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position);if(!seeking)stream.position+=bytesWritten;return bytesWritten}),allocate:(function(){throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP)}),mmap:(function(){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}),msync:(function(){return 0}),munmap:(function(){return 0}),ioctl:(function(){throw new FS.ErrnoError(ERRNO_CODES.ENOTTY)})};var ERRNO_MESSAGES={0:\"Success\",1:\"Not super-user\",2:\"No such file or directory\",3:\"No such process\",4:\"Interrupted system call\",5:\"I/O error\",6:\"No such device or address\",7:\"Arg list too long\",8:\"Exec format error\",9:\"Bad file number\",10:\"No children\",11:\"No more processes\",12:\"Not enough core\",13:\"Permission denied\",14:\"Bad address\",15:\"Block device required\",16:\"Mount device busy\",17:\"File exists\",18:\"Cross-device link\",19:\"No such device\",20:\"Not a directory\",21:\"Is a directory\",22:\"Invalid argument\",23:\"Too many open files in system\",24:\"Too many open files\",25:\"Not a typewriter\",26:\"Text file busy\",27:\"File too large\",28:\"No space left on device\",29:\"Illegal seek\",30:\"Read only file system\",31:\"Too many links\",32:\"Broken pipe\",33:\"Math arg out of domain of func\",34:\"Math result not representable\",35:\"File locking deadlock error\",36:\"File or path name too long\",37:\"No record locks available\",38:\"Function not implemented\",39:\"Directory not empty\",40:\"Too many symbolic links\",42:\"No message of desired type\",43:\"Identifier removed\",44:\"Channel number out of range\",45:\"Level 2 not synchronized\",46:\"Level 3 halted\",47:\"Level 3 reset\",48:\"Link number out of range\",49:\"Protocol driver not attached\",50:\"No CSI structure available\",51:\"Level 2 halted\",52:\"Invalid exchange\",53:\"Invalid request descriptor\",54:\"Exchange full\",55:\"No anode\",56:\"Invalid request code\",57:\"Invalid slot\",59:\"Bad font file fmt\",60:\"Device not a stream\",61:\"No data (for no delay io)\",62:\"Timer expired\",63:\"Out of streams resources\",64:\"Machine is not on the network\",65:\"Package not installed\",66:\"The object is remote\",67:\"The link has been severed\",68:\"Advertise error\",69:\"Srmount error\",70:\"Communication error on send\",71:\"Protocol error\",72:\"Multihop attempted\",73:\"Cross mount point (not really error)\",74:\"Trying to read unreadable message\",75:\"Value too large for defined data type\",76:\"Given log. name not unique\",77:\"f.d. invalid for this operation\",78:\"Remote address changed\",79:\"Can access a needed shared lib\",80:\"Accessing a corrupted shared lib\",81:\".lib section in a.out corrupted\",82:\"Attempting to link in too many libs\",83:\"Attempting to exec a shared library\",84:\"Illegal byte sequence\",86:\"Streams pipe error\",87:\"Too many users\",88:\"Socket operation on non-socket\",89:\"Destination address required\",90:\"Message too long\",91:\"Protocol wrong type for socket\",92:\"Protocol not available\",93:\"Unknown protocol\",94:\"Socket type not supported\",95:\"Not supported\",96:\"Protocol family not supported\",97:\"Address family not supported by protocol family\",98:\"Address already in use\",99:\"Address not available\",100:\"Network interface is not configured\",101:\"Network is unreachable\",102:\"Connection reset by network\",103:\"Connection aborted\",104:\"Connection reset by peer\",105:\"No buffer space available\",106:\"Socket is already connected\",107:\"Socket is not connected\",108:\"Can't send after socket shutdown\",109:\"Too many references\",110:\"Connection timed out\",111:\"Connection refused\",112:\"Host is down\",113:\"Host is unreachable\",114:\"Socket already connected\",115:\"Connection already in progress\",116:\"Stale file handle\",122:\"Quota exceeded\",123:\"No medium (in tape drive)\",125:\"Operation canceled\",130:\"Previous owner died\",131:\"State not recoverable\"};var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:\"/\",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:(function(e){if(!(e instanceof FS.ErrnoError))throw e+\" : \"+stackTrace();return ___setErrNo(e.errno)}),lookupPath:(function(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:\"\",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(40)}var parts=PATH.normalizeArray(path.split(\"/\").filter((function(p){return!!p})),false);var current=FS.root;var current_path=\"/\";for(var i=0;i40){throw new FS.ErrnoError(40)}}}}return{path:current_path,node:current}}),getPath:(function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!==\"/\"?mount+\"/\"+path:mount+path}path=path?node.name+\"/\"+path:node.name;node=node.parent}}),hashName:(function(parentid,name){var hash=0;for(var i=0;i>>0)%FS.nameTable.length}),hashAddNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node}),hashRemoveNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}}),lookupNode:(function(parent,name){var err=FS.mayLookup(parent);if(err){throw new FS.ErrnoError(err,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),flagModes:{\"r\":0,\"rs\":1052672,\"r+\":2,\"w\":577,\"wx\":705,\"xw\":705,\"w+\":578,\"wx+\":706,\"xw+\":706,\"a\":1089,\"ax\":1217,\"xa\":1217,\"a+\":1090,\"ax+\":1218,\"xa+\":1218},modeStringToFlags:(function(str){var flags=FS.flagModes[str];if(typeof flags===\"undefined\"){throw new Error(\"Unknown file open mode: \"+str)}return flags}),flagsToPermissionString:(function(flag){var perms=[\"r\",\"w\",\"rw\"][flag&3];if(flag&512){perms+=\"w\"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf(\"r\")!==-1&&!(node.mode&292)){return 13}else if(perms.indexOf(\"w\")!==-1&&!(node.mode&146)){return 13}else if(perms.indexOf(\"x\")!==-1&&!(node.mode&73)){return 13}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,\"x\");if(err)return err;if(!dir.node_ops.lookup)return 13;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return 17}catch(e){}return FS.nodePermissions(dir,\"wx\")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,\"wx\");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return 20}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 16}}else{if(FS.isDir(node.mode)){return 21}}return 0}),mayOpen:(function(node,flags){if(!node){return 2}if(FS.isLink(node.mode)){return 40}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!==\"r\"||flags&512){return 21}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(24)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(29)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate===\"function\"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log(\"warning: \"+FS.syncFSRequests+\" FS.syncfs operations in flight at once, probably just doing extra work\")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint===\"/\";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(16)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(16)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(20)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(22)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name===\".\"||name===\"..\"){throw new FS.ErrnoError(22)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(1)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdirTree:(function(path,mode){var dirs=path.split(\"/\");var d=\"\";for(var i=0;i\"}))}),staticInit:(function(){FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},\"/\");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={\"MEMFS\":MEMFS,\"NODEFS\":NODEFS}}),init:(function(input,output,error){assert(!FS.init.initialized,\"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)\");FS.init.initialized=true;FS.ensureErrnoError();Module[\"stdin\"]=input||Module[\"stdin\"];Module[\"stdout\"]=output||Module[\"stdout\"];Module[\"stderr\"]=error||Module[\"stderr\"];FS.createStandardStreams()}),quit:(function(){FS.init.initialized=false;var fflush=Module[\"_fflush\"];if(fflush)fflush(0);for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open(\"HEAD\",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error(\"Couldn't load \"+url+\". Status: \"+xhr.status);var datalength=Number(xhr.getResponseHeader(\"Content-length\"));var header;var hasByteServing=(header=xhr.getResponseHeader(\"Accept-Ranges\"))&&header===\"bytes\";var usesGzip=(header=xhr.getResponseHeader(\"Content-Encoding\"))&&header===\"gzip\";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error(\"invalid range (\"+from+\", \"+to+\") or no bytes requested!\");if(to>datalength-1)throw new Error(\"only \"+datalength+\" bytes available! programmer error!\");var xhr=new XMLHttpRequest;xhr.open(\"GET\",url,false);if(datalength!==chunkSize)xhr.setRequestHeader(\"Range\",\"bytes=\"+from+\"-\"+to);if(typeof Uint8Array!=\"undefined\")xhr.responseType=\"arraybuffer\";if(xhr.overrideMimeType){xhr.overrideMimeType(\"text/plain; charset=x-user-defined\")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error(\"Couldn't load \"+url+\". Status: \"+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||\"\",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]===\"undefined\"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]===\"undefined\")throw new Error(\"doXHR failed!\");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log(\"LazyFiles on gzip forces download of the whole file when length is accessed\")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!==\"undefined\"){if(!ENVIRONMENT_IS_WORKER)throw\"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc\";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(5)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(5)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall10(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr();FS.unlink(path);return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);SAFE_HEAP_STORE(result|0,stream.position|0,4);if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall15(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),mode=SYSCALLS.get();FS.chmod(path,mode);return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall195(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,path,buf)}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall197(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,stream.path,buf)}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;SAFE_HEAP_STORE(arg+offset|0,2|0,2);return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall38(which,varargs){SYSCALLS.varargs=varargs;try{var old_path=SYSCALLS.getStr(),new_path=SYSCALLS.getStr();FS.rename(old_path,new_path);return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall40(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr();FS.rmdir(path);return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21509:case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();SAFE_HEAP_STORE(argp|0,0|0,4);return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};case 21523:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21524:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};default:abort(\"bad ioctl syscall \"+op)}}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall60(which,varargs){SYSCALLS.varargs=varargs;try{var mask=SYSCALLS.get();var old=SYSCALLS.umask;SYSCALLS.umask=mask;return old}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___unlock(){}var ___tm_current=22560;var ___tm_timezone=(stringToUTF8(\"GMT\",22608,4),22608);function _tzset(){if(_tzset.called)return;_tzset.called=true;SAFE_HEAP_STORE(__get_timezone()|0,(new Date).getTimezoneOffset()*60|0,4);var winter=new Date(2e3,0,1);var summer=new Date(2e3,6,1);SAFE_HEAP_STORE(__get_daylight()|0,Number(winter.getTimezoneOffset()!=summer.getTimezoneOffset())|0,4);function extractZone(date){var match=date.toTimeString().match(/\\(([A-Za-z ]+)\\)$/);return match?match[1]:\"GMT\"}var winterName=extractZone(winter);var summerName=extractZone(summer);var winterNamePtr=allocate(intArrayFromString(winterName),\"i8\",ALLOC_NORMAL);var summerNamePtr=allocate(intArrayFromString(summerName),\"i8\",ALLOC_NORMAL);if(summer.getTimezoneOffset()0!=(dstOffset==guessedOffset)){var nonDstOffset=Math.max(winterOffset,summerOffset);var trueOffset=dst>0?dstOffset:nonDstOffset;date.setTime(date.getTime()+(trueOffset-guessedOffset)*6e4)}SAFE_HEAP_STORE(tmPtr+24|0,date.getDay()|0,4);var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;SAFE_HEAP_STORE(tmPtr+28|0,yday|0,4);return date.getTime()/1e3|0}function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){SAFE_HEAP_STORE(ptr|0,ret|0,4)}return ret}if(ENVIRONMENT_IS_NODE){_emscripten_get_now=function _emscripten_get_now_actual(){var t=process[\"hrtime\"]();return t[0]*1e3+t[1]/1e6}}else if(typeof dateNow!==\"undefined\"){_emscripten_get_now=dateNow}else if(typeof self===\"object\"&&self[\"performance\"]&&typeof self[\"performance\"][\"now\"]===\"function\"){_emscripten_get_now=(function(){return self[\"performance\"][\"now\"]()})}else if(typeof performance===\"object\"&&typeof performance[\"now\"]===\"function\"){_emscripten_get_now=(function(){return performance[\"now\"]()})}else{_emscripten_get_now=Date.now}FS.staticInit();__ATINIT__.unshift((function(){if(!Module[\"noFSInit\"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((function(){FS.quit()}));__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=frozenFs;var NODEJS_PATH=__webpack_require__(2);NODEFS.staticInit()}if(ENVIRONMENT_IS_NODE){var _wrapNodeError=(function(func){return(function(){try{return func.apply(this,arguments)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})});var VFS=Object.assign({},FS);for(var _key in NODERAWFS)FS[_key]=_wrapNodeError(NODERAWFS[_key])}else{throw new Error(\"NODERAWFS is currently only supported on Node.js environment.\")}function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}var decodeBase64=typeof atob===\"function\"?atob:(function(input){var keyStr=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";var output=\"\";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\\+\\/\\=]/g,\"\");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i0){return}writeStackCookie();preRun();if(runDependencies>0)return;if(Module[\"calledRun\"])return;function doRun(){if(Module[\"calledRun\"])return;Module[\"calledRun\"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module[\"onRuntimeInitialized\"])Module[\"onRuntimeInitialized\"]();assert(!Module[\"_main\"],'compiled without a main, but one is present. if you added it from JS, use Module[\"onRuntimeInitialized\"]');postRun()}if(Module[\"setStatus\"]){Module[\"setStatus\"](\"Running...\");setTimeout((function(){setTimeout((function(){Module[\"setStatus\"](\"\")}),1);doRun()}),1)}else{doRun()}checkStackCookie()}Module[\"run\"]=run;var abortDecorators=[];function abort(what){if(Module[\"onAbort\"]){Module[\"onAbort\"](what)}if(what!==undefined){out(what);err(what);what=JSON.stringify(what)}else{what=\"\"}ABORT=true;EXITSTATUS=1;var extra=\"\";var output=\"abort(\"+what+\") at \"+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module[\"abort\"]=abort;if(Module[\"preInit\"]){if(typeof Module[\"preInit\"]==\"function\")Module[\"preInit\"]=[Module[\"preInit\"]];while(Module[\"preInit\"].length>0){Module[\"preInit\"].pop()()}}Module[\"noExitRuntime\"]=true;run()\n\n\n\n\n\n/***/ }),\n/* 15 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"crypto\");\n\n/***/ }),\n/* 16 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"stream\");\n\n/***/ }),\n/* 17 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"util\");\n\n/***/ }),\n/* 18 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst fs_1 = __webpack_require__(7);\nconst path_1 = __webpack_require__(2);\nconst FakeFS_1 = __webpack_require__(8);\nconst NodeFS_1 = __webpack_require__(6);\nconst ZipFS_1 = __webpack_require__(12);\nclass ZipOpenFS extends FakeFS_1.FakeFS {\n constructor({ baseFs = new NodeFS_1.NodeFS(), filter = null, useCache = true } = {}) {\n super();\n this.isZip = new Set();\n this.notZip = new Set();\n this.baseFs = baseFs;\n this.zipInstances = useCache ? new Map() : null;\n this.filter = filter;\n this.isZip = new Set();\n this.notZip = new Set();\n }\n static open(fn) {\n const zipOpenFs = new ZipOpenFS();\n try {\n return fn(zipOpenFs);\n }\n finally {\n zipOpenFs.saveAndClose();\n }\n }\n static async openPromise(fn) {\n const zipOpenFs = new ZipOpenFS();\n try {\n return await fn(zipOpenFs);\n }\n finally {\n zipOpenFs.saveAndClose();\n }\n }\n getRealPath() {\n return this.baseFs.getRealPath();\n }\n saveAndClose() {\n if (this.zipInstances) {\n for (const [path, zipFs] of this.zipInstances.entries()) {\n zipFs.saveAndClose();\n this.zipInstances.delete(path);\n }\n }\n }\n discardAndClose() {\n if (this.zipInstances) {\n for (const [path, zipFs] of this.zipInstances.entries()) {\n zipFs.discardAndClose();\n this.zipInstances.delete(path);\n }\n }\n }\n async openPromise(p, flags, mode) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.openPromise(p, flags, mode);\n }, async (zipFs, { archivePath, subPath }) => {\n throw new Error(`Unsupported action (we wouldn't be able to disambiguate the close)`);\n });\n }\n openSync(p, flags, mode) {\n return this.makeCallSync(p, () => {\n return this.baseFs.openSync(p, flags, mode);\n }, (zipFs, { archivePath, subPath }) => {\n throw new Error(`Unsupported action (we wouldn't be able to disambiguate the close)`);\n });\n }\n async closePromise(fd) {\n return await this.baseFs.closePromise(fd);\n }\n closeSync(fd) {\n return this.baseFs.closeSync(fd);\n }\n createReadStream(p, opts) {\n return this.makeCallSync(p, () => {\n return this.baseFs.createReadStream(p, opts);\n }, (zipFs, { subPath }) => {\n return zipFs.createReadStream(subPath, opts);\n });\n }\n createWriteStream(p, opts) {\n return this.makeCallSync(p, () => {\n return this.baseFs.createWriteStream(p, opts);\n }, (zipFs, { subPath }) => {\n return zipFs.createWriteStream(subPath, opts);\n });\n }\n async realpathPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.realpathPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return path_1.posix.resolve(archivePath, path_1.posix.relative(`/`, await zipFs.realpathPromise(subPath)));\n });\n }\n realpathSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.realpathSync(p);\n }, (zipFs, { archivePath, subPath }) => {\n return path_1.posix.resolve(archivePath, path_1.posix.relative(`/`, zipFs.realpathSync(subPath)));\n });\n }\n async existsPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.existsPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.existsPromise(subPath);\n });\n }\n existsSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.existsSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.existsSync(subPath);\n });\n }\n async statPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.statPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.statPromise(subPath);\n });\n }\n statSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.statSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.statSync(subPath);\n });\n }\n async lstatPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.lstatPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.lstatPromise(subPath);\n });\n }\n lstatSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.lstatSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.lstatSync(subPath);\n });\n }\n async chmodPromise(p, mask) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.chmodPromise(p, mask);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.chmodPromise(subPath, mask);\n });\n }\n chmodSync(p, mask) {\n return this.makeCallSync(p, () => {\n return this.baseFs.chmodSync(p, mask);\n }, (zipFs, { subPath }) => {\n return zipFs.chmodSync(subPath, mask);\n });\n }\n async renamePromise(oldP, newP) {\n return await this.makeCallPromise(oldP, async () => {\n return await this.makeCallPromise(newP, async () => {\n return await this.baseFs.renamePromise(oldP, newP);\n }, async () => {\n throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });\n });\n }, async (zipFsO, { archivePath: archivePathO, subPath: subPathO }) => {\n return await this.makeCallPromise(newP, async () => {\n throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });\n }, async (zipFsN, { archivePath: archivePathN, subPath: subPathN }) => {\n if (zipFsO !== zipFsN) {\n throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });\n }\n else {\n return await zipFsO.renamePromise(subPathO, subPathN);\n }\n });\n });\n }\n renameSync(oldP, newP) {\n return this.makeCallSync(oldP, () => {\n return this.makeCallSync(newP, () => {\n return this.baseFs.renameSync(oldP, newP);\n }, async () => {\n throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });\n });\n }, (zipFsO, { archivePath: archivePathO, subPath: subPathO }) => {\n return this.makeCallSync(newP, () => {\n throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });\n }, (zipFsN, { archivePath: archivePathN, subPath: subPathN }) => {\n if (zipFsO !== zipFsN) {\n throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });\n }\n else {\n return zipFsO.renameSync(subPathO, subPathN);\n }\n });\n });\n }\n async copyFilePromise(sourceP, destP, flags = 0) {\n const fallback = async (sourceFs, sourceP, destFs, destP) => {\n if ((flags & fs_1.constants.COPYFILE_FICLONE_FORCE) !== 0)\n throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${sourceP}' -> ${destP}'`), { code: `EXDEV` });\n if ((flags & fs_1.constants.COPYFILE_EXCL) && await this.existsPromise(sourceP))\n throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${sourceP}' -> '${destP}'`), { code: `EEXIST` });\n let content;\n try {\n content = await sourceFs.readFilePromise(sourceP);\n }\n catch (error) {\n throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${sourceP}' -> '${destP}'`), { code: `EINVAL` });\n }\n await destFs.writeFilePromise(destP, content);\n };\n return await this.makeCallPromise(sourceP, async () => {\n return await this.makeCallPromise(destP, async () => {\n return await this.baseFs.copyFilePromise(sourceP, destP, flags);\n }, async (zipFsD, { archivePath: archivePathD, subPath: subPathD }) => {\n return await fallback(this.baseFs, sourceP, zipFsD, subPathD);\n });\n }, async (zipFsS, { archivePath: archivePathS, subPath: subPathS }) => {\n return await this.makeCallPromise(destP, async () => {\n return await fallback(zipFsS, subPathS, this.baseFs, destP);\n }, async (zipFsD, { archivePath: archivePathD, subPath: subPathD }) => {\n if (zipFsS !== zipFsD) {\n return await fallback(zipFsS, subPathS, zipFsD, subPathD);\n }\n else {\n return await zipFsS.copyFilePromise(subPathS, subPathD, flags);\n }\n });\n });\n }\n copyFileSync(sourceP, destP, flags = 0) {\n const fallback = (sourceFs, sourceP, destFs, destP) => {\n if ((flags & fs_1.constants.COPYFILE_FICLONE_FORCE) !== 0)\n throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${sourceP}' -> ${destP}'`), { code: `EXDEV` });\n if ((flags & fs_1.constants.COPYFILE_EXCL) && this.existsSync(sourceP))\n throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${sourceP}' -> '${destP}'`), { code: `EEXIST` });\n let content;\n try {\n content = sourceFs.readFileSync(sourceP);\n }\n catch (error) {\n throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${sourceP}' -> '${destP}'`), { code: `EINVAL` });\n }\n destFs.writeFileSync(destP, content);\n };\n return this.makeCallSync(sourceP, () => {\n return this.makeCallSync(destP, () => {\n return this.baseFs.copyFileSync(sourceP, destP, flags);\n }, (zipFsD, { archivePath: archivePathD, subPath: subPathD }) => {\n return fallback(this.baseFs, sourceP, zipFsD, subPathD);\n });\n }, (zipFsS, { archivePath: archivePathS, subPath: subPathS }) => {\n return this.makeCallSync(destP, () => {\n return fallback(zipFsS, subPathS, this.baseFs, destP);\n }, (zipFsD, { archivePath: archivePathD, subPath: subPathD }) => {\n if (zipFsS !== zipFsD) {\n return fallback(zipFsS, subPathS, zipFsD, subPathD);\n }\n else {\n return zipFsS.copyFileSync(subPathS, subPathD, flags);\n }\n });\n });\n }\n async writeFilePromise(p, content, opts) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.writeFilePromise(p, content, opts);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.writeFilePromise(subPath, content, opts);\n });\n }\n writeFileSync(p, content, opts) {\n return this.makeCallSync(p, () => {\n return this.baseFs.writeFileSync(p, content, opts);\n }, (zipFs, { subPath }) => {\n return zipFs.writeFileSync(subPath, content, opts);\n });\n }\n async unlinkPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.unlinkPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.unlinkPromise(subPath);\n });\n }\n unlinkSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.unlinkSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.unlinkSync(subPath);\n });\n }\n async utimesPromise(p, atime, mtime) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.utimesPromise(p, atime, mtime);\n }, async (zipFs, { subPath }) => {\n return await zipFs.utimesPromise(subPath, atime, mtime);\n });\n }\n utimesSync(p, atime, mtime) {\n return this.makeCallSync(p, () => {\n return this.baseFs.utimesSync(p, atime, mtime);\n }, (zipFs, { subPath }) => {\n return zipFs.utimesSync(subPath, atime, mtime);\n });\n }\n async mkdirPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.mkdirPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.mkdirPromise(subPath);\n });\n }\n mkdirSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.mkdirSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.mkdirSync(subPath);\n });\n }\n async rmdirPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.rmdirPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.rmdirPromise(subPath);\n });\n }\n rmdirSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.rmdirSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.rmdirSync(subPath);\n });\n }\n async symlinkPromise(target, p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.symlinkPromise(target, p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.symlinkPromise(target, subPath);\n });\n }\n symlinkSync(target, p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.symlinkSync(target, p);\n }, (zipFs, { subPath }) => {\n return zipFs.symlinkSync(target, subPath);\n });\n }\n async readFilePromise(p, encoding) {\n return this.makeCallPromise(p, async () => {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return await this.baseFs.readFilePromise(p, encoding);\n default:\n return await this.baseFs.readFilePromise(p, encoding);\n }\n }, async (zipFs, { subPath }) => {\n return await zipFs.readFilePromise(subPath, encoding);\n });\n }\n readFileSync(p, encoding) {\n return this.makeCallSync(p, () => {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return this.baseFs.readFileSync(p, encoding);\n default:\n return this.baseFs.readFileSync(p, encoding);\n }\n }, (zipFs, { subPath }) => {\n return zipFs.readFileSync(subPath, encoding);\n });\n }\n async readdirPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.readdirPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.readdirPromise(subPath);\n }, {\n requireSubpath: false,\n });\n }\n readdirSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.readdirSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.readdirSync(subPath);\n }, {\n requireSubpath: false,\n });\n }\n async readlinkPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.readlinkPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.readlinkPromise(subPath);\n });\n }\n readlinkSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.readlinkSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.readlinkSync(subPath);\n });\n }\n async makeCallPromise(p, discard, accept, { requireSubpath = true } = {}) {\n p = path_1.posix.normalize(path_1.posix.resolve(`/`, p));\n const zipInfo = this.findZip(p);\n if (!zipInfo)\n return await discard();\n if (requireSubpath && zipInfo.subPath === `/`)\n return await discard();\n return await this.getZipPromise(zipInfo.archivePath, async (zipFs) => await accept(zipFs, zipInfo));\n }\n makeCallSync(p, discard, accept, { requireSubpath = true } = {}) {\n p = path_1.posix.normalize(path_1.posix.resolve(`/`, p));\n const zipInfo = this.findZip(p);\n if (!zipInfo)\n return discard();\n if (requireSubpath && zipInfo.subPath === `/`)\n return discard();\n return this.getZipSync(zipInfo.archivePath, zipFs => accept(zipFs, zipInfo));\n }\n findZip(p) {\n if (this.filter && !this.filter.test(p))\n return null;\n const parts = p.split(/\\//g);\n for (let t = 2; t <= parts.length; ++t) {\n const archivePath = parts.slice(0, t).join(`/`);\n if (this.notZip.has(archivePath))\n continue;\n if (this.isZip.has(archivePath))\n return { archivePath, subPath: path_1.posix.resolve(`/`, parts.slice(t).join(`/`)) };\n let realArchivePath = archivePath;\n let stat;\n while (true) {\n try {\n stat = this.baseFs.lstatSync(realArchivePath);\n }\n catch (error) {\n return null;\n }\n if (stat.isSymbolicLink()) {\n realArchivePath = path_1.posix.resolve(path_1.posix.dirname(realArchivePath), this.baseFs.readlinkSync(realArchivePath));\n }\n else {\n break;\n }\n }\n const isZip = stat.isFile() && path_1.posix.extname(realArchivePath) === `.zip`;\n if (isZip) {\n this.isZip.add(archivePath);\n return { archivePath, subPath: path_1.posix.resolve(`/`, parts.slice(t).join(`/`)) };\n }\n else {\n this.notZip.add(archivePath);\n if (stat.isFile()) {\n return null;\n }\n }\n }\n return null;\n }\n async getZipPromise(p, accept) {\n if (this.zipInstances) {\n let zipFs = this.zipInstances.get(p);\n if (!zipFs)\n this.zipInstances.set(p, zipFs = new ZipFS_1.ZipFS(p, { baseFs: this.baseFs, stats: await this.baseFs.statPromise(p) }));\n return await accept(zipFs);\n }\n else {\n const zipFs = new ZipFS_1.ZipFS(p, { baseFs: this.baseFs, stats: await this.baseFs.statPromise(p) });\n try {\n return await accept(zipFs);\n }\n finally {\n zipFs.saveAndClose();\n }\n }\n }\n getZipSync(p, accept) {\n if (this.zipInstances) {\n let zipFs = this.zipInstances.get(p);\n if (!zipFs)\n this.zipInstances.set(p, zipFs = new ZipFS_1.ZipFS(p, { baseFs: this.baseFs }));\n return accept(zipFs);\n }\n else {\n const zipFs = new ZipFS_1.ZipFS(p, { baseFs: this.baseFs });\n try {\n return accept(zipFs);\n }\n finally {\n zipFs.saveAndClose();\n }\n }\n }\n}\nexports.ZipOpenFS = ZipOpenFS;\n\n\n/***/ }),\n/* 19 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n/**\n * Simple helper function that assign an error code to an error, so that it can more easily be caught and used\n * by third-parties.\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nfunction makeError(code, message, data = {}) {\n const error = new Error(message);\n return Object.assign(error, { code, data });\n}\nexports.makeError = makeError;\n/**\n * Returns the module that should be used to resolve require calls. It's usually the direct parent, except if we're\n * inside an eval expression.\n */\nfunction getIssuerModule(parent) {\n let issuer = parent;\n while (issuer && (issuer.id === '[eval]' || issuer.id === '' || !issuer.filename)) {\n issuer = issuer.parent;\n }\n return issuer;\n}\nexports.getIssuerModule = getIssuerModule;\n\n\n/***/ }),\n/* 20 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst path_1 = __importDefault(__webpack_require__(2));\nfunction hydrateRuntimeState(data, { basePath }) {\n const ignorePattern = data.ignorePatternData\n ? new RegExp(data.ignorePatternData)\n : null;\n const packageRegistry = new Map(data.packageRegistryData.map(([packageName, packageStoreData]) => {\n return [packageName, new Map(packageStoreData.map(([packageReference, packageInformationData]) => {\n return [packageReference, {\n packageLocation: path_1.default.resolve(basePath, packageInformationData.packageLocation),\n packageDependencies: new Map(packageInformationData.packageDependencies),\n }];\n }))];\n }));\n const packageLocatorsByLocations = new Map(data.locationBlacklistData.map(location => {\n return [location, null];\n }));\n for (const [packageName, storeData] of data.packageRegistryData) {\n for (const [packageReference, packageInformationData] of storeData) {\n if ((packageName === null) !== (packageReference === null))\n throw new Error(`Assertion failed: The name and reference should be null, or neither should`);\n // @ts-ignore: TypeScript isn't smart enough to understand the type assertion\n const packageLocator = { name: packageName, reference: packageReference };\n packageLocatorsByLocations.set(packageInformationData.packageLocation, packageLocator);\n }\n }\n const packageLocationLengths = data.locationLengthData;\n return {\n basePath,\n ignorePattern,\n packageRegistry,\n packageLocatorsByLocations,\n packageLocationLengths,\n };\n}\nexports.hydrateRuntimeState = hydrateRuntimeState;\n\n\n/***/ }),\n/* 21 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst fs_1 = __importDefault(__webpack_require__(7));\nconst module_1 = __importDefault(__webpack_require__(1));\nconst path_1 = __importDefault(__webpack_require__(2));\nconst internalTools_1 = __webpack_require__(19);\nfunction makeApi(runtimeState, opts) {\n // @ts-ignore\n const builtinModules = new Set(module_1.default.builtinModules || Object.keys(process.binding('natives')));\n // Splits a require request into its components, or return null if the request is a file path\n const pathRegExp = /^(?![a-zA-Z]:[\\\\\\/]|\\\\\\\\|\\.{0,2}(?:\\/|$))((?:@[^\\/]+\\/)?[^\\/]+)\\/?(.*|)$/;\n // Matches if the path starts with a valid path qualifier (./, ../, /)\n // eslint-disable-next-line no-unused-vars\n const isStrictRegExp = /^\\.{0,2}\\//;\n // Matches if the path must point to a directory (ie ends with /)\n const isDirRegExp = /\\/$/;\n // Matches backslashes of Windows paths\n const backwardSlashRegExp = /\\\\/g;\n // We only instantiate one of those so that we can use strict-equal comparisons\n const topLevelLocator = { name: null, reference: null };\n // Used for compatibility purposes - cf setupCompatibilityLayer\n const fallbackLocators = [topLevelLocator];\n if (opts.compatibilityMode) {\n // ESLint currently doesn't have any portable way for shared configs to specify their own\n // plugins that should be used (https://github.com/eslint/eslint/issues/10125). This will\n // likely get fixed at some point, but it'll take time and in the meantime we'll just add\n // additional fallback entries for common shared configs.\n for (const name of [`gatsby`, `react-scripts`]) {\n const packageStore = runtimeState.packageRegistry.get(name);\n if (packageStore) {\n for (const reference of packageStore.keys()) {\n if (reference === null) {\n throw new Error(`Assertion failed: This reference shouldn't be null`);\n }\n else {\n fallbackLocators.push({ name, reference });\n }\n }\n }\n }\n }\n /**\n * The setup code will be injected here. The tables listed below are guaranteed to be filled after the call to\n * the $$DYNAMICALLY_GENERATED_CODE function.\n */\n const { ignorePattern, packageRegistry, packageLocatorsByLocations, packageLocationLengths, } = runtimeState;\n /**\n * Returns information about a package in a safe way (will throw if they cannot be retrieved)\n */\n function getPackageInformationSafe(packageLocator) {\n const packageInformation = getPackageInformation(packageLocator);\n if (!packageInformation) {\n throw internalTools_1.makeError(`INTERNAL`, `Couldn't find a matching entry in the dependency tree for the specified parent (this is probably an internal error)`);\n }\n return packageInformation;\n }\n /**\n * Implements the node resolution for folder access and extension selection\n */\n function applyNodeExtensionResolution(unqualifiedPath, candidates, { extensions }) {\n // We use this \"infinite while\" so that we can restart the process as long as we hit package folders\n while (true) {\n let stat;\n try {\n candidates.push(unqualifiedPath);\n stat = fs_1.default.statSync(unqualifiedPath);\n }\n catch (error) { }\n // If the file exists and is a file, we can stop right there\n if (stat && !stat.isDirectory()) {\n // If the very last component of the resolved path is a symlink to a file, we then resolve it to a file. We only\n // do this first the last component, and not the rest of the path! This allows us to support the case of bin\n // symlinks, where a symlink in \"/xyz/pkg-name/.bin/bin-name\" will point somewhere else (like \"/xyz/pkg-name/index.js\").\n // In such a case, we want relative requires to be resolved relative to \"/xyz/pkg-name/\" rather than \"/xyz/pkg-name/.bin/\".\n //\n // Also note that the reason we must use readlink on the last component (instead of realpath on the whole path)\n // is that we must preserve the other symlinks, in particular those used by pnp to deambiguate packages using\n // peer dependencies. For example, \"/xyz/.pnp/local/pnp-01234569/.bin/bin-name\" should see its relative requires\n // be resolved relative to \"/xyz/.pnp/local/pnp-0123456789/\" rather than \"/xyz/pkg-with-peers/\", because otherwise\n // we would lose the information that would tell us what are the dependencies of pkg-with-peers relative to its\n // ancestors.\n if (fs_1.default.lstatSync(unqualifiedPath).isSymbolicLink())\n unqualifiedPath = path_1.default.normalize(path_1.default.resolve(path_1.default.dirname(unqualifiedPath), fs_1.default.readlinkSync(unqualifiedPath)));\n return unqualifiedPath;\n }\n // If the file is a directory, we must check if it contains a package.json with a \"main\" entry\n if (stat && stat.isDirectory()) {\n let pkgJson;\n try {\n pkgJson = JSON.parse(fs_1.default.readFileSync(`${unqualifiedPath}/package.json`, 'utf-8'));\n }\n catch (error) { }\n let nextUnqualifiedPath;\n if (pkgJson && pkgJson.main)\n nextUnqualifiedPath = path_1.default.resolve(unqualifiedPath, pkgJson.main);\n // If the \"main\" field changed the path, we start again from this new location\n if (nextUnqualifiedPath && nextUnqualifiedPath !== unqualifiedPath) {\n const resolution = applyNodeExtensionResolution(nextUnqualifiedPath, candidates, { extensions });\n if (resolution !== null) {\n return resolution;\n }\n }\n }\n // Otherwise we check if we find a file that match one of the supported extensions\n const qualifiedPath = extensions\n .map(extension => {\n return `${unqualifiedPath}${extension}`;\n })\n .find(candidateFile => {\n candidates.push(candidateFile);\n return fs_1.default.existsSync(candidateFile);\n });\n if (qualifiedPath)\n return qualifiedPath;\n // Otherwise, we check if the path is a folder - in such a case, we try to use its index\n if (stat && stat.isDirectory()) {\n const indexPath = extensions\n .map(extension => {\n return `${unqualifiedPath}/index${extension}`;\n })\n .find(candidateFile => {\n candidates.push(candidateFile);\n return fs_1.default.existsSync(candidateFile);\n });\n if (indexPath) {\n return indexPath;\n }\n }\n // Otherwise there's nothing else we can do :(\n return null;\n }\n }\n /**\n * This function creates fake modules that can be used with the _resolveFilename function.\n * Ideally it would be nice to be able to avoid this, since it causes useless allocations\n * and cannot be cached efficiently (we recompute the nodeModulePaths every time).\n *\n * Fortunately, this should only affect the fallback, and there hopefully shouldn't have a\n * lot of them.\n */\n function makeFakeModule(path) {\n // @ts-ignore\n const fakeModule = new module_1.default(path, null);\n fakeModule.filename = path;\n fakeModule.paths = module_1.default._nodeModulePaths(path);\n return fakeModule;\n }\n /**\n * Normalize path to posix format.\n */\n function normalizePath(p) {\n p = path_1.default.normalize(p);\n if (process.platform === 'win32')\n p = p.replace(backwardSlashRegExp, '/');\n return p;\n }\n /**\n * Forward the resolution to the next resolver (usually the native one)\n */\n function callNativeResolution(request, issuer) {\n if (issuer.endsWith('/'))\n issuer += 'internal.js';\n // Since we would need to create a fake module anyway (to call _resolveLookupPath that\n // would give us the paths to give to _resolveFilename), we can as well not use\n // the {paths} option at all, since it internally makes _resolveFilename create another\n // fake module anyway.\n return module_1.default._resolveFilename(request, makeFakeModule(issuer), false, { plugnplay: false });\n }\n /**\n * This key indicates which version of the standard is implemented by this resolver. The `std` key is the\n * Plug'n'Play standard, and any other key are third-party extensions. Third-party extensions are not allowed\n * to override the standard, and can only offer new methods.\n *\n * If an new version of the Plug'n'Play standard is released and some extensions conflict with newly added\n * functions, they'll just have to fix the conflicts and bump their own version number.\n */\n const VERSIONS = { std: 1 };\n /**\n * We export a special symbol for easy access to the top level locator.\n */\n const topLevel = topLevelLocator;\n /**\n * Gets the package information for a given locator. Returns null if they cannot be retrieved.\n */\n function getPackageInformation({ name, reference }) {\n const packageInformationStore = packageRegistry.get(name);\n if (!packageInformationStore)\n return null;\n const packageInformation = packageInformationStore.get(reference);\n if (!packageInformation)\n return null;\n return packageInformation;\n }\n ;\n /**\n * Finds the package locator that owns the specified path. If none is found, returns null instead.\n */\n function findPackageLocator(location) {\n let relativeLocation = normalizePath(path_1.default.relative(runtimeState.basePath, location));\n if (!relativeLocation.match(isStrictRegExp))\n relativeLocation = `./${relativeLocation}`;\n if (location.match(isDirRegExp) && !relativeLocation.endsWith(`/`))\n relativeLocation = `${relativeLocation}/`;\n let from = 0;\n // If someone wants to use a binary search to go from O(n) to O(log n), be my guest\n while (from < packageLocationLengths.length && packageLocationLengths[from] > relativeLocation.length)\n from += 1;\n for (let t = from; t < packageLocationLengths.length; ++t) {\n const locator = packageLocatorsByLocations.get(relativeLocation.substr(0, packageLocationLengths[t]));\n if (!locator)\n continue;\n // Ensures that the returned locator isn't a blacklisted one.\n //\n // Blacklisted packages are packages that cannot be used because their dependencies cannot be deduced. This only\n // happens with peer dependencies, which effectively have different sets of dependencies depending on their\n // parents.\n //\n // In order to deambiguate those different sets of dependencies, the Yarn implementation of PnP will generate a\n // symlink for each combination of // it will find, and will\n // blacklist the target of those symlinks. By doing this, we ensure that files loaded through a specific path\n // will always have the same set of dependencies, provided the symlinks are correctly preserved.\n //\n // Unfortunately, some tools do not preserve them, and when it happens PnP isn't able anymore to deduce the set of\n // dependencies based on the path of the file that makes the require calls. But since we've blacklisted those\n // paths, we're able to print a more helpful error message that points out that a third-party package is doing\n // something incompatible!\n if (locator === null) {\n throw internalTools_1.makeError(`BLACKLISTED`, [\n `A package has been resolved through a blacklisted path - this is usually caused by one of your tool`,\n `calling \"realpath\" on the return value of \"require.resolve\". Since the returned values use symlinks to`,\n `disambiguate peer dependencies, they must be passed untransformed to \"require\".`,\n ].join(` `));\n }\n return locator;\n }\n return null;\n }\n /**\n * Transforms a request (what's typically passed as argument to the require function) into an unqualified path.\n * This path is called \"unqualified\" because it only changes the package name to the package location on the disk,\n * which means that the end result still cannot be directly accessed (for example, it doesn't try to resolve the\n * file extension, or to resolve directories to their \"index.js\" content). Use the \"resolveUnqualified\" function\n * to convert them to fully-qualified paths, or just use \"resolveRequest\" that do both operations in one go.\n *\n * Note that it is extremely important that the `issuer` path ends with a forward slash if the issuer is to be\n * treated as a folder (ie. \"/tmp/foo/\" rather than \"/tmp/foo\" if \"foo\" is a directory). Otherwise relative\n * imports won't be computed correctly (they'll get resolved relative to \"/tmp/\" instead of \"/tmp/foo/\").\n */\n function resolveToUnqualified(request, issuer, { considerBuiltins = true } = {}) {\n // The 'pnpapi' request is reserved and will always return the path to the PnP file, from everywhere\n if (request === `pnpapi`)\n return opts.pnpapiResolution;\n // Bailout if the request is a native module\n if (considerBuiltins && builtinModules.has(request))\n return null;\n // We allow disabling the pnp resolution for some subpaths. This is because some projects, often legacy,\n // contain multiple levels of dependencies (ie. a yarn.lock inside a subfolder of a yarn.lock). This is\n // typically solved using workspaces, but not all of them have been converted already.\n if (ignorePattern && issuer && ignorePattern.test(normalizePath(issuer))) {\n const result = callNativeResolution(request, issuer);\n if (result === false) {\n throw internalTools_1.makeError(`BUILTIN_NODE_RESOLUTION_FAIL`, `The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer was explicitely ignored by the regexp)\\n\\nRequire request: \"${request}\"\\nRequired by: ${issuer}\\n`, { request, issuer });\n }\n return result;\n }\n let unqualifiedPath;\n // If the request is a relative or absolute path, we just return it normalized\n const dependencyNameMatch = request.match(pathRegExp);\n if (!dependencyNameMatch) {\n if (path_1.default.isAbsolute(request)) {\n unqualifiedPath = path_1.default.normalize(request);\n }\n else {\n if (!issuer) {\n throw internalTools_1.makeError(`API_ERROR`, `The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute`, { request, issuer });\n }\n if (issuer.match(isDirRegExp)) {\n unqualifiedPath = path_1.default.normalize(path_1.default.resolve(issuer, request));\n }\n else {\n unqualifiedPath = path_1.default.normalize(path_1.default.resolve(path_1.default.dirname(issuer), request));\n }\n }\n }\n // Things are more hairy if it's a package require - we then need to figure out which package is needed, and in\n // particular the exact version for the given location on the dependency tree\n else {\n if (!issuer) {\n throw internalTools_1.makeError(`API_ERROR`, `The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute`, { request, issuer });\n }\n const [, dependencyName, subPath] = dependencyNameMatch;\n const issuerLocator = findPackageLocator(issuer);\n // If the issuer file doesn't seem to be owned by a package managed through pnp, then we resort to using the next\n // resolution algorithm in the chain, usually the native Node resolution one\n if (!issuerLocator) {\n const result = callNativeResolution(request, issuer);\n if (result === false) {\n throw internalTools_1.makeError(`BUILTIN_NODE_RESOLUTION_FAIL`, `The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer doesn't seem to be part of the Yarn-managed dependency tree)\\n\\nRequire path: \"${request}\"\\nRequired by: ${issuer}\\n`, { request, issuer });\n }\n return result;\n }\n const issuerInformation = getPackageInformationSafe(issuerLocator);\n // We obtain the dependency reference in regard to the package that request it\n let dependencyReference = issuerInformation.packageDependencies.get(dependencyName);\n // If we can't find it, we check if we can potentially load it from the packages that have been defined as potential fallbacks.\n // It's a bit of a hack, but it improves compatibility with the existing Node ecosystem. Hopefully we should eventually be able\n // to kill this logic and become stricter once pnp gets enough traction and the affected packages fix themselves.\n if (issuerLocator.name !== null) {\n for (let t = 0, T = fallbackLocators.length; dependencyReference === undefined && t < T; ++t) {\n const fallbackInformation = getPackageInformationSafe(fallbackLocators[t]);\n dependencyReference = fallbackInformation.packageDependencies.get(dependencyName);\n }\n }\n // If we can't find the path, and if the package making the request is the top-level, we can offer nicer error messages\n if (!dependencyReference) {\n if (dependencyReference === null) {\n if (issuerLocator.name === null) {\n throw internalTools_1.makeError(`MISSING_PEER_DEPENDENCY`, `Something that got detected as your top-level application (because it doesn't seem to belong to any package) tried to access a peer dependency; this isn't allowed as the peer dependency cannot be provided by any parent package\\n\\nRequired package: ${dependencyName} (via \"${request}\")\\nRequired by: ${issuer}\\n`, { request, issuer, dependencyName });\n }\n else {\n throw internalTools_1.makeError(`MISSING_PEER_DEPENDENCY`, `A package is trying to access a peer dependency that should be provided by its direct ancestor but isn't\\n\\nRequired package: ${dependencyName} (via \"${request}\")\\nRequired by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuer})\\n`, { request, issuer, issuerLocator: Object.assign({}, issuerLocator), dependencyName });\n }\n }\n else {\n if (issuerLocator.name === null) {\n throw internalTools_1.makeError(`UNDECLARED_DEPENDENCY`, `Something that got detected as your top-level application (because it doesn't seem to belong to any package) tried to access a package that is not declared in your dependencies\\n\\nRequired package: ${dependencyName} (via \"${request}\")\\nRequired by: ${issuer}\\n`, { request, issuer, dependencyName });\n }\n else {\n const candidates = Array.from(issuerInformation.packageDependencies.keys());\n throw internalTools_1.makeError(`UNDECLARED_DEPENDENCY`, `A package is trying to access another package without the second one being listed as a dependency of the first one\\n\\nRequired package: ${dependencyName} (via \"${request}\")\\nRequired by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuer})\\n`, { request, issuer, issuerLocator: Object.assign({}, issuerLocator), dependencyName, candidates });\n }\n }\n }\n // We need to check that the package exists on the filesystem, because it might not have been installed\n const dependencyLocator = { name: dependencyName, reference: dependencyReference };\n const dependencyInformation = getPackageInformationSafe(dependencyLocator);\n if (!dependencyInformation.packageLocation) {\n throw internalTools_1.makeError(`MISSING_DEPENDENCY`, `A dependency seems valid but didn't get installed for some reason. This might be caused by a partial install, such as dev vs prod.\\n\\nRequired package: ${dependencyLocator.name}@${dependencyLocator.reference} (via \"${request}\")\\nRequired by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuer})\\n`, { request, issuer, dependencyLocator: Object.assign({}, dependencyLocator) });\n }\n // Now that we know which package we should resolve to, we only have to find out the file location\n const dependencyLocation = path_1.default.resolve(runtimeState.basePath, dependencyInformation.packageLocation);\n if (subPath) {\n unqualifiedPath = path_1.default.resolve(dependencyLocation, subPath);\n }\n else {\n unqualifiedPath = dependencyLocation;\n }\n }\n return path_1.default.normalize(unqualifiedPath);\n }\n ;\n /**\n * Transforms an unqualified path into a qualified path by using the Node resolution algorithm (which automatically\n * appends \".js\" / \".json\", and transforms directory accesses into \"index.js\").\n */\n function resolveUnqualified(unqualifiedPath, { extensions = Object.keys(module_1.default._extensions) } = {}) {\n const candidates = [];\n const qualifiedPath = applyNodeExtensionResolution(unqualifiedPath, candidates, { extensions });\n if (qualifiedPath) {\n return path_1.default.normalize(qualifiedPath);\n }\n else {\n throw internalTools_1.makeError(`QUALIFIED_PATH_RESOLUTION_FAILED`, `Couldn't find a suitable Node resolution for the specified unqualified path\\n\\nSource path: ${unqualifiedPath}\\n${candidates.map(candidate => `Rejected resolution: ${candidate}\\n`).join(``)}`, { unqualifiedPath });\n }\n }\n ;\n /**\n * Transforms a request into a fully qualified path.\n *\n * Note that it is extremely important that the `issuer` path ends with a forward slash if the issuer is to be\n * treated as a folder (ie. \"/tmp/foo/\" rather than \"/tmp/foo\" if \"foo\" is a directory). Otherwise relative\n * imports won't be computed correctly (they'll get resolved relative to \"/tmp/\" instead of \"/tmp/foo/\").\n */\n function resolveRequest(request, issuer, { considerBuiltins, extensions } = {}) {\n let unqualifiedPath = resolveToUnqualified(request, issuer, { considerBuiltins });\n if (unqualifiedPath === null) {\n return null;\n }\n try {\n return resolveUnqualified(unqualifiedPath, { extensions });\n }\n catch (resolutionError) {\n if (resolutionError.code === 'QUALIFIED_PATH_RESOLUTION_FAILED') {\n Object.assign(resolutionError.data, { request, issuer });\n }\n throw resolutionError;\n }\n }\n ;\n return {\n VERSIONS,\n topLevel,\n getPackageInformation,\n findPackageLocator,\n resolveToUnqualified,\n resolveUnqualified,\n resolveRequest,\n };\n}\nexports.makeApi = makeApi;\n\n\n/***/ })\n/******/ ]);"; +module.exports = "module.exports =\n/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// define __esModule on exports\n/******/ \t__webpack_require__.r = function(exports) {\n/******/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t}\n/******/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t};\n/******/\n/******/ \t// create a fake namespace object\n/******/ \t// mode & 1: value is a module id, require it\n/******/ \t// mode & 2: merge all properties of value into the ns\n/******/ \t// mode & 4: return value when already ns object\n/******/ \t// mode & 8|1: behave like require\n/******/ \t__webpack_require__.t = function(value, mode) {\n/******/ \t\tif(mode & 1) value = __webpack_require__(value);\n/******/ \t\tif(mode & 8) return value;\n/******/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/******/ \t\tvar ns = Object.create(null);\n/******/ \t\t__webpack_require__.r(ns);\n/******/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/******/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/******/ \t\treturn ns;\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 0);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst fslib_1 = __webpack_require__(1);\nconst fs_1 = __importDefault(__webpack_require__(3));\nconst module_1 = __importDefault(__webpack_require__(17));\nconst path_1 = __importDefault(__webpack_require__(4));\nconst string_decoder_1 = __importDefault(__webpack_require__(18));\nconst applyPatch_1 = __webpack_require__(19);\nconst hydrateRuntimeState_1 = __webpack_require__(21);\nconst makeApi_1 = __webpack_require__(22);\n// We must copy the fs into a local, because otherwise\n// 1. we would make the NodeFS instance use the function that we patched (infinite loop)\n// 2. Object.create(fs) isn't enough, since it won't prevent the proto from being modified\nconst localFs = Object.assign({}, fs_1.default);\nconst nodeFs = new fslib_1.NodeFS(localFs);\nconst zipOpenFs = new fslib_1.ZipOpenFS({ baseFs: nodeFs });\nmodule.exports = makeApi_1.makeApi($$SETUP_STATE(hydrateRuntimeState_1.hydrateRuntimeState), {\n compatibilityMode: true,\n pnpapiResolution: path_1.default.resolve(__dirname, __filename),\n fakeFs: zipOpenFs,\n});\nif (__non_webpack_module__.parent && __non_webpack_module__.parent.id === 'internal/preload') {\n applyPatch_1.applyPatch(module.exports, {\n compatibilityMode: true,\n fakeFs: zipOpenFs,\n });\n if (__non_webpack_module__.filename) {\n // We delete it from the cache in order to support the case where the CLI resolver is invoked from \"yarn run\"\n // It's annoying because it might cause some issues when the file is multiple times in NODE_OPTIONS, but it shouldn't happen anyway.\n delete module_1.default._cache[__non_webpack_module__.filename];\n }\n}\n// @ts-ignore\nif (process.mainModule === __non_webpack_module__) {\n const reportError = (code, message, data) => {\n process.stdout.write(`${JSON.stringify([{ code, message, data }, null])}\\n`);\n };\n const reportSuccess = (resolution) => {\n process.stdout.write(`${JSON.stringify([null, resolution])}\\n`);\n };\n const processResolution = (request, issuer) => {\n try {\n reportSuccess(module.exports.resolveRequest(request, issuer));\n }\n catch (error) {\n reportError(error.code, error.message, error.data);\n }\n };\n const processRequest = (data) => {\n try {\n const [request, issuer] = JSON.parse(data);\n processResolution(request, issuer);\n }\n catch (error) {\n reportError(`INVALID_JSON`, error.message, error.data);\n }\n };\n if (process.argv.length > 2) {\n if (process.argv.length !== 4) {\n process.stderr.write(`Usage: ${process.argv[0]} ${process.argv[1]} \\n`);\n process.exitCode = 64; /* EX_USAGE */\n }\n else {\n processResolution(process.argv[2], process.argv[3]);\n }\n }\n else {\n let buffer = '';\n const decoder = new string_decoder_1.default.StringDecoder();\n process.stdin.on('data', chunk => {\n buffer += decoder.write(chunk);\n do {\n const index = buffer.indexOf('\\n');\n if (index === -1)\n break;\n const line = buffer.slice(0, index);\n buffer = buffer.slice(index + 1);\n processRequest(line);\n } while (true);\n });\n }\n}\n\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst NodeFS_1 = __webpack_require__(2);\nvar AliasFS_1 = __webpack_require__(6);\nexports.AliasFS = AliasFS_1.AliasFS;\nvar FakeFS_1 = __webpack_require__(5);\nexports.FakeFS = FakeFS_1.FakeFS;\nvar CwdFS_1 = __webpack_require__(7);\nexports.CwdFS = CwdFS_1.CwdFS;\nvar JailFS_1 = __webpack_require__(8);\nexports.JailFS = JailFS_1.JailFS;\nvar NodeFS_2 = __webpack_require__(2);\nexports.NodeFS = NodeFS_2.NodeFS;\nvar PosixFS_1 = __webpack_require__(9);\nexports.PosixFS = PosixFS_1.PosixFS;\nvar ZipFS_1 = __webpack_require__(10);\nexports.ZipFS = ZipFS_1.ZipFS;\nvar ZipOpenFS_1 = __webpack_require__(16);\nexports.ZipOpenFS = ZipOpenFS_1.ZipOpenFS;\nfunction wrapSync(fn) {\n return fn;\n}\nfunction wrapAsync(fn) {\n return function (...args) {\n const cb = typeof args[args.length - 1] === `function`\n ? args.pop()\n : null;\n setImmediate(() => {\n let error, result;\n try {\n result = fn(...args);\n }\n catch (caught) {\n error = caught;\n }\n cb(error, result);\n });\n };\n}\nfunction patchFs(patchedFs, fakeFs) {\n const SYNC_IMPLEMENTATIONS = new Set([\n `createReadStream`,\n `chmodSync`,\n `copyFileSync`,\n `lstatSync`,\n `openSync`,\n `readlinkSync`,\n `readFileSync`,\n `readdirSync`,\n `readlinkSync`,\n `realpathSync`,\n `rmdirSync`,\n `statSync`,\n `symlinkSync`,\n `unlinkSync`,\n `utimesSync`,\n `writeFileSync`,\n ]);\n const ASYNC_IMPLEMENTATIONS = new Set([\n `chmodPromise`,\n `copyFilePromise`,\n `lstatPromise`,\n `openPromise`,\n `readdirPromise`,\n `realpathPromise`,\n `readFilePromise`,\n `readdirPromise`,\n `readlinkPromise`,\n `rmdirPromise`,\n `statPromise`,\n `symlinkPromise`,\n `unlinkPromise`,\n `utimesPromise`,\n `writeFilePromise`,\n ]);\n patchedFs.existsSync = (p) => {\n try {\n return fakeFs.existsSync(p);\n }\n catch (error) {\n return false;\n }\n };\n patchedFs.exists = (p, callback) => {\n fakeFs.existsPromise(p).then(result => {\n if (callback) {\n callback(result);\n }\n }, () => {\n if (callback) {\n callback(false);\n }\n });\n };\n for (const fnName of ASYNC_IMPLEMENTATIONS) {\n const fakeImpl = fakeFs[fnName].bind(fakeFs);\n const origName = fnName.replace(/Promise$/, ``);\n patchedFs[origName] = (...args) => {\n const hasCallback = typeof args[args.length - 1] === `function`;\n const callback = hasCallback ? args.pop() : () => { };\n fakeImpl(...args).then((result) => {\n callback(undefined, result);\n }, (error) => {\n callback(error);\n });\n };\n }\n for (const fnName of SYNC_IMPLEMENTATIONS) {\n const fakeImpl = fakeFs[fnName].bind(fakeFs);\n const origName = fnName;\n patchedFs[origName] = fakeImpl;\n }\n patchedFs.realpathSync.native = patchedFs.realpathSync;\n patchedFs.realpath.native = patchedFs.realpath;\n}\nexports.patchFs = patchFs;\nfunction extendFs(realFs, fakeFs) {\n const patchedFs = Object.create(realFs);\n patchFs(patchedFs, fakeFs);\n return patchedFs;\n}\nexports.extendFs = extendFs;\nexports.xfs = new NodeFS_1.NodeFS();\n\n\n/***/ }),\n/* 2 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst fs_1 = __importDefault(__webpack_require__(3));\nconst path_1 = __webpack_require__(4);\nconst FakeFS_1 = __webpack_require__(5);\nconst PORTABLE_PATH_PREFIX = `/mnt/`;\nconst PORTABLE_PREFIX_REGEXP = /^\\/mnt\\/([a-z])(?:\\/(.*))?$/;\nclass NodeFS extends FakeFS_1.FakeFS {\n constructor(realFs = fs_1.default) {\n super();\n this.realFs = realFs;\n }\n getRealPath() {\n return `/`;\n }\n async openPromise(p, flags, mode) {\n return await new Promise((resolve, reject) => {\n this.realFs.open(NodeFS.fromPortablePath(p), flags, mode, this.makeCallback(resolve, reject));\n });\n }\n openSync(p, flags, mode) {\n return this.realFs.openSync(NodeFS.fromPortablePath(p), flags, mode);\n }\n async closePromise(fd) {\n await new Promise((resolve, reject) => {\n this.realFs.close(fd, this.makeCallback(resolve, reject));\n });\n }\n closeSync(fd) {\n this.realFs.closeSync(fd);\n }\n createReadStream(p, opts) {\n return this.realFs.createReadStream(NodeFS.fromPortablePath(p), opts);\n }\n createWriteStream(p, opts) {\n return this.realFs.createWriteStream(NodeFS.fromPortablePath(p), opts);\n }\n async realpathPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.realpath(NodeFS.fromPortablePath(p), {}, this.makeCallback(resolve, reject));\n }).then(path => {\n return NodeFS.toPortablePath(path);\n });\n }\n realpathSync(p) {\n return NodeFS.toPortablePath(this.realFs.realpathSync(NodeFS.fromPortablePath(p), {}));\n }\n async existsPromise(p) {\n return await new Promise(resolve => {\n this.realFs.exists(NodeFS.fromPortablePath(p), resolve);\n });\n }\n existsSync(p) {\n return this.realFs.existsSync(NodeFS.fromPortablePath(p));\n }\n async statPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.stat(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject));\n });\n }\n statSync(p) {\n return this.realFs.statSync(NodeFS.fromPortablePath(p));\n }\n async lstatPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.lstat(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject));\n });\n }\n lstatSync(p) {\n return this.realFs.lstatSync(NodeFS.fromPortablePath(p));\n }\n async chmodPromise(p, mask) {\n return await new Promise((resolve, reject) => {\n this.realFs.chmod(NodeFS.fromPortablePath(p), mask, this.makeCallback(resolve, reject));\n });\n }\n chmodSync(p, mask) {\n return this.realFs.chmodSync(NodeFS.fromPortablePath(p), mask);\n }\n async renamePromise(oldP, newP) {\n return await new Promise((resolve, reject) => {\n this.realFs.rename(NodeFS.fromPortablePath(oldP), NodeFS.fromPortablePath(newP), this.makeCallback(resolve, reject));\n });\n }\n renameSync(oldP, newP) {\n return this.realFs.renameSync(NodeFS.fromPortablePath(oldP), NodeFS.fromPortablePath(newP));\n }\n async copyFilePromise(sourceP, destP, flags = 0) {\n return await new Promise((resolve, reject) => {\n this.realFs.copyFile(NodeFS.fromPortablePath(sourceP), NodeFS.fromPortablePath(destP), flags, this.makeCallback(resolve, reject));\n });\n }\n copyFileSync(sourceP, destP, flags = 0) {\n return this.realFs.copyFileSync(NodeFS.fromPortablePath(sourceP), NodeFS.fromPortablePath(destP), flags);\n }\n async writeFilePromise(p, content, opts) {\n return await new Promise((resolve, reject) => {\n if (opts) {\n this.realFs.writeFile(NodeFS.fromPortablePath(p), content, opts, this.makeCallback(resolve, reject));\n }\n else {\n this.realFs.writeFile(NodeFS.fromPortablePath(p), content, this.makeCallback(resolve, reject));\n }\n });\n }\n writeFileSync(p, content, opts) {\n if (opts) {\n this.realFs.writeFileSync(NodeFS.fromPortablePath(p), content, opts);\n }\n else {\n this.realFs.writeFileSync(NodeFS.fromPortablePath(p), content);\n }\n }\n async unlinkPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.unlink(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject));\n });\n }\n unlinkSync(p) {\n return this.realFs.unlinkSync(NodeFS.fromPortablePath(p));\n }\n async utimesPromise(p, atime, mtime) {\n return await new Promise((resolve, reject) => {\n this.realFs.utimes(NodeFS.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject));\n });\n }\n utimesSync(p, atime, mtime) {\n this.realFs.utimesSync(NodeFS.fromPortablePath(p), atime, mtime);\n }\n async mkdirPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.mkdir(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject));\n });\n }\n mkdirSync(p) {\n return this.realFs.mkdirSync(NodeFS.fromPortablePath(p));\n }\n async rmdirPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.rmdir(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject));\n });\n }\n rmdirSync(p) {\n return this.realFs.rmdirSync(NodeFS.fromPortablePath(p));\n }\n async symlinkPromise(target, p) {\n return await new Promise((resolve, reject) => {\n this.realFs.symlink(NodeFS.fromPortablePath(target), NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject));\n });\n }\n symlinkSync(target, p) {\n return this.realFs.symlinkSync(NodeFS.fromPortablePath(target), NodeFS.fromPortablePath(p));\n }\n async readFilePromise(p, encoding) {\n return await new Promise((resolve, reject) => {\n this.realFs.readFile(NodeFS.fromPortablePath(p), encoding, this.makeCallback(resolve, reject));\n });\n }\n readFileSync(p, encoding) {\n return this.realFs.readFileSync(NodeFS.fromPortablePath(p), encoding);\n }\n async readdirPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.readdir(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject));\n });\n }\n readdirSync(p) {\n return this.realFs.readdirSync(NodeFS.fromPortablePath(p));\n }\n async readlinkPromise(p) {\n return await new Promise((resolve, reject) => {\n this.realFs.readlink(NodeFS.fromPortablePath(p), this.makeCallback(resolve, reject));\n }).then(path => {\n return NodeFS.toPortablePath(path);\n });\n }\n readlinkSync(p) {\n return NodeFS.toPortablePath(this.realFs.readlinkSync(NodeFS.fromPortablePath(p)));\n }\n makeCallback(resolve, reject) {\n return (err, result) => {\n if (err) {\n reject(err);\n }\n else {\n resolve(result);\n }\n };\n }\n static fromPortablePath(p) {\n if (process.platform !== `win32`)\n return p;\n // Path should look like \"/mnt/n/berry/scripts/plugin-pack.js\"\n // And transform to \"N:\\berry/scripts/plugin-pack.js\"\n const match = p.match(PORTABLE_PREFIX_REGEXP);\n if (!match)\n return p;\n const [, drive, pathWithoutPrefix = ''] = match;\n const windowsPath = pathWithoutPrefix.replace(/\\//g, '\\\\');\n return `${drive.toUpperCase()}:\\\\${windowsPath}`;\n }\n static toPortablePath(p) {\n if (process.platform !== `win32`)\n return p;\n // Path should look like \"N:\\berry/scripts/plugin-pack.js\"\n // And transform to \"/mnt/n/berry/scripts/plugin-pack.js\"\n // Skip if the path is already portable\n if (p.startsWith(PORTABLE_PATH_PREFIX))\n return p;\n const { root } = path_1.win32.parse(p);\n // If relative path, just replace win32 slashes by posix slashes\n if (!root)\n return p.replace(/\\\\/g, '/');\n const driveLetter = root[0].toLowerCase();\n const pathWithoutRoot = p.substr(root.length);\n const posixPath = pathWithoutRoot.replace(/\\\\/g, '/');\n return `${PORTABLE_PATH_PREFIX}${driveLetter}/${posixPath}`;\n }\n}\nexports.NodeFS = NodeFS;\n\n\n/***/ }),\n/* 3 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"fs\");\n\n/***/ }),\n/* 4 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"path\");\n\n/***/ }),\n/* 5 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst path_1 = __webpack_require__(4);\nclass FakeFS {\n resolve(p) {\n return path_1.posix.resolve(`/`, p);\n }\n async removePromise(p) {\n let stat;\n try {\n stat = await this.lstatPromise(p);\n }\n catch (error) {\n if (error.code === `ENOENT`) {\n return;\n }\n else {\n throw error;\n }\n }\n if (stat.isDirectory()) {\n for (const entry of await this.readdirPromise(p))\n await this.removePromise(path_1.posix.resolve(p, entry));\n // 5 gives 1s worth of retries at worst\n for (let t = 0; t < 5; ++t) {\n try {\n await this.rmdirPromise(p);\n break;\n }\n catch (error) {\n if (error.code === `EBUSY` || error.code === `ENOTEMPTY`) {\n await new Promise(resolve => setTimeout(resolve, t * 100));\n continue;\n }\n else {\n throw error;\n }\n }\n }\n }\n else {\n await this.unlinkPromise(p);\n }\n }\n removeSync(p) {\n let stat;\n try {\n stat = this.lstatSync(p);\n }\n catch (error) {\n if (error.code === `ENOENT`) {\n return;\n }\n else {\n throw error;\n }\n }\n if (stat.isDirectory()) {\n for (const entry of this.readdirSync(p))\n this.removeSync(path_1.posix.resolve(p, entry));\n this.rmdirSync(p);\n }\n else {\n this.unlinkSync(p);\n }\n }\n async mkdirpPromise(p, { chmod, utimes } = {}) {\n p = this.resolve(p);\n if (p === `/`)\n return;\n const parts = p.split(`/`);\n for (let u = 2; u <= parts.length; ++u) {\n const subPath = parts.slice(0, u).join(`/`);\n if (!this.existsSync(subPath)) {\n try {\n await this.mkdirPromise(subPath);\n }\n catch (error) {\n if (error.code === `EEXIST`) {\n continue;\n }\n else {\n throw error;\n }\n }\n if (chmod != null)\n await this.chmodPromise(subPath, chmod);\n if (utimes != null) {\n await this.utimesPromise(subPath, utimes[0], utimes[1]);\n }\n }\n }\n }\n mkdirpSync(p, { chmod, utimes } = {}) {\n p = this.resolve(p);\n if (p === `/`)\n return;\n const parts = p.split(`/`);\n for (let u = 2; u <= parts.length; ++u) {\n const subPath = parts.slice(0, u).join(`/`);\n if (!this.existsSync(subPath)) {\n try {\n this.mkdirSync(subPath);\n }\n catch (error) {\n if (error.code === `EEXIST`) {\n continue;\n }\n else {\n throw error;\n }\n }\n if (chmod != null)\n this.chmodSync(subPath, chmod);\n if (utimes != null) {\n this.utimesSync(subPath, utimes[0], utimes[1]);\n }\n }\n }\n }\n async copyPromise(destination, source, { baseFs = this, overwrite = true } = {}) {\n const stat = await baseFs.lstatPromise(source);\n if (stat.isDirectory()) {\n await this.mkdirpPromise(destination);\n const directoryListing = await baseFs.readdirPromise(source);\n await Promise.all(directoryListing.map(entry => {\n return this.copyPromise(path_1.posix.join(destination, entry), path_1.posix.join(source, entry), { baseFs, overwrite });\n }));\n }\n else if (stat.isFile()) {\n if (!await this.existsPromise(destination) || overwrite) {\n const content = await baseFs.readFilePromise(source);\n await this.writeFilePromise(destination, content);\n }\n }\n else {\n throw new Error(`Unsupported file type (file: ${source}, mode: 0o${stat.mode.toString(8).padStart(6, `0`)})`);\n }\n const mode = stat.mode & 0o777;\n await this.chmodPromise(destination, mode);\n }\n copySync(destination, source, { baseFs = this, overwrite = true } = {}) {\n const stat = baseFs.lstatSync(source);\n if (stat.isDirectory()) {\n this.mkdirpSync(destination);\n const directoryListing = baseFs.readdirSync(source);\n for (const entry of directoryListing) {\n this.copySync(path_1.posix.join(destination, entry), path_1.posix.join(source, entry), { baseFs, overwrite });\n }\n }\n else if (stat.isFile()) {\n if (!this.existsSync(destination) || overwrite) {\n const content = baseFs.readFileSync(source);\n this.writeFileSync(destination, content);\n }\n }\n else {\n throw new Error(`Unsupported file type (file: ${source}, mode: 0o${stat.mode.toString(8).padStart(6, `0`)})`);\n }\n const mode = stat.mode & 0o777;\n this.chmodSync(destination, mode);\n }\n async changeFilePromise(p, content) {\n try {\n const current = await this.readFilePromise(p, `utf8`);\n if (current === content) {\n return;\n }\n }\n catch (error) {\n // ignore errors, no big deal\n }\n await this.writeFilePromise(p, content);\n }\n changeFileSync(p, content) {\n try {\n const current = this.readFileSync(p, `utf8`);\n if (current === content) {\n return;\n }\n }\n catch (error) {\n // ignore errors, no big deal\n }\n this.writeFileSync(p, content);\n }\n async movePromise(fromP, toP) {\n try {\n await this.renamePromise(fromP, toP);\n }\n catch (error) {\n if (error.code === `EXDEV`) {\n await this.copyPromise(toP, fromP);\n await this.removePromise(fromP);\n }\n else {\n throw error;\n }\n }\n }\n moveSync(fromP, toP) {\n try {\n this.renameSync(fromP, toP);\n }\n catch (error) {\n if (error.code === `EXDEV`) {\n this.copySync(toP, fromP);\n this.removeSync(fromP);\n }\n else {\n throw error;\n }\n }\n }\n async lockPromise(affectedPath, callback) {\n const lockPath = `${affectedPath}.lock`;\n const interval = 1000 / 60;\n const timeout = Date.now() + 60 * 1000;\n let fd = null;\n while (fd === null) {\n try {\n fd = await this.openPromise(lockPath, `wx`);\n }\n catch (error) {\n if (error.code === `EEXIST`) {\n if (Date.now() < timeout) {\n await new Promise(resolve => setTimeout(resolve, interval));\n }\n else {\n throw new Error(`Couldn't acquire a lock in a reasonable time (${timeout / 1000}s)`);\n }\n }\n else {\n throw error;\n }\n }\n }\n try {\n await callback();\n }\n finally {\n await this.closePromise(fd);\n await this.unlinkPromise(lockPath);\n }\n }\n}\nexports.FakeFS = FakeFS;\n;\n\n\n/***/ }),\n/* 6 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst FakeFS_1 = __webpack_require__(5);\nclass AliasFS extends FakeFS_1.FakeFS {\n constructor(target, { baseFs }) {\n super();\n this.target = target;\n this.baseFs = baseFs;\n }\n getRealPath() {\n return this.target;\n }\n getBaseFs() {\n return this.baseFs;\n }\n async openPromise(p, flags, mode) {\n return await this.baseFs.openPromise(p, flags, mode);\n }\n openSync(p, flags, mode) {\n return this.baseFs.openSync(p, flags, mode);\n }\n async closePromise(fd) {\n await this.baseFs.closePromise(fd);\n }\n closeSync(fd) {\n this.baseFs.closeSync(fd);\n }\n createReadStream(p, opts) {\n return this.baseFs.createReadStream(p, opts);\n }\n createWriteStream(p, opts) {\n return this.baseFs.createWriteStream(p, opts);\n }\n async realpathPromise(p) {\n return await this.baseFs.realpathPromise(p);\n }\n realpathSync(p) {\n return this.baseFs.realpathSync(p);\n }\n async existsPromise(p) {\n return await this.baseFs.existsPromise(p);\n }\n existsSync(p) {\n return this.baseFs.existsSync(p);\n }\n async statPromise(p) {\n return await this.baseFs.statPromise(p);\n }\n statSync(p) {\n return this.baseFs.statSync(p);\n }\n async lstatPromise(p) {\n return await this.baseFs.lstatPromise(p);\n }\n lstatSync(p) {\n return this.baseFs.lstatSync(p);\n }\n async chmodPromise(p, mask) {\n return await this.baseFs.chmodPromise(p, mask);\n }\n chmodSync(p, mask) {\n return this.baseFs.chmodSync(p, mask);\n }\n async renamePromise(oldP, newP) {\n return await this.baseFs.renamePromise(oldP, newP);\n }\n renameSync(oldP, newP) {\n return this.baseFs.renameSync(oldP, newP);\n }\n async copyFilePromise(sourceP, destP, flags) {\n return await this.baseFs.copyFilePromise(sourceP, destP, flags);\n }\n copyFileSync(sourceP, destP, flags) {\n return this.baseFs.copyFileSync(sourceP, destP, flags);\n }\n async writeFilePromise(p, content, opts) {\n return await this.baseFs.writeFilePromise(p, content, opts);\n }\n writeFileSync(p, content, opts) {\n return this.baseFs.writeFileSync(p, content, opts);\n }\n async unlinkPromise(p) {\n return await this.baseFs.unlinkPromise(p);\n }\n unlinkSync(p) {\n return this.baseFs.unlinkSync(p);\n }\n async utimesPromise(p, atime, mtime) {\n return await this.baseFs.utimesPromise(p, atime, mtime);\n }\n utimesSync(p, atime, mtime) {\n return this.baseFs.utimesSync(p, atime, mtime);\n }\n async mkdirPromise(p) {\n return await this.baseFs.mkdirPromise(p);\n }\n mkdirSync(p) {\n return this.baseFs.mkdirSync(p);\n }\n async rmdirPromise(p) {\n return await this.baseFs.rmdirPromise(p);\n }\n rmdirSync(p) {\n return this.baseFs.rmdirSync(p);\n }\n async symlinkPromise(target, p) {\n return await this.baseFs.symlinkPromise(target, p);\n }\n symlinkSync(target, p) {\n return this.baseFs.symlinkSync(target, p);\n }\n async readFilePromise(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return await this.baseFs.readFilePromise(p, encoding);\n default:\n return await this.baseFs.readFilePromise(p, encoding);\n }\n }\n readFileSync(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return this.baseFs.readFileSync(p, encoding);\n default:\n return this.baseFs.readFileSync(p, encoding);\n }\n }\n async readdirPromise(p) {\n return await this.baseFs.readdirPromise(p);\n }\n readdirSync(p) {\n return this.baseFs.readdirSync(p);\n }\n async readlinkPromise(p) {\n return await this.baseFs.readlinkPromise(p);\n }\n readlinkSync(p) {\n return this.baseFs.readlinkSync(p);\n }\n}\nexports.AliasFS = AliasFS;\n\n\n/***/ }),\n/* 7 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst path_1 = __webpack_require__(4);\nconst FakeFS_1 = __webpack_require__(5);\nconst NodeFS_1 = __webpack_require__(2);\nclass CwdFS extends FakeFS_1.FakeFS {\n constructor(target, { baseFs = new NodeFS_1.NodeFS() } = {}) {\n super();\n this.target = target;\n this.baseFs = baseFs;\n }\n getRealPath() {\n return path_1.posix.resolve(this.baseFs.getRealPath(), this.target);\n }\n getTarget() {\n return this.target;\n }\n getBaseFs() {\n return this.baseFs;\n }\n resolve(p) {\n return this.baseFs.resolve(this.fromCwdPath(p));\n }\n async openPromise(p, flags, mode) {\n return await this.baseFs.openPromise(this.fromCwdPath(p), flags, mode);\n }\n openSync(p, flags, mode) {\n return this.baseFs.openSync(this.fromCwdPath(p), flags, mode);\n }\n async closePromise(fd) {\n await this.baseFs.closePromise(fd);\n }\n closeSync(fd) {\n this.baseFs.closeSync(fd);\n }\n createReadStream(p, opts) {\n return this.baseFs.createReadStream(this.fromCwdPath(p), opts);\n }\n createWriteStream(p, opts) {\n return this.baseFs.createWriteStream(this.fromCwdPath(p), opts);\n }\n async realpathPromise(p) {\n return await this.baseFs.realpathPromise(this.fromCwdPath(p));\n }\n realpathSync(p) {\n return this.baseFs.realpathSync(this.fromCwdPath(p));\n }\n async existsPromise(p) {\n return await this.baseFs.existsPromise(this.fromCwdPath(p));\n }\n existsSync(p) {\n return this.baseFs.existsSync(this.fromCwdPath(p));\n }\n async statPromise(p) {\n return await this.baseFs.statPromise(this.fromCwdPath(p));\n }\n statSync(p) {\n return this.baseFs.statSync(this.fromCwdPath(p));\n }\n async lstatPromise(p) {\n return await this.baseFs.lstatPromise(this.fromCwdPath(p));\n }\n lstatSync(p) {\n return this.baseFs.lstatSync(this.fromCwdPath(p));\n }\n async chmodPromise(p, mask) {\n return await this.baseFs.chmodPromise(this.fromCwdPath(p), mask);\n }\n chmodSync(p, mask) {\n return this.baseFs.chmodSync(this.fromCwdPath(p), mask);\n }\n async renamePromise(oldP, newP) {\n return await this.baseFs.renamePromise(this.fromCwdPath(oldP), this.fromCwdPath(newP));\n }\n renameSync(oldP, newP) {\n return this.baseFs.renameSync(this.fromCwdPath(oldP), this.fromCwdPath(newP));\n }\n async copyFilePromise(sourceP, destP, flags) {\n return await this.baseFs.copyFilePromise(this.fromCwdPath(sourceP), this.fromCwdPath(destP), flags);\n }\n copyFileSync(sourceP, destP, flags) {\n return this.baseFs.copyFileSync(this.fromCwdPath(sourceP), this.fromCwdPath(destP), flags);\n }\n async writeFilePromise(p, content, opts) {\n return await this.baseFs.writeFilePromise(this.fromCwdPath(p), content, opts);\n }\n writeFileSync(p, content, opts) {\n return this.baseFs.writeFileSync(this.fromCwdPath(p), content, opts);\n }\n async unlinkPromise(p) {\n return await this.baseFs.unlinkPromise(this.fromCwdPath(p));\n }\n unlinkSync(p) {\n return this.baseFs.unlinkSync(this.fromCwdPath(p));\n }\n async utimesPromise(p, atime, mtime) {\n return await this.baseFs.utimesPromise(this.fromCwdPath(p), atime, mtime);\n }\n utimesSync(p, atime, mtime) {\n return this.baseFs.utimesSync(this.fromCwdPath(p), atime, mtime);\n }\n async mkdirPromise(p) {\n return await this.baseFs.mkdirPromise(this.fromCwdPath(p));\n }\n mkdirSync(p) {\n return this.baseFs.mkdirSync(this.fromCwdPath(p));\n }\n async rmdirPromise(p) {\n return await this.baseFs.rmdirPromise(this.fromCwdPath(p));\n }\n rmdirSync(p) {\n return this.baseFs.rmdirSync(this.fromCwdPath(p));\n }\n async symlinkPromise(target, p) {\n return await this.baseFs.symlinkPromise(target, this.fromCwdPath(p));\n }\n symlinkSync(target, p) {\n return this.baseFs.symlinkSync(target, this.fromCwdPath(p));\n }\n async readFilePromise(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return await this.baseFs.readFilePromise(this.fromCwdPath(p), encoding);\n default:\n return await this.baseFs.readFilePromise(this.fromCwdPath(p), encoding);\n }\n }\n readFileSync(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return this.baseFs.readFileSync(this.fromCwdPath(p), encoding);\n default:\n return this.baseFs.readFileSync(this.fromCwdPath(p), encoding);\n }\n }\n async readdirPromise(p) {\n return await this.baseFs.readdirPromise(this.fromCwdPath(p));\n }\n readdirSync(p) {\n return this.baseFs.readdirSync(this.fromCwdPath(p));\n }\n async readlinkPromise(p) {\n return await this.baseFs.readlinkPromise(this.fromCwdPath(p));\n }\n readlinkSync(p) {\n return this.baseFs.readlinkSync(this.fromCwdPath(p));\n }\n fromCwdPath(p) {\n return path_1.posix.resolve(this.getRealPath(), p);\n }\n}\nexports.CwdFS = CwdFS;\n\n\n/***/ }),\n/* 8 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst path_1 = __webpack_require__(4);\nconst FakeFS_1 = __webpack_require__(5);\nconst NodeFS_1 = __webpack_require__(2);\nclass JailFS extends FakeFS_1.FakeFS {\n constructor(target, { baseFs = new NodeFS_1.NodeFS() } = {}) {\n super();\n this.target = path_1.posix.resolve(`/`, target);\n this.baseFs = baseFs;\n }\n getRealPath() {\n return path_1.posix.resolve(this.baseFs.getRealPath(), path_1.posix.relative(`/`, this.target));\n }\n getTarget() {\n return this.target;\n }\n getBaseFs() {\n return this.baseFs;\n }\n async openPromise(p, flags, mode) {\n return await this.baseFs.openPromise(this.fromJailedPath(p), flags, mode);\n }\n openSync(p, flags, mode) {\n return this.baseFs.openSync(this.fromJailedPath(p), flags, mode);\n }\n async closePromise(fd) {\n await this.baseFs.closePromise(fd);\n }\n closeSync(fd) {\n this.baseFs.closeSync(fd);\n }\n createReadStream(p, opts) {\n return this.baseFs.createReadStream(this.fromJailedPath(p), opts);\n }\n createWriteStream(p, opts) {\n return this.baseFs.createWriteStream(this.fromJailedPath(p), opts);\n }\n async realpathPromise(p) {\n return this.toJailedPath(await this.baseFs.realpathPromise(this.fromJailedPath(p)));\n }\n realpathSync(p) {\n return this.toJailedPath(this.baseFs.realpathSync(this.fromJailedPath(p)));\n }\n async existsPromise(p) {\n return await this.baseFs.existsPromise(this.fromJailedPath(p));\n }\n existsSync(p) {\n return this.baseFs.existsSync(this.fromJailedPath(p));\n }\n async statPromise(p) {\n return await this.baseFs.statPromise(this.fromJailedPath(p));\n }\n statSync(p) {\n return this.baseFs.statSync(this.fromJailedPath(p));\n }\n async lstatPromise(p) {\n return await this.baseFs.lstatPromise(this.fromJailedPath(p));\n }\n lstatSync(p) {\n return this.baseFs.lstatSync(this.fromJailedPath(p));\n }\n async chmodPromise(p, mask) {\n return await this.baseFs.chmodPromise(this.fromJailedPath(p), mask);\n }\n chmodSync(p, mask) {\n return this.baseFs.chmodSync(this.fromJailedPath(p), mask);\n }\n async renamePromise(oldP, newP) {\n return await this.baseFs.renamePromise(this.fromJailedPath(oldP), this.fromJailedPath(newP));\n }\n renameSync(oldP, newP) {\n return this.baseFs.renameSync(this.fromJailedPath(oldP), this.fromJailedPath(newP));\n }\n async copyFilePromise(sourceP, destP, flags) {\n return await this.baseFs.copyFilePromise(this.fromJailedPath(sourceP), this.fromJailedPath(destP), flags);\n }\n copyFileSync(sourceP, destP, flags) {\n return this.baseFs.copyFileSync(this.fromJailedPath(sourceP), this.fromJailedPath(destP), flags);\n }\n async writeFilePromise(p, content, opts) {\n return await this.baseFs.writeFilePromise(this.fromJailedPath(p), content, opts);\n }\n writeFileSync(p, content, opts) {\n return this.baseFs.writeFileSync(this.fromJailedPath(p), content, opts);\n }\n async unlinkPromise(p) {\n return await this.baseFs.unlinkPromise(this.fromJailedPath(p));\n }\n unlinkSync(p) {\n return this.baseFs.unlinkSync(this.fromJailedPath(p));\n }\n async utimesPromise(p, atime, mtime) {\n return await this.baseFs.utimesPromise(this.fromJailedPath(p), atime, mtime);\n }\n utimesSync(p, atime, mtime) {\n return this.baseFs.utimesSync(this.fromJailedPath(p), atime, mtime);\n }\n async mkdirPromise(p) {\n return await this.baseFs.mkdirPromise(this.fromJailedPath(p));\n }\n mkdirSync(p) {\n return this.baseFs.mkdirSync(this.fromJailedPath(p));\n }\n async rmdirPromise(p) {\n return await this.baseFs.rmdirPromise(this.fromJailedPath(p));\n }\n rmdirSync(p) {\n return this.baseFs.rmdirSync(this.fromJailedPath(p));\n }\n async symlinkPromise(target, p) {\n return await this.baseFs.symlinkPromise(target, this.fromJailedPath(p));\n }\n symlinkSync(target, p) {\n return this.baseFs.symlinkSync(target, this.fromJailedPath(p));\n }\n async readFilePromise(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return await this.baseFs.readFilePromise(this.fromJailedPath(p), encoding);\n default:\n return await this.baseFs.readFilePromise(this.fromJailedPath(p), encoding);\n }\n }\n readFileSync(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return this.baseFs.readFileSync(this.fromJailedPath(p), encoding);\n default:\n return this.baseFs.readFileSync(this.fromJailedPath(p), encoding);\n }\n }\n async readdirPromise(p) {\n return await this.baseFs.readdirPromise(this.fromJailedPath(p));\n }\n readdirSync(p) {\n return this.baseFs.readdirSync(this.fromJailedPath(p));\n }\n async readlinkPromise(p) {\n return await this.baseFs.readlinkPromise(this.fromJailedPath(p));\n }\n readlinkSync(p) {\n return this.baseFs.readlinkSync(this.fromJailedPath(p));\n }\n fromJailedPath(p) {\n const normalized = path_1.posix.normalize(p);\n if (path_1.posix.isAbsolute(p))\n return path_1.posix.resolve(this.target, path_1.posix.relative(`/`, p));\n if (normalized.match(/^\\.\\.\\//))\n throw new Error(`Resolving this path (${p}) would escape the jail`);\n return path_1.posix.resolve(this.target, p);\n }\n toJailedPath(p) {\n return path_1.posix.resolve(`/`, path_1.posix.relative(this.target, p));\n }\n}\nexports.JailFS = JailFS;\n\n\n/***/ }),\n/* 9 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst FakeFS_1 = __webpack_require__(5);\nconst NodeFS_1 = __webpack_require__(2);\nclass PosixFS extends FakeFS_1.FakeFS {\n constructor(baseFs) {\n super();\n this.baseFs = baseFs;\n }\n getRealPath() {\n return NodeFS_1.NodeFS.fromPortablePath(this.baseFs.getRealPath());\n }\n async openPromise(p, flags, mode) {\n return await this.baseFs.openPromise(NodeFS_1.NodeFS.toPortablePath(p), flags, mode);\n }\n openSync(p, flags, mode) {\n return this.baseFs.openSync(NodeFS_1.NodeFS.toPortablePath(p), flags, mode);\n }\n async closePromise(fd) {\n await this.baseFs.closePromise(fd);\n }\n closeSync(fd) {\n this.baseFs.closeSync(fd);\n }\n createReadStream(p, opts) {\n return this.baseFs.createReadStream(NodeFS_1.NodeFS.toPortablePath(p), opts);\n }\n createWriteStream(p, opts) {\n return this.baseFs.createWriteStream(NodeFS_1.NodeFS.toPortablePath(p), opts);\n }\n async realpathPromise(p) {\n return NodeFS_1.NodeFS.fromPortablePath(await this.baseFs.realpathPromise(NodeFS_1.NodeFS.toPortablePath(p)));\n }\n realpathSync(p) {\n return NodeFS_1.NodeFS.fromPortablePath(this.baseFs.realpathSync(NodeFS_1.NodeFS.toPortablePath(p)));\n }\n async existsPromise(p) {\n return await this.baseFs.existsPromise(NodeFS_1.NodeFS.toPortablePath(p));\n }\n existsSync(p) {\n return this.baseFs.existsSync(NodeFS_1.NodeFS.toPortablePath(p));\n }\n async statPromise(p) {\n return await this.baseFs.statPromise(NodeFS_1.NodeFS.toPortablePath(p));\n }\n statSync(p) {\n return this.baseFs.statSync(NodeFS_1.NodeFS.toPortablePath(p));\n }\n async lstatPromise(p) {\n return await this.baseFs.lstatPromise(NodeFS_1.NodeFS.toPortablePath(p));\n }\n lstatSync(p) {\n return this.baseFs.lstatSync(NodeFS_1.NodeFS.toPortablePath(p));\n }\n async chmodPromise(p, mask) {\n return await this.baseFs.chmodPromise(NodeFS_1.NodeFS.toPortablePath(p), mask);\n }\n chmodSync(p, mask) {\n return this.baseFs.chmodSync(NodeFS_1.NodeFS.toPortablePath(p), mask);\n }\n async renamePromise(oldP, newP) {\n return await this.baseFs.renamePromise(NodeFS_1.NodeFS.toPortablePath(oldP), NodeFS_1.NodeFS.toPortablePath(newP));\n }\n renameSync(oldP, newP) {\n return this.baseFs.renameSync(NodeFS_1.NodeFS.toPortablePath(oldP), NodeFS_1.NodeFS.toPortablePath(newP));\n }\n async copyFilePromise(sourceP, destP, flags) {\n return await this.baseFs.copyFilePromise(NodeFS_1.NodeFS.toPortablePath(sourceP), NodeFS_1.NodeFS.toPortablePath(destP), flags);\n }\n copyFileSync(sourceP, destP, flags) {\n return this.baseFs.copyFileSync(NodeFS_1.NodeFS.toPortablePath(sourceP), NodeFS_1.NodeFS.toPortablePath(destP), flags);\n }\n async writeFilePromise(p, content, opts) {\n return await this.baseFs.writeFilePromise(NodeFS_1.NodeFS.toPortablePath(p), content, opts);\n }\n writeFileSync(p, content, opts) {\n return this.baseFs.writeFileSync(NodeFS_1.NodeFS.toPortablePath(p), content, opts);\n }\n async unlinkPromise(p) {\n return await this.baseFs.unlinkPromise(NodeFS_1.NodeFS.toPortablePath(p));\n }\n unlinkSync(p) {\n return this.baseFs.unlinkSync(NodeFS_1.NodeFS.toPortablePath(p));\n }\n async utimesPromise(p, atime, mtime) {\n return await this.baseFs.utimesPromise(NodeFS_1.NodeFS.toPortablePath(p), atime, mtime);\n }\n utimesSync(p, atime, mtime) {\n return this.baseFs.utimesSync(NodeFS_1.NodeFS.toPortablePath(p), atime, mtime);\n }\n async mkdirPromise(p) {\n return await this.baseFs.mkdirPromise(NodeFS_1.NodeFS.toPortablePath(p));\n }\n mkdirSync(p) {\n return this.baseFs.mkdirSync(NodeFS_1.NodeFS.toPortablePath(p));\n }\n async rmdirPromise(p) {\n return await this.baseFs.rmdirPromise(NodeFS_1.NodeFS.toPortablePath(p));\n }\n rmdirSync(p) {\n return this.baseFs.rmdirSync(NodeFS_1.NodeFS.toPortablePath(p));\n }\n async symlinkPromise(target, p) {\n return await this.baseFs.symlinkPromise(target, NodeFS_1.NodeFS.toPortablePath(p));\n }\n symlinkSync(target, p) {\n return this.baseFs.symlinkSync(target, NodeFS_1.NodeFS.toPortablePath(p));\n }\n async readFilePromise(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return await this.baseFs.readFilePromise(NodeFS_1.NodeFS.toPortablePath(p), encoding);\n default:\n return await this.baseFs.readFilePromise(NodeFS_1.NodeFS.toPortablePath(p), encoding);\n }\n }\n readFileSync(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return this.baseFs.readFileSync(NodeFS_1.NodeFS.toPortablePath(p), encoding);\n default:\n return this.baseFs.readFileSync(NodeFS_1.NodeFS.toPortablePath(p), encoding);\n }\n }\n async readdirPromise(p) {\n return await this.baseFs.readdirPromise(NodeFS_1.NodeFS.toPortablePath(p));\n }\n readdirSync(p) {\n return this.baseFs.readdirSync(NodeFS_1.NodeFS.toPortablePath(p));\n }\n async readlinkPromise(p) {\n return NodeFS_1.NodeFS.fromPortablePath(await this.baseFs.readlinkPromise(NodeFS_1.NodeFS.toPortablePath(p)));\n }\n readlinkSync(p) {\n return NodeFS_1.NodeFS.fromPortablePath(this.baseFs.readlinkSync(NodeFS_1.NodeFS.toPortablePath(p)));\n }\n}\nexports.PosixFS = PosixFS;\n\n\n/***/ }),\n/* 10 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst libzip_1 = __importDefault(__webpack_require__(11));\nconst fs_1 = __webpack_require__(3);\nconst path_1 = __webpack_require__(4);\nconst stream_1 = __webpack_require__(14);\nconst util_1 = __webpack_require__(15);\nconst FakeFS_1 = __webpack_require__(5);\nconst NodeFS_1 = __webpack_require__(2);\nconst S_IFMT = 0o170000;\nconst S_IFDIR = 0o040000;\nconst S_IFREG = 0o100000;\nconst S_IFLNK = 0o120000;\nclass StatEntry {\n constructor() {\n this.dev = 0;\n this.ino = 0;\n this.mode = 0;\n this.nlink = 1;\n this.rdev = 0;\n this.blocks = 1;\n }\n isBlockDevice() {\n return false;\n }\n isCharacterDevice() {\n return false;\n }\n isDirectory() {\n return (this.mode & S_IFMT) === S_IFDIR;\n }\n isFIFO() {\n return false;\n }\n isFile() {\n return (this.mode & S_IFMT) === S_IFREG;\n }\n isSocket() {\n return false;\n }\n isSymbolicLink() {\n return (this.mode & S_IFMT) === S_IFLNK;\n }\n}\nfunction toUnixTimestamp(time) {\n if (typeof time === 'string' && String(+time) === time) {\n return +time;\n }\n // @ts-ignore\n if (Number.isFinite(time)) {\n if (time < 0) {\n return Date.now() / 1000;\n }\n else {\n return time;\n }\n }\n if (util_1.isDate(time)) {\n // convert to 123.456 UNIX timestamp\n // @ts-ignore\n return time.getTime() / 1000;\n }\n throw new Error(`Invalid time`);\n}\nclass ZipFS extends FakeFS_1.FakeFS {\n constructor(p, { baseFs = new NodeFS_1.NodeFS(), create = false, readOnly = false, stats } = {}) {\n super();\n this.listings = new Map();\n this.entries = new Map();\n this.ready = false;\n this.path = p;\n this.baseFs = baseFs;\n if (stats) {\n this.stats = stats;\n }\n else {\n try {\n this.stats = this.baseFs.statSync(p);\n }\n catch (error) {\n if (error.code === `ENOENT` && create) {\n this.stats = Object.assign(new StatEntry(), { uid: 0, gid: 0, size: 0, blksize: 0, atimeMs: 0, mtimeMs: 0, ctimeMs: 0, birthtimeMs: 0, atime: new Date(0), mtime: new Date(0), ctime: new Date(0), birthtime: new Date(0), mode: S_IFREG | 0o644 });\n }\n else {\n throw error;\n }\n }\n }\n const errPtr = libzip_1.default.malloc(4);\n try {\n let flags = 0;\n if (create)\n flags |= libzip_1.default.ZIP_CREATE | libzip_1.default.ZIP_TRUNCATE;\n if (readOnly)\n flags |= libzip_1.default.ZIP_RDONLY;\n this.zip = libzip_1.default.open(NodeFS_1.NodeFS.fromPortablePath(p), flags, errPtr);\n if (this.zip === 0) {\n const error = libzip_1.default.struct.errorS();\n libzip_1.default.error.initWithCode(error, libzip_1.default.getValue(errPtr, `i32`));\n throw new Error(libzip_1.default.error.strerror(error));\n }\n }\n finally {\n libzip_1.default.free(errPtr);\n }\n const entryCount = libzip_1.default.getNumEntries(this.zip, 0);\n this.listings.set(`/`, new Set());\n for (let t = 0; t < entryCount; ++t) {\n const raw = libzip_1.default.getName(this.zip, t, 0);\n if (path_1.posix.isAbsolute(raw))\n continue;\n const p = path_1.posix.resolve(`/`, raw);\n this.registerEntry(p, t);\n }\n this.ready = true;\n }\n getRealPath() {\n return this.path;\n }\n saveAndClose() {\n if (!this.ready)\n throw Object.assign(new Error(`EBUSY: archive closed, close`), { code: `EBUSY` });\n const previousMod = this.baseFs.existsSync(this.path)\n ? this.baseFs.statSync(this.path).mode & 0o777\n : null;\n const rc = libzip_1.default.close(this.zip);\n if (rc === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n // Libzip overrides the chmod when writing the archive, which is a weird\n // behavior I don't totally understand (plus the umask seems bogus in some\n // weird cases - maybe related to emscripten?)\n //\n // See also https://github.com/nih-at/libzip/issues/77\n if (previousMod !== null && previousMod !== (this.baseFs.statSync(this.path).mode & 0o777))\n this.baseFs.chmodSync(this.path, previousMod);\n this.ready = false;\n }\n discardAndClose() {\n libzip_1.default.discard(this.zip);\n this.ready = false;\n }\n async openPromise(p, flags, mode) {\n return this.openSync(p, flags, mode);\n }\n openSync(p, flags, mode) {\n throw new Error(`Unimplemented`);\n }\n async closePromise(fd) {\n this.closeSync(fd);\n }\n closeSync(fd) {\n throw new Error(`Unimplemented`);\n }\n createReadStream(p, { encoding } = {}) {\n const stream = Object.assign(new stream_1.PassThrough(), {\n bytesRead: 0,\n path: p,\n close: () => {\n clearImmediate(immediate);\n }\n });\n const immediate = setImmediate(() => {\n try {\n const data = this.readFileSync(p, encoding);\n stream.bytesRead = data.length;\n stream.write(data);\n stream.end();\n }\n catch (error) {\n stream.emit(`error`, error);\n stream.end();\n }\n });\n return stream;\n }\n createWriteStream(p, { encoding } = {}) {\n const stream = Object.assign(new stream_1.PassThrough(), {\n bytesWritten: 0,\n path: p,\n close: () => {\n stream.end();\n },\n });\n const chunks = [];\n stream.on(`data`, chunk => {\n const chunkBuffer = Buffer.from(chunk);\n stream.bytesWritten += chunkBuffer.length;\n chunks.push(chunkBuffer);\n });\n stream.on(`end`, () => {\n this.writeFileSync(p, Buffer.concat(chunks), encoding);\n });\n return stream;\n }\n async realpathPromise(p) {\n return this.realpathSync(p);\n }\n realpathSync(p) {\n const resolvedP = this.resolveFilename(`lstat '${p}'`, p);\n if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOENT: no such file or directory, lstat '${p}'`), { code: `ENOENT` });\n return resolvedP;\n }\n async existsPromise(p) {\n return this.existsSync(p);\n }\n existsSync(p) {\n let resolvedP;\n try {\n resolvedP = this.resolveFilename(`stat '${p}'`, p);\n }\n catch (error) {\n return false;\n }\n return this.entries.has(resolvedP) || this.listings.has(resolvedP);\n }\n async statPromise(p) {\n return this.statSync(p);\n }\n statSync(p) {\n const resolvedP = this.resolveFilename(`stat '${p}'`, p);\n if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOENT: no such file or directory, stat '${p}'`), { code: `ENOENT` });\n if (p[p.length - 1] === `/` && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOTDIR: not a directory, stat '${p}'`), { code: `ENOTDIR` });\n return this.statImpl(`stat '${p}'`, resolvedP);\n }\n async lstatPromise(p) {\n return this.lstatSync(p);\n }\n lstatSync(p) {\n const resolvedP = this.resolveFilename(`lstat '${p}'`, p, false);\n if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOENT: no such file or directory, lstat '${p}'`), { code: `ENOENT` });\n if (p[p.length - 1] === `/` && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOTDIR: not a directory, lstat '${p}'`), { code: `ENOTDIR` });\n return this.statImpl(`lstat '${p}'`, resolvedP);\n }\n statImpl(reason, p) {\n if (this.listings.has(p)) {\n const uid = this.stats.uid;\n const gid = this.stats.gid;\n const size = 0;\n const blksize = 512;\n const blocks = 0;\n const atimeMs = this.stats.mtimeMs;\n const birthtimeMs = this.stats.mtimeMs;\n const ctimeMs = this.stats.mtimeMs;\n const mtimeMs = this.stats.mtimeMs;\n const atime = new Date(atimeMs);\n const birthtime = new Date(birthtimeMs);\n const ctime = new Date(ctimeMs);\n const mtime = new Date(mtimeMs);\n const mode = S_IFDIR | 0o755;\n return Object.assign(new StatEntry(), { uid, gid, size, blksize, blocks, atime, birthtime, ctime, mtime, atimeMs, birthtimeMs, ctimeMs, mtimeMs, mode });\n }\n const entry = this.entries.get(p);\n if (entry !== undefined) {\n const stat = libzip_1.default.struct.statS();\n const rc = libzip_1.default.statIndex(this.zip, entry, 0, 0, stat);\n if (rc === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n const uid = this.stats.uid;\n const gid = this.stats.gid;\n const size = (libzip_1.default.struct.statSize(stat) >>> 0);\n const blksize = 512;\n const blocks = Math.ceil(size / blksize);\n const mtimeMs = (libzip_1.default.struct.statMtime(stat) >>> 0) * 1000;\n const atimeMs = mtimeMs;\n const birthtimeMs = mtimeMs;\n const ctimeMs = mtimeMs;\n const atime = new Date(atimeMs);\n const birthtime = new Date(birthtimeMs);\n const ctime = new Date(ctimeMs);\n const mtime = new Date(mtimeMs);\n const mode = this.getUnixMode(entry, S_IFREG | 0o644);\n return Object.assign(new StatEntry(), { uid, gid, size, blksize, blocks, atime, birthtime, ctime, mtime, atimeMs, birthtimeMs, ctimeMs, mtimeMs, mode });\n }\n throw new Error(`Unreachable`);\n }\n getUnixMode(index, defaultMode) {\n const rc = libzip_1.default.file.getExternalAttributes(this.zip, index, 0, 0, libzip_1.default.uint08S, libzip_1.default.uint32S);\n if (rc === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n const opsys = libzip_1.default.getValue(libzip_1.default.uint08S, `i8`) >>> 0;\n if (opsys !== libzip_1.default.ZIP_OPSYS_UNIX)\n return defaultMode;\n return libzip_1.default.getValue(libzip_1.default.uint32S, `i32`) >>> 16;\n }\n registerListing(p) {\n let listing = this.listings.get(p);\n if (listing)\n return listing;\n const parentListing = this.registerListing(path_1.posix.dirname(p));\n listing = new Set();\n parentListing.add(path_1.posix.basename(p));\n this.listings.set(p, listing);\n return listing;\n }\n registerEntry(p, index) {\n const parentListing = this.registerListing(path_1.posix.dirname(p));\n parentListing.add(path_1.posix.basename(p));\n this.entries.set(p, index);\n }\n resolveFilename(reason, p, resolveLastComponent = true) {\n if (!this.ready)\n throw Object.assign(new Error(`EBUSY: archive closed, ${reason}`), { code: `EBUSY` });\n let resolvedP = path_1.posix.resolve(`/`, p);\n if (resolvedP === `/`)\n return `/`;\n while (true) {\n const parentP = this.resolveFilename(reason, path_1.posix.dirname(resolvedP), true);\n const isDir = this.listings.has(parentP);\n const doesExist = this.entries.has(parentP);\n if (!isDir && !doesExist)\n throw Object.assign(new Error(`ENOENT: no such file or directory, ${reason}`), { code: `ENOENT` });\n if (!isDir)\n throw Object.assign(new Error(`ENOTDIR: not a directory, ${reason}`), { code: `ENOTDIR` });\n resolvedP = path_1.posix.resolve(parentP, path_1.posix.basename(resolvedP));\n if (!resolveLastComponent)\n break;\n const index = libzip_1.default.name.locate(this.zip, resolvedP);\n if (index === -1)\n break;\n if (this.isSymbolicLink(index)) {\n const target = this.getFileSource(index).toString();\n resolvedP = path_1.posix.resolve(path_1.posix.dirname(resolvedP), target);\n }\n else {\n break;\n }\n }\n return resolvedP;\n }\n setFileSource(p, content) {\n if (!Buffer.isBuffer(content))\n content = Buffer.from(content);\n const buffer = libzip_1.default.malloc(content.byteLength);\n if (!buffer)\n throw new Error(`Couldn't allocate enough memory`);\n // Copy the file into the Emscripten heap\n const heap = new Uint8Array(libzip_1.default.HEAPU8.buffer, buffer, content.byteLength);\n heap.set(content);\n const source = libzip_1.default.source.fromBuffer(this.zip, buffer, content.byteLength, 0, true);\n if (source === 0) {\n libzip_1.default.free(buffer);\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n }\n return libzip_1.default.file.add(this.zip, path_1.posix.relative(`/`, p), source, libzip_1.default.ZIP_FL_OVERWRITE);\n }\n isSymbolicLink(index) {\n const attrs = libzip_1.default.file.getExternalAttributes(this.zip, index, 0, 0, libzip_1.default.uint08S, libzip_1.default.uint32S);\n if (attrs === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n const opsys = libzip_1.default.getValue(libzip_1.default.uint08S, `i8`) >>> 0;\n if (opsys !== libzip_1.default.ZIP_OPSYS_UNIX)\n return false;\n const attributes = libzip_1.default.getValue(libzip_1.default.uint32S, `i32`) >>> 16;\n return (attributes & S_IFMT) === S_IFLNK;\n }\n getFileSource(index) {\n const stat = libzip_1.default.struct.statS();\n const rc = libzip_1.default.statIndex(this.zip, index, 0, 0, stat);\n if (rc === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n const size = libzip_1.default.struct.statSize(stat);\n const buffer = libzip_1.default.malloc(size);\n try {\n const file = libzip_1.default.fopenIndex(this.zip, index, 0, 0);\n if (file === 0)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n try {\n const rc = libzip_1.default.fread(file, buffer, size, 0);\n if (rc === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.file.getError(file)));\n else if (rc < size)\n throw new Error(`Incomplete read`);\n else if (rc > size)\n throw new Error(`Overread`);\n const memory = libzip_1.default.HEAPU8.subarray(buffer, buffer + size);\n const data = Buffer.from(memory);\n return data;\n }\n finally {\n libzip_1.default.fclose(file);\n }\n }\n finally {\n libzip_1.default.free(buffer);\n }\n }\n async chmodPromise(p, mask) {\n return this.chmodSync(p, mask);\n }\n chmodSync(p, mask) {\n const resolvedP = this.resolveFilename(`chmod '${p}'`, p, false);\n if (this.listings.has(resolvedP)) {\n if ((mask & 0o755) === 0o755) {\n return;\n }\n else {\n throw Object.assign(new Error(`EISDIR: illegal operation on a directory, chmod '${p}'`), { code: `EISDIR` });\n }\n }\n const entry = this.entries.get(resolvedP);\n if (entry === undefined)\n throw new Error(`Unreachable`);\n const oldMod = this.getUnixMode(entry, S_IFREG | 0o000);\n const newMod = oldMod & (~0o777) | mask;\n const rc = libzip_1.default.file.setExternalAttributes(this.zip, entry, 0, 0, libzip_1.default.ZIP_OPSYS_UNIX, newMod << 16);\n if (rc === -1) {\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n }\n }\n async renamePromise(oldP, newP) {\n return this.renameSync(oldP, newP);\n }\n renameSync(oldP, newP) {\n throw new Error(`Unimplemented`);\n }\n async copyFilePromise(sourceP, destP, flags) {\n return this.copyFileSync(sourceP, destP, flags);\n }\n copyFileSync(sourceP, destP, flags = 0) {\n if ((flags & fs_1.constants.COPYFILE_FICLONE_FORCE) !== 0)\n throw Object.assign(new Error(`ENOSYS: unsupported clone operation, copyfile '${sourceP}' -> ${destP}'`), { code: `ENOSYS` });\n const resolvedSourceP = this.resolveFilename(`copyfile '${sourceP} -> ${destP}'`, sourceP);\n const indexSource = this.entries.get(resolvedSourceP);\n if (typeof indexSource === `undefined`)\n throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${sourceP}' -> '${destP}'`), { code: `EINVAL` });\n const resolvedDestP = this.resolveFilename(`copyfile '${sourceP}' -> ${destP}'`, destP);\n const indexDest = this.entries.get(resolvedDestP);\n if ((flags & (fs_1.constants.COPYFILE_EXCL | fs_1.constants.COPYFILE_FICLONE_FORCE)) !== 0 && typeof indexDest !== `undefined`)\n throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${sourceP}' -> '${destP}'`), { code: `EEXIST` });\n const source = this.getFileSource(indexSource);\n const newIndex = this.setFileSource(resolvedDestP, source);\n if (newIndex !== indexDest) {\n this.registerEntry(resolvedDestP, newIndex);\n }\n }\n async writeFilePromise(p, content, opts) {\n return this.writeFileSync(p, content, opts);\n }\n writeFileSync(p, content, opts) {\n const resolvedP = this.resolveFilename(`open '${p}'`, p);\n if (this.listings.has(resolvedP))\n throw Object.assign(new Error(`EISDIR: illegal operation on a directory, open '${p}'`), { code: `EISDIR` });\n const index = this.entries.get(resolvedP);\n if (index !== undefined && typeof opts === `object` && opts.flag && opts.flag.includes(`a`))\n content = Buffer.concat([this.getFileSource(index), Buffer.from(content)]);\n let encoding = null;\n if (typeof opts === `string`)\n encoding = opts;\n else if (typeof opts === `object` && opts.encoding)\n encoding = opts.encoding;\n if (encoding !== null)\n content = content.toString(encoding);\n const newIndex = this.setFileSource(resolvedP, content);\n if (newIndex !== index) {\n this.registerEntry(resolvedP, newIndex);\n }\n }\n async unlinkPromise(p) {\n return this.unlinkSync(p);\n }\n unlinkSync(p) {\n throw new Error(`Unimplemented`);\n }\n async utimesPromise(p, atime, mtime) {\n return this.utimesSync(p, atime, mtime);\n }\n utimesSync(p, atime, mtime) {\n const resolvedP = this.resolveFilename(`chmod '${p}'`, p);\n return this.utimesImpl(resolvedP, mtime);\n }\n async lutimesPromise(p, atime, mtime) {\n return this.lutimesSync(p, atime, mtime);\n }\n lutimesSync(p, atime, mtime) {\n const resolvedP = this.resolveFilename(`chmod '${p}'`, p, false);\n return this.utimesImpl(resolvedP, mtime);\n }\n utimesImpl(resolvedP, mtime) {\n if (this.listings.has(resolvedP))\n if (!this.entries.has(resolvedP))\n this.hydrateDirectory(resolvedP);\n const entry = this.entries.get(resolvedP);\n if (entry === undefined)\n throw new Error(`Unreachable`);\n const rc = libzip_1.default.file.setMtime(this.zip, entry, 0, toUnixTimestamp(mtime), 0);\n if (rc === -1) {\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n }\n }\n async mkdirPromise(p) {\n return this.mkdirSync(p);\n }\n mkdirSync(p) {\n const resolvedP = this.resolveFilename(`mkdir '${p}'`, p);\n if (this.entries.has(resolvedP) || this.listings.has(resolvedP))\n throw Object.assign(new Error(`EEXIST: file already exists, mkdir '${p}'`), { code: `EEXIST` });\n this.hydrateDirectory(resolvedP);\n }\n async rmdirPromise(p) {\n return this.rmdirSync(p);\n }\n rmdirSync(p) {\n throw new Error(`Unimplemented`);\n }\n hydrateDirectory(resolvedP) {\n const index = libzip_1.default.dir.add(this.zip, path_1.posix.relative(`/`, resolvedP));\n if (index === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n this.registerListing(resolvedP);\n this.registerEntry(resolvedP, index);\n return index;\n }\n async symlinkPromise(target, p) {\n return this.symlinkSync(target, p);\n }\n symlinkSync(target, p) {\n const resolvedP = this.resolveFilename(`symlink '${target}' -> '${p}'`, p);\n if (this.listings.has(resolvedP))\n throw Object.assign(new Error(`EISDIR: illegal operation on a directory, symlink '${target}' -> '${p}'`), { code: `EISDIR` });\n if (this.entries.has(resolvedP))\n throw Object.assign(new Error(`EEXIST: file already exists, symlink '${target}' -> '${p}'`), { code: `EEXIST` });\n const index = this.setFileSource(resolvedP, target);\n this.registerEntry(resolvedP, index);\n const rc = libzip_1.default.file.setExternalAttributes(this.zip, index, 0, 0, libzip_1.default.ZIP_OPSYS_UNIX, (0o120000 | 0o777) << 16);\n if (rc === -1) {\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n }\n }\n async readFilePromise(p, encoding) {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return this.readFileSync(p, encoding);\n default:\n return this.readFileSync(p, encoding);\n }\n }\n readFileSync(p, encoding) {\n // This is messed up regarding the TS signatures\n if (typeof encoding === `object`)\n // @ts-ignore\n encoding = encoding ? encoding.encoding : undefined;\n const resolvedP = this.resolveFilename(`open '${p}'`, p);\n if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOENT: no such file or directory, open '${p}'`), { code: `ENOENT` });\n // Ensures that the last component is a directory, if the user said so (even if it is we'll throw right after with EISDIR anyway)\n if (p[p.length - 1] === `/` && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOTDIR: not a directory, open '${p}'`), { code: `ENOTDIR` });\n if (this.listings.has(resolvedP))\n throw Object.assign(new Error(`EISDIR: illegal operation on a directory, read`), { code: `EISDIR` });\n const entry = this.entries.get(resolvedP);\n if (entry === undefined)\n throw new Error(`Unreachable`);\n const data = this.getFileSource(entry);\n return encoding ? data.toString(encoding) : data;\n }\n async readdirPromise(p) {\n return this.readdirSync(p);\n }\n readdirSync(p) {\n const resolvedP = this.resolveFilename(`scandir '${p}'`, p);\n if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOENT: no such file or directory, scandir '${p}'`), { code: `ENOENT` });\n const directoryListing = this.listings.get(resolvedP);\n if (!directoryListing)\n throw Object.assign(new Error(`ENOTDIR: not a directory, scandir '${p}'`), { code: `ENOTDIR` });\n return Array.from(directoryListing);\n }\n async readlinkPromise(p) {\n return this.readlinkSync(p);\n }\n readlinkSync(p) {\n const resolvedP = this.resolveFilename(`readlink '${p}'`, p, false);\n if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOENT: no such file or directory, readlink '${p}'`), { code: `ENOENT` });\n // Ensure that the last component is a directory (if it is we'll throw right after with EISDIR anyway)\n if (p[p.length - 1] === `/` && !this.listings.has(resolvedP))\n throw Object.assign(new Error(`ENOTDIR: not a directory, open '${p}'`), { code: `ENOTDIR` });\n if (this.listings.has(resolvedP))\n throw Object.assign(new Error(`EINVAL: invalid argument, readlink '${p}'`), { code: `EINVAL` });\n const entry = this.entries.get(resolvedP);\n if (entry === undefined)\n throw new Error(`Unreachable`);\n const rc = libzip_1.default.file.getExternalAttributes(this.zip, entry, 0, 0, libzip_1.default.uint08S, libzip_1.default.uint32S);\n if (rc === -1)\n throw new Error(libzip_1.default.error.strerror(libzip_1.default.getError(this.zip)));\n const opsys = libzip_1.default.getValue(libzip_1.default.uint08S, `i8`) >>> 0;\n if (opsys !== libzip_1.default.ZIP_OPSYS_UNIX)\n throw Object.assign(new Error(`EINVAL: invalid argument, readlink '${p}'`), { code: `EINVAL` });\n const attributes = libzip_1.default.getValue(libzip_1.default.uint32S, `i32`) >>> 16;\n if ((attributes & 0o170000) !== 0o120000)\n throw Object.assign(new Error(`EINVAL: invalid argument, readlink '${p}'`), { code: `EINVAL` });\n return this.getFileSource(entry).toString();\n }\n}\nexports.ZipFS = ZipFS;\n;\n\n\n/***/ }),\n/* 11 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst libzip_1 = __importDefault(__webpack_require__(12));\nconst number64 = [\n `number`,\n `number`,\n];\nexports.default = {\n // Those are getters because they can change after memory growth\n get HEAP8() { return libzip_1.default.HEAP8; },\n get HEAPU8() { return libzip_1.default.HEAPU8; },\n ZIP_CHECKCONS: 4,\n ZIP_CREATE: 1,\n ZIP_EXCL: 2,\n ZIP_TRUNCATE: 8,\n ZIP_RDONLY: 16,\n ZIP_FL_OVERWRITE: 8192,\n ZIP_OPSYS_DOS: 0x00,\n ZIP_OPSYS_AMIGA: 0x01,\n ZIP_OPSYS_OPENVMS: 0x02,\n ZIP_OPSYS_UNIX: 0x03,\n ZIP_OPSYS_VM_CMS: 0x04,\n ZIP_OPSYS_ATARI_ST: 0x05,\n ZIP_OPSYS_OS_2: 0x06,\n ZIP_OPSYS_MACINTOSH: 0x07,\n ZIP_OPSYS_Z_SYSTEM: 0x08,\n ZIP_OPSYS_CPM: 0x09,\n ZIP_OPSYS_WINDOWS_NTFS: 0x0a,\n ZIP_OPSYS_MVS: 0x0b,\n ZIP_OPSYS_VSE: 0x0c,\n ZIP_OPSYS_ACORN_RISC: 0x0d,\n ZIP_OPSYS_VFAT: 0x0e,\n ZIP_OPSYS_ALTERNATE_MVS: 0x0f,\n ZIP_OPSYS_BEOS: 0x10,\n ZIP_OPSYS_TANDEM: 0x11,\n ZIP_OPSYS_OS_400: 0x12,\n ZIP_OPSYS_OS_X: 0x13,\n uint08S: libzip_1.default._malloc(1),\n uint16S: libzip_1.default._malloc(2),\n uint32S: libzip_1.default._malloc(4),\n uint64S: libzip_1.default._malloc(8),\n malloc: libzip_1.default._malloc,\n free: libzip_1.default._free,\n getValue: libzip_1.default.getValue,\n open: libzip_1.default.cwrap(`zip_open`, `number`, [`string`, `number`, `number`]),\n close: libzip_1.default.cwrap(`zip_close`, `number`, [`number`]),\n discard: libzip_1.default.cwrap(`zip_discard`, `void`, [`number`]),\n getError: libzip_1.default.cwrap(`zip_get_error`, `number`, [`number`]),\n getName: libzip_1.default.cwrap(`zip_get_name`, `string`, [`number`, `number`, `number`]),\n getNumEntries: libzip_1.default.cwrap(`zip_get_num_entries`, `number`, [`number`, `number`]),\n stat: libzip_1.default.cwrap(`zip_stat`, `number`, [`number`, `string`, `number`, `number`]),\n statIndex: libzip_1.default.cwrap(`zip_stat_index`, `number`, [`number`, ...number64, `number`, `number`]),\n fopen: libzip_1.default.cwrap(`zip_fopen`, `number`, [`number`, `string`, `number`]),\n fopenIndex: libzip_1.default.cwrap(`zip_fopen_index`, `number`, [`number`, ...number64, `number`]),\n fread: libzip_1.default.cwrap(`zip_fread`, `number`, [`number`, `number`, `number`, `number`]),\n fclose: libzip_1.default.cwrap(`zip_fclose`, `number`, [`number`]),\n dir: {\n add: libzip_1.default.cwrap(`zip_dir_add`, `number`, [`number`, `string`]),\n },\n file: {\n add: libzip_1.default.cwrap(`zip_file_add`, `number`, [`number`, `string`, `number`, `number`]),\n getError: libzip_1.default.cwrap(`zip_file_get_error`, `number`, [`number`]),\n getExternalAttributes: libzip_1.default.cwrap(`zip_file_get_external_attributes`, `number`, [`number`, ...number64, `number`, `number`, `number`]),\n setExternalAttributes: libzip_1.default.cwrap(`zip_file_set_external_attributes`, `number`, [`number`, ...number64, `number`, `number`, `number`]),\n setMtime: libzip_1.default.cwrap(`zip_file_set_mtime`, `number`, [`number`, ...number64, `number`, `number`]),\n },\n error: {\n initWithCode: libzip_1.default.cwrap(`zip_error_init_with_code`, `void`, [`number`, `number`]),\n strerror: libzip_1.default.cwrap(`zip_error_strerror`, `string`, [`number`]),\n },\n name: {\n locate: libzip_1.default.cwrap(`zip_name_locate`, `number`, [`number`, `string`, `number`]),\n },\n source: {\n fromBuffer: libzip_1.default.cwrap(`zip_source_buffer`, `number`, [`number`, `number`, ...number64, `number`]),\n },\n struct: {\n stat: libzip_1.default.cwrap(`zipstruct_stat`, `number`, []),\n statS: libzip_1.default.cwrap(`zipstruct_statS`, `number`, []),\n statName: libzip_1.default.cwrap(`zipstruct_stat_name`, `string`, [`number`]),\n statIndex: libzip_1.default.cwrap(`zipstruct_stat_index`, `number`, [`number`]),\n statSize: libzip_1.default.cwrap(`zipstruct_stat_size`, `number`, [`number`]),\n statMtime: libzip_1.default.cwrap(`zipstruct_stat_mtime`, `number`, [`number`]),\n error: libzip_1.default.cwrap(`zipstruct_error`, `number`, []),\n errorS: libzip_1.default.cwrap(`zipstruct_errorS`, `number`, []),\n },\n};\n\n\n/***/ }),\n/* 12 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar frozenFs = Object.assign({}, __webpack_require__(3));\nvar Module=typeof Module!==\"undefined\"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module[\"arguments\"]=[];Module[\"thisProgram\"]=\"./this.program\";Module[\"quit\"]=(function(status,toThrow){throw toThrow});Module[\"preRun\"]=[];Module[\"postRun\"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=true;if(Module[\"ENVIRONMENT\"]){throw new Error(\"Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)\")}var scriptDirectory=\"\";function locateFile(path){if(Module[\"locateFile\"]){return Module[\"locateFile\"](path,scriptDirectory)}else{return scriptDirectory+path}}if(ENVIRONMENT_IS_NODE){if(!(typeof process===\"object\"&&\"function\"===\"function\"))throw new Error(\"not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)\");scriptDirectory=__dirname+\"/\";var nodeFS;var nodePath;Module[\"read\"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=frozenFs;if(!nodePath)nodePath=__webpack_require__(4);filename=nodePath[\"normalize\"](filename);ret=nodeFS[\"readFileSync\"](filename)}return binary?ret:ret.toString()};Module[\"readBinary\"]=function readBinary(filename){var ret=Module[\"read\"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process[\"argv\"].length>1){Module[\"thisProgram\"]=process[\"argv\"][1].replace(/\\\\/g,\"/\")}Module[\"arguments\"]=process[\"argv\"].slice(2);if(true){module[\"exports\"]=Module}(function(){})(\"uncaughtException\",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));(function(){})(\"unhandledRejection\",abort);Module[\"quit\"]=(function(status){process[\"exit\"](status)});Module[\"inspect\"]=(function(){return\"[Emscripten Module object]\"})}else{throw new Error(\"environment detection error\")}var out=Module[\"print\"]||(typeof console!==\"undefined\"?console.log.bind(console):typeof print!==\"undefined\"?print:null);var err=Module[\"printErr\"]||(typeof printErr!==\"undefined\"?printErr:typeof console!==\"undefined\"&&console.warn.bind(console)||out);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;assert(typeof Module[\"memoryInitializerPrefixURL\"]===\"undefined\",\"Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead\");assert(typeof Module[\"pthreadMainPrefixURL\"]===\"undefined\",\"Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead\");assert(typeof Module[\"cdInitializerPrefixURL\"]===\"undefined\",\"Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead\");assert(typeof Module[\"filePackagePrefixURL\"]===\"undefined\",\"Module.filePackagePrefixURL option was removed, use Module.locateFile instead\");stackSave=stackRestore=stackAlloc=(function(){abort(\"cannot use the stack before compiled code is ready to run, and has provided stack access\")});function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function getNativeTypeSize(type){switch(type){case\"i1\":case\"i8\":return 1;case\"i16\":return 2;case\"i32\":return 4;case\"i64\":return 8;case\"float\":return 4;case\"double\":return 8;default:{if(type[type.length-1]===\"*\"){return 4}else if(type[0]===\"i\"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}var asm2wasmImports={\"f64-rem\":(function(x,y){return x%y}),\"debugger\":(function(){debugger})};var functionPointers=new Array(0);var tempRet0=0;var setTempRet0=(function(value){tempRet0=value});var GLOBAL_BASE=1024;function getSafeHeapType(bytes,isFloat){switch(bytes){case 1:return\"i8\";case 2:return\"i16\";case 4:return isFloat?\"float\":\"i32\";case 8:return\"double\";default:assert(0)}}function SAFE_HEAP_STORE(dest,value,bytes,isFloat){if(dest<=0)abort(\"segmentation fault storing \"+bytes+\" bytes to address \"+dest);if(dest%bytes!==0)abort(\"alignment error storing to address \"+dest+\", which was expected to be aligned to a multiple of \"+bytes);if(dest+bytes>HEAP32[DYNAMICTOP_PTR>>2])abort(\"segmentation fault, exceeded the top of the available dynamic heap when storing \"+bytes+\" bytes to address \"+dest+\". DYNAMICTOP=\"+HEAP32[DYNAMICTOP_PTR>>2]);assert(DYNAMICTOP_PTR);assert(HEAP32[DYNAMICTOP_PTR>>2]<=TOTAL_MEMORY);setValue(dest,value,getSafeHeapType(bytes,isFloat),1)}function SAFE_HEAP_STORE_D(dest,value,bytes){SAFE_HEAP_STORE(dest,value,bytes,true)}function SAFE_HEAP_LOAD(dest,bytes,unsigned,isFloat){if(dest<=0)abort(\"segmentation fault loading \"+bytes+\" bytes from address \"+dest);if(dest%bytes!==0)abort(\"alignment error loading from address \"+dest+\", which was expected to be aligned to a multiple of \"+bytes);if(dest+bytes>HEAP32[DYNAMICTOP_PTR>>2])abort(\"segmentation fault, exceeded the top of the available dynamic heap when loading \"+bytes+\" bytes from address \"+dest+\". DYNAMICTOP=\"+HEAP32[DYNAMICTOP_PTR>>2]);assert(DYNAMICTOP_PTR);assert(HEAP32[DYNAMICTOP_PTR>>2]<=TOTAL_MEMORY);var type=getSafeHeapType(bytes,isFloat);var ret=getValue(dest,type,1);if(unsigned)ret=unSign(ret,parseInt(type.substr(1)),1);return ret}function SAFE_HEAP_LOAD_D(dest,bytes,unsigned){return SAFE_HEAP_LOAD(dest,bytes,unsigned,true)}function segfault(){abort(\"segmentation fault\")}function alignfault(){abort(\"alignment fault\")}var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort(\"Assertion failed: \"+text)}}function getCFunc(ident){var func=Module[\"_\"+ident];assert(func,\"Cannot call unknown function \"+ident+\", make sure it is exported\");return func}var JSfuncs={\"stackSave\":(function(){stackSave()}),\"stackRestore\":(function(){stackRestore()}),\"arrayToC\":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),\"stringToC\":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={\"string\":JSfuncs[\"stringToC\"],\"array\":JSfuncs[\"arrayToC\"]};function ccall(ident,returnType,argTypes,args,opts){function convertReturnValue(ret){if(returnType===\"string\")return Pointer_stringify(ret);if(returnType===\"boolean\")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;assert(returnType!==\"array\",'Return type should not be \"array\".');if(args){for(var i=0;i>0]=value;break;case\"i8\":HEAP8[ptr>>0]=value;break;case\"i16\":HEAP16[ptr>>1]=value;break;case\"i32\":HEAP32[ptr>>2]=value;break;case\"i64\":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case\"float\":HEAPF32[ptr>>2]=value;break;case\"double\":HEAPF64[ptr>>3]=value;break;default:abort(\"invalid type for setValue: \"+type)}}else{switch(type){case\"i1\":SAFE_HEAP_STORE(ptr|0,value|0,1);break;case\"i8\":SAFE_HEAP_STORE(ptr|0,value|0,1);break;case\"i16\":SAFE_HEAP_STORE(ptr|0,value|0,2);break;case\"i32\":SAFE_HEAP_STORE(ptr|0,value|0,4);break;case\"i64\":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/4294967296)>>>0:0)],SAFE_HEAP_STORE(ptr|0,tempI64[0]|0,4),SAFE_HEAP_STORE(ptr+4|0,tempI64[1]|0,4);break;case\"float\":SAFE_HEAP_STORE_D(ptr|0,Math_fround(value),4);break;case\"double\":SAFE_HEAP_STORE_D(ptr|0,+value,8);break;default:abort(\"invalid type for setValue: \"+type)}}}function getValue(ptr,type,noSafe){type=type||\"i8\";if(type.charAt(type.length-1)===\"*\")type=\"i32\";if(noSafe){switch(type){case\"i1\":return HEAP8[ptr>>0];case\"i8\":return HEAP8[ptr>>0];case\"i16\":return HEAP16[ptr>>1];case\"i32\":return HEAP32[ptr>>2];case\"i64\":return HEAP32[ptr>>2];case\"float\":return HEAPF32[ptr>>2];case\"double\":return HEAPF64[ptr>>3];default:abort(\"invalid type for getValue: \"+type)}}else{switch(type){case\"i1\":return SAFE_HEAP_LOAD(ptr|0,1,0)|0;case\"i8\":return SAFE_HEAP_LOAD(ptr|0,1,0)|0;case\"i16\":return SAFE_HEAP_LOAD(ptr|0,2,0)|0;case\"i32\":return SAFE_HEAP_LOAD(ptr|0,4,0)|0;case\"i64\":return SAFE_HEAP_LOAD(ptr|0,8,0)|0;case\"float\":return Math_fround(SAFE_HEAP_LOAD_D(ptr|0,4,0));case\"double\":return+SAFE_HEAP_LOAD_D(ptr|0,8,0);default:abort(\"invalid type for getValue: \"+type)}}return null}var ALLOC_NORMAL=0;var ALLOC_NONE=3;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab===\"number\"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types===\"string\"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[_malloc,stackAlloc,dynamicAlloc][allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType===\"i8\"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!==\"undefined\"?new TextDecoder(\"utf8\"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str=\"\";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){assert(typeof maxBytesToWrite==\"number\",\"stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!\");return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!==\"undefined\"?new TextDecoder(\"utf-16le\"):undefined;function demangle(func){warnOnce(\"warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling\");return func}function demangleAll(text){var regex=/__Z[\\w\\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:y+\" [\"+x+\"]\"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return\"(no stack trace available)\"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module[\"extraStackTrace\"])js+=\"\\n\"+Module[\"extraStackTrace\"]();return demangleAll(js)}var WASM_PAGE_SIZE=65536;var MIN_TOTAL_MEMORY=16777216;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBuffer(buf){Module[\"buffer\"]=buffer=buf}function updateGlobalBufferViews(){Module[\"HEAP8\"]=HEAP8=new Int8Array(buffer);Module[\"HEAP16\"]=HEAP16=new Int16Array(buffer);Module[\"HEAP32\"]=HEAP32=new Int32Array(buffer);Module[\"HEAPU8\"]=HEAPU8=new Uint8Array(buffer);Module[\"HEAPU16\"]=HEAPU16=new Uint16Array(buffer);Module[\"HEAPU32\"]=HEAPU32=new Uint32Array(buffer);Module[\"HEAPF32\"]=HEAPF32=new Float32Array(buffer);Module[\"HEAPF64\"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE=1024,STACK_BASE=22720,STACK_MAX=5265600,DYNAMIC_BASE=5265600,DYNAMICTOP_PTR=22464;assert(STACK_BASE%16===0,\"stack must start aligned\");assert(DYNAMIC_BASE%16===0,\"heap must start aligned\");function writeStackCookie(){assert((STACK_MAX&3)==0);HEAPU32[(STACK_MAX>>2)-1]=34821223;HEAPU32[(STACK_MAX>>2)-2]=2310721022}function checkStackCookie(){if(HEAPU32[(STACK_MAX>>2)-1]!=34821223||HEAPU32[(STACK_MAX>>2)-2]!=2310721022){abort(\"Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x\"+HEAPU32[(STACK_MAX>>2)-2].toString(16)+\" \"+HEAPU32[(STACK_MAX>>2)-1].toString(16))}if(HEAP32[0]!==1668509029)throw\"Runtime error: The application has corrupted its heap memory area (address zero)!\"}function abortStackOverflow(allocSize){abort(\"Stack overflow! Attempted to allocate \"+allocSize+\" bytes on the stack, but stack has only \"+(STACK_MAX-stackSave()+allocSize)+\" bytes available!\")}function abortOnCannotGrowMemory(){abort(\"Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value \"+TOTAL_MEMORY+\", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 \")}function enlargeMemory(){assert(HEAP32[DYNAMICTOP_PTR>>2]>TOTAL_MEMORY);var PAGE_MULTIPLE=65536;var LIMIT=2147483648-PAGE_MULTIPLE;if(HEAP32[DYNAMICTOP_PTR>>2]>LIMIT){err(\"Cannot enlarge memory, asked to go up to \"+HEAP32[DYNAMICTOP_PTR>>2]+\" bytes, but the limit is \"+LIMIT+\" bytes!\");return false}var OLD_TOTAL_MEMORY=TOTAL_MEMORY;TOTAL_MEMORY=Math.max(TOTAL_MEMORY,MIN_TOTAL_MEMORY);while(TOTAL_MEMORY>2]){if(TOTAL_MEMORY<=536870912){TOTAL_MEMORY=alignUp(2*TOTAL_MEMORY,PAGE_MULTIPLE)}else{TOTAL_MEMORY=Math.min(alignUp((3*TOTAL_MEMORY+2147483648)/4,PAGE_MULTIPLE),LIMIT);if(TOTAL_MEMORY===OLD_TOTAL_MEMORY){warnOnce(\"Cannot ask for more memory since we reached the practical limit in browsers (which is just below 2GB), so the request would have failed. Requesting only \"+TOTAL_MEMORY)}}}var start=Date.now();var replacement=Module[\"reallocBuffer\"](TOTAL_MEMORY);if(!replacement||replacement.byteLength!=TOTAL_MEMORY){err(\"Failed to grow the heap from \"+OLD_TOTAL_MEMORY+\" bytes to \"+TOTAL_MEMORY+\" bytes, not enough memory!\");if(replacement){err(\"Expected to get back a buffer of size \"+TOTAL_MEMORY+\" bytes, but instead got back a buffer of size \"+replacement.byteLength)}TOTAL_MEMORY=OLD_TOTAL_MEMORY;return false}updateGlobalBuffer(replacement);updateGlobalBufferViews();return true}var byteLength;try{byteLength=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,\"byteLength\").get);byteLength(new ArrayBuffer(4))}catch(e){byteLength=(function(buffer){return buffer.byteLength})}var TOTAL_STACK=5242880;if(Module[\"TOTAL_STACK\"])assert(TOTAL_STACK===Module[\"TOTAL_STACK\"],\"the stack size can no longer be determined at runtime\");var TOTAL_MEMORY=Module[\"TOTAL_MEMORY\"]||16777216;if(TOTAL_MEMORY>2]=DYNAMIC_BASE;function getTotalMemory(){return TOTAL_MEMORY}HEAP32[0]=1668509029;HEAP16[1]=25459;if(HEAPU8[2]!==115||HEAPU8[3]!==99)throw\"Runtime error: expected the system to be little-endian!\";function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback==\"function\"){callback();continue}var func=callback.func;if(typeof func===\"number\"){if(callback.arg===undefined){Module[\"dynCall_v\"](func)}else{Module[\"dynCall_vi\"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module[\"preRun\"]){if(typeof Module[\"preRun\"]==\"function\")Module[\"preRun\"]=[Module[\"preRun\"]];while(Module[\"preRun\"].length){addOnPreRun(Module[\"preRun\"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){checkStackCookie();if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){checkStackCookie();callRuntimeCallbacks(__ATMAIN__)}function postRun(){checkStackCookie();if(Module[\"postRun\"]){if(typeof Module[\"postRun\"]==\"function\")Module[\"postRun\"]=[Module[\"postRun\"]];while(Module[\"postRun\"].length){addOnPostRun(Module[\"postRun\"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}function writeArrayToMemory(array,buffer){assert(array.length>=0,\"writeArrayToMemory array must have a length (should be an array or typed array)\");HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i=0){return value}return bits<=32?2*Math.abs(1<=0){err(\"Memory size incompatibility issues may be due to changing TOTAL_MEMORY at runtime to something too large. Use ALLOW_MEMORY_GROWTH to allow any size memory (and also make sure not to set TOTAL_MEMORY at runtime to something smaller than it was at compile time).\")}return false}receiveInstance(instance,module);return exports}Module[\"asmPreload\"]=Module[\"asm\"];var wasmReallocBuffer=(function(size){var PAGE_MULTIPLE=65536;size=alignUp(size,PAGE_MULTIPLE);var old=Module[\"buffer\"];var oldSize=old.byteLength;try{var result=Module[\"wasmMemory\"].grow((size-oldSize)/wasmPageSize);if(result!==(-1|0)){return Module[\"buffer\"]=Module[\"wasmMemory\"].buffer}else{return null}}catch(e){console.error(\"Module.reallocBuffer: Attempted to grow from \"+oldSize+\" bytes to \"+size+\" bytes, but got error: \"+e);return null}});Module[\"reallocBuffer\"]=(function(size){return wasmReallocBuffer(size)});Module[\"asm\"]=(function(global,env,providedBuffer){if(!env[\"table\"]){assert(Module[\"wasmTableSize\"]!==undefined);var TABLE_SIZE=Module[\"wasmTableSize\"];var MAX_TABLE_SIZE=Module[\"wasmMaxTableSize\"];if(typeof WebAssembly===\"object\"&&typeof WebAssembly.Table===\"function\"){if(MAX_TABLE_SIZE!==undefined){env[\"table\"]=new WebAssembly.Table({\"initial\":TABLE_SIZE,\"maximum\":MAX_TABLE_SIZE,\"element\":\"anyfunc\"})}else{env[\"table\"]=new WebAssembly.Table({\"initial\":TABLE_SIZE,element:\"anyfunc\"})}}else{env[\"table\"]=new Array(TABLE_SIZE)}Module[\"wasmTable\"]=env[\"table\"]}if(!env[\"__memory_base\"]){env[\"__memory_base\"]=Module[\"STATIC_BASE\"]}if(!env[\"__table_base\"]){env[\"__table_base\"]=0}var exports=createWasm(global,env,providedBuffer);assert(exports,\"binaryen setup failed (no wasm support?)\");return exports})}integrateWasmJS();STATIC_BASE=GLOBAL_BASE;__ATINIT__.push({func:(function(){___emscripten_environ_constructor()})});var STATIC_BUMP=21696;Module[\"STATIC_BASE\"]=STATIC_BASE;Module[\"STATIC_BUMP\"]=STATIC_BUMP;var tempDoublePtr=22704;assert(tempDoublePtr%8==0);var ENV={};function ___buildEnvironment(environ){var MAX_ENV_VALUES=64;var TOTAL_ENV_SIZE=1024;var poolPtr;var envPtr;if(!___buildEnvironment.called){___buildEnvironment.called=true;ENV[\"USER\"]=ENV[\"LOGNAME\"]=\"web_user\";ENV[\"PATH\"]=\"/\";ENV[\"PWD\"]=\"/\";ENV[\"HOME\"]=\"/home/web_user\";ENV[\"LANG\"]=\"C.UTF-8\";ENV[\"_\"]=Module[\"thisProgram\"];poolPtr=getMemory(TOTAL_ENV_SIZE);envPtr=getMemory(MAX_ENV_VALUES*4);SAFE_HEAP_STORE(envPtr|0,poolPtr|0,4);SAFE_HEAP_STORE(environ|0,envPtr|0,4)}else{envPtr=SAFE_HEAP_LOAD(environ|0,4,0)|0;poolPtr=SAFE_HEAP_LOAD(envPtr|0,4,0)|0}var strings=[];var totalSize=0;for(var key in ENV){if(typeof ENV[key]===\"string\"){var line=key+\"=\"+ENV[key];strings.push(line);totalSize+=line.length}}if(totalSize>TOTAL_ENV_SIZE){throw new Error(\"Environment size exceeded TOTAL_ENV_SIZE!\")}var ptrSize=4;for(var i=0;i=0;i--){var last=parts[i];if(last===\".\"){parts.splice(i,1)}else if(last===\"..\"){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift(\"..\")}}return parts}),normalize:(function(path){var isAbsolute=path.charAt(0)===\"/\",trailingSlash=path.substr(-1)===\"/\";path=PATH.normalizeArray(path.split(\"/\").filter((function(p){return!!p})),!isAbsolute).join(\"/\");if(!path&&!isAbsolute){path=\".\"}if(path&&trailingSlash){path+=\"/\"}return(isAbsolute?\"/\":\"\")+path}),dirname:(function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return\".\"}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir}),basename:(function(path){if(path===\"/\")return\"/\";var lastSlash=path.lastIndexOf(\"/\");if(lastSlash===-1)return path;return path.substr(lastSlash+1)}),extname:(function(path){return PATH.splitPath(path)[3]}),join:(function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join(\"/\"))}),join2:(function(l,r){return PATH.normalize(l+\"/\"+r)}),resolve:(function(){var resolvedPath=\"\",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!==\"string\"){throw new TypeError(\"Arguments to path.resolve must be strings\")}else if(!path){return\"\"}resolvedPath=path+\"/\"+resolvedPath;resolvedAbsolute=path.charAt(0)===\"/\"}resolvedPath=PATH.normalizeArray(resolvedPath.split(\"/\").filter((function(p){return!!p})),!resolvedAbsolute).join(\"/\");return(resolvedAbsolute?\"/\":\"\")+resolvedPath||\".\"}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!==\"\")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split(\"/\"));var toParts=trim(to.split(\"/\"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i0){result=buf.slice(0,bytesRead).toString(\"utf-8\")}else{result=null}}else if(typeof window!=\"undefined\"&&typeof window.prompt==\"function\"){result=window.prompt(\"Input: \");if(result!==null){result+=\"\\n\"}}else if(typeof readline==\"function\"){result=readline();if(result!==null){result+=\"\\n\"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){out(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,\"/\",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;inode.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}if(!node.contents&&newCapacity>0)node.contents=[];while(node.contents.lengthnewSize)node.contents.length=newSize;else while(node.contents.length=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);assert(size>=0);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+length>2}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return stat.mode}),realPath:(function(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join.apply(null,parts)}),flagsForNode:(function(flags){flags&=~2097152;flags&=~2048;flags&=~32768;flags&=~524288;var newFlags=0;for(var k in NODEFS.flagsForNodeMap){if(flags&k){newFlags|=NODEFS.flagsForNodeMap[k];flags^=k}}if(!flags){return newFlags}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,\"\",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.flagsForNode(stream.flags))}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),close:(function(stream){try{if(FS.isFile(stream.node.mode)&&stream.nfd){fs.closeSync(stream.nfd)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),read:(function(stream,buffer,offset,length,position){if(length===0)return 0;try{return fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),write:(function(stream,buffer,offset,length,position){try{return fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};var NODERAWFS={lookupPath:(function(path){return{path:path,node:{mode:NODEFS.getMode(path)}}}),createStandardStreams:(function(){FS.streams[0]={fd:0,nfd:0,position:0,path:\"\",flags:0,tty:true,seekable:false};for(var i=1;i<3;i++){FS.streams[i]={fd:i,nfd:i,position:0,path:\"\",flags:577,tty:true,seekable:false}}}),cwd:(function(){return process.cwd()}),chdir:(function(){process.chdir.apply(void 0,arguments)}),mknod:(function(path,mode){if(FS.isDir(path)){fs.mkdirSync(path,mode)}else{fs.writeFileSync(path,\"\",{mode:mode})}}),mkdir:(function(){fs.mkdirSync.apply(void 0,arguments)}),symlink:(function(){fs.symlinkSync.apply(void 0,arguments)}),rename:(function(){fs.renameSync.apply(void 0,arguments)}),rmdir:(function(){fs.rmdirSync.apply(void 0,arguments)}),readdir:(function(){fs.readdirSync.apply(void 0,arguments)}),unlink:(function(){fs.unlinkSync.apply(void 0,arguments)}),readlink:(function(){return fs.readlinkSync.apply(void 0,arguments)}),stat:(function(){return fs.statSync.apply(void 0,arguments)}),lstat:(function(){return fs.lstatSync.apply(void 0,arguments)}),chmod:(function(){fs.chmodSync.apply(void 0,arguments)}),fchmod:(function(){fs.fchmodSync.apply(void 0,arguments)}),chown:(function(){fs.chownSync.apply(void 0,arguments)}),fchown:(function(){fs.fchownSync.apply(void 0,arguments)}),truncate:(function(){fs.truncateSync.apply(void 0,arguments)}),ftruncate:(function(){fs.ftruncateSync.apply(void 0,arguments)}),utime:(function(){fs.utimesSync.apply(void 0,arguments)}),open:(function(path,flags,mode,suggestFD){if(typeof flags===\"string\"){flags=VFS.modeStringToFlags(flags)}var nfd=fs.openSync(path,NODEFS.flagsForNode(flags),mode);var fd=suggestFD!=null?suggestFD:FS.nextfd(nfd);var stream={fd:fd,nfd:nfd,position:0,path:path,flags:flags,seekable:true};FS.streams[fd]=stream;return stream}),close:(function(stream){if(!stream.stream_ops){fs.closeSync(stream.nfd)}FS.closeStream(stream.fd)}),llseek:(function(stream,offset,whence){if(stream.stream_ops){return VFS.llseek(stream,offset,whence)}var position=offset;if(whence===1){position+=stream.position}else if(whence===2){position+=fs.fstatSync(stream.nfd).size}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}stream.position=position;return position}),read:(function(stream,buffer,offset,length,position){if(stream.stream_ops){return VFS.read(stream,buffer,offset,length,position)}var seeking=typeof position!==\"undefined\";if(!seeking&&stream.seekable)position=stream.position;var bytesRead=fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead}),write:(function(stream,buffer,offset,length,position){if(stream.stream_ops){return VFS.write(stream,buffer,offset,length,position)}if(stream.flags&+\"1024\"){FS.llseek(stream,0,+\"2\")}var seeking=typeof position!==\"undefined\";if(!seeking&&stream.seekable)position=stream.position;var bytesWritten=fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position);if(!seeking)stream.position+=bytesWritten;return bytesWritten}),allocate:(function(){throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP)}),mmap:(function(){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}),msync:(function(){return 0}),munmap:(function(){return 0}),ioctl:(function(){throw new FS.ErrnoError(ERRNO_CODES.ENOTTY)})};var ERRNO_MESSAGES={0:\"Success\",1:\"Not super-user\",2:\"No such file or directory\",3:\"No such process\",4:\"Interrupted system call\",5:\"I/O error\",6:\"No such device or address\",7:\"Arg list too long\",8:\"Exec format error\",9:\"Bad file number\",10:\"No children\",11:\"No more processes\",12:\"Not enough core\",13:\"Permission denied\",14:\"Bad address\",15:\"Block device required\",16:\"Mount device busy\",17:\"File exists\",18:\"Cross-device link\",19:\"No such device\",20:\"Not a directory\",21:\"Is a directory\",22:\"Invalid argument\",23:\"Too many open files in system\",24:\"Too many open files\",25:\"Not a typewriter\",26:\"Text file busy\",27:\"File too large\",28:\"No space left on device\",29:\"Illegal seek\",30:\"Read only file system\",31:\"Too many links\",32:\"Broken pipe\",33:\"Math arg out of domain of func\",34:\"Math result not representable\",35:\"File locking deadlock error\",36:\"File or path name too long\",37:\"No record locks available\",38:\"Function not implemented\",39:\"Directory not empty\",40:\"Too many symbolic links\",42:\"No message of desired type\",43:\"Identifier removed\",44:\"Channel number out of range\",45:\"Level 2 not synchronized\",46:\"Level 3 halted\",47:\"Level 3 reset\",48:\"Link number out of range\",49:\"Protocol driver not attached\",50:\"No CSI structure available\",51:\"Level 2 halted\",52:\"Invalid exchange\",53:\"Invalid request descriptor\",54:\"Exchange full\",55:\"No anode\",56:\"Invalid request code\",57:\"Invalid slot\",59:\"Bad font file fmt\",60:\"Device not a stream\",61:\"No data (for no delay io)\",62:\"Timer expired\",63:\"Out of streams resources\",64:\"Machine is not on the network\",65:\"Package not installed\",66:\"The object is remote\",67:\"The link has been severed\",68:\"Advertise error\",69:\"Srmount error\",70:\"Communication error on send\",71:\"Protocol error\",72:\"Multihop attempted\",73:\"Cross mount point (not really error)\",74:\"Trying to read unreadable message\",75:\"Value too large for defined data type\",76:\"Given log. name not unique\",77:\"f.d. invalid for this operation\",78:\"Remote address changed\",79:\"Can access a needed shared lib\",80:\"Accessing a corrupted shared lib\",81:\".lib section in a.out corrupted\",82:\"Attempting to link in too many libs\",83:\"Attempting to exec a shared library\",84:\"Illegal byte sequence\",86:\"Streams pipe error\",87:\"Too many users\",88:\"Socket operation on non-socket\",89:\"Destination address required\",90:\"Message too long\",91:\"Protocol wrong type for socket\",92:\"Protocol not available\",93:\"Unknown protocol\",94:\"Socket type not supported\",95:\"Not supported\",96:\"Protocol family not supported\",97:\"Address family not supported by protocol family\",98:\"Address already in use\",99:\"Address not available\",100:\"Network interface is not configured\",101:\"Network is unreachable\",102:\"Connection reset by network\",103:\"Connection aborted\",104:\"Connection reset by peer\",105:\"No buffer space available\",106:\"Socket is already connected\",107:\"Socket is not connected\",108:\"Can't send after socket shutdown\",109:\"Too many references\",110:\"Connection timed out\",111:\"Connection refused\",112:\"Host is down\",113:\"Host is unreachable\",114:\"Socket already connected\",115:\"Connection already in progress\",116:\"Stale file handle\",122:\"Quota exceeded\",123:\"No medium (in tape drive)\",125:\"Operation canceled\",130:\"Previous owner died\",131:\"State not recoverable\"};var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:\"/\",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:(function(e){if(!(e instanceof FS.ErrnoError))throw e+\" : \"+stackTrace();return ___setErrNo(e.errno)}),lookupPath:(function(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:\"\",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(40)}var parts=PATH.normalizeArray(path.split(\"/\").filter((function(p){return!!p})),false);var current=FS.root;var current_path=\"/\";for(var i=0;i40){throw new FS.ErrnoError(40)}}}}return{path:current_path,node:current}}),getPath:(function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!==\"/\"?mount+\"/\"+path:mount+path}path=path?node.name+\"/\"+path:node.name;node=node.parent}}),hashName:(function(parentid,name){var hash=0;for(var i=0;i>>0)%FS.nameTable.length}),hashAddNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node}),hashRemoveNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}}),lookupNode:(function(parent,name){var err=FS.mayLookup(parent);if(err){throw new FS.ErrnoError(err,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),flagModes:{\"r\":0,\"rs\":1052672,\"r+\":2,\"w\":577,\"wx\":705,\"xw\":705,\"w+\":578,\"wx+\":706,\"xw+\":706,\"a\":1089,\"ax\":1217,\"xa\":1217,\"a+\":1090,\"ax+\":1218,\"xa+\":1218},modeStringToFlags:(function(str){var flags=FS.flagModes[str];if(typeof flags===\"undefined\"){throw new Error(\"Unknown file open mode: \"+str)}return flags}),flagsToPermissionString:(function(flag){var perms=[\"r\",\"w\",\"rw\"][flag&3];if(flag&512){perms+=\"w\"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf(\"r\")!==-1&&!(node.mode&292)){return 13}else if(perms.indexOf(\"w\")!==-1&&!(node.mode&146)){return 13}else if(perms.indexOf(\"x\")!==-1&&!(node.mode&73)){return 13}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,\"x\");if(err)return err;if(!dir.node_ops.lookup)return 13;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return 17}catch(e){}return FS.nodePermissions(dir,\"wx\")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,\"wx\");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return 20}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 16}}else{if(FS.isDir(node.mode)){return 21}}return 0}),mayOpen:(function(node,flags){if(!node){return 2}if(FS.isLink(node.mode)){return 40}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!==\"r\"||flags&512){return 21}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(24)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(29)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate===\"function\"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log(\"warning: \"+FS.syncFSRequests+\" FS.syncfs operations in flight at once, probably just doing extra work\")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint===\"/\";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(16)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(16)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(20)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(22)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name===\".\"||name===\"..\"){throw new FS.ErrnoError(22)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(1)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdirTree:(function(path,mode){var dirs=path.split(\"/\");var d=\"\";for(var i=0;i\"}))}),staticInit:(function(){FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},\"/\");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={\"MEMFS\":MEMFS,\"NODEFS\":NODEFS}}),init:(function(input,output,error){assert(!FS.init.initialized,\"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)\");FS.init.initialized=true;FS.ensureErrnoError();Module[\"stdin\"]=input||Module[\"stdin\"];Module[\"stdout\"]=output||Module[\"stdout\"];Module[\"stderr\"]=error||Module[\"stderr\"];FS.createStandardStreams()}),quit:(function(){FS.init.initialized=false;var fflush=Module[\"_fflush\"];if(fflush)fflush(0);for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open(\"HEAD\",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error(\"Couldn't load \"+url+\". Status: \"+xhr.status);var datalength=Number(xhr.getResponseHeader(\"Content-length\"));var header;var hasByteServing=(header=xhr.getResponseHeader(\"Accept-Ranges\"))&&header===\"bytes\";var usesGzip=(header=xhr.getResponseHeader(\"Content-Encoding\"))&&header===\"gzip\";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error(\"invalid range (\"+from+\", \"+to+\") or no bytes requested!\");if(to>datalength-1)throw new Error(\"only \"+datalength+\" bytes available! programmer error!\");var xhr=new XMLHttpRequest;xhr.open(\"GET\",url,false);if(datalength!==chunkSize)xhr.setRequestHeader(\"Range\",\"bytes=\"+from+\"-\"+to);if(typeof Uint8Array!=\"undefined\")xhr.responseType=\"arraybuffer\";if(xhr.overrideMimeType){xhr.overrideMimeType(\"text/plain; charset=x-user-defined\")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error(\"Couldn't load \"+url+\". Status: \"+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||\"\",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]===\"undefined\"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]===\"undefined\")throw new Error(\"doXHR failed!\");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log(\"LazyFiles on gzip forces download of the whole file when length is accessed\")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!==\"undefined\"){if(!ENVIRONMENT_IS_WORKER)throw\"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc\";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(5)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(5)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall10(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr();FS.unlink(path);return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);SAFE_HEAP_STORE(result|0,stream.position|0,4);if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall15(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),mode=SYSCALLS.get();FS.chmod(path,mode);return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall195(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,path,buf)}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall197(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,stream.path,buf)}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;SAFE_HEAP_STORE(arg+offset|0,2|0,2);return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall38(which,varargs){SYSCALLS.varargs=varargs;try{var old_path=SYSCALLS.getStr(),new_path=SYSCALLS.getStr();FS.rename(old_path,new_path);return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall40(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr();FS.rmdir(path);return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21509:case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();SAFE_HEAP_STORE(argp|0,0|0,4);return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};case 21523:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21524:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};default:abort(\"bad ioctl syscall \"+op)}}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall60(which,varargs){SYSCALLS.varargs=varargs;try{var mask=SYSCALLS.get();var old=SYSCALLS.umask;SYSCALLS.umask=mask;return old}catch(e){if(typeof FS===\"undefined\"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___unlock(){}var ___tm_current=22560;var ___tm_timezone=(stringToUTF8(\"GMT\",22608,4),22608);function _tzset(){if(_tzset.called)return;_tzset.called=true;SAFE_HEAP_STORE(__get_timezone()|0,(new Date).getTimezoneOffset()*60|0,4);var winter=new Date(2e3,0,1);var summer=new Date(2e3,6,1);SAFE_HEAP_STORE(__get_daylight()|0,Number(winter.getTimezoneOffset()!=summer.getTimezoneOffset())|0,4);function extractZone(date){var match=date.toTimeString().match(/\\(([A-Za-z ]+)\\)$/);return match?match[1]:\"GMT\"}var winterName=extractZone(winter);var summerName=extractZone(summer);var winterNamePtr=allocate(intArrayFromString(winterName),\"i8\",ALLOC_NORMAL);var summerNamePtr=allocate(intArrayFromString(summerName),\"i8\",ALLOC_NORMAL);if(summer.getTimezoneOffset()0!=(dstOffset==guessedOffset)){var nonDstOffset=Math.max(winterOffset,summerOffset);var trueOffset=dst>0?dstOffset:nonDstOffset;date.setTime(date.getTime()+(trueOffset-guessedOffset)*6e4)}SAFE_HEAP_STORE(tmPtr+24|0,date.getDay()|0,4);var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;SAFE_HEAP_STORE(tmPtr+28|0,yday|0,4);return date.getTime()/1e3|0}function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){SAFE_HEAP_STORE(ptr|0,ret|0,4)}return ret}if(ENVIRONMENT_IS_NODE){_emscripten_get_now=function _emscripten_get_now_actual(){var t=process[\"hrtime\"]();return t[0]*1e3+t[1]/1e6}}else if(typeof dateNow!==\"undefined\"){_emscripten_get_now=dateNow}else if(typeof self===\"object\"&&self[\"performance\"]&&typeof self[\"performance\"][\"now\"]===\"function\"){_emscripten_get_now=(function(){return self[\"performance\"][\"now\"]()})}else if(typeof performance===\"object\"&&typeof performance[\"now\"]===\"function\"){_emscripten_get_now=(function(){return performance[\"now\"]()})}else{_emscripten_get_now=Date.now}FS.staticInit();__ATINIT__.unshift((function(){if(!Module[\"noFSInit\"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((function(){FS.quit()}));__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=frozenFs;var NODEJS_PATH=__webpack_require__(4);NODEFS.staticInit()}if(ENVIRONMENT_IS_NODE){var _wrapNodeError=(function(func){return(function(){try{return func.apply(this,arguments)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})});var VFS=Object.assign({},FS);for(var _key in NODERAWFS)FS[_key]=_wrapNodeError(NODERAWFS[_key])}else{throw new Error(\"NODERAWFS is currently only supported on Node.js environment.\")}function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}var decodeBase64=typeof atob===\"function\"?atob:(function(input){var keyStr=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";var output=\"\";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\\+\\/\\=]/g,\"\");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i0){return}writeStackCookie();preRun();if(runDependencies>0)return;if(Module[\"calledRun\"])return;function doRun(){if(Module[\"calledRun\"])return;Module[\"calledRun\"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module[\"onRuntimeInitialized\"])Module[\"onRuntimeInitialized\"]();assert(!Module[\"_main\"],'compiled without a main, but one is present. if you added it from JS, use Module[\"onRuntimeInitialized\"]');postRun()}if(Module[\"setStatus\"]){Module[\"setStatus\"](\"Running...\");setTimeout((function(){setTimeout((function(){Module[\"setStatus\"](\"\")}),1);doRun()}),1)}else{doRun()}checkStackCookie()}Module[\"run\"]=run;var abortDecorators=[];function abort(what){if(Module[\"onAbort\"]){Module[\"onAbort\"](what)}if(what!==undefined){out(what);err(what);what=JSON.stringify(what)}else{what=\"\"}ABORT=true;EXITSTATUS=1;var extra=\"\";var output=\"abort(\"+what+\") at \"+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module[\"abort\"]=abort;if(Module[\"preInit\"]){if(typeof Module[\"preInit\"]==\"function\")Module[\"preInit\"]=[Module[\"preInit\"]];while(Module[\"preInit\"].length>0){Module[\"preInit\"].pop()()}}Module[\"noExitRuntime\"]=true;run()\n\n\n\n\n\n/***/ }),\n/* 13 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"crypto\");\n\n/***/ }),\n/* 14 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"stream\");\n\n/***/ }),\n/* 15 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"util\");\n\n/***/ }),\n/* 16 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst fs_1 = __webpack_require__(3);\nconst path_1 = __webpack_require__(4);\nconst FakeFS_1 = __webpack_require__(5);\nconst NodeFS_1 = __webpack_require__(2);\nconst ZipFS_1 = __webpack_require__(10);\nclass ZipOpenFS extends FakeFS_1.FakeFS {\n constructor({ baseFs = new NodeFS_1.NodeFS(), filter = null, useCache = true } = {}) {\n super();\n this.isZip = new Set();\n this.notZip = new Set();\n this.baseFs = baseFs;\n this.zipInstances = useCache ? new Map() : null;\n this.filter = filter;\n this.isZip = new Set();\n this.notZip = new Set();\n }\n static open(fn) {\n const zipOpenFs = new ZipOpenFS();\n try {\n return fn(zipOpenFs);\n }\n finally {\n zipOpenFs.saveAndClose();\n }\n }\n static async openPromise(fn) {\n const zipOpenFs = new ZipOpenFS();\n try {\n return await fn(zipOpenFs);\n }\n finally {\n zipOpenFs.saveAndClose();\n }\n }\n getRealPath() {\n return this.baseFs.getRealPath();\n }\n saveAndClose() {\n if (this.zipInstances) {\n for (const [path, zipFs] of this.zipInstances.entries()) {\n zipFs.saveAndClose();\n this.zipInstances.delete(path);\n }\n }\n }\n discardAndClose() {\n if (this.zipInstances) {\n for (const [path, zipFs] of this.zipInstances.entries()) {\n zipFs.discardAndClose();\n this.zipInstances.delete(path);\n }\n }\n }\n async openPromise(p, flags, mode) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.openPromise(p, flags, mode);\n }, async (zipFs, { archivePath, subPath }) => {\n throw new Error(`Unsupported action (we wouldn't be able to disambiguate the close)`);\n });\n }\n openSync(p, flags, mode) {\n return this.makeCallSync(p, () => {\n return this.baseFs.openSync(p, flags, mode);\n }, (zipFs, { archivePath, subPath }) => {\n throw new Error(`Unsupported action (we wouldn't be able to disambiguate the close)`);\n });\n }\n async closePromise(fd) {\n return await this.baseFs.closePromise(fd);\n }\n closeSync(fd) {\n return this.baseFs.closeSync(fd);\n }\n createReadStream(p, opts) {\n return this.makeCallSync(p, () => {\n return this.baseFs.createReadStream(p, opts);\n }, (zipFs, { subPath }) => {\n return zipFs.createReadStream(subPath, opts);\n });\n }\n createWriteStream(p, opts) {\n return this.makeCallSync(p, () => {\n return this.baseFs.createWriteStream(p, opts);\n }, (zipFs, { subPath }) => {\n return zipFs.createWriteStream(subPath, opts);\n });\n }\n async realpathPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.realpathPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return path_1.posix.resolve(archivePath, path_1.posix.relative(`/`, await zipFs.realpathPromise(subPath)));\n });\n }\n realpathSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.realpathSync(p);\n }, (zipFs, { archivePath, subPath }) => {\n return path_1.posix.resolve(archivePath, path_1.posix.relative(`/`, zipFs.realpathSync(subPath)));\n });\n }\n async existsPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.existsPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.existsPromise(subPath);\n });\n }\n existsSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.existsSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.existsSync(subPath);\n });\n }\n async statPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.statPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.statPromise(subPath);\n });\n }\n statSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.statSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.statSync(subPath);\n });\n }\n async lstatPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.lstatPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.lstatPromise(subPath);\n });\n }\n lstatSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.lstatSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.lstatSync(subPath);\n });\n }\n async chmodPromise(p, mask) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.chmodPromise(p, mask);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.chmodPromise(subPath, mask);\n });\n }\n chmodSync(p, mask) {\n return this.makeCallSync(p, () => {\n return this.baseFs.chmodSync(p, mask);\n }, (zipFs, { subPath }) => {\n return zipFs.chmodSync(subPath, mask);\n });\n }\n async renamePromise(oldP, newP) {\n return await this.makeCallPromise(oldP, async () => {\n return await this.makeCallPromise(newP, async () => {\n return await this.baseFs.renamePromise(oldP, newP);\n }, async () => {\n throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });\n });\n }, async (zipFsO, { archivePath: archivePathO, subPath: subPathO }) => {\n return await this.makeCallPromise(newP, async () => {\n throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });\n }, async (zipFsN, { archivePath: archivePathN, subPath: subPathN }) => {\n if (zipFsO !== zipFsN) {\n throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });\n }\n else {\n return await zipFsO.renamePromise(subPathO, subPathN);\n }\n });\n });\n }\n renameSync(oldP, newP) {\n return this.makeCallSync(oldP, () => {\n return this.makeCallSync(newP, () => {\n return this.baseFs.renameSync(oldP, newP);\n }, async () => {\n throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });\n });\n }, (zipFsO, { archivePath: archivePathO, subPath: subPathO }) => {\n return this.makeCallSync(newP, () => {\n throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });\n }, (zipFsN, { archivePath: archivePathN, subPath: subPathN }) => {\n if (zipFsO !== zipFsN) {\n throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });\n }\n else {\n return zipFsO.renameSync(subPathO, subPathN);\n }\n });\n });\n }\n async copyFilePromise(sourceP, destP, flags = 0) {\n const fallback = async (sourceFs, sourceP, destFs, destP) => {\n if ((flags & fs_1.constants.COPYFILE_FICLONE_FORCE) !== 0)\n throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${sourceP}' -> ${destP}'`), { code: `EXDEV` });\n if ((flags & fs_1.constants.COPYFILE_EXCL) && await this.existsPromise(sourceP))\n throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${sourceP}' -> '${destP}'`), { code: `EEXIST` });\n let content;\n try {\n content = await sourceFs.readFilePromise(sourceP);\n }\n catch (error) {\n throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${sourceP}' -> '${destP}'`), { code: `EINVAL` });\n }\n await destFs.writeFilePromise(destP, content);\n };\n return await this.makeCallPromise(sourceP, async () => {\n return await this.makeCallPromise(destP, async () => {\n return await this.baseFs.copyFilePromise(sourceP, destP, flags);\n }, async (zipFsD, { archivePath: archivePathD, subPath: subPathD }) => {\n return await fallback(this.baseFs, sourceP, zipFsD, subPathD);\n });\n }, async (zipFsS, { archivePath: archivePathS, subPath: subPathS }) => {\n return await this.makeCallPromise(destP, async () => {\n return await fallback(zipFsS, subPathS, this.baseFs, destP);\n }, async (zipFsD, { archivePath: archivePathD, subPath: subPathD }) => {\n if (zipFsS !== zipFsD) {\n return await fallback(zipFsS, subPathS, zipFsD, subPathD);\n }\n else {\n return await zipFsS.copyFilePromise(subPathS, subPathD, flags);\n }\n });\n });\n }\n copyFileSync(sourceP, destP, flags = 0) {\n const fallback = (sourceFs, sourceP, destFs, destP) => {\n if ((flags & fs_1.constants.COPYFILE_FICLONE_FORCE) !== 0)\n throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${sourceP}' -> ${destP}'`), { code: `EXDEV` });\n if ((flags & fs_1.constants.COPYFILE_EXCL) && this.existsSync(sourceP))\n throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${sourceP}' -> '${destP}'`), { code: `EEXIST` });\n let content;\n try {\n content = sourceFs.readFileSync(sourceP);\n }\n catch (error) {\n throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${sourceP}' -> '${destP}'`), { code: `EINVAL` });\n }\n destFs.writeFileSync(destP, content);\n };\n return this.makeCallSync(sourceP, () => {\n return this.makeCallSync(destP, () => {\n return this.baseFs.copyFileSync(sourceP, destP, flags);\n }, (zipFsD, { archivePath: archivePathD, subPath: subPathD }) => {\n return fallback(this.baseFs, sourceP, zipFsD, subPathD);\n });\n }, (zipFsS, { archivePath: archivePathS, subPath: subPathS }) => {\n return this.makeCallSync(destP, () => {\n return fallback(zipFsS, subPathS, this.baseFs, destP);\n }, (zipFsD, { archivePath: archivePathD, subPath: subPathD }) => {\n if (zipFsS !== zipFsD) {\n return fallback(zipFsS, subPathS, zipFsD, subPathD);\n }\n else {\n return zipFsS.copyFileSync(subPathS, subPathD, flags);\n }\n });\n });\n }\n async writeFilePromise(p, content, opts) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.writeFilePromise(p, content, opts);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.writeFilePromise(subPath, content, opts);\n });\n }\n writeFileSync(p, content, opts) {\n return this.makeCallSync(p, () => {\n return this.baseFs.writeFileSync(p, content, opts);\n }, (zipFs, { subPath }) => {\n return zipFs.writeFileSync(subPath, content, opts);\n });\n }\n async unlinkPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.unlinkPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.unlinkPromise(subPath);\n });\n }\n unlinkSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.unlinkSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.unlinkSync(subPath);\n });\n }\n async utimesPromise(p, atime, mtime) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.utimesPromise(p, atime, mtime);\n }, async (zipFs, { subPath }) => {\n return await zipFs.utimesPromise(subPath, atime, mtime);\n });\n }\n utimesSync(p, atime, mtime) {\n return this.makeCallSync(p, () => {\n return this.baseFs.utimesSync(p, atime, mtime);\n }, (zipFs, { subPath }) => {\n return zipFs.utimesSync(subPath, atime, mtime);\n });\n }\n async mkdirPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.mkdirPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.mkdirPromise(subPath);\n });\n }\n mkdirSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.mkdirSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.mkdirSync(subPath);\n });\n }\n async rmdirPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.rmdirPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.rmdirPromise(subPath);\n });\n }\n rmdirSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.rmdirSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.rmdirSync(subPath);\n });\n }\n async symlinkPromise(target, p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.symlinkPromise(target, p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.symlinkPromise(target, subPath);\n });\n }\n symlinkSync(target, p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.symlinkSync(target, p);\n }, (zipFs, { subPath }) => {\n return zipFs.symlinkSync(target, subPath);\n });\n }\n async readFilePromise(p, encoding) {\n return this.makeCallPromise(p, async () => {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return await this.baseFs.readFilePromise(p, encoding);\n default:\n return await this.baseFs.readFilePromise(p, encoding);\n }\n }, async (zipFs, { subPath }) => {\n return await zipFs.readFilePromise(subPath, encoding);\n });\n }\n readFileSync(p, encoding) {\n return this.makeCallSync(p, () => {\n // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered)\n switch (encoding) {\n case `utf8`:\n return this.baseFs.readFileSync(p, encoding);\n default:\n return this.baseFs.readFileSync(p, encoding);\n }\n }, (zipFs, { subPath }) => {\n return zipFs.readFileSync(subPath, encoding);\n });\n }\n async readdirPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.readdirPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.readdirPromise(subPath);\n }, {\n requireSubpath: false,\n });\n }\n readdirSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.readdirSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.readdirSync(subPath);\n }, {\n requireSubpath: false,\n });\n }\n async readlinkPromise(p) {\n return await this.makeCallPromise(p, async () => {\n return await this.baseFs.readlinkPromise(p);\n }, async (zipFs, { archivePath, subPath }) => {\n return await zipFs.readlinkPromise(subPath);\n });\n }\n readlinkSync(p) {\n return this.makeCallSync(p, () => {\n return this.baseFs.readlinkSync(p);\n }, (zipFs, { subPath }) => {\n return zipFs.readlinkSync(subPath);\n });\n }\n async makeCallPromise(p, discard, accept, { requireSubpath = true } = {}) {\n p = path_1.posix.normalize(path_1.posix.resolve(`/`, p));\n const zipInfo = this.findZip(p);\n if (!zipInfo)\n return await discard();\n if (requireSubpath && zipInfo.subPath === `/`)\n return await discard();\n return await this.getZipPromise(zipInfo.archivePath, async (zipFs) => await accept(zipFs, zipInfo));\n }\n makeCallSync(p, discard, accept, { requireSubpath = true } = {}) {\n p = path_1.posix.normalize(path_1.posix.resolve(`/`, p));\n const zipInfo = this.findZip(p);\n if (!zipInfo)\n return discard();\n if (requireSubpath && zipInfo.subPath === `/`)\n return discard();\n return this.getZipSync(zipInfo.archivePath, zipFs => accept(zipFs, zipInfo));\n }\n findZip(p) {\n if (this.filter && !this.filter.test(p))\n return null;\n const parts = p.split(/\\//g);\n for (let t = 2; t <= parts.length; ++t) {\n const archivePath = parts.slice(0, t).join(`/`);\n if (this.notZip.has(archivePath))\n continue;\n if (this.isZip.has(archivePath))\n return { archivePath, subPath: path_1.posix.resolve(`/`, parts.slice(t).join(`/`)) };\n let realArchivePath = archivePath;\n let stat;\n while (true) {\n try {\n stat = this.baseFs.lstatSync(realArchivePath);\n }\n catch (error) {\n return null;\n }\n if (stat.isSymbolicLink()) {\n realArchivePath = path_1.posix.resolve(path_1.posix.dirname(realArchivePath), this.baseFs.readlinkSync(realArchivePath));\n }\n else {\n break;\n }\n }\n const isZip = stat.isFile() && path_1.posix.extname(realArchivePath) === `.zip`;\n if (isZip) {\n this.isZip.add(archivePath);\n return { archivePath, subPath: path_1.posix.resolve(`/`, parts.slice(t).join(`/`)) };\n }\n else {\n this.notZip.add(archivePath);\n if (stat.isFile()) {\n return null;\n }\n }\n }\n return null;\n }\n async getZipPromise(p, accept) {\n if (this.zipInstances) {\n let zipFs = this.zipInstances.get(p);\n if (!zipFs)\n this.zipInstances.set(p, zipFs = new ZipFS_1.ZipFS(p, { baseFs: this.baseFs, stats: await this.baseFs.statPromise(p) }));\n return await accept(zipFs);\n }\n else {\n const zipFs = new ZipFS_1.ZipFS(p, { baseFs: this.baseFs, stats: await this.baseFs.statPromise(p) });\n try {\n return await accept(zipFs);\n }\n finally {\n zipFs.saveAndClose();\n }\n }\n }\n getZipSync(p, accept) {\n if (this.zipInstances) {\n let zipFs = this.zipInstances.get(p);\n if (!zipFs)\n this.zipInstances.set(p, zipFs = new ZipFS_1.ZipFS(p, { baseFs: this.baseFs }));\n return accept(zipFs);\n }\n else {\n const zipFs = new ZipFS_1.ZipFS(p, { baseFs: this.baseFs });\n try {\n return accept(zipFs);\n }\n finally {\n zipFs.saveAndClose();\n }\n }\n }\n}\nexports.ZipOpenFS = ZipOpenFS;\n\n\n/***/ }),\n/* 17 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"module\");\n\n/***/ }),\n/* 18 */\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"string_decoder\");\n\n/***/ }),\n/* 19 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst fslib_1 = __webpack_require__(1);\nconst fs_1 = __importDefault(__webpack_require__(3));\nconst module_1 = __importDefault(__webpack_require__(17));\nconst path_1 = __importDefault(__webpack_require__(4));\nconst internalTools_1 = __webpack_require__(20);\nfunction applyPatch(pnpapi, opts) {\n // @ts-ignore\n const builtinModules = new Set(module_1.default.builtinModules || Object.keys(process.binding('natives')));\n // The callback function gets called to wrap the return value of the module names matching the regexp\n const patchedModules = [];\n if (opts.compatibilityMode) {\n // Modern versions of `resolve` support a specific entry point that custom resolvers can use\n // to inject a specific resolution logic without having to patch the whole package.\n //\n // Cf: https://github.com/browserify/resolve/pull/174\n patchedModules.push([\n /^\\.\\/normalize-options\\.js$/,\n (issuer, normalizeOptions) => {\n if (!issuer || issuer.name !== 'resolve')\n return normalizeOptions;\n return (request, opts) => {\n opts = opts || {};\n if (opts.forceNodeResolution)\n return opts;\n opts.preserveSymlinks = true;\n opts.paths = function (request, basedir, getNodeModulesDir, opts) {\n // Extract the name of the package being requested (1=full name, 2=scope name, 3=local name)\n const parts = request.match(/^((?:(@[^\\/]+)\\/)?([^\\/]+))/);\n if (!parts)\n throw new Error(`Assertion failed: Expected the \"resolve\" package to call the \"paths\" callback with package names only (got \"${request}\")`);\n // make sure that basedir ends with a slash\n if (basedir.charAt(basedir.length - 1) !== '/')\n basedir = path_1.default.join(basedir, '/');\n // TODO Handle portable paths\n // This is guaranteed to return the path to the \"package.json\" file from the given package\n const manifestPath = pnpapi.resolveToUnqualified(`${parts[1]}/package.json`, basedir, {\n considerBuiltins: false,\n });\n if (manifestPath === null)\n throw new Error(`Assertion failed: The resolution thinks that \"${parts[1]}\" is a Node builtin`);\n // The first dirname strips the package.json, the second strips the local named folder\n let nodeModules = path_1.default.dirname(path_1.default.dirname(manifestPath));\n // Strips the scope named folder if needed\n if (parts[2])\n nodeModules = path_1.default.dirname(nodeModules);\n return [nodeModules];\n };\n return opts;\n };\n },\n ]);\n }\n /**\n * Used to disable the resolution hooks (for when we want to fallback to the previous resolution - we then need\n * a way to \"reset\" the environment temporarily)\n */\n let enableNativeHooks = true;\n // @ts-ignore\n process.versions.pnp = String(pnpapi.VERSIONS.std);\n // A small note: we don't replace the cache here (and instead use the native one). This is an effort to not\n // break code similar to \"delete require.cache[require.resolve(FOO)]\", where FOO is a package located outside\n // of the Yarn dependency tree. In this case, we defer the load to the native loader. If we were to replace the\n // cache by our own, the native loader would populate its own cache, which wouldn't be exposed anymore, so the\n // delete call would be broken.\n const originalModuleLoad = module_1.default._load;\n module_1.default._load = function (request, parent, isMain) {\n if (!enableNativeHooks) {\n return originalModuleLoad.call(module_1.default, request, parent, isMain);\n }\n // Builtins are managed by the regular Node loader\n if (builtinModules.has(request)) {\n try {\n enableNativeHooks = false;\n return originalModuleLoad.call(module_1.default, request, parent, isMain);\n }\n finally {\n enableNativeHooks = true;\n }\n }\n // The 'pnpapi' name is reserved to return the PnP api currently in use by the program\n if (request === `pnpapi`)\n return pnpapi;\n // Request `Module._resolveFilename` (ie. `resolveRequest`) to tell us which file we should load\n const modulePath = module_1.default._resolveFilename(request, parent, isMain);\n // Check if the module has already been created for the given file\n const cacheEntry = module_1.default._cache[modulePath];\n if (cacheEntry)\n return cacheEntry.exports;\n // Create a new module and store it into the cache\n // @ts-ignore\n const module = new module_1.default(modulePath, parent);\n module_1.default._cache[modulePath] = module;\n // The main module is exposed as global variable\n if (isMain) {\n // @ts-ignore\n process.mainModule = module;\n module.id = '.';\n }\n // Try to load the module, and remove it from the cache if it fails\n let hasThrown = true;\n try {\n module.load(modulePath);\n hasThrown = false;\n }\n finally {\n if (hasThrown) {\n delete module_1.default._cache[modulePath];\n }\n }\n // Some modules might have to be patched for compatibility purposes\n for (const [filter, patchFn] of patchedModules) {\n if (filter.test(request)) {\n const issuer = parent && parent.filename ? pnpapi.findPackageLocator(parent.filename) : null;\n module.exports = patchFn(issuer, module.exports);\n }\n }\n return module.exports;\n };\n const originalModuleResolveFilename = module_1.default._resolveFilename;\n module_1.default._resolveFilename = function (request, parent, isMain, options) {\n if (request === `pnpapi`)\n return request;\n if (!enableNativeHooks)\n return originalModuleResolveFilename.call(module_1.default, request, parent, isMain, options);\n if (options && options.plugnplay === false) {\n try {\n enableNativeHooks = false;\n return originalModuleResolveFilename.call(module_1.default, request, parent, isMain, options);\n }\n finally {\n enableNativeHooks = true;\n }\n }\n let issuers;\n if (options) {\n const optionNames = new Set(Object.keys(options));\n optionNames.delete(`paths`);\n optionNames.delete(`plugnplay`);\n if (optionNames.size > 0) {\n throw internalTools_1.makeError(`UNSUPPORTED`, `Some options passed to require() aren't supported by PnP yet (${Array.from(optionNames).join(', ')})`);\n }\n if (options.paths) {\n issuers = options.paths.map((entry) => {\n return `${path_1.default.normalize(entry)}/`;\n });\n }\n }\n if (!issuers) {\n const issuerModule = internalTools_1.getIssuerModule(parent);\n const issuer = issuerModule ? issuerModule.filename : `${fslib_1.NodeFS.toPortablePath(process.cwd())}/`;\n issuers = [issuer];\n }\n // When Node is called, it tries to require the main script but can't\n // because PnP already patched 'Module'\n // We test it for an absolute Windows path and convert it to a portable path.\n // We should probably always call toPortablePath and check for this directly\n if (/^[A-Z]:.*/.test(request)) {\n request = fslib_1.NodeFS.toPortablePath(request);\n }\n let firstError;\n for (const issuer of issuers) {\n let resolution;\n try {\n resolution = pnpapi.resolveRequest(request, issuer);\n }\n catch (error) {\n firstError = firstError || error;\n continue;\n }\n return resolution !== null ? resolution : request;\n }\n throw firstError;\n };\n const originalFindPath = module_1.default._findPath;\n module_1.default._findPath = function (request, paths, isMain) {\n if (request === `pnpapi`)\n return false;\n if (!enableNativeHooks)\n return originalFindPath.call(module_1.default, request, paths, isMain);\n for (const path of paths) {\n let resolution;\n try {\n // TODO Convert path to portable path?\n resolution = pnpapi.resolveRequest(request, path);\n }\n catch (error) {\n continue;\n }\n if (resolution) {\n return resolution;\n }\n }\n return false;\n };\n fslib_1.patchFs(fs_1.default, new fslib_1.PosixFS(opts.fakeFs));\n}\nexports.applyPatch = applyPatch;\n;\n\n\n/***/ }),\n/* 20 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n/**\n * Simple helper function that assign an error code to an error, so that it can more easily be caught and used\n * by third-parties.\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nfunction makeError(code, message, data = {}) {\n const error = new Error(message);\n return Object.assign(error, { code, data });\n}\nexports.makeError = makeError;\n/**\n * Returns the module that should be used to resolve require calls. It's usually the direct parent, except if we're\n * inside an eval expression.\n */\nfunction getIssuerModule(parent) {\n let issuer = parent;\n while (issuer && (issuer.id === '[eval]' || issuer.id === '' || !issuer.filename)) {\n issuer = issuer.parent;\n }\n return issuer;\n}\nexports.getIssuerModule = getIssuerModule;\n\n\n/***/ }),\n/* 21 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst fslib_1 = __webpack_require__(1);\nconst path_1 = __webpack_require__(4);\nfunction hydrateRuntimeState(data, { basePath }) {\n const portablePath = fslib_1.NodeFS.toPortablePath(basePath);\n const ignorePattern = data.ignorePatternData\n ? new RegExp(data.ignorePatternData)\n : null;\n const packageRegistry = new Map(data.packageRegistryData.map(([packageName, packageStoreData]) => {\n return [packageName, new Map(packageStoreData.map(([packageReference, packageInformationData]) => {\n return [packageReference, {\n packageLocation: path_1.posix.resolve(portablePath, packageInformationData.packageLocation),\n packageDependencies: new Map(packageInformationData.packageDependencies),\n }];\n }))];\n }));\n const packageLocatorsByLocations = new Map(data.locationBlacklistData.map(location => {\n return [location, null];\n }));\n for (const [packageName, storeData] of data.packageRegistryData) {\n for (const [packageReference, packageInformationData] of storeData) {\n if ((packageName === null) !== (packageReference === null))\n throw new Error(`Assertion failed: The name and reference should be null, or neither should`);\n // @ts-ignore: TypeScript isn't smart enough to understand the type assertion\n const packageLocator = { name: packageName, reference: packageReference };\n packageLocatorsByLocations.set(packageInformationData.packageLocation, packageLocator);\n }\n }\n const packageLocationLengths = data.locationLengthData;\n return {\n basePath: portablePath,\n ignorePattern,\n packageRegistry,\n packageLocatorsByLocations,\n packageLocationLengths,\n };\n}\nexports.hydrateRuntimeState = hydrateRuntimeState;\n\n\n/***/ }),\n/* 22 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst fslib_1 = __webpack_require__(1);\nconst module_1 = __importDefault(__webpack_require__(17));\nconst path_1 = __webpack_require__(4);\nconst internalTools_1 = __webpack_require__(20);\nfunction makeApi(runtimeState, opts) {\n // @ts-ignore\n const builtinModules = new Set(module_1.default.builtinModules || Object.keys(process.binding('natives')));\n // Splits a require request into its components, or return null if the request is a file path\n const pathRegExp = /^(?![a-zA-Z]:[\\\\\\/]|\\\\\\\\|\\.{0,2}(?:\\/|$))((?:@[^\\/]+\\/)?[^\\/]+)\\/?(.*|)$/;\n // Matches if the path starts with a valid path qualifier (./, ../, /)\n // eslint-disable-next-line no-unused-vars\n const isStrictRegExp = /^\\.{0,2}\\//;\n // Matches if the path must point to a directory (ie ends with /)\n const isDirRegExp = /\\/$/;\n // Matches backslashes of Windows paths\n const backwardSlashRegExp = /\\\\/g;\n // We only instantiate one of those so that we can use strict-equal comparisons\n const topLevelLocator = { name: null, reference: null };\n // Used for compatibility purposes - cf setupCompatibilityLayer\n const fallbackLocators = [topLevelLocator];\n if (opts.compatibilityMode) {\n // ESLint currently doesn't have any portable way for shared configs to specify their own\n // plugins that should be used (https://github.com/eslint/eslint/issues/10125). This will\n // likely get fixed at some point, but it'll take time and in the meantime we'll just add\n // additional fallback entries for common shared configs.\n for (const name of [`react-scripts`]) {\n const packageStore = runtimeState.packageRegistry.get(name);\n if (packageStore) {\n for (const reference of packageStore.keys()) {\n if (reference === null) {\n throw new Error(`Assertion failed: This reference shouldn't be null`);\n }\n else {\n fallbackLocators.push({ name, reference });\n }\n }\n }\n }\n }\n /**\n * The setup code will be injected here. The tables listed below are guaranteed to be filled after the call to\n * the $$DYNAMICALLY_GENERATED_CODE function.\n */\n const { ignorePattern, packageRegistry, packageLocatorsByLocations, packageLocationLengths, } = runtimeState;\n /**\n * Returns information about a package in a safe way (will throw if they cannot be retrieved)\n */\n function getPackageInformationSafe(packageLocator) {\n const packageInformation = getPackageInformation(packageLocator);\n if (!packageInformation) {\n throw internalTools_1.makeError(`INTERNAL`, `Couldn't find a matching entry in the dependency tree for the specified parent (this is probably an internal error)`);\n }\n return packageInformation;\n }\n /**\n * Implements the node resolution for folder access and extension selection\n */\n function applyNodeExtensionResolution(unqualifiedPath, candidates, { extensions }) {\n // We use this \"infinite while\" so that we can restart the process as long as we hit package folders\n while (true) {\n let stat;\n try {\n candidates.push(unqualifiedPath);\n stat = opts.fakeFs.statSync(unqualifiedPath);\n }\n catch (error) { }\n // If the file exists and is a file, we can stop right there\n if (stat && !stat.isDirectory()) {\n // If the very last component of the resolved path is a symlink to a file, we then resolve it to a file. We only\n // do this first the last component, and not the rest of the path! This allows us to support the case of bin\n // symlinks, where a symlink in \"/xyz/pkg-name/.bin/bin-name\" will point somewhere else (like \"/xyz/pkg-name/index.js\").\n // In such a case, we want relative requires to be resolved relative to \"/xyz/pkg-name/\" rather than \"/xyz/pkg-name/.bin/\".\n //\n // Also note that the reason we must use readlink on the last component (instead of realpath on the whole path)\n // is that we must preserve the other symlinks, in particular those used by pnp to deambiguate packages using\n // peer dependencies. For example, \"/xyz/.pnp/local/pnp-01234569/.bin/bin-name\" should see its relative requires\n // be resolved relative to \"/xyz/.pnp/local/pnp-0123456789/\" rather than \"/xyz/pkg-with-peers/\", because otherwise\n // we would lose the information that would tell us what are the dependencies of pkg-with-peers relative to its\n // ancestors.\n if (opts.fakeFs.lstatSync(unqualifiedPath).isSymbolicLink())\n unqualifiedPath = path_1.posix.normalize(path_1.posix.resolve(path_1.posix.dirname(unqualifiedPath), opts.fakeFs.readlinkSync(unqualifiedPath)));\n return unqualifiedPath;\n }\n // If the file is a directory, we must check if it contains a package.json with a \"main\" entry\n if (stat && stat.isDirectory()) {\n let pkgJson;\n try {\n pkgJson = JSON.parse(opts.fakeFs.readFileSync(`${unqualifiedPath}/package.json`, `utf8`));\n }\n catch (error) { }\n let nextUnqualifiedPath;\n if (pkgJson && pkgJson.main)\n nextUnqualifiedPath = path_1.posix.resolve(unqualifiedPath, pkgJson.main);\n // If the \"main\" field changed the path, we start again from this new location\n if (nextUnqualifiedPath && nextUnqualifiedPath !== unqualifiedPath) {\n const resolution = applyNodeExtensionResolution(nextUnqualifiedPath, candidates, { extensions });\n if (resolution !== null) {\n return resolution;\n }\n }\n }\n // Otherwise we check if we find a file that match one of the supported extensions\n const qualifiedPath = extensions\n .map(extension => {\n return `${unqualifiedPath}${extension}`;\n })\n .find(candidateFile => {\n candidates.push(candidateFile);\n return opts.fakeFs.existsSync(candidateFile);\n });\n if (qualifiedPath)\n return qualifiedPath;\n // Otherwise, we check if the path is a folder - in such a case, we try to use its index\n if (stat && stat.isDirectory()) {\n const indexPath = extensions\n .map(extension => {\n return `${unqualifiedPath}/index${extension}`;\n })\n .find(candidateFile => {\n candidates.push(candidateFile);\n return opts.fakeFs.existsSync(candidateFile);\n });\n if (indexPath) {\n return indexPath;\n }\n }\n // Otherwise there's nothing else we can do :(\n return null;\n }\n }\n /**\n * This function creates fake modules that can be used with the _resolveFilename function.\n * Ideally it would be nice to be able to avoid this, since it causes useless allocations\n * and cannot be cached efficiently (we recompute the nodeModulePaths every time).\n *\n * Fortunately, this should only affect the fallback, and there hopefully shouldn't have a\n * lot of them.\n */\n function makeFakeModule(path) {\n // @ts-ignore\n const fakeModule = new module_1.default(path, null);\n fakeModule.filename = path;\n fakeModule.paths = module_1.default._nodeModulePaths(path);\n return fakeModule;\n }\n /**\n * Normalize path to posix format.\n */\n function normalizePath(p) {\n p = path_1.posix.normalize(p);\n if (process.platform === 'win32')\n p = p.replace(backwardSlashRegExp, '/');\n return p;\n }\n /**\n * Forward the resolution to the next resolver (usually the native one)\n */\n function callNativeResolution(request, issuer) {\n if (issuer.endsWith('/'))\n issuer += 'internal.js';\n request = fslib_1.NodeFS.fromPortablePath(request);\n issuer = fslib_1.NodeFS.fromPortablePath(issuer);\n // Since we would need to create a fake module anyway (to call _resolveLookupPath that\n // would give us the paths to give to _resolveFilename), we can as well not use\n // the {paths} option at all, since it internally makes _resolveFilename create another\n // fake module anyway.\n return module_1.default._resolveFilename(request, makeFakeModule(issuer), false, { plugnplay: false });\n }\n /**\n * This key indicates which version of the standard is implemented by this resolver. The `std` key is the\n * Plug'n'Play standard, and any other key are third-party extensions. Third-party extensions are not allowed\n * to override the standard, and can only offer new methods.\n *\n * If an new version of the Plug'n'Play standard is released and some extensions conflict with newly added\n * functions, they'll just have to fix the conflicts and bump their own version number.\n */\n const VERSIONS = { std: 1 };\n /**\n * We export a special symbol for easy access to the top level locator.\n */\n const topLevel = topLevelLocator;\n /**\n * Gets the package information for a given locator. Returns null if they cannot be retrieved.\n */\n function getPackageInformation({ name, reference }) {\n const packageInformationStore = packageRegistry.get(name);\n if (!packageInformationStore)\n return null;\n const packageInformation = packageInformationStore.get(reference);\n if (!packageInformation)\n return null;\n return packageInformation;\n }\n /**\n * Finds the package locator that owns the specified path. If none is found, returns null instead.\n */\n function findPackageLocator(location) {\n let relativeLocation = normalizePath(path_1.posix.relative(runtimeState.basePath, location));\n if (!relativeLocation.match(isStrictRegExp))\n relativeLocation = `./${relativeLocation}`;\n if (location.match(isDirRegExp) && !relativeLocation.endsWith(`/`))\n relativeLocation = `${relativeLocation}/`;\n let from = 0;\n // If someone wants to use a binary search to go from O(n) to O(log n), be my guest\n while (from < packageLocationLengths.length && packageLocationLengths[from] > relativeLocation.length)\n from += 1;\n for (let t = from; t < packageLocationLengths.length; ++t) {\n const locator = packageLocatorsByLocations.get(relativeLocation.substr(0, packageLocationLengths[t]));\n if (!locator)\n continue;\n // Ensures that the returned locator isn't a blacklisted one.\n //\n // Blacklisted packages are packages that cannot be used because their dependencies cannot be deduced. This only\n // happens with peer dependencies, which effectively have different sets of dependencies depending on their\n // parents.\n //\n // In order to deambiguate those different sets of dependencies, the Yarn implementation of PnP will generate a\n // symlink for each combination of // it will find, and will\n // blacklist the target of those symlinks. By doing this, we ensure that files loaded through a specific path\n // will always have the same set of dependencies, provided the symlinks are correctly preserved.\n //\n // Unfortunately, some tools do not preserve them, and when it happens PnP isn't able anymore to deduce the set of\n // dependencies based on the path of the file that makes the require calls. But since we've blacklisted those\n // paths, we're able to print a more helpful error message that points out that a third-party package is doing\n // something incompatible!\n if (locator === null) {\n throw internalTools_1.makeError(`BLACKLISTED`, [\n `A package has been resolved through a blacklisted path - this is usually caused by one of your tool`,\n `calling \"realpath\" on the return value of \"require.resolve\". Since the returned values use symlinks to`,\n `disambiguate peer dependencies, they must be passed untransformed to \"require\".`,\n ].join(` `));\n }\n return locator;\n }\n return null;\n }\n /**\n * Transforms a request (what's typically passed as argument to the require function) into an unqualified path.\n * This path is called \"unqualified\" because it only changes the package name to the package location on the disk,\n * which means that the end result still cannot be directly accessed (for example, it doesn't try to resolve the\n * file extension, or to resolve directories to their \"index.js\" content). Use the \"resolveUnqualified\" function\n * to convert them to fully-qualified paths, or just use \"resolveRequest\" that do both operations in one go.\n *\n * Note that it is extremely important that the `issuer` path ends with a forward slash if the issuer is to be\n * treated as a folder (ie. \"/tmp/foo/\" rather than \"/tmp/foo\" if \"foo\" is a directory). Otherwise relative\n * imports won't be computed correctly (they'll get resolved relative to \"/tmp/\" instead of \"/tmp/foo/\").\n */\n function resolveToUnqualified(request, issuer, { considerBuiltins = true } = {}) {\n // The 'pnpapi' request is reserved and will always return the path to the PnP file, from everywhere\n if (request === `pnpapi`)\n return opts.pnpapiResolution;\n // Bailout if the request is a native module\n if (considerBuiltins && builtinModules.has(request))\n return null;\n // We allow disabling the pnp resolution for some subpaths. This is because some projects, often legacy,\n // contain multiple levels of dependencies (ie. a yarn.lock inside a subfolder of a yarn.lock). This is\n // typically solved using workspaces, but not all of them have been converted already.\n if (ignorePattern && issuer && ignorePattern.test(normalizePath(issuer))) {\n const result = callNativeResolution(request, issuer);\n if (result === false) {\n throw internalTools_1.makeError(`BUILTIN_NODE_RESOLUTION_FAIL`, `The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer was explicitely ignored by the regexp)\\n\\nRequire request: \"${request}\"\\nRequired by: ${issuer}\\n`, { request, issuer });\n }\n return result;\n }\n let unqualifiedPath;\n // If the request is a relative or absolute path, we just return it normalized\n const dependencyNameMatch = request.match(pathRegExp);\n if (!dependencyNameMatch) {\n if (path_1.posix.isAbsolute(request)) {\n unqualifiedPath = path_1.posix.normalize(request);\n }\n else {\n if (!issuer) {\n throw internalTools_1.makeError(`API_ERROR`, `The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute`, { request, issuer });\n }\n if (issuer.match(isDirRegExp)) {\n unqualifiedPath = path_1.posix.normalize(path_1.posix.resolve(issuer, request));\n }\n else {\n unqualifiedPath = path_1.posix.normalize(path_1.posix.resolve(path_1.posix.dirname(issuer), request));\n }\n }\n }\n // Things are more hairy if it's a package require - we then need to figure out which package is needed, and in\n // particular the exact version for the given location on the dependency tree\n else {\n if (!issuer) {\n throw internalTools_1.makeError(`API_ERROR`, `The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute`, { request, issuer });\n }\n const [, dependencyName, subPath] = dependencyNameMatch;\n const issuerLocator = findPackageLocator(issuer);\n // If the issuer file doesn't seem to be owned by a package managed through pnp, then we resort to using the next\n // resolution algorithm in the chain, usually the native Node resolution one\n if (!issuerLocator) {\n const result = callNativeResolution(request, issuer);\n if (result === false) {\n throw internalTools_1.makeError(`BUILTIN_NODE_RESOLUTION_FAIL`, `The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer doesn't seem to be part of the Yarn-managed dependency tree)\\n\\nRequire path: \"${request}\"\\nRequired by: ${issuer}\\n`, { request, issuer });\n }\n return result;\n }\n const issuerInformation = getPackageInformationSafe(issuerLocator);\n // We obtain the dependency reference in regard to the package that request it\n let dependencyReference = issuerInformation.packageDependencies.get(dependencyName);\n // If we can't find it, we check if we can potentially load it from the packages that have been defined as potential fallbacks.\n // It's a bit of a hack, but it improves compatibility with the existing Node ecosystem. Hopefully we should eventually be able\n // to kill this logic and become stricter once pnp gets enough traction and the affected packages fix themselves.\n if (issuerLocator.name !== null) {\n for (let t = 0, T = fallbackLocators.length; dependencyReference === undefined && t < T; ++t) {\n const fallbackInformation = getPackageInformationSafe(fallbackLocators[t]);\n dependencyReference = fallbackInformation.packageDependencies.get(dependencyName);\n }\n }\n // If we can't find the path, and if the package making the request is the top-level, we can offer nicer error messages\n if (!dependencyReference) {\n if (dependencyReference === null) {\n if (issuerLocator.name === null) {\n throw internalTools_1.makeError(`MISSING_PEER_DEPENDENCY`, `Something that got detected as your top-level application (because it doesn't seem to belong to any package) tried to access a peer dependency; this isn't allowed as the peer dependency cannot be provided by any parent package\\n\\nRequired package: ${dependencyName} (via \"${request}\")\\nRequired by: ${issuer}\\n`, { request, issuer, dependencyName });\n }\n else {\n throw internalTools_1.makeError(`MISSING_PEER_DEPENDENCY`, `A package is trying to access a peer dependency that should be provided by its direct ancestor but isn't\\n\\nRequired package: ${dependencyName} (via \"${request}\")\\nRequired by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuer})\\n`, { request, issuer, issuerLocator: Object.assign({}, issuerLocator), dependencyName });\n }\n }\n else {\n if (issuerLocator.name === null) {\n throw internalTools_1.makeError(`UNDECLARED_DEPENDENCY`, `Something that got detected as your top-level application (because it doesn't seem to belong to any package) tried to access a package that is not declared in your dependencies\\n\\nRequired package: ${dependencyName} (via \"${request}\")\\nRequired by: ${issuer}\\n`, { request, issuer, dependencyName });\n }\n else {\n const candidates = Array.from(issuerInformation.packageDependencies.keys());\n throw internalTools_1.makeError(`UNDECLARED_DEPENDENCY`, `A package is trying to access another package without the second one being listed as a dependency of the first one\\n\\nRequired package: ${dependencyName} (via \"${request}\")\\nRequired by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuer})\\n`, { request, issuer, issuerLocator: Object.assign({}, issuerLocator), dependencyName, candidates });\n }\n }\n }\n // We need to check that the package exists on the filesystem, because it might not have been installed\n const dependencyLocator = { name: dependencyName, reference: dependencyReference };\n const dependencyInformation = getPackageInformationSafe(dependencyLocator);\n if (!dependencyInformation.packageLocation) {\n throw internalTools_1.makeError(`MISSING_DEPENDENCY`, `A dependency seems valid but didn't get installed for some reason. This might be caused by a partial install, such as dev vs prod.\\n\\nRequired package: ${dependencyLocator.name}@${dependencyLocator.reference} (via \"${request}\")\\nRequired by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuer})\\n`, { request, issuer, dependencyLocator: Object.assign({}, dependencyLocator) });\n }\n // Now that we know which package we should resolve to, we only have to find out the file location\n const dependencyLocation = path_1.posix.resolve(runtimeState.basePath, dependencyInformation.packageLocation);\n if (subPath) {\n unqualifiedPath = path_1.posix.resolve(dependencyLocation, subPath);\n }\n else {\n unqualifiedPath = dependencyLocation;\n }\n }\n return path_1.posix.normalize(unqualifiedPath);\n }\n ;\n /**\n * Transforms an unqualified path into a qualified path by using the Node resolution algorithm (which automatically\n * appends \".js\" / \".json\", and transforms directory accesses into \"index.js\").\n */\n function resolveUnqualified(unqualifiedPath, { extensions = Object.keys(module_1.default._extensions) } = {}) {\n const candidates = [];\n const qualifiedPath = applyNodeExtensionResolution(unqualifiedPath, candidates, { extensions });\n if (qualifiedPath) {\n return path_1.posix.normalize(qualifiedPath);\n }\n else {\n throw internalTools_1.makeError(`QUALIFIED_PATH_RESOLUTION_FAILED`, `Couldn't find a suitable Node resolution for the specified unqualified path\\n\\nSource path: ${unqualifiedPath}\\n${candidates.map(candidate => `Rejected resolution: ${candidate}\\n`).join(``)}`, { unqualifiedPath });\n }\n }\n ;\n /**\n * Transforms a request into a fully qualified path.\n *\n * Note that it is extremely important that the `issuer` path ends with a forward slash if the issuer is to be\n * treated as a folder (ie. \"/tmp/foo/\" rather than \"/tmp/foo\" if \"foo\" is a directory). Otherwise relative\n * imports won't be computed correctly (they'll get resolved relative to \"/tmp/\" instead of \"/tmp/foo/\").\n */\n function resolveRequest(request, issuer, { considerBuiltins, extensions } = {}) {\n let unqualifiedPath = resolveToUnqualified(request, issuer, { considerBuiltins });\n if (unqualifiedPath === null) {\n return null;\n }\n try {\n return resolveUnqualified(unqualifiedPath, { extensions });\n }\n catch (resolutionError) {\n if (resolutionError.code === 'QUALIFIED_PATH_RESOLUTION_FAILED') {\n Object.assign(resolutionError.data, { request, issuer });\n }\n throw resolutionError;\n }\n }\n ;\n return {\n VERSIONS,\n topLevel,\n getPackageInformation: (locator) => {\n const info = getPackageInformation(locator);\n if (info === null)\n return null;\n const packageLocation = fslib_1.NodeFS.fromPortablePath(info.packageLocation);\n const nativeInfo = Object.assign({}, info, { packageLocation });\n return nativeInfo;\n },\n findPackageLocator: (path) => {\n path = fslib_1.NodeFS.toPortablePath(path);\n return findPackageLocator(path);\n },\n resolveToUnqualified: (request, issuer, opts) => {\n request = fslib_1.NodeFS.toPortablePath(request);\n if (issuer !== null)\n issuer = fslib_1.NodeFS.toPortablePath(issuer);\n const resolution = resolveToUnqualified(request, issuer, opts);\n if (resolution === null)\n return null;\n return fslib_1.NodeFS.fromPortablePath(resolution);\n },\n resolveUnqualified: (unqualifiedPath, opts) => {\n unqualifiedPath = fslib_1.NodeFS.fromPortablePath(unqualifiedPath);\n return fslib_1.NodeFS.fromPortablePath(resolveUnqualified(unqualifiedPath, opts));\n },\n resolveRequest: (request, issuer, opts) => {\n request = fslib_1.NodeFS.toPortablePath(request);\n if (issuer !== null)\n issuer = fslib_1.NodeFS.toPortablePath(issuer);\n const resolution = resolveRequest(request, issuer, opts);\n if (resolution === null)\n return null;\n return fslib_1.NodeFS.fromPortablePath(resolution);\n },\n };\n}\nexports.makeApi = makeApi;\n\n\n/***/ })\n/******/ ]);"; diff --git a/packages/berry-pnp/sources/hydratePnpApi.ts b/packages/berry-pnp/sources/hydratePnpApi.ts index 3d9abbe99572..5e08d7f83640 100644 --- a/packages/berry-pnp/sources/hydratePnpApi.ts +++ b/packages/berry-pnp/sources/hydratePnpApi.ts @@ -1,3 +1,4 @@ +import {FakeFS} from '@berry/fslib'; import {readFile} from 'fs'; import {dirname} from 'path'; import {promisify} from 'util'; @@ -27,16 +28,17 @@ const readFileP = promisify(readFile); // real use case is to access the PnP API without running the risk of executing // third-party Javascript code. -export async function hydratePnpFile(location: string, {pnpapiResolution}: {pnpapiResolution: string}) { +export async function hydratePnpFile(location: string, {fakeFs, pnpapiResolution}: {fakeFs: FakeFS, pnpapiResolution: string}) { const source = await readFileP(location, `utf8`); return hydratePnpSource(source, { basePath: dirname(location), + fakeFs, pnpapiResolution, }); } -export function hydratePnpSource(source: string, {basePath, pnpapiResolution}: {basePath: string, pnpapiResolution: string}) { +export function hydratePnpSource(source: string, {basePath, fakeFs, pnpapiResolution}: {basePath: string, fakeFs: FakeFS, pnpapiResolution: string}) { const data = JSON.parse(source) as SerializedState; const runtimeState = hydrateRuntimeState(data, { @@ -45,6 +47,7 @@ export function hydratePnpSource(source: string, {basePath, pnpapiResolution}: { return makeApi(runtimeState, { compatibilityMode: true, + fakeFs, pnpapiResolution, }); } diff --git a/packages/berry-pnp/sources/loader/_entryPoint.ts b/packages/berry-pnp/sources/loader/_entryPoint.ts index 95083b3653c4..8888e0c1e0e8 100644 --- a/packages/berry-pnp/sources/loader/_entryPoint.ts +++ b/packages/berry-pnp/sources/loader/_entryPoint.ts @@ -1,3 +1,5 @@ +import {NodeFS, ZipOpenFS} from '@berry/fslib'; +import fs from 'fs'; import Module from 'module'; import path from 'path'; import StringDecoder from 'string_decoder'; @@ -11,14 +13,24 @@ import {makeApi} from './makeApi'; declare var __non_webpack_module__: NodeModule; declare var $$SETUP_STATE: (hrs: typeof hydrateRuntimeState) => RuntimeState; +// We must copy the fs into a local, because otherwise +// 1. we would make the NodeFS instance use the function that we patched (infinite loop) +// 2. Object.create(fs) isn't enough, since it won't prevent the proto from being modified +const localFs: typeof fs = {...fs}; +const nodeFs = new NodeFS(localFs); + +const zipOpenFs = new ZipOpenFS({baseFs: nodeFs}); + module.exports = makeApi($$SETUP_STATE(hydrateRuntimeState), { compatibilityMode: true, pnpapiResolution: path.resolve(__dirname, __filename), + fakeFs: zipOpenFs, }); if (__non_webpack_module__.parent && __non_webpack_module__.parent.id === 'internal/preload') { applyPatch(module.exports, { compatibilityMode: true, + fakeFs: zipOpenFs, }); if (__non_webpack_module__.filename) { diff --git a/packages/berry-pnp/sources/loader/applyPatch.ts b/packages/berry-pnp/sources/loader/applyPatch.ts index 95722671cb75..674bb8fd3c8f 100644 --- a/packages/berry-pnp/sources/loader/applyPatch.ts +++ b/packages/berry-pnp/sources/loader/applyPatch.ts @@ -1,14 +1,15 @@ -import {NodeFS, ZipOpenFS, patchFs} from '@berry/fslib'; -import fs from 'fs'; -import Module from 'module'; -import path from 'path'; +import {FakeFS, NodeFS, PosixFS, patchFs} from '@berry/fslib'; +import fs from 'fs'; +import Module from 'module'; +import path from 'path'; -import {PackageLocator, PnpApi} from '../types'; +import {PackageLocator, PnpApi} from '../types'; -import {makeError, getIssuerModule} from './internalTools'; +import {makeError, getIssuerModule} from './internalTools'; export type ApplyPatchOptions = { compatibilityMode?: boolean, + fakeFs: FakeFS, }; export function applyPatch(pnpapi: PnpApi, opts: ApplyPatchOptions) { @@ -47,6 +48,7 @@ export function applyPatch(pnpapi: PnpApi, opts: ApplyPatchOptions) { if (basedir.charAt(basedir.length - 1) !== '/') basedir = path.join(basedir, '/'); + // TODO Handle portable paths // This is guaranteed to return the path to the "package.json" file from the given package const manifestPath = pnpapi.resolveToUnqualified(`${parts[1]}/package.json`, basedir, { considerBuiltins: false, @@ -150,9 +152,12 @@ export function applyPatch(pnpapi: PnpApi, opts: ApplyPatchOptions) { // Some modules might have to be patched for compatibility purposes - for (const [filter, patchFn] of patchedModules) - if (filter.test(request)) - module.exports = patchFn(parent && parent.filename ? pnpapi.findPackageLocator(parent.filename) : null, module.exports); + for (const [filter, patchFn] of patchedModules) { + if (filter.test(request)) { + const issuer = parent && parent.filename ? pnpapi.findPackageLocator(parent.filename): null; + module.exports = patchFn(issuer, module.exports); + } + } return module.exports; }; @@ -198,16 +203,24 @@ export function applyPatch(pnpapi: PnpApi, opts: ApplyPatchOptions) { if (!issuers) { const issuerModule = getIssuerModule(parent); - const issuer = issuerModule ? issuerModule.filename : `${process.cwd()}/`; + const issuer = issuerModule ? issuerModule.filename : `${NodeFS.toPortablePath(process.cwd())}/`; issuers = [issuer]; } + // When Node is called, it tries to require the main script but can't + // because PnP already patched 'Module' + // We test it for an absolute Windows path and convert it to a portable path. + // We should probably always call toPortablePath and check for this directly + if (/^[A-Z]:.*/.test(request)) { + request = NodeFS.toPortablePath(request); + } + let firstError; for (const issuer of issuers) { let resolution; - + try { resolution = pnpapi.resolveRequest(request, issuer); } catch (error) { @@ -217,7 +230,7 @@ export function applyPatch(pnpapi: PnpApi, opts: ApplyPatchOptions) { return resolution !== null ? resolution : request; } - + throw firstError; }; @@ -234,6 +247,7 @@ export function applyPatch(pnpapi: PnpApi, opts: ApplyPatchOptions) { let resolution; try { + // TODO Convert path to portable path? resolution = pnpapi.resolveRequest(request, path); } catch (error) { continue; @@ -247,11 +261,5 @@ export function applyPatch(pnpapi: PnpApi, opts: ApplyPatchOptions) { return false; }; - // We must copy the fs into a local, because otherwise - // 1. we would make the NodeFS instance use the function that we patched (infinite loop) - // 2. Object.create(fs) isn't enough, since it won't prevent the proto from being modified - const localFs: typeof fs = {...fs}; - const nodeFs = new NodeFS(localFs); - - patchFs(fs, new ZipOpenFS({baseFs: nodeFs})); + patchFs(fs, new PosixFS(opts.fakeFs)); }; diff --git a/packages/berry-pnp/sources/loader/hydrateRuntimeState.ts b/packages/berry-pnp/sources/loader/hydrateRuntimeState.ts index f29b0ce3267a..05e786a9c01f 100644 --- a/packages/berry-pnp/sources/loader/hydrateRuntimeState.ts +++ b/packages/berry-pnp/sources/loader/hydrateRuntimeState.ts @@ -1,4 +1,5 @@ -import path from 'path'; +import {NodeFS} from '@berry/fslib'; +import {posix} from 'path'; import {PackageInformation, PackageLocator, PackageStore, RuntimeState, SerializedState} from '../types'; @@ -7,6 +8,7 @@ export type HydrateRuntimeStateOptions = { }; export function hydrateRuntimeState(data: SerializedState, {basePath}: HydrateRuntimeStateOptions): RuntimeState { + const portablePath = NodeFS.toPortablePath(basePath); const ignorePattern = data.ignorePatternData ? new RegExp(data.ignorePatternData) : null; @@ -14,7 +16,7 @@ export function hydrateRuntimeState(data: SerializedState, {basePath}: HydrateRu const packageRegistry = new Map(data.packageRegistryData.map(([packageName, packageStoreData]) => { return [packageName, new Map(packageStoreData.map(([packageReference, packageInformationData]) => { return [packageReference, { - packageLocation: path.resolve(basePath, packageInformationData.packageLocation), + packageLocation: posix.resolve(portablePath, packageInformationData.packageLocation), packageDependencies: new Map(packageInformationData.packageDependencies), }] as [string | null, PackageInformation]; }))] as [string | null, PackageStore]; @@ -39,7 +41,7 @@ export function hydrateRuntimeState(data: SerializedState, {basePath}: HydrateRu const packageLocationLengths = data.locationLengthData; return { - basePath, + basePath: portablePath, ignorePattern, packageRegistry, packageLocatorsByLocations, diff --git a/packages/berry-pnp/sources/loader/makeApi.ts b/packages/berry-pnp/sources/loader/makeApi.ts index f22148746bd2..04f8b0f3f76e 100644 --- a/packages/berry-pnp/sources/loader/makeApi.ts +++ b/packages/berry-pnp/sources/loader/makeApi.ts @@ -1,6 +1,6 @@ -import fs from 'fs'; +import {FakeFS, NodeFS} from '@berry/fslib'; import Module from 'module'; -import path from 'path'; +import path, {posix} from 'path'; import {PackageInformation, PackageLocator, PnpApi, RuntimeState} from '../types'; @@ -8,9 +8,22 @@ import {makeError} from './intern export type MakeApiOptions = { compatibilityMode?: boolean, + fakeFs: FakeFS, pnpapiResolution: string, }; +export type ResolveToUnqualifiedOptions = { + considerBuiltins?: boolean, +}; + +export type ResolveUnqualifiedOptions = { + extensions?: Array, +}; + +export type ResolveRequestOptions = + ResolveToUnqualifiedOptions & + ResolveUnqualifiedOptions; + export function makeApi(runtimeState: RuntimeState, opts: MakeApiOptions): PnpApi { // @ts-ignore const builtinModules = new Set(Module.builtinModules || Object.keys(process.binding('natives'))); @@ -94,7 +107,7 @@ export function makeApi(runtimeState: RuntimeState, opts: MakeApiOptions): PnpAp try { candidates.push(unqualifiedPath); - stat = fs.statSync(unqualifiedPath); + stat = opts.fakeFs.statSync(unqualifiedPath); } catch (error) {} // If the file exists and is a file, we can stop right there @@ -112,8 +125,8 @@ export function makeApi(runtimeState: RuntimeState, opts: MakeApiOptions): PnpAp // we would lose the information that would tell us what are the dependencies of pkg-with-peers relative to its // ancestors. - if (fs.lstatSync(unqualifiedPath).isSymbolicLink()) - unqualifiedPath = path.normalize(path.resolve(path.dirname(unqualifiedPath), fs.readlinkSync(unqualifiedPath))); + if (opts.fakeFs.lstatSync(unqualifiedPath).isSymbolicLink()) + unqualifiedPath = posix.normalize(posix.resolve(posix.dirname(unqualifiedPath), opts.fakeFs.readlinkSync(unqualifiedPath))); return unqualifiedPath; } @@ -124,13 +137,13 @@ export function makeApi(runtimeState: RuntimeState, opts: MakeApiOptions): PnpAp let pkgJson; try { - pkgJson = JSON.parse(fs.readFileSync(`${unqualifiedPath}/package.json`, 'utf-8')); + pkgJson = JSON.parse(opts.fakeFs.readFileSync(`${unqualifiedPath}/package.json`, `utf8`)); } catch (error) {} let nextUnqualifiedPath; if (pkgJson && pkgJson.main) - nextUnqualifiedPath = path.resolve(unqualifiedPath, pkgJson.main); + nextUnqualifiedPath = posix.resolve(unqualifiedPath, pkgJson.main); // If the "main" field changed the path, we start again from this new location @@ -151,7 +164,7 @@ export function makeApi(runtimeState: RuntimeState, opts: MakeApiOptions): PnpAp }) .find(candidateFile => { candidates.push(candidateFile); - return fs.existsSync(candidateFile); + return opts.fakeFs.existsSync(candidateFile); }); if (qualifiedPath) @@ -166,7 +179,7 @@ export function makeApi(runtimeState: RuntimeState, opts: MakeApiOptions): PnpAp }) .find(candidateFile => { candidates.push(candidateFile); - return fs.existsSync(candidateFile); + return opts.fakeFs.existsSync(candidateFile); }); if (indexPath) { @@ -202,7 +215,7 @@ export function makeApi(runtimeState: RuntimeState, opts: MakeApiOptions): PnpAp */ function normalizePath(p: string) { - p = path.normalize(p); + p = posix.normalize(p); if (process.platform === 'win32') p = p.replace(backwardSlashRegExp, '/'); @@ -218,6 +231,9 @@ export function makeApi(runtimeState: RuntimeState, opts: MakeApiOptions): PnpAp if (issuer.endsWith('/')) issuer += 'internal.js'; + request = NodeFS.fromPortablePath(request); + issuer = NodeFS.fromPortablePath(issuer); + // Since we would need to create a fake module anyway (to call _resolveLookupPath that // would give us the paths to give to _resolveFilename), we can as well not use // the {paths} option at all, since it internally makes _resolveFilename create another @@ -258,14 +274,14 @@ export function makeApi(runtimeState: RuntimeState, opts: MakeApiOptions): PnpAp return null; return packageInformation; - }; + } /** * Finds the package locator that owns the specified path. If none is found, returns null instead. */ function findPackageLocator(location: string): PackageLocator | null { - let relativeLocation = normalizePath(path.relative(runtimeState.basePath, location)); + let relativeLocation = normalizePath(posix.relative(runtimeState.basePath, location)); if (!relativeLocation.match(isStrictRegExp)) relativeLocation = `./${relativeLocation}`; @@ -329,7 +345,7 @@ export function makeApi(runtimeState: RuntimeState, opts: MakeApiOptions): PnpAp * imports won't be computed correctly (they'll get resolved relative to "/tmp/" instead of "/tmp/foo/"). */ - function resolveToUnqualified(request: string, issuer: string | null, {considerBuiltins = true}: {considerBuiltins?: boolean} = {}): string | null { + function resolveToUnqualified(request: string, issuer: string | null, {considerBuiltins = true}: ResolveToUnqualifiedOptions = {}): string | null { // The 'pnpapi' request is reserved and will always return the path to the PnP file, from everywhere if (request === `pnpapi`) @@ -365,8 +381,8 @@ export function makeApi(runtimeState: RuntimeState, opts: MakeApiOptions): PnpAp const dependencyNameMatch = request.match(pathRegExp); if (!dependencyNameMatch) { - if (path.isAbsolute(request)) { - unqualifiedPath = path.normalize(request); + if (posix.isAbsolute(request)) { + unqualifiedPath = posix.normalize(request); } else { if (!issuer) { throw makeError( @@ -377,9 +393,9 @@ export function makeApi(runtimeState: RuntimeState, opts: MakeApiOptions): PnpAp } if (issuer.match(isDirRegExp)) { - unqualifiedPath = path.normalize(path.resolve(issuer, request)); + unqualifiedPath = posix.normalize(posix.resolve(issuer, request)); } else { - unqualifiedPath = path.normalize(path.resolve(path.dirname(issuer), request)); + unqualifiedPath = posix.normalize(posix.resolve(posix.dirname(issuer), request)); } } } @@ -484,16 +500,16 @@ export function makeApi(runtimeState: RuntimeState, opts: MakeApiOptions): PnpAp // Now that we know which package we should resolve to, we only have to find out the file location - const dependencyLocation = path.resolve(runtimeState.basePath, dependencyInformation.packageLocation); + const dependencyLocation = posix.resolve(runtimeState.basePath, dependencyInformation.packageLocation); if (subPath) { - unqualifiedPath = path.resolve(dependencyLocation, subPath); + unqualifiedPath = posix.resolve(dependencyLocation, subPath); } else { unqualifiedPath = dependencyLocation; } } - return path.normalize(unqualifiedPath); + return posix.normalize(unqualifiedPath); }; /** @@ -501,15 +517,12 @@ export function makeApi(runtimeState: RuntimeState, opts: MakeApiOptions): PnpAp * appends ".js" / ".json", and transforms directory accesses into "index.js"). */ - function resolveUnqualified( - unqualifiedPath: string, - {extensions = Object.keys(Module._extensions)}: {extensions?: Array} = {}, - ): string { + function resolveUnqualified(unqualifiedPath: string, {extensions = Object.keys(Module._extensions)}: ResolveUnqualifiedOptions = {}): string { const candidates: Array = []; const qualifiedPath = applyNodeExtensionResolution(unqualifiedPath, candidates, {extensions}); if (qualifiedPath) { - return path.normalize(qualifiedPath); + return posix.normalize(qualifiedPath); } else { throw makeError( `QUALIFIED_PATH_RESOLUTION_FAILED`, @@ -527,7 +540,7 @@ export function makeApi(runtimeState: RuntimeState, opts: MakeApiOptions): PnpAp * imports won't be computed correctly (they'll get resolved relative to "/tmp/" instead of "/tmp/foo/"). */ - function resolveRequest(request: string, issuer: string | null, {considerBuiltins, extensions}: {considerBuiltins?: boolean, extensions?: Array} = {}): string | null { + function resolveRequest(request: string, issuer: string | null, {considerBuiltins, extensions}: ResolveRequestOptions = {}): string | null { let unqualifiedPath = resolveToUnqualified(request, issuer, {considerBuiltins}); if (unqualifiedPath === null) { @@ -548,11 +561,54 @@ export function makeApi(runtimeState: RuntimeState, opts: MakeApiOptions): PnpAp VERSIONS, topLevel, - getPackageInformation, - findPackageLocator, + getPackageInformation: (locator: PackageLocator) => { + const info = getPackageInformation(locator); + + if (info === null) + return null; + + const packageLocation = NodeFS.fromPortablePath(info.packageLocation); + const nativeInfo = {... info, packageLocation}; + + return nativeInfo; + }, + + findPackageLocator: (path: string) => { + path = NodeFS.toPortablePath(path); + + return findPackageLocator(path); + }, + + resolveToUnqualified: (request: string, issuer: string | null, opts?: ResolveToUnqualifiedOptions) => { + request = NodeFS.toPortablePath(request); + + if (issuer !== null) + issuer = NodeFS.toPortablePath(issuer); + + const resolution = resolveToUnqualified(request, issuer, opts); + if (resolution === null) + return null; + + return NodeFS.fromPortablePath(resolution); + }, + + resolveUnqualified: (unqualifiedPath: string, opts?: ResolveUnqualifiedOptions) => { + unqualifiedPath = NodeFS.fromPortablePath(unqualifiedPath); + + return NodeFS.fromPortablePath(resolveUnqualified(unqualifiedPath, opts)); + }, + + resolveRequest: (request: string, issuer: string | null, opts?: ResolveRequestOptions) => { + request = NodeFS.toPortablePath(request); + + if (issuer !== null) + issuer = NodeFS.toPortablePath(issuer); + + const resolution = resolveRequest(request, issuer, opts); + if (resolution === null) + return null; - resolveToUnqualified, - resolveUnqualified, - resolveRequest, + return NodeFS.fromPortablePath(resolution); + }, }; } diff --git a/packages/berry-shell/sources/index.ts b/packages/berry-shell/sources/index.ts index b53e03fbbc4f..8cb859939fca 100644 --- a/packages/berry-shell/sources/index.ts +++ b/packages/berry-shell/sources/index.ts @@ -1,4 +1,4 @@ -import {xfs} from '@berry/fslib'; +import {xfs, NodeFS} from '@berry/fslib'; import {CommandSegment, CommandChain, CommandLine, ShellLine, parseShell} from '@berry/parsers'; import {spawn} from 'child_process'; import {delimiter, posix} from 'path'; @@ -81,7 +81,7 @@ function cloneState(state: ShellState, mergeWith: Partial = {}) { const BUILTINS = new Map([ [`cd`, makeBuiltin(async ([target, ... rest]: Array, opts: ShellOptions, state: ShellState) => { - const resolvedTarget = posix.resolve(state.cwd, target); + const resolvedTarget = posix.resolve(state.cwd, NodeFS.toPortablePath(target)); const stat = await xfs.statPromise(resolvedTarget); if (!stat.isDirectory()) { @@ -94,7 +94,7 @@ const BUILTINS = new Map([ })], [`pwd`, makeBuiltin(async (args: Array, opts: ShellOptions, state: ShellState) => { - state.stdout.write(`${state.cwd}\n`); + state.stdout.write(`${NodeFS.fromPortablePath(state.cwd)}\n`); return 0; })], @@ -133,13 +133,10 @@ const BUILTINS = new Map([ for (const key of Object.keys(state.environment)) normalizedEnv[key.toUpperCase()] = state.environment[key] as string; - // We must make sure the PATH is properly converted into the - // system-specific format - if (normalizedEnv.PATH && posix.delimiter !== delimiter) - normalizedEnv.PATH = normalizedEnv.PATH.replace(new RegExp(posix.delimiter, `g`), delimiter); const subprocess = spawn(ident, rest, { - cwd: state.cwd, + cwd: NodeFS.fromPortablePath(state.cwd), + shell: process.platform === `win32`, // Needed to execute .cmd files env: normalizedEnv, stdio, }); @@ -311,7 +308,7 @@ async function interpolateArguments(commandArgs: Array>, o /** * Executes a command chain. A command chain is a list of commands linked * together thanks to the use of either of the `|` or `|&` operators: - * + * * $ cat hello | grep world | grep -v foobar */ @@ -566,11 +563,8 @@ export async function execute(command: string, args: Array = [], { if (paths.length > 0) normalizedEnv.PATH = normalizedEnv.PATH - ? `${paths.join(posix.delimiter)}${posix.delimiter}${env.PATH}` - : `${paths.join(posix.delimiter)}`; - - if (normalizedEnv.PATH && delimiter !== posix.delimiter) - normalizedEnv.PATH = normalizedEnv.PATH.replace(new RegExp(delimiter, `g`), posix.delimiter); + ? `${paths.join(delimiter)}${delimiter}${env.PATH}` + : `${paths.join(delimiter)}`; const normalizedBuiltins = new Map(BUILTINS); for (const [key, action] of Object.entries(builtins)) diff --git a/packages/plugin-essentials/sources/commands/_entry.ts b/packages/plugin-essentials/sources/commands/_entry.ts index 3662c05bf0ff..f23c3182bf18 100644 --- a/packages/plugin-essentials/sources/commands/_entry.ts +++ b/packages/plugin-essentials/sources/commands/_entry.ts @@ -1,4 +1,5 @@ -import {posix} from 'path'; +import {posix} from 'path'; +import {NodeFS} from '@berry/fslib'; export default (concierge: any) => concierge @@ -7,8 +8,6 @@ export default (concierge: any) => concierge .flags({proxyArguments: true, defaultCommand: true, hiddenCommand: true}) .action(async ({cwd, version, args, stdout, ... env}: any) => { - let newCwd; - // berry --version if (args.length === 1 && args[0] === `--version`) { stdout.write(`v2.0.0\n`); @@ -16,15 +15,16 @@ export default (concierge: any) => concierge // berry --help } else if (args.length === 1 && (args[0] === `--help` || args[0] === `-h`)) { concierge.usage(env.argv0, {stream: stdout}); - + // berry --frozen-lockfile } else if (args.length === 0 || args[0].charAt(0) === `-`) { return await concierge.run(null, [`install`, ... args], {cwd, stdout, ... env}); - + // berry ~/projects/foo install } else if (args.length !== 0 && args[0].match(/[\\\/]/)) { - return await concierge.run(null, args.slice(1), {cwd: posix.resolve(cwd, args[0]), stdout, ... env}); - + const newCwd = posix.resolve(cwd, NodeFS.toPortablePath(args[0])); + return await concierge.run(null, args.slice(1), {cwd: newCwd, stdout, ... env}); + // berry start } else { return await concierge.run(null, [`run`, ... args], {cwd, stdout, ... env}); diff --git a/packages/plugin-essentials/sources/commands/config.ts b/packages/plugin-essentials/sources/commands/config.ts index 4c6a2a1a0c2b..2b987062117f 100644 --- a/packages/plugin-essentials/sources/commands/config.ts +++ b/packages/plugin-essentials/sources/commands/config.ts @@ -21,6 +21,8 @@ export default (concierge: any, pluginConfiguration: PluginConfiguration) => con When used together with the \`-v,--verbose\` option, the output will contain the settings description on top of the regular key/value information. When used together with the \`--why\` flag, the output will also contain the reason why a settings is set a particular way. + + Note that the paths settings will be normalized - especially on Windows. It means that paths such as \`C:\\project\` will be transparently shown as \`/mnt/c/project\`. `) .example( diff --git a/packages/plugin-essentials/sources/commands/node.ts b/packages/plugin-essentials/sources/commands/node.ts index c2cf7c73f503..28d22ecdb22b 100644 --- a/packages/plugin-essentials/sources/commands/node.ts +++ b/packages/plugin-essentials/sources/commands/node.ts @@ -1,5 +1,6 @@ import {Configuration, PluginConfiguration, Project} from '@berry/core'; import {scriptUtils} from '@berry/core'; +import {NodeFS} from '@berry/fslib'; import execa from 'execa'; import {Readable, Writable} from 'stream'; @@ -27,7 +28,7 @@ export default (concierge: any, pluginConfiguration: PluginConfiguration) => con const env = await scriptUtils.makeScriptEnv(project); try { - await execa(`node`, args, {cwd, stdin, stdout, stderr, env}); + await execa(`node`, args, {cwd: NodeFS.fromPortablePath(cwd), stdin, stdout, stderr, env}); } catch (error) { if (error.cmd) { return error.code; diff --git a/packages/plugin-essentials/sources/commands/policies/set-version.ts b/packages/plugin-essentials/sources/commands/policies/set-version.ts index 91f24ebb1eb5..5dc15a3ead65 100644 --- a/packages/plugin-essentials/sources/commands/policies/set-version.ts +++ b/packages/plugin-essentials/sources/commands/policies/set-version.ts @@ -2,7 +2,7 @@ import {Configuration, PluginConfiguration, Project} from '@berry/core'; import {httpUtils} from '@berry/core'; import {xfs} from '@berry/fslib'; import Joi from 'joi'; -import {dirname, resolve} from 'path'; +import {posix} from 'path'; import semver, {SemVer} from 'semver'; import {Readable, Writable} from 'stream'; @@ -166,10 +166,10 @@ export default (concierge: any, pluginConfiguration: PluginConfiguration) => con const bundle = await httpUtils.get(bundleUrl, configuration); const executablePath = `.berry/releases/berry-${bundleVersion}.js`; - const absoluteExecutablePath = resolve(project.cwd, executablePath); + const absoluteExecutablePath = posix.resolve(project.cwd, executablePath); stdout.write(`Saving it into ${configuration.format(executablePath, `magenta`)}...\n`); - await xfs.mkdirpPromise(dirname(absoluteExecutablePath)); + await xfs.mkdirpPromise(posix.dirname(absoluteExecutablePath)); await xfs.writeFilePromise(absoluteExecutablePath, bundle); await xfs.chmodPromise(absoluteExecutablePath, 0o755); diff --git a/packages/plugin-init/sources/commands/init.ts b/packages/plugin-init/sources/commands/init.ts index 9d2c33c96340..58edf74ea0af 100644 --- a/packages/plugin-init/sources/commands/init.ts +++ b/packages/plugin-init/sources/commands/init.ts @@ -3,7 +3,7 @@ import {structUtils} from '@berry/core'; import {xfs} from '@berry/fslib'; import {updateAndSave} from '@berry/json-proxy'; import {UsageError} from '@manaflair/concierge'; -import {basename} from 'path'; +import {posix} from 'path'; export default (concierge: any, pluginConfiguration: PluginConfiguration) => concierge @@ -42,7 +42,7 @@ export default (concierge: any, pluginConfiguration: PluginConfiguration) => con const configuration = await Configuration.find(cwd, pluginConfiguration); const manifest = new Manifest(); - manifest.name = structUtils.makeIdent(configuration.get(`initScope`), basename(cwd)); + manifest.name = structUtils.makeIdent(configuration.get(`initScope`), posix.basename(cwd)); manifest.version = configuration.get(`initVersion`); manifest.private = notPublic; manifest.license = configuration.get(`initLicense`); diff --git a/packages/plugin-pnp/sources/PnpLinker.ts b/packages/plugin-pnp/sources/PnpLinker.ts index d6894e54abb7..b3ad37aca164 100644 --- a/packages/plugin-pnp/sources/PnpLinker.ts +++ b/packages/plugin-pnp/sources/PnpLinker.ts @@ -1,7 +1,7 @@ import {Installer, Linker, LinkOptions, MinimalLinkOptions, Manifest, LinkType, MessageName, DependencyMeta} from '@berry/core'; import {FetchResult, Ident, Locator, Package} from '@berry/core'; import {miscUtils, structUtils} from '@berry/core'; -import {CwdFS, FakeFS, xfs} from '@berry/fslib'; +import {CwdFS, FakeFS, NodeFS, xfs} from '@berry/fslib'; import {PackageRegistry, generateInlinedScript, generateSplitScript} from '@berry/pnp'; import {posix} from 'path'; @@ -22,8 +22,9 @@ export class PnpLinker implements Linker { if (!xfs.existsSync(pnpPath)) throw new Error(`Couldn't find the PnP package map at the root of the project - run an install to generate it`); - const pnpFile = miscUtils.dynamicRequire(pnpPath); - delete require.cache[pnpPath]; + const physicalPath = NodeFS.fromPortablePath(pnpPath); + const pnpFile = miscUtils.dynamicRequire(physicalPath); + delete require.cache[physicalPath]; const packageLocator = {name: structUtils.requirableIdent(locator), reference: locator.reference}; const packageInformation = pnpFile.getPackageInformation(packageLocator); @@ -31,7 +32,7 @@ export class PnpLinker implements Linker { if (!packageInformation) throw new Error(`Couldn't find ${structUtils.prettyLocator(opts.project.configuration, locator)} in the currently installed pnp map`); - return packageInformation.packageLocation; + return NodeFS.toPortablePath(packageInformation.packageLocation); } async findPackageLocator(location: string, opts: LinkOptions) { @@ -39,10 +40,11 @@ export class PnpLinker implements Linker { if (!xfs.existsSync(pnpPath)) throw new Error(`Couldn't find the PnP package map at the root of the project - run an install to generate it`); - const pnpFile = miscUtils.dynamicRequire(pnpPath); - delete require.cache[pnpPath]; + const physicalPath = NodeFS.fromPortablePath(pnpPath); + const pnpFile = miscUtils.dynamicRequire(physicalPath); + delete require.cache[physicalPath]; - const locator = pnpFile.findPackageLocator(location); + const locator = pnpFile.findPackageLocator(NodeFS.fromPortablePath(location)); if (!locator) return null; @@ -79,7 +81,7 @@ class PnpInstaller implements Installer { this.opts.report.reportWarning(MessageName.SOFT_LINK_BUILD, `${structUtils.prettyLocator(this.opts.project.configuration, pkg)} lists build scripts, but is referenced through a soft link. Soft links don't support build scripts, so they'll be ignored.`); buildScripts.length = 0; } - + const dependencyMeta = this.opts.project.getDependencyMeta(pkg, pkg.version); if (buildScripts.length > 0 && dependencyMeta && dependencyMeta.built === false) { @@ -188,7 +190,7 @@ class PnpInstaller implements Installer { const packageInformation = packageInformationStore.get(key2); if (!packageInformation) throw new Error(`Assertion failed: The package information should have been available (for ${structUtils.prettyLocator(this.opts.project.configuration, locator)})`); - + return packageInformation; } @@ -224,7 +226,7 @@ class PnpInstaller implements Installer { for (const scriptName of [`preinstall`, `install`, `postinstall`]) if (scripts.has(scriptName)) buildScripts.push(scriptName); - + return buildScripts; } diff --git a/packages/plugin-stage/bin/@berry/plugin-stage.js b/packages/plugin-stage/bin/@berry/plugin-stage.js index 0dc45e940f93..e0a53fbaad29 100644 --- a/packages/plugin-stage/bin/@berry/plugin-stage.js +++ b/packages/plugin-stage/bin/@berry/plugin-stage.js @@ -1067,7 +1067,7 @@ var Concierge = function () { var next = parsedArgv[_t + 1]; // If we're currently processing a command that accepts arguments by proxy, we treat all following tokens as raw strings - if (selectedCommand && selectedCommand.proxyArguments) { + if (selectedCommand && selectedCommand.proxyArguments && rest.length >= selectedCommand.requiredArguments.length) { current = _extends({}, current); current.type = RAW_STRING; diff --git a/packages/vscode-zipfs/sources/index.ts b/packages/vscode-zipfs/sources/index.ts index f70114be972f..7fc28569efc0 100644 --- a/packages/vscode-zipfs/sources/index.ts +++ b/packages/vscode-zipfs/sources/index.ts @@ -1,4 +1,4 @@ -import {basename} from 'path'; +import {posix} from 'path'; import * as vscode from 'vscode'; import {ZipFSProvider} from './ZipFSProvider'; @@ -8,7 +8,7 @@ function mount(uri: vscode.Uri) { if (vscode.workspace.getWorkspaceFolder(zipUri) === undefined) { vscode.workspace.updateWorkspaceFolders(vscode.workspace.workspaceFolders!.length, 0, { - name: basename(zipUri.path), + name: posix.basename(zipUri.path), uri: zipUri, }); } diff --git a/yarn.lock b/yarn.lock index 6d3efef04d00..2635327777b3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1684,6 +1684,8 @@ __metadata: "@berry/json-proxy@workspace:*, @berry/json-proxy@workspace:packages/berry-json-proxy": version: 0.0.0 resolution: "@berry/json-proxy@workspace:packages/berry-json-proxy" + dependencies: + "@berry/fslib": "workspace:*" languageName: unknown linkType: soft