• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1"use strict";
2var e = require("fs"), t = require("path"), n = require("os"), r = require("crypto"), u = require("child_process"),
3    o = require("constants"), i = require("stream"), s = require("util"), c = require("assert"), a = require("tty"),
4    l = require("zlib"), f = require("net");
5
6function d(e) {
7    return e && "object" == typeof e && "default" in e ? e : { default: e }
8}
9
10var D = d(e), p = d(t), E = d(n), m = d(r), h = d(u), y = d(o), C = d(i), F = d(s), g = d(c), A = d(a), v = d(l),
11    S = d(f),
12    w = "undefined" != typeof globalThis ? globalThis : "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : {
13                                                                                                                                                                            },
14    O = {}, b = {}, _ = {}, B = w && w.__importDefault || function (e) {
15        return e && e.__esModule ? e : { default: e }
16    };
17Object.defineProperty(_, "__esModule", { value: !0 }), _.isMac = _.isLinux = _.isWindows = void 0;
18const P = B(E.default), k = "Windows_NT", x = "Linux", N = "Darwin";
19_.isWindows = function () {
20    return P.default.type() === k
21}, _.isLinux = function () {
22    return P.default.type() === x
23}, _.isMac = function () {
24    return P.default.type() === N
25};
26var I = {}, T = w && w.__createBinding || (Object.create ? function (e, t, n, r) {
27    void 0 === r && (r = n);
28    var u = Object.getOwnPropertyDescriptor(t, n);
29    u && !("get" in u ? !t.__esModule : u.writable || u.configurable) || (u = { enumerable: !0, get: function () {
30        return t[n]
31    } }), Object.defineProperty(e, r, u)
32} : function (e, t, n, r) {
33    void 0 === r && (r = n), e[r] = t[n]
34}), R = w && w.__setModuleDefault || (Object.create ? function (e, t) {
35    Object.defineProperty(e, "default", { enumerable: !0, value: t })
36} : function (e, t) {
37    e.default = t
38}), M = w && w.__importStar || function (e) {
39    if (e && e.__esModule) return e;
40    var t = {};
41    if (null != e) for (var n in e) "default" !== n && Object.prototype.hasOwnProperty.call(e, n) && T(t, e, n);
42    return R(t, e), t
43};
44Object.defineProperty(I, "__esModule", { value: !0 }), I.hash = void 0;
45const L = M(m.default);
46I.hash = function (e, t = "md5") {
47    return L.createHash(t).update(e, "utf-8").digest("hex")
48}, function(e){
49    var t = w && w.__createBinding || (Object.create ? function (e, t, n, r) {
50        void 0 === r && (r = n);
51        var u = Object.getOwnPropertyDescriptor(t, n);
52        u && !("get" in u ? !t.__esModule : u.writable || u.configurable) || (u = { enumerable: !0, get: function () {
53            return t[n]
54        } }), Object.defineProperty(e, r, u)
55    } : function (e, t, n, r) {
56        void 0 === r && (r = n), e[r] = t[n]
57    }), n = w && w.__setModuleDefault || (Object.create ? function (e, t) {
58        Object.defineProperty(e, "default", { enumerable: !0, value: t })
59    } : function (e, t) {
60        e.default = t
61    }), r = w && w.__importStar || function (e) {
62        if (e && e.__esModule) return e;
63        var r = {};
64        if (null != e) for (var u in e) "default" !== u && Object.prototype.hasOwnProperty.call(e, u) && t(r, e, u);
65        return n(r, e), r
66    };
67    Object.defineProperty(e, "__esModule", {
68        value: !0
69    }), e.HVIGOR_BOOT_JS_FILE_PATH = e.HVIGOR_PROJECT_DEPENDENCY_PACKAGE_JSON_PATH = e.HVIGOR_PROJECT_DEPENDENCIES_HOME = e.HVIGOR_PROJECT_WRAPPER_HOME = e.HVIGOR_PROJECT_NAME = e.HVIGOR_PROJECT_ROOT_DIR = e.HVIGOR_PROJECT_CACHES_HOME = e.HVIGOR_PNPM_STORE_PATH = e.HVIGOR_WRAPPER_PNPM_SCRIPT_PATH = e.HVIGOR_WRAPPER_TOOLS_HOME = e.HVIGOR_USER_HOME = e.DEFAULT_PACKAGE_JSON = e.DEFAULT_HVIGOR_CONFIG_JSON_FILE_NAME = e.PNPM = e.HVIGOR = e.NPM_TOOL = e.PNPM_TOOL = e.HVIGOR_ENGINE_PACKAGE_NAME = void 0;
70    const u = r(p.default), o = r(E.default), i = _, s = I;
71    e.HVIGOR_ENGINE_PACKAGE_NAME = "@ohos/hvigor", e.PNPM_TOOL = (0, i.isWindows)() ? "pnpm.cmd" : "pnpm", e.NPM_TOOL = (0, i.isWindows)() ? "npm.cmd" : "npm", e.HVIGOR = "hvigor", e.PNPM = "pnpm", e.DEFAULT_HVIGOR_CONFIG_JSON_FILE_NAME = "hvigor-config.json5", e.DEFAULT_PACKAGE_JSON = "package.json", e.HVIGOR_USER_HOME = u.resolve(o.homedir(), ".hvigor"), e.HVIGOR_WRAPPER_TOOLS_HOME = u.resolve(e.HVIGOR_USER_HOME, "wrapper", "tools"), e.HVIGOR_WRAPPER_PNPM_SCRIPT_PATH = u.resolve(e.HVIGOR_WRAPPER_TOOLS_HOME, "node_modules", ".bin", e.PNPM_TOOL), e.HVIGOR_PNPM_STORE_PATH = u.resolve(e.HVIGOR_USER_HOME, "caches"), e.HVIGOR_PROJECT_CACHES_HOME = u.resolve(e.HVIGOR_USER_HOME, "project_caches"), e.HVIGOR_PROJECT_ROOT_DIR = process.cwd(), e.HVIGOR_PROJECT_NAME = u.basename((0, s.hash)(e.HVIGOR_PROJECT_ROOT_DIR)), e.HVIGOR_PROJECT_WRAPPER_HOME = u.resolve(e.HVIGOR_PROJECT_ROOT_DIR, e.HVIGOR), e.HVIGOR_PROJECT_DEPENDENCIES_HOME = u.resolve(e.HVIGOR_PROJECT_CACHES_HOME, e.HVIGOR_PROJECT_NAME, "workspace"), e.HVIGOR_PROJECT_DEPENDENCY_PACKAGE_JSON_PATH = u.resolve(e.HVIGOR_PROJECT_DEPENDENCIES_HOME, e.DEFAULT_PACKAGE_JSON), e.HVIGOR_BOOT_JS_FILE_PATH = u.resolve(e.HVIGOR_PROJECT_DEPENDENCIES_HOME, "node_modules", "@ohos", "hvigor", "bin", "hvigor.js")
72}(b);
73var j = {}, $ = {};
74Object.defineProperty($, "__esModule", {
75    value: !0
76}), $.logInfoPrintConsole = $.logErrorAndExit = void 0, $.logErrorAndExit = function (e) {
77        e instanceof Error ? console.error(e.message) : console.error(e), process.exit(-1)
78}, $.logInfoPrintConsole = function (e) {
79    console.log(e)
80};
81var H = w && w.__createBinding || (Object.create ? function (e, t, n, r) {
82    void 0 === r && (r = n);
83    var u = Object.getOwnPropertyDescriptor(t, n);
84    u && !("get" in u ? !t.__esModule : u.writable || u.configurable) || (u = { enumerable: !0, get: function () {
85        return t[n]
86    } }), Object.defineProperty(e, r, u)
87} : function (e, t, n, r) {
88    void 0 === r && (r = n), e[r] = t[n]
89}), J = w && w.__setModuleDefault || (Object.create ? function (e, t) {
90    Object.defineProperty(e, "default", { enumerable: !0, value: t })
91} : function (e, t) {
92    e.default = t
93}), G = w && w.__importStar || function (e) {
94    if (e && e.__esModule) return e;
95    var t = {};
96    if (null != e) for (var n in e) "default" !== n && Object.prototype.hasOwnProperty.call(e, n) && H(t, e, n);
97    return J(t, e), t
98}, V = w && w.__importDefault || function (e) {
99    return e && e.__esModule ? e : { default: e }
100};
101Object.defineProperty(j, "__esModule", {
102    value: !0
103}), j.isFileExists = j.offlinePluginConversion = j.executeCommand = j.getNpmPath = j.hasNpmPackInPaths = void 0;
104const U = h.default, W = G(p.default), z = b, K = $, q = V(D.default);
105j.hasNpmPackInPaths = function (e, t) {
106    try {
107        return require.resolve(e, { paths: [...t] }),!0
108    } catch (e) {
109        return !1
110    }
111}, j.getNpmPath = function () {
112    const e = process.execPath;
113    return W.join(W.dirname(e), z.NPM_TOOL)
114}, j.executeCommand = function (e, t, n) {
115    0 !== (0, U.spawnSync)(e, t, n).status && (0, K.logErrorAndExit)(`Error: ${e} ${t} execute failed.See above for details.`)
116}, j.offlinePluginConversion = function (e, t) {
117    return t.startsWith("file:") || t.endsWith(".tgz") ? W.resolve(e, z.HVIGOR, t.replace("file:", "")) : t
118}, j.isFileExists = function (e) {
119    return q.default.existsSync(e) && q.default.statSync(e).isFile()
120}, function(e){
121    var t = w && w.__createBinding || (Object.create ? function (e, t, n, r) {
122        void 0 === r && (r = n);
123        var u = Object.getOwnPropertyDescriptor(t, n);
124        u && !("get" in u ? !t.__esModule : u.writable || u.configurable) || (u = { enumerable: !0, get: function () {
125            return t[n]
126        } }), Object.defineProperty(e, r, u)
127    } : function (e, t, n, r) {
128        void 0 === r && (r = n), e[r] = t[n]
129    }), n = w && w.__setModuleDefault || (Object.create ? function (e, t) {
130        Object.defineProperty(e, "default", { enumerable: !0, value: t })
131    } : function (e, t) {
132        e.default = t
133    }), r = w && w.__importStar || function (e) {
134        if (e && e.__esModule) return e;
135        var r = {};
136        if (null != e) for (var u in e) "default" !== u && Object.prototype.hasOwnProperty.call(e, u) && t(r, e, u);
137        return n(r, e), r
138    }, u = w && w.__importDefault || function (e) {
139        return e && e.__esModule ? e : { default: e }
140    };
141    Object.defineProperty(e, "__esModule", {
142        value: !0
143    }), e.executeInstallPnpm = e.isPnpmAvailable = e.environmentHandler = e.checkNpmConifg = e.PNPM_VERSION = void 0;
144    const o = r(D.default), i = b, s = j, c = r(p.default), a = $, l = h.default, f = u(E.default);
145    e.PNPM_VERSION = "7.30.0", e.checkNpmConifg = function () {
146        const e = c.resolve(i.HVIGOR_PROJECT_ROOT_DIR, ".npmrc"), t = c.resolve(f.default.homedir(), ".npmrc");
147        if ((0, s.isFileExists)(e) || (0, s.isFileExists)(t)) return;
148        const n = (0, s.getNpmPath)(),
149            r = (0, l.spawnSync)(n, ["config", "get", "prefix"], { cwd: i.HVIGOR_PROJECT_ROOT_DIR });
150        if (0 !== r.status || !r.stdout) return void (0, a.logErrorAndExit)("Error: The hvigor depends on the npmrc file. Configure the npmrc file first.");
151        const u = c.resolve(`${r.stdout}`.replace(/[\r\n]/gi, ""), ".npmrc");
152        (0, s.isFileExists)(u) || (0, a.logErrorAndExit)("Error: The hvigor depends on the npmrc file. Configure the npmrc file first.")
153    }, e.environmentHandler = function () {
154        process.env["npm_config_update-notifier"] = "false"
155    }, e.isPnpmAvailable = function () {
156        return!!o.existsSync(i.HVIGOR_WRAPPER_PNPM_SCRIPT_PATH) && (0, s.hasNpmPackInPaths)("pnpm", [i.HVIGOR_WRAPPER_TOOLS_HOME])
157    }, e.executeInstallPnpm = function () {
158        (0, a.logInfoPrintConsole)(`Installing pnpm@${e.PNPM_VERSION}...`);
159        const t = (0, s.getNpmPath)();
160        !function(){
161            const t = c.resolve(i.HVIGOR_WRAPPER_TOOLS_HOME, i.DEFAULT_PACKAGE_JSON);
162            try {
163                o.existsSync(i.HVIGOR_WRAPPER_TOOLS_HOME) || o.mkdirSync(i.HVIGOR_WRAPPER_TOOLS_HOME, {
164                    recursive: !0
165                });
166                const n = { dependencies: {} };
167                n.dependencies[i.PNPM] = e.PNPM_VERSION, o.writeFileSync(t, JSON.stringify(n))
168            } catch (e) {
169                (0, a.logErrorAndExit)(`Error: EPERM: operation not permitted,create ${t} failed.`)
170            }
171        }(), (0, s.executeCommand)(t, ["install", "pnpm"], {
172            cwd: i.HVIGOR_WRAPPER_TOOLS_HOME,
173            stdio: ["inherit", "inherit", "inherit"],
174            env: process.env
175        }), (0, a.logInfoPrintConsole)("Pnpm install success.")
176    }
177}(O);
178var Y = {}, X = {}, Z = {}, Q = {};
179Object.defineProperty(Q, "__esModule", { value: !0 }), Q.Unicode = void 0;
180
181class ee {
182}
183
184Q.Unicode = ee, ee.Space_Separator = /[\u1680\u2000-\u200A\u202F\u205F\u3000]/, ee.ID_Start = /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/, ee.ID_Continue = /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09FC\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF9\u1D00-\u1DF9\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDE00-\uDE3E\uDE47\uDE50-\uDE83\uDE86-\uDE99\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/, Object.defineProperty(Z, "__esModule", {
185    value: !0
186}), Z.JudgeUtil = void 0;
187const te = Q;
188Z.JudgeUtil = class {
189    static isIgnoreChar(e) {
190        return "string" == typeof e && ("\t" === e || "\v" === e || "\f" === e || " " === e || " " === e || "\ufeff" === e || "\n" === e || "\r" === e || "\u2028" === e || "\u2029" === e)
191    }
192
193    static isSpaceSeparator(e) {
194        return "string" == typeof e && te.Unicode.Space_Separator.test(e)
195    }
196
197    static isIdStartChar(e) {
198        return "string" == typeof e && (e >= "a" && e <= "z" || e >= "A" && e <= "Z" || "$" === e || "_" === e || te.Unicode.ID_Start.test(e))
199    }
200
201    static isIdContinueChar(e) {
202        return "string" == typeof e && (e >= "a" && e <= "z" || e >= "A" && e <= "Z" || e >= "0" && e <= "9" || "$" === e || "_" === e || "‌" === e || "‍" === e || te.Unicode.ID_Continue.test(e))
203    }
204
205    static isDigitWithoutZero(e) {
206        return /[1-9]/.test(e)
207    }
208
209    static isDigit(e) {
210        return "string" == typeof e && /[0-9]/.test(e)
211    }
212
213    static isHexDigit(e) {
214        return "string" == typeof e && /[0-9A-Fa-f]/.test(e)
215    }
216};
217var ne = {}, re = { fromCallback: function (e) {
218    return Object.defineProperty((function (...t) {
219        if ("function" != typeof t[t.length-1]) return new Promise(((n, r) => {
220            e.call(this, ...t, ((e, t) => null != e ? r(e) : n(t)))
221        }));
222        e.apply(this, t)
223    }), "name", { value: e.name })
224}, fromPromise: function (e) {
225    return Object.defineProperty((function (...t) {
226        const n = t[t.length-1];
227        if ("function" != typeof n) return e.apply(this, t);
228        e.apply(this, t.slice(0, -1)).then((e => n(null, e)), n)
229    }), "name", { value: e.name })
230} }, ue = y.default, oe = process.cwd, ie = null, se = process.env.GRACEFUL_FS_PLATFORM || process.platform;
231process.cwd = function () {
232    return ie || (ie = oe.call(process)), ie
233};
234try {
235    process.cwd()
236} catch (e) {
237}
238if ("function" == typeof process.chdir) {
239    var ce = process.chdir;
240    process.chdir = function (e) {
241        ie = null, ce.call(process, e)
242    }, Object.setPrototypeOf && Object.setPrototypeOf(process.chdir, ce)
243}
244var ae = function (e) {
245    ue.hasOwnProperty("O_SYMLINK") && process.version.match(/^v0\.6\.[0-2]|^v0\.5\./) && function(e){
246        e.lchmod = function (t, n, r) {
247            e.open(t, ue.O_WRONLY | ue.O_SYMLINK, n, (function (t, u) {
248                    t ? r && r(t) : e.fchmod(u, n, (function (t) {
249                    e.close(u, (function (e) {
250                        r && r(t || e)
251                    }))
252                }))
253            }))
254        }, e.lchmodSync = function (t, n) {
255            var r, u = e.openSync(t, ue.O_WRONLY | ue.O_SYMLINK, n), o = !0;
256            try {
257                r = e.fchmodSync(u, n), o = !1
258            } finally {
259                if (o) try {
260                    e.closeSync(u)
261                } catch (e) {
262                } else e.closeSync(u)
263            }
264            return r
265        }
266    }(e);
267    e.lutimes || function(e){
268            ue.hasOwnProperty("O_SYMLINK") && e.futimes ? (e.lutimes = function (t, n, r, u) {
269            e.open(t, ue.O_SYMLINK, (function (t, o) {
270                    t ? u && u(t) : e.futimes(o, n, r, (function (t) {
271                    e.close(o, (function (e) {
272                        u && u(t || e)
273                    }))
274                }))
275            }))
276        }, e.lutimesSync = function (t, n, r) {
277            var u, o = e.openSync(t, ue.O_SYMLINK), i = !0;
278            try {
279                u = e.futimesSync(o, n, r), i = !1
280            } finally {
281                if (i) try {
282                    e.closeSync(o)
283                } catch (e) {
284                } else e.closeSync(o)
285            }
286            return u
287        }) : e.futimes && (e.lutimes = function (e, t, n, r) {
288            r && process.nextTick(r)
289        }, e.lutimesSync = function () {
290        })
291    }(e);
292    e.chown = r(e.chown), e.fchown = r(e.fchown), e.lchown = r(e.lchown), e.chmod = t(e.chmod), e.fchmod = t(e.fchmod), e.lchmod = t(e.lchmod), e.chownSync = u(e.chownSync), e.fchownSync = u(e.fchownSync), e.lchownSync = u(e.lchownSync), e.chmodSync = n(e.chmodSync), e.fchmodSync = n(e.fchmodSync), e.lchmodSync = n(e.lchmodSync), e.stat = o(e.stat), e.fstat = o(e.fstat), e.lstat = o(e.lstat), e.statSync = i(e.statSync), e.fstatSync = i(e.fstatSync), e.lstatSync = i(e.lstatSync), e.chmod && !e.lchmod && (e.lchmod = function (e, t, n) {
293        n && process.nextTick(n)
294    }, e.lchmodSync = function () {
295    });
296    e.chown && !e.lchown && (e.lchown = function (e, t, n, r) {
297        r && process.nextTick(r)
298    }, e.lchownSync = function () {
299    });
300    "win32" === se && (e.rename = "function" != typeof e.rename ? e.rename : function(t){
301
302        function n(n, r, u) {
303            var o = Date.now(), i = 0;
304            t(n, r, (function s(c) {
305                if (c && ("EACCES" === c.code || "EPERM" === c.code || "EBUSY" === c.code) && Date.now() - o < 6e4) return setTimeout((function () {
306                    e.stat(r, (function (e, o) {
307                            e && "ENOENT" === e.code ? t(n, r, s) : u(c)
308                    }))
309                }), i), void (i < 100 && (i += 10));
310                u && u(c)
311            }))
312        }
313
314        return Object.setPrototypeOf && Object.setPrototypeOf(n, t), n
315    }(e.rename));
316
317    function t(t) {
318        return t ? function (n, r, u) {
319            return t.call(e, n, r, (function (e) {
320                s(e) && (e = null), u && u.apply(this, arguments)
321            }))
322        } : t
323    }
324
325    function n(t) {
326        return t ? function (n, r) {
327            try {
328                return t.call(e, n, r)
329            } catch (e) {
330                if (!s(e)) throw e
331            }
332        } : t
333    }
334
335    function r(t) {
336        return t ? function (n, r, u, o) {
337            return t.call(e, n, r, u, (function (e) {
338                s(e) && (e = null), o && o.apply(this, arguments)
339            }))
340        } : t
341    }
342
343    function u(t) {
344        return t ? function (n, r, u) {
345            try {
346                return t.call(e, n, r, u)
347            } catch (e) {
348                if (!s(e)) throw e
349            }
350        } : t
351    }
352
353    function o(t) {
354        return t ? function (n, r, u) {
355
356            function o(e, t) {
357                t && (t.uid < 0 && (t.uid += 4294967296), t.gid < 0 && (t.gid += 4294967296)), u && u.apply(this, arguments)
358            }
359
360            return "function" == typeof r && (u = r, r = null), r ? t.call(e, n, r, o) : t.call(e, n, o)
361        } : t
362    }
363
364    function i(t) {
365        return t ? function (n, r) {
366            var u = r ? t.call(e, n, r) : t.call(e, n);
367            return u && (u.uid < 0 && (u.uid += 4294967296), u.gid < 0 && (u.gid += 4294967296)), u
368        } : t
369    }
370
371    function s(e) {
372        return!e || ("ENOSYS" === e.code || !(process.getuid && 0 === process.getuid() || "EINVAL" !== e.code && "EPERM" !== e.code))
373    }
374
375    e.read = "function" != typeof e.read ? e.read : function(t){
376
377        function n(n, r, u, o, i, s) {
378            var c;
379            if (s && "function" == typeof s) {
380                var a = 0;
381                c = function (l, f, d) {
382                    if (l && "EAGAIN" === l.code && a < 10) return a++, t.call(e, n, r, u, o, i, c);
383                    s.apply(this, arguments)
384                }
385            }
386            return t.call(e, n, r, u, o, i, c)
387        }
388
389        return Object.setPrototypeOf && Object.setPrototypeOf(n, t), n
390    }(e.read), e.readSync = "function" != typeof e.readSync ? e.readSync : (c = e.readSync, function (t, n, r, u, o) {
391        for (var i = 0;; ) try {
392            return c.call(e, t, n, r, u, o)
393        } catch (e) {
394            if ("EAGAIN" === e.code && i < 10) {
395                i++;
396                continue
397            }
398            throw e
399        }
400    });
401    var c
402};
403var le = C.default.Stream, fe = function (e) {
404    return { ReadStream: function t(n, r) {
405        if (!(this instanceof t)) return new t(n, r);
406        le.call(this);
407        var u = this;
408        this.path = n, this.fd = null, this.readable = !0, this.paused = !1, this.flags = "r", this.mode = 438, this.bufferSize = 65536, r = r || {
409        };
410        for (var o = Object.keys(r), i = 0, s = o.length;i < s; i++) {
411            var c = o[i];
412            this[c] = r[c]
413        }
414        this.encoding && this.setEncoding(this.encoding);
415        if (void 0 !== this.start) {
416            if ("number" != typeof this.start) throw TypeError("start must be a Number");
417            if (void 0 === this.end) this.end = 1 / 0; else if ("number" != typeof this.end) throw TypeError("end must be a Number");
418            if (this.start > this.end) throw new Error("start must be <= end");
419            this.pos = this.start
420        }
421        if (null !== this.fd) return void process.nextTick((function () {
422            u._read()
423        }));
424        e.open(this.path, this.flags, this.mode, (function (e, t) {
425            if (e) return u.emit("error", e), void (u.readable = !1);
426            u.fd = t, u.emit("open", t), u._read()
427        }))
428    }, WriteStream: function t(n, r) {
429        if (!(this instanceof t)) return new t(n, r);
430        le.call(this), this.path = n, this.fd = null, this.writable = !0, this.flags = "w", this.encoding = "binary", this.mode = 438, this.bytesWritten = 0, r = r || {
431        };
432        for (var u = Object.keys(r), o = 0, i = u.length;o < i; o++) {
433            var s = u[o];
434            this[s] = r[s]
435        }
436        if (void 0 !== this.start) {
437            if ("number" != typeof this.start) throw TypeError("start must be a Number");
438            if (this.start < 0) throw new Error("start must be >= zero");
439            this.pos = this.start
440        }
441        this.busy = !1, this._queue = [], null === this.fd && (this._open = e.open, this._queue.push([this._open, this.path, this.flags, this.mode, void 0]), this.flush())
442    } }
443};
444var de = function (e) {
445    if (null === e || "object" != typeof e) return e;
446    if (e instanceof Object) var t = { __proto__: De(e) }; else t = Object.create(null);
447    return Object.getOwnPropertyNames(e).forEach((function (n) {
448        Object.defineProperty(t, n, Object.getOwnPropertyDescriptor(e, n))
449    })), t
450}, De = Object.getPrototypeOf || function (e) {
451    return e.__proto__
452};
453var pe, Ee, me = D.default, he = ae, ye = fe, Ce = de, Fe = F.default;
454
455function ge(e, t) {
456    Object.defineProperty(e, pe, { get: function () {
457        return t
458    } })
459}
460
461"function" == typeof Symbol && "function" == typeof Symbol.for ? (pe = Symbol.for("graceful-fs.queue"), Ee = Symbol.for("graceful-fs.previous")) : (pe = "___graceful-fs.queue", Ee = "___graceful-fs.previous");
462var Ae = function () {
463};
464if (Fe.debuglog ? Ae = Fe.debuglog("gfs4") : /\bgfs4\b/i.test(process.env.NODE_DEBUG || "") && (Ae = function () {
465    var e = Fe.format.apply(Fe, arguments);
466    e = "GFS4: " + e.split(/\n/).join("\nGFS4: "), console.error(e)
467}),!me[pe]) {
468    var ve = w[pe] || [];
469    ge(me, ve), me.close = function(e){
470
471        function t(t, n) {
472            return e.call(me, t, (function (e) {
473                e || _e(), "function" == typeof n && n.apply(this, arguments)
474            }))
475        }
476
477        return Object.defineProperty(t, Ee, { value: e }), t
478    }(me.close), me.closeSync = function(e){
479
480        function t(t) {
481            e.apply(me, arguments), _e()
482        }
483
484        return Object.defineProperty(t, Ee, { value: e }), t
485    }(me.closeSync), /\bgfs4\b/i.test(process.env.NODE_DEBUG || "") && process.on("exit", (function () {
486        Ae(me[pe]), g.default.equal(me[pe].length, 0)
487    }))
488}
489w[pe] || ge(w, me[pe]);
490var Se, we = Oe(Ce(me));
491
492function Oe(e) {
493    he(e), e.gracefulify = Oe, e.createReadStream = function (t, n) {
494        return new e.ReadStream(t, n)
495    }, e.createWriteStream = function (t, n) {
496        return new e.WriteStream(t, n)
497    };
498    var t = e.readFile;
499    e.readFile = function (e, n, r) {
500        "function" == typeof n && (r = n, n = null);
501        return function e(n, r, u, o){
502            return t(n, r, (function (t) {
503                    !t || "EMFILE" !== t.code && "ENFILE" !== t.code ? "function" == typeof u && u.apply(this, arguments) : be([e, [n, r, u], t, o || Date.now(), Date.now()])
504            }))
505        }(e, n, r)
506    };
507    var n = e.writeFile;
508    e.writeFile = function (e, t, r, u) {
509        "function" == typeof r && (u = r, r = null);
510        return function e(t, r, u, o, i){
511            return n(t, r, u, (function (n) {
512                    !n || "EMFILE" !== n.code && "ENFILE" !== n.code ? "function" == typeof o && o.apply(this, arguments) : be([e, [t, r, u, o], n, i || Date.now(), Date.now()])
513            }))
514        }(e, t, r, u)
515    };
516    var r = e.appendFile;
517    r && (e.appendFile = function (e, t, n, u) {
518        "function" == typeof n && (u = n, n = null);
519        return function e(t, n, u, o, i){
520            return r(t, n, u, (function (r) {
521                    !r || "EMFILE" !== r.code && "ENFILE" !== r.code ? "function" == typeof o && o.apply(this, arguments) : be([e, [t, n, u, o], r, i || Date.now(), Date.now()])
522            }))
523        }(e, t, n, u)
524    });
525    var u = e.copyFile;
526    u && (e.copyFile = function (e, t, n, r) {
527        "function" == typeof n && (r = n, n = 0);
528        return function e(t, n, r, o, i){
529            return u(t, n, r, (function (u) {
530                    !u || "EMFILE" !== u.code && "ENFILE" !== u.code ? "function" == typeof o && o.apply(this, arguments) : be([e, [t, n, r, o], u, i || Date.now(), Date.now()])
531            }))
532        }(e, t, n, r)
533    });
534    var o = e.readdir;
535    e.readdir = function (e, t, n) {
536        "function" == typeof t && (n = t, t = null);
537        var r = i.test(process.version) ? function (e, t, n, r) {
538            return o(e, u(e, t, n, r))
539        } : function (e, t, n, r) {
540            return o(e, t, u(e, t, n, r))
541        };
542        return r(e, t, n);
543
544        function u(e, t, n, u) {
545            return function (o, i) {
546                    !o || "EMFILE" !== o.code && "ENFILE" !== o.code ? (i && i.sort && i.sort(), "function" == typeof n && n.call(this, o, i)) : be([r, [e, t, n], o, u || Date.now(), Date.now()])
547            }
548        }
549    };
550    var i = /^v[0-5]\./;
551    if ("v0.8" === process.version.substr(0, 4)) {
552        var s = ye(e);
553        d = s.ReadStream, D = s.WriteStream
554    }
555    var c = e.ReadStream;
556    c && (d.prototype = Object.create(c.prototype), d.prototype.open = function () {
557        var e = this;
558        E(e.path, e.flags, e.mode, (function (t, n) {
559                t ? (e.autoClose && e.destroy(), e.emit("error", t)) : (e.fd = n, e.emit("open", n), e.read())
560        }))
561    });
562    var a = e.WriteStream;
563    a && (D.prototype = Object.create(a.prototype), D.prototype.open = function () {
564        var e = this;
565        E(e.path, e.flags, e.mode, (function (t, n) {
566                t ? (e.destroy(), e.emit("error", t)) : (e.fd = n, e.emit("open", n))
567        }))
568    }), Object.defineProperty(e, "ReadStream", { get: function () {
569        return d
570    }, set: function (e) {
571        d = e
572    }, enumerable: !0, configurable: !0 }), Object.defineProperty(e, "WriteStream", { get: function () {
573        return D
574    }, set: function (e) {
575        D = e
576    }, enumerable: !0, configurable: !0 });
577    var l = d;
578    Object.defineProperty(e, "FileReadStream", { get: function () {
579        return l
580    }, set: function (e) {
581        l = e
582    }, enumerable: !0, configurable: !0 });
583    var f = D;
584
585    function d(e, t) {
586        return this instanceof d ? (c.apply(this, arguments), this) : d.apply(Object.create(d.prototype), arguments)
587    }
588
589    function D(e, t) {
590        return this instanceof D ? (a.apply(this, arguments), this) : D.apply(Object.create(D.prototype), arguments)
591    }
592
593    Object.defineProperty(e, "FileWriteStream", { get: function () {
594        return f
595    }, set: function (e) {
596        f = e
597    }, enumerable: !0, configurable: !0 });
598    var p = e.open;
599
600    function E(e, t, n, r) {
601        return "function" == typeof n && (r = n, n = null), function e(t, n, r, u, o){
602            return p(t, n, r, (function (i, s) {
603                    !i || "EMFILE" !== i.code && "ENFILE" !== i.code ? "function" == typeof u && u.apply(this, arguments) : be([e, [t, n, r, u], i, o || Date.now(), Date.now()])
604            }))
605        }(e, t, n, r)
606    }
607
608    return e.open = E, e
609}
610
611function be(e) {
612    Ae("ENQUEUE", e[0].name, e[1]), me[pe].push(e), Be()
613}
614
615function _e() {
616    for (var e = Date.now(), t = 0;t < me[pe].length; ++t) me[pe][t].length > 2 && (me[pe][t][3] = e, me[pe][t][4] = e);
617    Be()
618}
619
620function Be() {
621    if (clearTimeout(Se), Se = void 0, 0 !== me[pe].length) {
622        var e = me[pe].shift(), t = e[0], n = e[1], r = e[2], u = e[3], o = e[4];
623        if (void 0 === u) Ae("RETRY", t.name, n), t.apply(null, n); else if (Date.now() - u >= 6e4) {
624            Ae("TIMEOUT", t.name, n);
625            var i = n.pop();
626            "function" == typeof i && i.call(null, r)
627        } else {
628            var s = Date.now() - o, c = Math.max(o - u, 1);
629                s >= Math.min(1.2 * c, 100) ? (Ae("RETRY", t.name, n), t.apply(null, n.concat([u]))) : me[pe].push(e)
630        }
631        void 0 === Se && (Se = setTimeout(Be, 0))
632    }
633}
634
635process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH && !me.__patched && (we = Oe(me), me.__patched = !0), function(e){
636    const t = re.fromCallback, n = we,
637        r = ["access", "appendFile", "chmod", "chown", "close", "copyFile", "fchmod", "fchown", "fdatasync", "fstat", "fsync", "ftruncate", "futimes", "lchmod", "lchown", "link", "lstat", "mkdir", "mkdtemp", "open", "opendir", "readdir", "readFile", "readlink", "realpath", "rename", "rm", "rmdir", "stat", "symlink", "truncate", "unlink", "utimes", "writeFile"].filter((e => "function" == typeof n[e]));
638    Object.assign(e, n), r.forEach((r => {
639        e[r] = t(n[r])
640    })), e.realpath.native = t(n.realpath.native), e.exists = function (e, t) {
641        return "function" == typeof t ? n.exists(e, t) : new Promise((t => n.exists(e, t)))
642    }, e.read = function (e, t, r, u, o, i) {
643        return "function" == typeof i ? n.read(e, t, r, u, o, i) : new Promise(((i, s) => {
644            n.read(e, t, r, u, o, ((e, t, n) => {
645                if (e) return s(e);
646                i({ bytesRead: t, buffer: n })
647            }))
648        }))
649    }, e.write = function (e, t, ...r) {
650        return "function" == typeof r[r.length-1] ? n.write(e, t, ...r) : new Promise(((u, o) => {
651            n.write(e, t, ...r, ((e, t, n) => {
652                if (e) return o(e);
653                u({ bytesWritten: t, buffer: n })
654            }))
655        }))
656    }, "function" == typeof n.writev && (e.writev = function (e, t, ...r) {
657        return "function" == typeof r[r.length-1] ? n.writev(e, t, ...r) : new Promise(((u, o) => {
658            n.writev(e, t, ...r, ((e, t, n) => {
659                if (e) return o(e);
660                u({ bytesWritten: t, buffers: n })
661            }))
662        }))
663    })
664}(ne);
665var Pe = {}, ke = {};
666const xe = p.default;
667ke.checkPath = function (e) {
668    if ("win32" === process.platform) {
669        if (/[<>:"|?*]/.test(e.replace(xe.parse(e).root, ""))) {
670            const t = new Error(`Path contains invalid characters: ${e}`);
671            throw t.code = "EINVAL", t
672        }
673    }
674};
675const Ne = ne, {checkPath:Ie} = ke, Te = e => "number" == typeof e ? e : {mode: 511,...e}.mode;
676Pe.makeDir = async (e, t) => (Ie(e), Ne.mkdir(e, {
677    mode: Te(t),
678    recursive: !0
679})), Pe.makeDirSync = (e, t) => (Ie(e), Ne.mkdirSync(e, { mode: Te(t), recursive: !0 }));
680const Re = re.fromPromise, {makeDir:Me,makeDirSync:Le} = Pe, je = Re(Me);
681var $e = {
682    mkdirs: je,
683    mkdirsSync: Le,
684    mkdirp: je,
685    mkdirpSync: Le,
686    ensureDir: je,
687    ensureDirSync: Le
688};
689const He = re.fromPromise, Je = ne;
690var Ge = { pathExists: He((function (e) {
691    return Je.access(e).then((() =>!0)).catch((() =>!1))
692})), pathExistsSync: Je.existsSync };
693const Ve = we;
694var Ue = function (e, t, n, r) {
695    Ve.open(e, "r+", ((e, u) => {
696        if (e) return r(e);
697        Ve.futimes(u, t, n, (e => {
698            Ve.close(u, (t => {
699                r && r(e || t)
700            }))
701        }))
702    }))
703}, We = function (e, t, n) {
704    const r = Ve.openSync(e, "r+");
705    return Ve.futimesSync(r, t, n), Ve.closeSync(r)
706};
707const ze = ne, Ke = p.default, qe = F.default;
708
709function Ye(e, t, n) {
710    const r = n.dereference ? e => ze.stat(e, { bigint: !0 }) : e => ze.lstat(e, { bigint: !0 });
711    return Promise.all([r(e), r(t).catch((e => {
712        if ("ENOENT" === e.code) return null;
713        throw e
714    }))]).then((([e, t]) => ({ srcStat: e, destStat: t })))
715}
716
717function Xe(e, t) {
718    return t.ino && t.dev && t.ino === e.ino && t.dev === e.dev
719}
720
721function Ze(e, t) {
722    const n = Ke.resolve(e).split(Ke.sep).filter((e => e)), r = Ke.resolve(t).split(Ke.sep).filter((e => e));
723    return n.reduce(((e, t, n) => e && r[n] === t),!0)
724}
725
726function Qe(e, t, n) {
727    return `Cannot ${n} '${e}' to a subdirectory of itself, '${t}'.`
728}
729
730var et = {
731    checkPaths: function (e, t, n, r, u) {
732        qe.callbackify(Ye)(e, t, r, ((r, o) => {
733            if (r) return u(r);
734            const {srcStat:i,destStat:s} = o;
735            if (s) {
736                if (Xe(i, s)) {
737                    const r = Ke.basename(e), o = Ke.basename(t);
738                    return "move" === n && r !== o && r.toLowerCase() === o.toLowerCase() ? u(null, {
739                        srcStat: i,
740                        destStat: s,
741                        isChangingCase: !0
742                    }) : u(new Error("Source and destination must not be the same."))
743                }
744                if (i.isDirectory() && !s.isDirectory()) return u(new Error(`Cannot overwrite non-directory '${t}' with directory '${e}'.`));
745                if (!i.isDirectory() && s.isDirectory()) return u(new Error(`Cannot overwrite directory '${t}' with non-directory '${e}'.`))
746            }
747            return i.isDirectory() && Ze(e, t) ? u(new Error(Qe(e, t, n))) : u(null, { srcStat: i, destStat: s })
748        }))
749    },
750    checkPathsSync: function (e, t, n, r) {
751        const {srcStat:u,destStat:o} = function(e, t, n){
752            let r;
753            const u = n.dereference ? e => ze.statSync(e, { bigint: !0 }) : e => ze.lstatSync(e, { bigint: !0 }),
754                o = u(e);
755            try {
756                r = u(t)
757            } catch (e) {
758                if ("ENOENT" === e.code) return { srcStat: o, destStat: null };
759                throw e
760            }
761            return { srcStat: o, destStat: r }
762        }(e, t, r);
763        if (o) {
764            if (Xe(u, o)) {
765                const r = Ke.basename(e), i = Ke.basename(t);
766                if ("move" === n && r !== i && r.toLowerCase() === i.toLowerCase()) return {
767                    srcStat: u,
768                    destStat: o,
769                    isChangingCase: !0
770                };
771                throw new Error("Source and destination must not be the same.")
772            }
773            if (u.isDirectory() && !o.isDirectory()) throw new Error(`Cannot overwrite non-directory '${t}' with directory '${e}'.`);
774            if (!u.isDirectory() && o.isDirectory()) throw new Error(`Cannot overwrite directory '${t}' with non-directory '${e}'.`)
775        }
776        if (u.isDirectory() && Ze(e, t)) throw new Error(Qe(e, t, n));
777        return { srcStat: u, destStat: o }
778    },
779    checkParentPaths: function e(t, n, r, u, o) {
780        const i = Ke.resolve(Ke.dirname(t)), s = Ke.resolve(Ke.dirname(r));
781        if (s === i || s === Ke.parse(s).root) return o();
782        ze.stat(s, {
783            bigint: !0
784        }, ((i, c) => i ? "ENOENT" === i.code ? o() : o(i) : Xe(n, c) ? o(new Error(Qe(t, r, u))) : e(t, n, s, u, o)))
785    },
786    checkParentPathsSync: function e(t, n, r, u) {
787        const o = Ke.resolve(Ke.dirname(t)), i = Ke.resolve(Ke.dirname(r));
788        if (i === o || i === Ke.parse(i).root) return;
789        let s;
790        try {
791            s = ze.statSync(i, { bigint: !0 })
792        } catch (e) {
793            if ("ENOENT" === e.code) return;
794            throw e
795        }
796        if (Xe(n, s)) throw new Error(Qe(t, r, u));
797        return e(t, n, i, u)
798    },
799    isSrcSubdir: Ze,
800    areIdentical: Xe
801};
802const tt = we, nt = p.default, rt = $e.mkdirs, ut = Ge.pathExists, ot = Ue, it = et;
803
804function st(e, t, n, r, u) {
805    const o = nt.dirname(n);
806    ut(o, ((i, s) => i ? u(i) : s ? at(e, t, n, r, u) : void rt(o, (o => o ? u(o) : at(e, t, n, r, u)))))
807}
808
809function ct(e, t, n, r, u, o) {
810    Promise.resolve(u.filter(n, r)).then((i => i ? e(t, n, r, u, o) : o()), (e => o(e)))
811}
812
813function at(e, t, n, r, u) {
814    (r.dereference ? tt.stat : tt.lstat)(t, ((o, i) => o ? u(o) : i.isDirectory() ? function(e, t, n, r, u, o){
815        return t ? Dt(n, r, u, o) : function(e, t, n, r, u){
816            tt.mkdir(n, (o => {
817                if (o) return u(o);
818                Dt(t, n, r, (t => t ? u(t) : dt(n, e, u)))
819            }))
820        }(e.mode, n, r, u, o)
821    }(i, e, t, n, r, u) : i.isFile() || i.isCharacterDevice() || i.isBlockDevice() ? function(e, t, n, r, u, o){
822        return t ? function(e, t, n, r, u){
823            if (!r.overwrite) return r.errorOnExist ? u(new Error(`'${n}' already exists`)) : u();
824            tt.unlink(n, (o => o ? u(o) : lt(e, t, n, r, u)))
825        }(e, n, r, u, o) : lt(e, n, r, u, o)
826    }(i, e, t, n, r, u) : i.isSymbolicLink() ? function(e, t, n, r, u){
827        tt.readlink(t, ((t, o) => t ? u(t) : (r.dereference && (o = nt.resolve(process.cwd(), o)), e ? void tt.readlink(n, ((t, i) => t ? "EINVAL" === t.code || "UNKNOWN" === t.code ? tt.symlink(o, n, u) : u(t) : (r.dereference && (i = nt.resolve(process.cwd(), i)), it.isSrcSubdir(o, i) ? u(new Error(`Cannot copy '${o}' to a subdirectory of itself, '${i}'.`)) : e.isDirectory() && it.isSrcSubdir(i, o) ? u(new Error(`Cannot overwrite '${i}' with '${o}'.`)) : function(e, t, n){
828            tt.unlink(t, (r => r ? n(r) : tt.symlink(e, t, n)))
829        }(o, n, u)))) : tt.symlink(o, n, u))))
830    }(e, t, n, r, u) : i.isSocket() ? u(new Error(`Cannot copy a socket file: ${t}`)) : i.isFIFO() ? u(new Error(`Cannot copy a FIFO pipe: ${t}`)) : u(new Error(`Unknown file: ${t}`))))
831}
832
833function lt(e, t, n, r, u) {
834    tt.copyFile(t, n, (o => o ? u(o) : r.preserveTimestamps ? function(e, t, n, r){
835        if (function(e){
836            return 0 == (128 & e)
837        }(e)) return function(e, t, n){
838            return dt(e, 128 | t, n)
839        }(n, e, (u => u ? r(u) : ft(e, t, n, r)));
840        return ft(e, t, n, r)
841    }(e.mode, t, n, u) : dt(n, e.mode, u)))
842}
843
844function ft(e, t, n, r) {
845    !function(e, t, n){
846        tt.stat(e, ((e, r) => e ? n(e) : ot(t, r.atime, r.mtime, n)))
847    }(t, n, (t => t ? r(t) : dt(n, e, r)))
848}
849
850function dt(e, t, n) {
851    return tt.chmod(e, t, n)
852}
853
854function Dt(e, t, n, r) {
855    tt.readdir(e, ((u, o) => u ? r(u) : pt(o, e, t, n, r)))
856}
857
858function pt(e, t, n, r, u) {
859    const o = e.pop();
860    return o ? function(e, t, n, r, u, o){
861        const i = nt.join(n, t), s = nt.join(r, t);
862        it.checkPaths(i, s, "copy", u, ((t, c) => {
863            if (t) return o(t);
864            const {destStat:a} = c;
865            !function(e, t, n, r, u){
866                r.filter ? ct(at, e, t, n, r, u) : at(e, t, n, r, u)
867            }(a, i, s, u, (t => t ? o(t) : pt(e, n, r, u, o)))
868        }))
869    }(e, o, t, n, r, u) : u()
870}
871
872var Et = function (e, t, n, r) {
873        "function" != typeof n || r ? "function" == typeof n && (n = { filter: n }) : (r = n, n = {
874    }), r = r || function () {
875    }, (n = n || {
876    }).clobber = !("clobber" in n) || !!n.clobber, n.overwrite = "overwrite" in n ? !!n.overwrite : n.clobber, n.preserveTimestamps && "ia32" === process.arch && console.warn("fs-extra: Using the preserveTimestamps option in 32-bit node is not recommended;\n\n    see https://github.com/jprichardson/node-fs-extra/issues/269"), it.checkPaths(e, t, "copy", n, ((u, o) => {
877        if (u) return r(u);
878        const {srcStat:i,destStat:s} = o;
879        it.checkParentPaths(e, i, t, "copy", (u => u ? r(u) : n.filter ? ct(st, s, e, t, n, r) : st(s, e, t, n, r)))
880    }))
881};
882const mt = we, ht = p.default, yt = $e.mkdirsSync, Ct = We, Ft = et;
883
884function gt(e, t, n, r) {
885    const u = (r.dereference ? mt.statSync : mt.lstatSync)(t);
886    if (u.isDirectory()) return function(e, t, n, r, u){
887        return t ? St(n, r, u) : function(e, t, n, r){
888            return mt.mkdirSync(n), St(t, n, r), vt(n, e)
889        }(e.mode, n, r, u)
890    }(u, e, t, n, r);
891    if (u.isFile() || u.isCharacterDevice() || u.isBlockDevice()) return function(e, t, n, r, u){
892        return t ? function(e, t, n, r){
893            if (r.overwrite) return mt.unlinkSync(n), At(e, t, n, r);
894            if (r.errorOnExist) throw new Error(`'${n}' already exists`)
895        }(e, n, r, u) : At(e, n, r, u)
896    }(u, e, t, n, r);
897    if (u.isSymbolicLink()) return function(e, t, n, r){
898        let u = mt.readlinkSync(t);
899        r.dereference && (u = ht.resolve(process.cwd(), u));
900        if (e) {
901            let e;
902            try {
903                e = mt.readlinkSync(n)
904            } catch (e) {
905                if ("EINVAL" === e.code || "UNKNOWN" === e.code) return mt.symlinkSync(u, n);
906                throw e
907            }
908            if (r.dereference && (e = ht.resolve(process.cwd(), e)), Ft.isSrcSubdir(u, e)) throw new Error(`Cannot copy '${u}' to a subdirectory of itself, '${e}'.`);
909            if (mt.statSync(n).isDirectory() && Ft.isSrcSubdir(e, u)) throw new Error(`Cannot overwrite '${e}' with '${u}'.`);
910            return function(e, t){
911                return mt.unlinkSync(t), mt.symlinkSync(e, t)
912            }(u, n)
913        }
914        return mt.symlinkSync(u, n)
915    }(e, t, n, r);
916    if (u.isSocket()) throw new Error(`Cannot copy a socket file: ${t}`);
917    if (u.isFIFO()) throw new Error(`Cannot copy a FIFO pipe: ${t}`);
918    throw new Error(`Unknown file: ${t}`)
919}
920
921function At(e, t, n, r) {
922    return mt.copyFileSync(t, n), r.preserveTimestamps && function(e, t, n){
923        (function (e) {
924            return 0 == (128 & e)
925        })(e) && function(e, t){
926            vt(e, 128 | t)
927        }(n, e);
928        (function (e, t) {
929            const n = mt.statSync(e);
930            Ct(t, n.atime, n.mtime)
931        })(t, n)
932    }(e.mode, t, n), vt(n, e.mode)
933}
934
935function vt(e, t) {
936    return mt.chmodSync(e, t)
937}
938
939function St(e, t, n) {
940    mt.readdirSync(e).forEach((r => function(e, t, n, r){
941        const u = ht.join(t, e), o = ht.join(n, e), {destStat:i} = Ft.checkPathsSync(u, o, "copy", r);
942        return function(e, t, n, r){
943            if (!r.filter || r.filter(t, n)) return gt(e, t, n, r)
944        }(i, u, o, r)
945    }(r, e, t, n)))
946}
947
948var wt = function (e, t, n) {
949    "function" == typeof n && (n = { filter: n }), (n = n || {
950    }).clobber = !("clobber" in n) || !!n.clobber, n.overwrite = "overwrite" in n ? !!n.overwrite : n.clobber, n.preserveTimestamps && "ia32" === process.arch && console.warn("fs-extra: Using the preserveTimestamps option in 32-bit node is not recommended;\n\n    see https://github.com/jprichardson/node-fs-extra/issues/269");
951    const {srcStat:r,destStat:u} = Ft.checkPathsSync(e, t, "copy", n);
952    return Ft.checkParentPathsSync(e, r, t, "copy"), function(e, t, n, r){
953        if (r.filter && !r.filter(t, n)) return;
954        const u = ht.dirname(n);
955        mt.existsSync(u) || yt(u);
956        return gt(e, t, n, r)
957    }(u, e, t, n)
958};
959var Ot = { copy: (0, re.fromCallback)(Et), copySync: wt };
960const bt = we, _t = p.default, Bt = g.default, Pt = "win32" === process.platform;
961
962function kt(e) {
963    ["unlink", "chmod", "stat", "lstat", "rmdir", "readdir"].forEach((t => {
964        e[t] = e[t] || bt[t], e[t+="Sync"] = e[t] || bt[t]
965    })), e.maxBusyTries = e.maxBusyTries || 3
966}
967
968function xt(e, t, n) {
969    let r = 0;
970    "function" == typeof t && (n = t, t = {
971    }), Bt(e, "rimraf: missing path"), Bt.strictEqual(typeof e, "string", "rimraf: path should be a string"), Bt.strictEqual(typeof n, "function", "rimraf: callback function required"), Bt(t, "rimraf: invalid options argument provided"), Bt.strictEqual(typeof t, "object", "rimraf: options should be object"), kt(t), Nt(e, t, (function u(o) {
972        if (o) {
973            if (("EBUSY" === o.code || "ENOTEMPTY" === o.code || "EPERM" === o.code) && r < t.maxBusyTries) {
974                r++;
975                return setTimeout((() => Nt(e, t, u)), 100 * r)
976            }
977            "ENOENT" === o.code && (o = null)
978        }
979        n(o)
980    }))
981}
982
983function Nt(e, t, n) {
984    Bt(e), Bt(t), Bt("function" == typeof n), t.lstat(e, ((r, u) => r && "ENOENT" === r.code ? n(null) : r && "EPERM" === r.code && Pt ? It(e, t, r, n) : u && u.isDirectory() ? Rt(e, t, r, n) : void t.unlink(e, (r => {
985        if (r) {
986            if ("ENOENT" === r.code) return n(null);
987            if ("EPERM" === r.code) return Pt ? It(e, t, r, n) : Rt(e, t, r, n);
988            if ("EISDIR" === r.code) return Rt(e, t, r, n)
989        }
990        return n(r)
991    }))))
992}
993
994function It(e, t, n, r) {
995    Bt(e), Bt(t), Bt("function" == typeof r), t.chmod(e, 438, (u => {
996            u ? r("ENOENT" === u.code ? null : n) : t.stat(e, ((u, o) => {
997                u ? r("ENOENT" === u.code ? null : n) : o.isDirectory() ? Rt(e, t, n, r) : t.unlink(e, r)
998        }))
999    }))
1000}
1001
1002function Tt(e, t, n) {
1003    let r;
1004    Bt(e), Bt(t);
1005    try {
1006        t.chmodSync(e, 438)
1007    } catch (e) {
1008        if ("ENOENT" === e.code) return;
1009        throw n
1010    }
1011    try {
1012        r = t.statSync(e)
1013    } catch (e) {
1014        if ("ENOENT" === e.code) return;
1015        throw n
1016    }
1017    r.isDirectory() ? Lt(e, t, n) : t.unlinkSync(e)
1018}
1019
1020function Rt(e, t, n, r) {
1021    Bt(e), Bt(t), Bt("function" == typeof r), t.rmdir(e, (u => {
1022            !u || "ENOTEMPTY" !== u.code && "EEXIST" !== u.code && "EPERM" !== u.code ? u && "ENOTDIR" === u.code ? r(n) : r(u) : function(e, t, n){
1023            Bt(e), Bt(t), Bt("function" == typeof n), t.readdir(e, ((r, u) => {
1024                if (r) return n(r);
1025                let o, i = u.length;
1026                if (0 === i) return t.rmdir(e, n);
1027                u.forEach((r => {
1028                    xt(_t.join(e, r), t, (r => {
1029                        if (!o) return r ? n(o = r) : void (0 == --i && t.rmdir(e, n))
1030                    }))
1031                }))
1032            }))
1033        }(e, t, r)
1034    }))
1035}
1036
1037function Mt(e, t) {
1038    let n;
1039    kt(t = t || {
1040    }), Bt(e, "rimraf: missing path"), Bt.strictEqual(typeof e, "string", "rimraf: path should be a string"), Bt(t, "rimraf: missing options"), Bt.strictEqual(typeof t, "object", "rimraf: options should be object");
1041    try {
1042        n = t.lstatSync(e)
1043    } catch (n) {
1044        if ("ENOENT" === n.code) return;
1045        "EPERM" === n.code && Pt && Tt(e, t, n)
1046    }
1047    try {
1048            n && n.isDirectory() ? Lt(e, t, null) : t.unlinkSync(e)
1049    } catch (n) {
1050        if ("ENOENT" === n.code) return;
1051        if ("EPERM" === n.code) return Pt ? Tt(e, t, n) : Lt(e, t, n);
1052        if ("EISDIR" !== n.code) throw n;
1053        Lt(e, t, n)
1054    }
1055}
1056
1057function Lt(e, t, n) {
1058    Bt(e), Bt(t);
1059    try {
1060        t.rmdirSync(e)
1061    } catch (r) {
1062        if ("ENOTDIR" === r.code) throw n;
1063        if ("ENOTEMPTY" === r.code || "EEXIST" === r.code || "EPERM" === r.code) !function(e, t){
1064            if (Bt(e), Bt(t), t.readdirSync(e).forEach((n => Mt(_t.join(e, n), t))),!Pt) {
1065                return t.rmdirSync(e, t)
1066            }
1067            {
1068                const n = Date.now();
1069                do {
1070                    try {
1071                        return t.rmdirSync(e, t)
1072                    } catch {
1073                    }
1074                } while (Date.now() - n < 500)
1075            }
1076        }(e, t); else if ("ENOENT" !== r.code) throw r
1077    }
1078}
1079
1080var jt = xt;
1081xt.sync = Mt;
1082const $t = we, Ht = re.fromCallback, Jt = jt;
1083var Gt = { remove: Ht((function (e, t) {
1084    if ($t.rm) return $t.rm(e, { recursive: !0, force: !0 }, t);
1085    Jt(e, t)
1086})), removeSync: function (e) {
1087    if ($t.rmSync) return $t.rmSync(e, { recursive: !0, force: !0 });
1088    Jt.sync(e)
1089} };
1090const Vt = re.fromPromise, Ut = ne, Wt = p.default, zt = $e, Kt = Gt, qt = Vt((async function (e) {
1091    let t;
1092    try {
1093        t = await Ut.readdir(e)
1094    } catch {
1095        return zt.mkdirs(e)
1096    }
1097    return Promise.all(t.map((t => Kt.remove(Wt.join(e, t)))))
1098}));
1099
1100function Yt(e) {
1101    let t;
1102    try {
1103        t = Ut.readdirSync(e)
1104    } catch {
1105        return zt.mkdirsSync(e)
1106    }
1107    t.forEach((t => {
1108        t = Wt.join(e, t), Kt.removeSync(t)
1109    }))
1110}
1111
1112var Xt = { emptyDirSync: Yt, emptydirSync: Yt, emptyDir: qt, emptydir: qt };
1113const Zt = re.fromCallback, Qt = p.default, en = we, tn = $e;
1114var nn = { createFile: Zt((function (e, t) {
1115
1116    function n() {
1117        en.writeFile(e, "", (e => {
1118            if (e) return t(e);
1119            t()
1120        }))
1121    }
1122
1123    en.stat(e, ((r, u) => {
1124        if (!r && u.isFile()) return t();
1125        const o = Qt.dirname(e);
1126        en.stat(o, ((e, r) => {
1127            if (e) return "ENOENT" === e.code ? tn.mkdirs(o, (e => {
1128                if (e) return t(e);
1129                n()
1130            })) : t(e);
1131            r.isDirectory() ? n() : en.readdir(o, (e => {
1132                if (e) return t(e)
1133            }))
1134        }))
1135    }))
1136})), createFileSync: function (e) {
1137    let t;
1138    try {
1139        t = en.statSync(e)
1140    } catch {
1141    }
1142    if (t && t.isFile()) return;
1143    const n = Qt.dirname(e);
1144    try {
1145        en.statSync(n).isDirectory() || en.readdirSync(n)
1146    } catch (e) {
1147        if (!e || "ENOENT" !== e.code) throw e;
1148        tn.mkdirsSync(n)
1149    }
1150    en.writeFileSync(e, "")
1151} };
1152const rn = re.fromCallback, un = p.default, on = we, sn = $e, cn = Ge.pathExists, {areIdentical:an} = et;
1153var ln = { createLink: rn((function (e, t, n) {
1154
1155    function r(e, t) {
1156        on.link(e, t, (e => {
1157            if (e) return n(e);
1158            n(null)
1159        }))
1160    }
1161
1162    on.lstat(t, ((u, o) => {
1163        on.lstat(e, ((u, i) => {
1164            if (u) return u.message = u.message.replace("lstat", "ensureLink"), n(u);
1165            if (o && an(i, o)) return n(null);
1166            const s = un.dirname(t);
1167            cn(s, ((u, o) => u ? n(u) : o ? r(e, t) : void sn.mkdirs(s, (u => {
1168                if (u) return n(u);
1169                r(e, t)
1170            }))))
1171        }))
1172    }))
1173})), createLinkSync: function (e, t) {
1174    let n;
1175    try {
1176        n = on.lstatSync(t)
1177    } catch {
1178    }
1179    try {
1180        const t = on.lstatSync(e);
1181        if (n && an(t, n)) return
1182    } catch (e) {
1183        throw e.message = e.message.replace("lstat", "ensureLink"), e
1184    }
1185    const r = un.dirname(t);
1186    return on.existsSync(r) || sn.mkdirsSync(r), on.linkSync(e, t)
1187} };
1188const fn = p.default, dn = we, Dn = Ge.pathExists;
1189var pn = { symlinkPaths: function (e, t, n) {
1190    if (fn.isAbsolute(e)) return dn.lstat(e, (t => t ? (t.message = t.message.replace("lstat", "ensureSymlink"), n(t)) : n(null, {
1191        toCwd: e,
1192        toDst: e
1193    })));
1194    {
1195        const r = fn.dirname(t), u = fn.join(r, e);
1196        return Dn(u, ((t, o) => t ? n(t) : o ? n(null, {
1197            toCwd: u,
1198            toDst: e
1199        }) : dn.lstat(e, (t => t ? (t.message = t.message.replace("lstat", "ensureSymlink"), n(t)) : n(null, {
1200            toCwd: e,
1201            toDst: fn.relative(r, e)
1202        })))))
1203    }
1204}, symlinkPathsSync: function (e, t) {
1205    let n;
1206    if (fn.isAbsolute(e)) {
1207        if (n = dn.existsSync(e),!n) throw new Error("absolute srcpath does not exist");
1208        return { toCwd: e, toDst: e }
1209    }
1210    {
1211        const r = fn.dirname(t), u = fn.join(r, e);
1212        if (n = dn.existsSync(u), n) return { toCwd: u, toDst: e };
1213        if (n = dn.existsSync(e),!n) throw new Error("relative srcpath does not exist");
1214        return { toCwd: e, toDst: fn.relative(r, e) }
1215    }
1216} };
1217const En = we;
1218var mn = { symlinkType: function (e, t, n) {
1219    if (n = "function" == typeof t ? t : n, t = "function" != typeof t && t) return n(null, t);
1220    En.lstat(e, ((e, r) => {
1221        if (e) return n(null, "file");
1222        t = r && r.isDirectory() ? "dir" : "file", n(null, t)
1223    }))
1224}, symlinkTypeSync: function (e, t) {
1225    let n;
1226    if (t) return t;
1227    try {
1228        n = En.lstatSync(e)
1229    } catch {
1230        return "file"
1231    }
1232    return n && n.isDirectory() ? "dir" : "file"
1233} };
1234const hn = re.fromCallback, yn = p.default, Cn = ne, Fn = $e.mkdirs, gn = $e.mkdirsSync, An = pn.symlinkPaths,
1235    vn = pn.symlinkPathsSync, Sn = mn.symlinkType, wn = mn.symlinkTypeSync, On = Ge.pathExists, {areIdentical:bn} = et;
1236
1237function _n(e, t, n, r) {
1238    An(e, t, ((u, o) => {
1239        if (u) return r(u);
1240        e = o.toDst, Sn(o.toCwd, n, ((n, u) => {
1241            if (n) return r(n);
1242            const o = yn.dirname(t);
1243            On(o, ((n, i) => n ? r(n) : i ? Cn.symlink(e, t, u, r) : void Fn(o, (n => {
1244                if (n) return r(n);
1245                Cn.symlink(e, t, u, r)
1246            }))))
1247        }))
1248    }))
1249}
1250
1251var Bn = { createSymlink: hn((function (e, t, n, r) {
1252    r = "function" == typeof n ? n : r, n = "function" != typeof n && n, Cn.lstat(t, ((u, o) => {
1253            !u && o.isSymbolicLink() ? Promise.all([Cn.stat(e), Cn.stat(t)]).then((([u, o]) => {
1254            if (bn(u, o)) return r(null);
1255            _n(e, t, n, r)
1256        })) : _n(e, t, n, r)
1257    }))
1258})), createSymlinkSync: function (e, t, n) {
1259    let r;
1260    try {
1261        r = Cn.lstatSync(t)
1262    } catch {
1263    }
1264    if (r && r.isSymbolicLink()) {
1265        const n = Cn.statSync(e), r = Cn.statSync(t);
1266        if (bn(n, r)) return
1267    }
1268    const u = vn(e, t);
1269    e = u.toDst, n = wn(u.toCwd, n);
1270    const o = yn.dirname(t);
1271    return Cn.existsSync(o) || gn(o), Cn.symlinkSync(e, t, n)
1272} };
1273const {createFile:Pn,createFileSync:kn} = nn, {createLink:xn,createLinkSync:Nn} = ln,
1274    {createSymlink:In,createSymlinkSync:Tn} = Bn;
1275var Rn = {
1276    createFile: Pn,
1277    createFileSync: kn,
1278    ensureFile: Pn,
1279    ensureFileSync: kn,
1280    createLink: xn,
1281    createLinkSync: Nn,
1282    ensureLink: xn,
1283    ensureLinkSync: Nn,
1284    createSymlink: In,
1285    createSymlinkSync: Tn,
1286    ensureSymlink: In,
1287    ensureSymlinkSync: Tn
1288};
1289var Mn = { stringify: function (e, {EOL:t = "\n",finalEOL:n = !0,replacer:r = null,spaces:u}={}) {
1290    const o = n ? t : "";
1291    return JSON.stringify(e, r, u).replace(/\n/g, t) + o
1292}, stripBom: function (e) {
1293    return Buffer.isBuffer(e) && (e = e.toString("utf8")), e.replace(/^\uFEFF/, "")
1294} };
1295let Ln;
1296try {
1297    Ln = we
1298} catch (e) {
1299    Ln = D.default
1300}
1301const jn = re, {stringify:$n,stripBom:Hn} = Mn;
1302const Jn = jn.fromPromise((async function (e, t = {}) {
1303    "string" == typeof t && (t = { encoding: t });
1304    const n = t.fs || Ln, r = !("throws" in t) || t.throws;
1305    let u, o = await jn.fromCallback(n.readFile)(e, t);
1306    o = Hn(o);
1307    try {
1308        u = JSON.parse(o, t ? t.reviver : null)
1309    } catch (t) {
1310        if (r) throw t.message = `${e}: ${t.message}`, t;
1311        return null
1312    }
1313    return u
1314}));
1315const Gn = jn.fromPromise((async function (e, t, n = {}) {
1316    const r = n.fs || Ln, u = $n(t, n);
1317    await jn.fromCallback(r.writeFile)(e, u, n)
1318}));
1319const Vn = { readFile: Jn, readFileSync: function (e, t = {}) {
1320    "string" == typeof t && (t = { encoding: t });
1321    const n = t.fs || Ln, r = !("throws" in t) || t.throws;
1322    try {
1323        let r = n.readFileSync(e, t);
1324        return r = Hn(r), JSON.parse(r, t.reviver)
1325    } catch (t) {
1326        if (r) throw t.message = `${e}: ${t.message}`, t;
1327        return null
1328    }
1329}, writeFile: Gn, writeFileSync: function (e, t, n = {}) {
1330    const r = n.fs || Ln, u = $n(t, n);
1331    return r.writeFileSync(e, u, n)
1332} };
1333var Un = {
1334    readJson: Vn.readFile,
1335    readJsonSync: Vn.readFileSync,
1336    writeJson: Vn.writeFile,
1337    writeJsonSync: Vn.writeFileSync
1338};
1339const Wn = re.fromCallback, zn = we, Kn = p.default, qn = $e, Yn = Ge.pathExists;
1340var Xn = { outputFile: Wn((function (e, t, n, r) {
1341    "function" == typeof n && (r = n, n = "utf8");
1342    const u = Kn.dirname(e);
1343    Yn(u, ((o, i) => o ? r(o) : i ? zn.writeFile(e, t, n, r) : void qn.mkdirs(u, (u => {
1344        if (u) return r(u);
1345        zn.writeFile(e, t, n, r)
1346    }))))
1347})), outputFileSync: function (e, ...t) {
1348    const n = Kn.dirname(e);
1349    if (zn.existsSync(n)) return zn.writeFileSync(e, ...t);
1350    qn.mkdirsSync(n), zn.writeFileSync(e, ...t)
1351} };
1352const {stringify:Zn} = Mn, {outputFile:Qn} = Xn;
1353var er = async function (e, t, n = {}) {
1354    const r = Zn(t, n);
1355    await Qn(e, r, n)
1356};
1357const {stringify:tr} = Mn, {outputFileSync:nr} = Xn;
1358var rr = function (e, t, n) {
1359    const r = tr(t, n);
1360    nr(e, r, n)
1361};
1362const ur = re.fromPromise, or = Un;
1363or.outputJson = ur(er), or.outputJsonSync = rr, or.outputJSON = or.outputJson, or.outputJSONSync = or.outputJsonSync, or.writeJSON = or.writeJson, or.writeJSONSync = or.writeJsonSync, or.readJSON = or.readJson, or.readJSONSync = or.readJsonSync;
1364var ir = or;
1365const sr = we, cr = p.default, ar = Ot.copy, lr = Gt.remove, fr = $e.mkdirp, dr = Ge.pathExists, Dr = et;
1366
1367function pr(e, t, n, r, u) {
1368    return r ? Er(e, t, n, u) : n ? lr(t, (r => r ? u(r) : Er(e, t, n, u))) : void dr(t, ((r, o) => r ? u(r) : o ? u(new Error("dest already exists.")) : Er(e, t, n, u)))
1369}
1370
1371function Er(e, t, n, r) {
1372    sr.rename(e, t, (u => u ? "EXDEV" !== u.code ? r(u) : function(e, t, n, r){
1373        const u = { overwrite: n, errorOnExist: !0 };
1374        ar(e, t, u, (t => t ? r(t) : lr(e, r)))
1375    }(e, t, n, r) : r()))
1376}
1377
1378var mr = function (e, t, n, r) {
1379    "function" == typeof n && (r = n, n = {});
1380    const u = n.overwrite || n.clobber || !1;
1381    Dr.checkPaths(e, t, "move", n, ((n, o) => {
1382        if (n) return r(n);
1383        const {srcStat:i,isChangingCase:s = !1} = o;
1384        Dr.checkParentPaths(e, i, t, "move", (n => n ? r(n) : function(e){
1385            const t = cr.dirname(e);
1386            return cr.parse(t).root === t
1387        }(t) ? pr(e, t, u, s, r) : void fr(cr.dirname(t), (n => n ? r(n) : pr(e, t, u, s, r)))))
1388    }))
1389};
1390const hr = we, yr = p.default, Cr = Ot.copySync, Fr = Gt.removeSync, gr = $e.mkdirpSync, Ar = et;
1391
1392function vr(e, t, n) {
1393    try {
1394        hr.renameSync(e, t)
1395    } catch (r) {
1396        if ("EXDEV" !== r.code) throw r;
1397        return function(e, t, n){
1398            const r = { overwrite: n, errorOnExist: !0 };
1399            return Cr(e, t, r), Fr(e)
1400        }(e, t, n)
1401    }
1402}
1403
1404var Sr = function (e, t, n) {
1405    const r = (n = n || {}).overwrite || n.clobber || !1,
1406        {srcStat:u,isChangingCase:o = !1} = Ar.checkPathsSync(e, t, "move", n);
1407    return Ar.checkParentPathsSync(e, u, t, "move"), function(e){
1408        const t = yr.dirname(e);
1409        return yr.parse(t).root === t
1410    }(t) || gr(yr.dirname(t)), function(e, t, n, r){
1411        if (r) return vr(e, t, n);
1412        if (n) return Fr(t), vr(e, t, n);
1413        if (hr.existsSync(t)) throw new Error("dest already exists.");
1414        return vr(e, t, n)
1415    }(e, t, r, o)
1416};
1417var wr, Or, br, _r, Br, Pr = { move: (0, re.fromCallback)(mr), moveSync: Sr }, kr = {
1418    ...ne,
1419    ...Ot,
1420    ...Xt,
1421    ...Rn,
1422    ...ir,
1423    ...$e,
1424    ...Pr,
1425    ...Xn,
1426    ...Ge,
1427    ...Gt
1428}, xr = {}, Nr = { exports: {} }, Ir = { exports: {} };
1429
1430function Tr() {
1431    if (Or) return wr;
1432    Or = 1;
1433    var e = 1e3, t = 60 * e, n = 60 * t, r = 24 * n, u = 7 * r, o = 365.25 * r;
1434
1435    function i(e, t, n, r) {
1436        var u = t >= 1.5 * n;
1437        return Math.round(e / n) + " " + r + (u ? "s" : "")
1438    }
1439
1440    return wr = function (s, c) {
1441        c = c || {};
1442        var a = typeof s;
1443        if ("string" === a && s.length > 0) return function(i){
1444            if ((i = String(i)).length > 100) return;
1445            var s = /^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(i);
1446            if (!s) return;
1447            var c = parseFloat(s[1]);
1448            switch ((s[2] || "ms").toLowerCase()) {
1449                case "years":
1450                case "year":
1451                case "yrs":
1452                case "yr":
1453                case "y":
1454                    return c * o;
1455                case "weeks":
1456                case "week":
1457                case "w":
1458                    return c * u;
1459                case "days":
1460                case "day":
1461                case "d":
1462                    return c * r;
1463                case "hours":
1464                case "hour":
1465                case "hrs":
1466                case "hr":
1467                case "h":
1468                    return c * n;
1469                case "minutes":
1470                case "minute":
1471                case "mins":
1472                case "min":
1473                case "m":
1474                    return c * t;
1475                case "seconds":
1476                case "second":
1477                case "secs":
1478                case "sec":
1479                case "s":
1480                    return c * e;
1481                case "milliseconds":
1482                case "millisecond":
1483                case "msecs":
1484                case "msec":
1485                case "ms":
1486                    return c;
1487                default:
1488                    return
1489            }
1490        }(s);
1491        if ("number" === a && isFinite(s)) return c.long ? function(u){
1492            var o = Math.abs(u);
1493            if (o >= r) return i(u, o, r, "day");
1494            if (o >= n) return i(u, o, n, "hour");
1495            if (o >= t) return i(u, o, t, "minute");
1496            if (o >= e) return i(u, o, e, "second");
1497            return u + " ms"
1498        }(s) : function(u){
1499            var o = Math.abs(u);
1500            if (o >= r) return Math.round(u / r) + "d";
1501            if (o >= n) return Math.round(u / n) + "h";
1502            if (o >= t) return Math.round(u / t) + "m";
1503            if (o >= e) return Math.round(u / e) + "s";
1504            return u + "ms"
1505        }(s);
1506        throw new Error("val is not a non-empty string or a valid number. val=" + JSON.stringify(s))
1507    }
1508}
1509
1510function Rr() {
1511    if (_r) return br;
1512    return _r = 1, br = function (e) {
1513
1514        function t(e) {
1515            let r, u, o, i = null;
1516
1517            function s(...e) {
1518                if (!s.enabled) return;
1519                const n = s, u = Number(new Date), o = u - (r || u);
1520                n.diff = o, n.prev = r, n.curr = u, r = u, e[0] = t.coerce(e[0]), "string" != typeof e[0] && e.unshift("%O");
1521                let i = 0;
1522                e[0] = e[0].replace(/%([a-zA-Z%])/g, ((r, u) => {
1523                    if ("%%" === r) return "%";
1524                    i++;
1525                    const o = t.formatters[u];
1526                    if ("function" == typeof o) {
1527                        const t = e[i];
1528                        r = o.call(n, t), e.splice(i, 1), i--
1529                    }
1530                    return r
1531                })), t.formatArgs.call(n, e);
1532                (n.log || t.log).apply(n, e)
1533            }
1534
1535            return s.namespace = e, s.useColors = t.useColors(), s.color = t.selectColor(e), s.extend = n, s.destroy = t.destroy, Object.defineProperty(s, "enabled", {
1536                enumerable: !0,
1537                configurable: !1,
1538                get: () => null !== i ? i : (u !== t.namespaces && (u = t.namespaces, o = t.enabled(e)), o),
1539                set: e => {
1540                    i = e
1541                }
1542            }), "function" == typeof t.init && t.init(s), s
1543        }
1544
1545        function n(e, n) {
1546            const r = t(this.namespace + (void 0 === n ? ":" : n) + e);
1547            return r.log = this.log, r
1548        }
1549
1550        function r(e) {
1551            return e.toString().substring(2, e.toString().length - 2).replace(/\.\*\?$/, "*")
1552        }
1553
1554        return t.debug = t, t.default = t, t.coerce = function (e) {
1555            if (e instanceof Error) return e.stack || e.message;
1556            return e
1557        }, t.disable = function () {
1558            const e = [...t.names.map(r), ...t.skips.map(r).map((e => "-" + e))].join(",");
1559            return t.enable(""), e
1560        }, t.enable = function (e) {
1561            let n;
1562            t.save(e), t.namespaces = e, t.names = [], t.skips = [];
1563            const r = ("string" == typeof e ? e : "").split(/[\s,]+/), u = r.length;
1564            for (n = 0; n < u; n++) r[n] && ("-" === (e = r[n].replace(/\*/g, ".*?"))[0] ? t.skips.push(new RegExp("^" + e.slice(1) + "$")) : t.names.push(new RegExp("^" + e + "$")))
1565        }, t.enabled = function (e) {
1566            if ("*" === e[e.length-1]) return !0;
1567            let n, r;
1568            for (n = 0, r = t.skips.length; n < r; n++) if (t.skips[n].test(e)) return !1;
1569            for (n = 0, r = t.names.length; n < r; n++) if (t.names[n].test(e)) return !0;
1570            return !1
1571        }, t.humanize = Tr(), t.destroy = function () {
1572            console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")
1573        }, Object.keys(e).forEach((n => {
1574            t[n] = e[n]
1575        })), t.names = [], t.skips = [], t.formatters = {}, t.selectColor = function (e) {
1576            let n = 0;
1577            for (let t = 0;t < e.length; t++) n = (n << 5) - n + e.charCodeAt(t), n |= 0;
1578            return t.colors[Math.abs(n)%t.colors.length]
1579        }, t.enable(t.load()), t
1580    }, br
1581}
1582
1583var Mr, Lr, jr, $r, Hr, Jr, Gr = { exports: {} };
1584
1585function Vr() {
1586    return Lr ? Mr : (Lr = 1, Mr = (e, t = process.argv) => {
1587        const n = e.startsWith("-") ? "" : 1 === e.length ? "-" : "--", r = t.indexOf(n + e), u = t.indexOf("--");
1588        return -1 !== r && (-1 === u || r < u)
1589    })
1590}
1591
1592function Ur() {
1593    return Hr || (Hr = 1, function(e, t){
1594        const n = A.default, r = F.default;
1595        t.init = function (e) {
1596            e.inspectOpts = {};
1597            const n = Object.keys(t.inspectOpts);
1598            for (let r = 0;r < n.length; r++) e.inspectOpts[n[r]] = t.inspectOpts[n[r]]
1599        }, t.log = function (...e) {
1600            return process.stderr.write(r.format(...e) + "\n")
1601        }, t.formatArgs = function (n) {
1602            const {namespace:r,useColors:u} = this;
1603            if (u) {
1604                const t = this.color, u = "[3" + (t < 8 ? t : "8;5;" + t), o = `  ${u};1m${r} `;
1605                n[0] = o + n[0].split("\n").join("\n" + o), n.push(u + "m+" + e.exports.humanize(this.diff) + "")
1606            } else n[0] = function(){
1607                if (t.inspectOpts.hideDate) return "";
1608                return (new Date).toISOString() + " "
1609            }() + r + " " + n[0]
1610        }, t.save = function (e) {
1611                e ? process.env.DEBUG = e : delete process.env.DEBUG
1612        }, t.load = function () {
1613            return process.env.DEBUG
1614        }, t.useColors = function () {
1615            return "colors" in t.inspectOpts ? Boolean(t.inspectOpts.colors) : n.isatty(process.stderr.fd)
1616        }, t.destroy = r.deprecate((() => {
1617        }), "Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."), t.colors = [6, 2, 3, 4, 5, 1];
1618        try {
1619            const e = function(){
1620                if ($r) return jr;
1621                $r = 1;
1622                const e = E.default, t = A.default, n = Vr(), {env:r} = process;
1623                let u;
1624
1625                function o(e) {
1626                    return 0 !== e && { level: e, hasBasic: !0, has256: e >= 2, has16m: e >= 3 }
1627                }
1628
1629                function i(t, o) {
1630                    if (0 === u) return 0;
1631                    if (n("color=16m") || n("color=full") || n("color=truecolor")) return 3;
1632                    if (n("color=256")) return 2;
1633                    if (t && !o && void 0 === u) return 0;
1634                    const i = u || 0;
1635                    if ("dumb" === r.TERM) return i;
1636                    if ("win32" === process.platform) {
1637                        const t = e.release().split(".");
1638                        return Number(t[0]) >= 10 && Number(t[2]) >= 10586 ? Number(t[2]) >= 14931 ? 3 : 2 : 1
1639                    }
1640                    if ("CI" in r) return ["TRAVIS", "CIRCLECI", "APPVEYOR", "GITLAB_CI", "GITHUB_ACTIONS", "BUILDKITE"].some((e => e in r)) || "codeship" === r.CI_NAME ? 1 : i;
1641                    if ("TEAMCITY_VERSION" in r) return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(r.TEAMCITY_VERSION) ? 1 : 0;
1642                    if ("truecolor" === r.COLORTERM) return 3;
1643                    if ("TERM_PROGRAM" in r) {
1644                        const e = parseInt((r.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
1645                        switch (r.TERM_PROGRAM) {
1646                            case "iTerm.app":
1647                                return e >= 3 ? 3 : 2;
1648                            case "Apple_Terminal":
1649                                return 2
1650                        }
1651                    }
1652                    return /-256(color)?$/i.test(r.TERM) ? 2 : /^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(r.TERM) || "COLORTERM" in r ? 1 : i
1653                }
1654
1655                return n("no-color") || n("no-colors") || n("color=false") || n("color=never") ? u = 0 : (n("color") || n("colors") || n("color=true") || n("color=always")) && (u = 1), "FORCE_COLOR" in r && (u = "true" === r.FORCE_COLOR ? 1 : "false" === r.FORCE_COLOR ? 0 : 0 === r.FORCE_COLOR.length ? 1 : Math.min(parseInt(r.FORCE_COLOR, 10), 3)), jr = {
1656                    supportsColor: function (e) {
1657                        return o(i(e, e && e.isTTY))
1658                    },
1659                    stdout: o(i(!0, t.isatty(1))),
1660                    stderr: o(i(!0, t.isatty(2)))
1661                }
1662            }();
1663            e && (e.stderr || e).level >= 2 && (t.colors = [20, 21, 26, 27, 32, 33, 38, 39, 40, 41, 42, 43, 44, 45, 56, 57, 62, 63, 68, 69, 74, 75, 76, 77, 78, 79, 80, 81, 92, 93, 98, 99, 112, 113, 128, 129, 134, 135, 148, 149, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 178, 179, 184, 185, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 214, 215, 220, 221])
1664        } catch (e) {
1665        }
1666        t.inspectOpts = Object.keys(process.env).filter((e => /^debug_/i.test(e))).reduce(((e, t) => {
1667            const n = t.substring(6).toLowerCase().replace(/_([a-z])/g, ((e, t) => t.toUpperCase()));
1668            let r = process.env[t];
1669            return r = !!/^(yes|on|true|enabled)$/i.test(r) || !/^(no|off|false|disabled)$/i.test(r) && ("null" === r ? null : Number(r)), e[n] = r, e
1670        }), {}), e.exports = Rr()(t);
1671        const {formatters:u} = e.exports;
1672        u.o = function (e) {
1673            return this.inspectOpts.colors = this.useColors, r.inspect(e, this.inspectOpts).split("\n").map((e => e.trim())).join(" ")
1674        }, u.O = function (e) {
1675            return this.inspectOpts.colors = this.useColors, r.inspect(e, this.inspectOpts)
1676        }
1677    }(Gr, Gr.exports)), Gr.exports
1678}
1679
1680Jr = Nr, "undefined" == typeof process || "renderer" === process.type || !0 === process.browser || process.__nwjs ? Jr.exports = (Br || (Br = 1, function(e, t){
1681    t.formatArgs = function (t) {
1682        if (t[0] = (this.useColors ? "%c" : "") + this.namespace + (this.useColors ? " %c" : " ") + t[0] + (this.useColors ? "%c " : " ") + "+" + e.exports.humanize(this.diff),!this.useColors) return;
1683        const n = "color: " + this.color;
1684        t.splice(1, 0, n, "color: inherit");
1685        let r = 0, u = 0;
1686        t[0].replace(/%[a-zA-Z%]/g, (e => {
1687            "%%" !== e && (r++, "%c" === e && (u = r))
1688        })), t.splice(u, 0, n)
1689    }, t.save = function (e) {
1690        try {
1691                e ? t.storage.setItem("debug", e) : t.storage.removeItem("debug")
1692        } catch (e) {
1693        }
1694    }, t.load = function () {
1695        let e;
1696        try {
1697            e = t.storage.getItem("debug")
1698        } catch (e) {
1699        }
1700        return!e && "undefined" != typeof process && "env" in process && (e = process.env.DEBUG), e
1701    }, t.useColors = function () {
1702        return!("undefined" == typeof window || !window.process || "renderer" !== window.process.type && !window.process.__nwjs) || ("undefined" == typeof navigator || !navigator.userAgent || !navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) && ("undefined" != typeof document && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || "undefined" != typeof window && window.console && (window.console.firebug || window.console.exception && window.console.table) || "undefined" != typeof navigator && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31 || "undefined" != typeof navigator && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))
1703    }, t.storage = function(){
1704        try {
1705            return localStorage
1706        } catch (e) {
1707        }
1708    }(), t.destroy = (() => {
1709        let e = !1;
1710        return () => {
1711            e || (e = !0, console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))
1712        }
1713    })(), t.colors = ["#0000CC", "#0000FF", "#0033CC", "#0033FF", "#0066CC", "#0066FF", "#0099CC", "#0099FF", "#00CC00", "#00CC33", "#00CC66", "#00CC99", "#00CCCC", "#00CCFF", "#3300CC", "#3300FF", "#3333CC", "#3333FF", "#3366CC", "#3366FF", "#3399CC", "#3399FF", "#33CC00", "#33CC33", "#33CC66", "#33CC99", "#33CCCC", "#33CCFF", "#6600CC", "#6600FF", "#6633CC", "#6633FF", "#66CC00", "#66CC33", "#9900CC", "#9900FF", "#9933CC", "#9933FF", "#99CC00", "#99CC33", "#CC0000", "#CC0033", "#CC0066", "#CC0099", "#CC00CC", "#CC00FF", "#CC3300", "#CC3333", "#CC3366", "#CC3399", "#CC33CC", "#CC33FF", "#CC6600", "#CC6633", "#CC9900", "#CC9933", "#CCCC00", "#CCCC33", "#FF0000", "#FF0033", "#FF0066", "#FF0099", "#FF00CC", "#FF00FF", "#FF3300", "#FF3333", "#FF3366", "#FF3399", "#FF33CC", "#FF33FF", "#FF6600", "#FF6633", "#FF9900", "#FF9933", "#FFCC00", "#FFCC33"], t.log = console.debug || console.log || (() => {
1714    }), e.exports = Rr()(t);
1715    const {formatters:n} = e.exports;
1716    n.j = function (e) {
1717        try {
1718            return JSON.stringify(e)
1719        } catch (e) {
1720            return "[UnexpectedJSONParseError]: " + e.message
1721        }
1722    }
1723}(Ir, Ir.exports)), Ir.exports) : Jr.exports = Ur();
1724var Wr = function (e) {
1725    return (e = e || {}).circles ? function(e){
1726        var t = [], n = [];
1727        return e.proto ? function e(u) {
1728            if ("object" != typeof u || null === u) return u;
1729            if (u instanceof Date) return new Date(u);
1730            if (Array.isArray(u)) return r(u, e);
1731            if (u instanceof Map) return new Map(r(Array.from(u), e));
1732            if (u instanceof Set) return new Set(r(Array.from(u), e));
1733            var o = {};
1734            for (var i in t.push(u), n.push(o), u) {
1735                var s = u[i];
1736                if ("object" != typeof s || null === s) o[i] = s; else if (s instanceof Date) o[i] = new Date(s); else if (s instanceof Map) o[i] = new Map(r(Array.from(s), e)); else if (s instanceof Set) o[i] = new Set(r(Array.from(s), e)); else if (ArrayBuffer.isView(s)) o[i] = zr(s); else {
1737                    var c = t.indexOf(s);
1738                    o[i] = -1 !== c ? n[c] : e(s)
1739                }
1740            }
1741            return t.pop(), n.pop(), o
1742        } : function e(u) {
1743            if ("object" != typeof u || null === u) return u;
1744            if (u instanceof Date) return new Date(u);
1745            if (Array.isArray(u)) return r(u, e);
1746            if (u instanceof Map) return new Map(r(Array.from(u), e));
1747            if (u instanceof Set) return new Set(r(Array.from(u), e));
1748            var o = {};
1749            for (var i in t.push(u), n.push(o), u) if (!1 !== Object.hasOwnProperty.call(u, i)) {
1750                var s = u[i];
1751                if ("object" != typeof s || null === s) o[i] = s; else if (s instanceof Date) o[i] = new Date(s); else if (s instanceof Map) o[i] = new Map(r(Array.from(s), e)); else if (s instanceof Set) o[i] = new Set(r(Array.from(s), e)); else if (ArrayBuffer.isView(s)) o[i] = zr(s); else {
1752                    var c = t.indexOf(s);
1753                    o[i] = -1 !== c ? n[c] : e(s)
1754                }
1755            }
1756            return t.pop(), n.pop(), o
1757        };
1758
1759        function r(e, r) {
1760            for (var u = Object.keys(e), o = new Array(u.length), i = 0;i < u.length; i++) {
1761                var s = u[i], c = e[s];
1762                if ("object" != typeof c || null === c) o[s] = c; else if (c instanceof Date) o[s] = new Date(c); else if (ArrayBuffer.isView(c)) o[s] = zr(c); else {
1763                    var a = t.indexOf(c);
1764                    o[s] = -1 !== a ? n[a] : r(c)
1765                }
1766            }
1767            return o
1768        }
1769    }(e) : e.proto ? function e(n) {
1770        if ("object" != typeof n || null === n) return n;
1771        if (n instanceof Date) return new Date(n);
1772        if (Array.isArray(n)) return t(n, e);
1773        if (n instanceof Map) return new Map(t(Array.from(n), e));
1774        if (n instanceof Set) return new Set(t(Array.from(n), e));
1775        var r = {};
1776        for (var u in n) {
1777            var o = n[u];
1778                "object" != typeof o || null === o ? r[u] = o : o instanceof Date ? r[u] = new Date(o) : o instanceof Map ? r[u] = new Map(t(Array.from(o), e)) : o instanceof Set ? r[u] = new Set(t(Array.from(o), e)) : ArrayBuffer.isView(o) ? r[u] = zr(o) : r[u] = e(o)
1779        }
1780        return r
1781    } : n;
1782
1783    function t(e, t) {
1784        for (var n = Object.keys(e), r = new Array(n.length), u = 0;u < n.length; u++) {
1785            var o = n[u], i = e[o];
1786                "object" != typeof i || null === i ? r[o] = i : i instanceof Date ? r[o] = new Date(i) : ArrayBuffer.isView(i) ? r[o] = zr(i) : r[o] = t(i)
1787        }
1788        return r
1789    }
1790
1791    function n(e) {
1792        if ("object" != typeof e || null === e) return e;
1793        if (e instanceof Date) return new Date(e);
1794        if (Array.isArray(e)) return t(e, n);
1795        if (e instanceof Map) return new Map(t(Array.from(e), n));
1796        if (e instanceof Set) return new Set(t(Array.from(e), n));
1797        var r = {};
1798        for (var u in e) if (!1 !== Object.hasOwnProperty.call(e, u)) {
1799            var o = e[u];
1800                "object" != typeof o || null === o ? r[u] = o : o instanceof Date ? r[u] = new Date(o) : o instanceof Map ? r[u] = new Map(t(Array.from(o), n)) : o instanceof Set ? r[u] = new Set(t(Array.from(o), n)) : ArrayBuffer.isView(o) ? r[u] = zr(o) : r[u] = n(o)
1801        }
1802        return r
1803    }
1804};
1805
1806function zr(e) {
1807    return e instanceof Buffer ? Buffer.from(e) : new e.constructor(e.buffer.slice(), e.byteOffset, e.length)
1808}
1809
1810const Kr = F.default, qr = Nr.exports("log4js:configuration"), Yr = [], Xr = [], Zr = e =>!e,
1811    Qr = e => e && "object" == typeof e && !Array.isArray(e), eu = (e, t, n) => {
1812        (Array.isArray(t) ? t : [t]).forEach((t => {
1813            if (t) throw new Error(`Problem with log4js configuration: (${Kr.inspect(e, { depth: 5 })}) - ${n}`)
1814        }))
1815    };
1816var tu = {
1817    configure: e => {
1818        qr("New configuration to be validated: ", e), eu(e, Zr(Qr(e)), "must be an object."), qr(`Calling pre-processing listeners (${Yr.length})`), Yr.forEach((t => t(e))), qr("Configuration pre-processing finished."), qr(`Calling configuration listeners (${Xr.length})`), Xr.forEach((t => t(e))), qr("Configuration finished.")
1819    },
1820    addListener: e => {
1821        Xr.push(e), qr(`Added listener, now ${Xr.length} listeners`)
1822    },
1823    addPreProcessingListener: e => {
1824        Yr.push(e), qr(`Added pre-processing listener, now ${Yr.length} listeners`)
1825    },
1826    throwExceptionIf: eu,
1827    anObject: Qr,
1828    anInteger: e => e && "number" == typeof e && Number.isInteger(e),
1829    validIdentifier: e => /^[A-Za-z][A-Za-z0-9_]*$/g.test(e),
1830    not: Zr
1831}, nu = { exports: {} };
1832!function(e){
1833
1834    function t(e, t) {
1835        for (var n = e.toString();n.length < t; ) n = "0" + n;
1836        return n
1837    }
1838
1839    function n(e) {
1840        return t(e, 2)
1841    }
1842
1843    function r(r, u) {
1844        "string" != typeof r && (u = r, r = e.exports.ISO8601_FORMAT), u || (u = e.exports.now());
1845        var o = n(u.getDate()), i = n(u.getMonth() + 1), s = n(u.getFullYear()), c = n(s.substring(2, 4)),
1846            a = r.indexOf("yyyy") > -1 ? s : c, l = n(u.getHours()), f = n(u.getMinutes()), d = n(u.getSeconds()),
1847            D = t(u.getMilliseconds(), 3), p = function(e){
1848                var t = Math.abs(e), n = String(Math.floor(t / 60)), r = String(t % 60);
1849                return n = ("0" + n).slice(-2), r = ("0" + r).slice(-2), 0 === e ? "Z" : (e < 0 ? "+" : "-") + n + ":" + r
1850            }(u.getTimezoneOffset());
1851        return r.replace(/dd/g, o).replace(/MM/g, i).replace(/y{1,4}/g, a).replace(/hh/g, l).replace(/mm/g, f).replace(/ss/g, d).replace(/SSS/g, D).replace(/O/g, p)
1852    }
1853
1854    function u(e, t, n, r) {
1855        e["set" + (r ? "" : "UTC")+t](n)
1856    }
1857
1858    e.exports = r, e.exports.asString = r, e.exports.parse = function (t, n, r) {
1859        if (!t) throw new Error("pattern must be supplied");
1860        return function(t, n, r){
1861            var o = t.indexOf("O") < 0, i = !1, s = [{ pattern: /y{1,4}/, regexp: "\\d{1,4}", fn: function (e, t) {
1862                u(e, "FullYear", t, o)
1863            } }, { pattern: /MM/, regexp: "\\d{1,2}", fn: function (e, t) {
1864                u(e, "Month", t - 1, o), e.getMonth() !== t - 1 && (i = !0)
1865            } }, { pattern: /dd/, regexp: "\\d{1,2}", fn: function (e, t) {
1866                i && u(e, "Month", e.getMonth() - 1, o), u(e, "Date", t, o)
1867            } }, { pattern: /hh/, regexp: "\\d{1,2}", fn: function (e, t) {
1868                u(e, "Hours", t, o)
1869            } }, { pattern: /mm/, regexp: "\\d\\d", fn: function (e, t) {
1870                u(e, "Minutes", t, o)
1871            } }, { pattern: /ss/, regexp: "\\d\\d", fn: function (e, t) {
1872                u(e, "Seconds", t, o)
1873            } }, { pattern: /SSS/, regexp: "\\d\\d\\d", fn: function (e, t) {
1874                u(e, "Milliseconds", t, o)
1875            } }, { pattern: /O/, regexp: "[+-]\\d{1,2}:?\\d{2}?|Z", fn: function (e, t) {
1876                t = "Z" === t ? 0 : t.replace(":", "");
1877                var n = Math.abs(t), r = (t > 0 ? -1 : 1) * (n % 100 + 60 * Math.floor(n / 100));
1878                e.setUTCMinutes(e.getUTCMinutes() + r)
1879            } }], c = s.reduce((function (e, t) {
1880                return t.pattern.test(e.regexp) ? (t.index = e.regexp.match(t.pattern).index, e.regexp = e.regexp.replace(t.pattern, "(" + t.regexp + ")")) : t.index = -1, e
1881            }), { regexp: t, index: [] }), a = s.filter((function (e) {
1882                return e.index > -1
1883            }));
1884            a.sort((function (e, t) {
1885                return e.index - t.index
1886            }));
1887            var l = new RegExp(c.regexp).exec(n);
1888            if (l) {
1889                var f = r || e.exports.now();
1890                return a.forEach((function (e, t) {
1891                    e.fn(f, l[t+1])
1892                })), f
1893            }
1894            throw new Error("String '" + n + "' could not be parsed as '" + t + "'")
1895        }(t, n, r)
1896    }, e.exports.now = function () {
1897        return new Date
1898    }, e.exports.ISO8601_FORMAT = "yyyy-MM-ddThh:mm:ss.SSS", e.exports.ISO8601_WITH_TZ_OFFSET_FORMAT = "yyyy-MM-ddThh:mm:ss.SSSO", e.exports.DATETIME_FORMAT = "dd MM yyyy hh:mm:ss.SSS", e.exports.ABSOLUTETIME_FORMAT = "hh:mm:ss.SSS"
1899}(nu);
1900const ru = nu.exports, uu = E.default, ou = F.default, iu = p.default, su = {
1901    bold: [1, 22],
1902    italic: [3, 23],
1903    underline: [4, 24],
1904    inverse: [7, 27],
1905    white: [37, 39],
1906    grey: [90, 39],
1907    black: [90, 39],
1908    blue: [34, 39],
1909    cyan: [36, 39],
1910    green: [32, 39],
1911    magenta: [35, 39],
1912    red: [91, 39],
1913    yellow: [33, 39]
1914};
1915
1916function cu(e) {
1917    return e ? `[${su[e][0]}m` : ""
1918}
1919
1920function au(e) {
1921    return e ? `[${su[e][1]}m` : ""
1922}
1923
1924function lu(e, t) {
1925    return n = ou.format("[%s] [%s] %s - ", ru.asString(e.startTime), e.level.toString(), e.categoryName), cu(r = t) + n + au(r);
1926    var n, r
1927}
1928
1929function fu(e) {
1930    return lu(e) + ou.format(...e.data)
1931}
1932
1933function du(e) {
1934    return lu(e, e.level.colour) + ou.format(...e.data)
1935}
1936
1937function Du(e) {
1938    return ou.format(...e.data)
1939}
1940
1941function pu(e) {
1942    return e.data[0]
1943}
1944
1945function Eu(e, t) {
1946    const n = /%(-?[0-9]+)?(\.?-?[0-9]+)?([[\]cdhmnprzxXyflos%])(\{([^}]+)\})?|([^%]+)/;
1947
1948    function r(e) {
1949        return e && e.pid ? e.pid.toString() : process.pid.toString()
1950    }
1951
1952    e = e || "%r %p %c - %m%n";
1953    const u = {
1954        c: function (e, t) {
1955            let n = e.categoryName;
1956            if (t) {
1957                const e = parseInt(t, 10), r = n.split(".");
1958                e < r.length && (n = r.slice(r.length - e).join("."))
1959            }
1960            return n
1961        },
1962        d: function (e, t) {
1963            let n = ru.ISO8601_FORMAT;
1964            return t && (n = t, "ISO8601" === n ? n = ru.ISO8601_FORMAT : "ISO8601_WITH_TZ_OFFSET" === n ? n = ru.ISO8601_WITH_TZ_OFFSET_FORMAT : "ABSOLUTE" === n ? n = ru.ABSOLUTETIME_FORMAT : "DATE" === n && (n = ru.DATETIME_FORMAT)), ru.asString(n, e.startTime)
1965        },
1966        h: function () {
1967            return uu.hostname().toString()
1968        },
1969        m: function (e) {
1970            return ou.format(...e.data)
1971        },
1972        n: function () {
1973            return uu.EOL
1974        },
1975        p: function (e) {
1976            return e.level.toString()
1977        },
1978        r: function (e) {
1979            return ru.asString("hh:mm:ss", e.startTime)
1980        },
1981        "[": function (e) {
1982            return cu(e.level.colour)
1983        },
1984        "]": function (e) {
1985            return au(e.level.colour)
1986        },
1987        y: function () {
1988            return r()
1989        },
1990        z: r,
1991        "%": function () {
1992            return "%"
1993        },
1994        x: function (e, n) {
1995            return void 0 !== t[n] ? "function" == typeof t[n] ? t[n](e) : t[n] : null
1996        },
1997        X: function (e, t) {
1998            const n = e.context[t];
1999            return void 0 !== n ? "function" == typeof n ? n(e) : n : null
2000        },
2001        f: function (e, t) {
2002            let n = e.fileName || "";
2003            if (t) {
2004                const e = parseInt(t, 10), r = n.split(iu.sep);
2005                r.length > e && (n = r.slice(-e).join(iu.sep))
2006            }
2007            return n
2008        },
2009        l: function (e) {
2010            return e.lineNumber ? `${e.lineNumber}` : ""
2011        },
2012        o: function (e) {
2013            return e.columnNumber ? `${e.columnNumber}` : ""
2014        },
2015        s: function (e) {
2016            return e.callStack || ""
2017        }
2018    };
2019
2020    function o(e, t, n) {
2021        return u[e](t, n)
2022    }
2023
2024    function i(e, t, n) {
2025        let r = e;
2026        return r = function(e, t){
2027            let n;
2028            return e ? (n = parseInt(e.substr(1), 10), n > 0 ? t.slice(0, n) : t.slice(n)) : t
2029        }(t, r), r = function(e, t){
2030            let n;
2031            if (e) if ("-" === e.charAt(0)) for (n = parseInt(e.substr(1), 10); t.length < n; ) t += " "; else for (n = parseInt(e, 10); t.length < n; ) t = ` ${t}`;
2032            return t
2033        }(n, r), r
2034    }
2035
2036    return function (t) {
2037        let r, u = "", s = e;
2038        for (; null !== (r = n.exec(s)); ) {
2039            const e = r[1], n = r[2], c = r[3], a = r[5], l = r[6];
2040            if (l) u += l.toString(); else {
2041                u += i(o(c, t, a), n, e)
2042            }
2043            s = s.substr(r.index + r[0].length)
2044        }
2045        return u
2046    }
2047}
2048
2049const mu = {
2050    messagePassThrough: () => Du,
2051    basic: () => fu,
2052    colored: () => du,
2053    coloured: () => du,
2054    pattern: e => Eu(e && e.pattern, e && e.tokens),
2055    dummy: () => pu
2056};
2057var hu = {
2058    basicLayout: fu,
2059    messagePassThroughLayout: Du,
2060    patternLayout: Eu,
2061    colouredLayout: du,
2062    coloredLayout: du,
2063    dummyLayout: pu,
2064    addLayout(e, t) {
2065        mu[e] = t
2066    },
2067    layout: (e, t) => mu[e] && mu[e](t)
2068};
2069const yu = tu, Cu = ["white", "grey", "black", "blue", "cyan", "green", "magenta", "red", "yellow"];
2070
2071class Fu {
2072    constructor(e, t, n) {
2073        this.level = e, this.levelStr = t, this.colour = n
2074    }
2075
2076    toString() {
2077        return this.levelStr
2078    }
2079
2080    static getLevel(e, t) {
2081        return e ? e instanceof Fu ? e : (e instanceof Object && e.levelStr && (e = e.levelStr), Fu[e.toString().toUpperCase()] || t) : t
2082    }
2083
2084    static addLevels(e) {
2085        if (e) {
2086            Object.keys(e).forEach((t => {
2087                const n = t.toUpperCase();
2088                Fu[n] = new Fu(e[t].value, n, e[t].colour);
2089                const r = Fu.levels.findIndex((e => e.levelStr === n));
2090                    r > -1 ? Fu.levels[r] = Fu[n] : Fu.levels.push(Fu[n])
2091            })), Fu.levels.sort(((e, t) => e.level - t.level))
2092        }
2093    }
2094
2095    isLessThanOrEqualTo(e) {
2096        return "string" == typeof e && (e = Fu.getLevel(e)), this.level <= e.level
2097    }
2098
2099    isGreaterThanOrEqualTo(e) {
2100        return "string" == typeof e && (e = Fu.getLevel(e)), this.level >= e.level
2101    }
2102
2103    isEqualTo(e) {
2104        return "string" == typeof e && (e = Fu.getLevel(e)), this.level === e.level
2105    }
2106}
2107
2108Fu.levels = [], Fu.addLevels({
2109    ALL: { value: Number.MIN_VALUE, colour: "grey" },
2110    TRACE: { value: 5e3, colour: "blue" },
2111    DEBUG: { value: 1e4, colour: "cyan" },
2112    INFO: { value: 2e4, colour: "green" },
2113    WARN: { value: 3e4, colour: "yellow" },
2114    ERROR: { value: 4e4, colour: "red" },
2115    FATAL: { value: 5e4, colour: "magenta" },
2116    MARK: { value: 9007199254740992, colour: "grey" },
2117    OFF: { value: Number.MAX_VALUE, colour: "grey" }
2118}), yu.addListener((e => {
2119    const t = e.levels;
2120    if (t) {
2121        yu.throwExceptionIf(e, yu.not(yu.anObject(t)), "levels must be an object");
2122        Object.keys(t).forEach((n => {
2123            yu.throwExceptionIf(e, yu.not(yu.validIdentifier(n)), `level name "${n}" is not a valid identifier (must start with a letter, only contain A-Z,a-z,0-9,_)`), yu.throwExceptionIf(e, yu.not(yu.anObject(t[n])), `level "${n}" must be an object`), yu.throwExceptionIf(e, yu.not(t[n].value), `level "${n}" must have a 'value' property`), yu.throwExceptionIf(e, yu.not(yu.anInteger(t[n].value)), `level "${n}".value must have an integer value`), yu.throwExceptionIf(e, yu.not(t[n].colour), `level "${n}" must have a 'colour' property`), yu.throwExceptionIf(e, yu.not(Cu.indexOf(t[n].colour) > -1), `level "${n}".colour must be one of ${Cu.join(", ")}`)
2124        }))
2125    }
2126})), yu.addListener((e => {
2127    Fu.addLevels(e.levels)
2128}));
2129var gu = Fu, Au = { exports: {} }, vu = {}; /*! (c) 2020 Andrea Giammarchi */
2130const {parse:Su,stringify:wu} = JSON, {keys:Ou} = Object, bu = String, _u = "string", Bu = {}, Pu = "object",
2131    ku = (e, t) => t, xu = e => e instanceof bu ? bu(e) : e, Nu = (e, t) => typeof t === _u ? new bu(t) : t,
2132    Iu = (e, t, n, r) => {
2133        const u = [];
2134        for (let o = Ou(n), {length:i} = o, s = 0;s < i; s++) {
2135            const i = o[s], c = n[i];
2136            if (c instanceof bu) {
2137                const o = e[c];
2138                    typeof o !== Pu || t.has(o) ? n[i] = r.call(n, i, o) : (t.add(o), n[i] = Bu, u.push({
2139                    k: i,
2140                    a: [e, t, o, r]
2141                }))
2142            } else n[i] !== Bu && (n[i] = r.call(n, i, c))
2143        }
2144        for (let {length:e} = u, t = 0;t < e; t++) {
2145            const {k:e,a:o} = u[t];
2146            n[e] = r.call(n, e, Iu.apply(null, o))
2147        }
2148        return n
2149    }, Tu = (e, t, n) => {
2150        const r = bu(t.push(n) - 1);
2151        return e.set(n, r), r
2152    }, Ru = (e, t) => {
2153        const n = Su(e, Nu).map(xu), r = n[0], u = t || ku, o = typeof r === Pu && r ? Iu(n, new Set, r, u) : r;
2154        return u.call({ "": o }, "", o)
2155    };
2156vu.parse = Ru;
2157const Mu = (e, t, n) => {
2158    const r = t && typeof t === Pu ? (e, n) => "" === e || -1 < t.indexOf(e) ? n : void 0 : t || ku, u = new Map,
2159        o = [], i = [];
2160    let s = +Tu(u, o, r.call({ "": e }, "", e)), c = !s;
2161    for (; s < o.length; ) c = !0, i[s] = wu(o[s++], a, n);
2162    return "[" + i.join(",") + "]";
2163
2164    function a(e, t) {
2165        if (c) return c = !c, t;
2166        const n = r.call(this, e, t);
2167        switch (typeof n) {
2168            case Pu:
2169                if (null === n) return n;
2170            case _u:
2171                return u.get(n) || Tu(u, o, n)
2172        }
2173        return n
2174    }
2175};
2176vu.stringify = Mu;
2177vu.toJSON = e => Su(Mu(e));
2178vu.fromJSON = e => Ru(wu(e));
2179const Lu = vu, ju = gu;
2180
2181class $u {
2182    constructor(e, t, n, r, u) {
2183        this.startTime = new Date, this.categoryName = e, this.data = n, this.level = t, this.context = Object.assign({
2184        }, r), this.pid = process.pid, u && (this.functionName = u.functionName, this.fileName = u.fileName, this.lineNumber = u.lineNumber, this.columnNumber = u.columnNumber, this.callStack = u.callStack)
2185    }
2186
2187    serialise() {
2188        const e = this.data.map((e => (e && e.message && e.stack && (e = Object.assign({
2189            message: e.message,
2190            stack: e.stack
2191        }, e)), e)));
2192        return this.data = e, Lu.stringify(this)
2193    }
2194
2195    static deserialise(e) {
2196        let t;
2197        try {
2198            const n = Lu.parse(e);
2199            n.data = n.data.map((e => {
2200                if (e && e.message && e.stack) {
2201                    const t = new Error(e);
2202                    Object.keys(e).forEach((n => {
2203                        t[n] = e[n]
2204                    })), e = t
2205                }
2206                return e
2207            })), t = new $u(n.categoryName, ju.getLevel(n.level.levelStr), n.data, n.context), t.startTime = new Date(n.startTime), t.pid = n.pid, t.cluster = n.cluster
2208        } catch (n) {
2209            t = new $u("log4js", ju.ERROR, ["Unable to parse log:", e, "because: ", n])
2210        }
2211        return t
2212    }
2213}
2214
2215var Hu = $u;
2216const Ju = Nr.exports("log4js:clustering"), Gu = Hu, Vu = tu;
2217let Uu = !1, Wu = null;
2218try {
2219    Wu = require("cluster")
2220} catch (e) {
2221    Ju("cluster module not present"), Uu = !0
2222}
2223const zu = [];
2224let Ku = !1, qu = "NODE_APP_INSTANCE";
2225const Yu = () => Ku && "0" === process.env[qu], Xu = () => Uu || Wu.isMaster || Yu(), Zu = e => {
2226    zu.forEach((t => t(e)))
2227}, Qu = (e, t) => {
2228    if (Ju("cluster message received from worker ", e, ": ", t), e.topic && e.data && (t = e, e = void 0), t && t.topic && "log4js:message" === t.topic) {
2229        Ju("received message: ", t.data);
2230        const e = Gu.deserialise(t.data);
2231        Zu(e)
2232    }
2233};
2234Uu || Vu.addListener((e => {
2235    zu.length = 0, ({
2236        pm2: Ku,
2237        disableClustering: Uu,
2238        pm2InstanceVar: qu = "NODE_APP_INSTANCE"
2239    } = e), Ju(`clustering disabled ? ${Uu}`), Ju(`cluster.isMaster ? ${Wu && Wu.isMaster}`), Ju(`pm2 enabled ? ${Ku}`), Ju(`pm2InstanceVar = ${qu}`), Ju(`process.env[${qu}] = ${process.env[qu]}`), Ku && process.removeListener("message", Qu), Wu && Wu.removeListener && Wu.removeListener("message", Qu), Uu || e.disableClustering ? Ju("Not listening for cluster messages, because clustering disabled.") : Yu() ? (Ju("listening for PM2 broadcast messages"), process.on("message", Qu)) : Wu.isMaster ? (Ju("listening for cluster messages"), Wu.on("message", Qu)) : Ju("not listening for messages, because we are not a master process")
2240}));
2241var eo = { onlyOnMaster: (e, t) => Xu() ? e() : t, isMaster: Xu, send: e => {
2242    Xu() ? Zu(e) : (Ku || (e.cluster = { workerId: Wu.worker.id, worker: process.pid }), process.send({
2243        topic: "log4js:message",
2244        data: e.serialise()
2245    }))
2246}, onMessage: e => {
2247    zu.push(e)
2248} }, to = {};
2249
2250function no(e) {
2251    if ("number" == typeof e && Number.isInteger(e)) return e;
2252    const t = { K: 1024, M: 1048576, G: 1073741824 }, n = Object.keys(t),
2253        r = e.substr(e.length - 1).toLocaleUpperCase(), u = e.substring(0, e.length - 1).trim();
2254    if (n.indexOf(r) < 0 || !Number.isInteger(Number(u))) throw Error(`maxLogSize: "${e}" is invalid`);
2255    return u * t[r]
2256}
2257
2258function ro(e) {
2259    return function(e, t){
2260        const n = Object.assign({}, t);
2261        return Object.keys(e).forEach((r => {
2262            n[r] && (n[r] = e[r](t[r]))
2263        })), n
2264    }({ maxLogSize: no }, e)
2265}
2266
2267const uo = { file: ro, fileSync: ro };
2268to.modifyConfig = e => uo[e.type] ? uo[e.type](e) : e;
2269var oo = {};
2270const io = console.log.bind(console);
2271oo.configure = function (e, t) {
2272    let n = t.colouredLayout;
2273    return e.layout && (n = t.layout(e.layout.type, e.layout)), function(e, t){
2274        return n => {
2275            io(e(n, t))
2276        }
2277    }(n, e.timezoneOffset)
2278};
2279var so = {};
2280so.configure = function (e, t) {
2281    let n = t.colouredLayout;
2282    return e.layout && (n = t.layout(e.layout.type, e.layout)), function(e, t){
2283        return n => {
2284            process.stdout.write(`${e(n, t)}\n`)
2285        }
2286    }(n, e.timezoneOffset)
2287};
2288var co = {};
2289co.configure = function (e, t) {
2290    let n = t.colouredLayout;
2291    return e.layout && (n = t.layout(e.layout.type, e.layout)), function(e, t){
2292        return n => {
2293            process.stderr.write(`${e(n, t)}\n`)
2294        }
2295    }(n, e.timezoneOffset)
2296};
2297var ao = {};
2298ao.configure = function (e, t, n, r) {
2299    const u = n(e.appender);
2300    return function(e, t, n, r){
2301        const u = r.getLevel(e), o = r.getLevel(t, r.FATAL);
2302        return e => {
2303            const t = e.level;
2304            t.isGreaterThanOrEqualTo(u) && t.isLessThanOrEqualTo(o) && n(e)
2305        }
2306    }(e.level, e.maxLevel, u, r)
2307};
2308var lo = {};
2309const fo = Nr.exports("log4js:categoryFilter");
2310lo.configure = function (e, t, n) {
2311    const r = n(e.appender);
2312    return function(e, t){
2313        return "string" == typeof e && (e = [e]), n => {
2314            fo(`Checking ${n.categoryName} against ${e}`), -1 === e.indexOf(n.categoryName) && (fo("Not excluded, sending to appender"), t(n))
2315        }
2316    }(e.exclude, r)
2317};
2318var Do = {};
2319const po = Nr.exports("log4js:noLogFilter");
2320Do.configure = function (e, t, n) {
2321    const r = n(e.appender);
2322    return function(e, t){
2323        return n => {
2324            po(`Checking data: ${n.data} against filters: ${e}`), "string" == typeof e && (e = [e]), e = e.filter((e => null != e && "" !== e));
2325            const r = new RegExp(e.join("|"), "i");
2326            (0 === e.length || n.data.findIndex((e => r.test(e))) < 0) && (po("Not excluded, sending to appender"), t(n))
2327        }
2328    }(e.exclude, r)
2329};
2330var Eo = {}, mo = { exports: {} }, ho = {}, yo = { fromCallback: function (e) {
2331    return Object.defineProperty((function () {
2332        if ("function" != typeof arguments[arguments.length-1]) return new Promise(((t, n) => {
2333            arguments[arguments.length] = (e, r) => {
2334                if (e) return n(e);
2335                t(r)
2336            }, arguments.length++, e.apply(this, arguments)
2337        }));
2338        e.apply(this, arguments)
2339    }), "name", { value: e.name })
2340}, fromPromise: function (e) {
2341    return Object.defineProperty((function () {
2342        const t = arguments[arguments.length-1];
2343        if ("function" != typeof t) return e.apply(this, arguments);
2344        e.apply(this, arguments).then((e => t(null, e)), t)
2345    }), "name", { value: e.name })
2346} };
2347!function(e){
2348    const t = yo.fromCallback, n = we,
2349        r = ["access", "appendFile", "chmod", "chown", "close", "copyFile", "fchmod", "fchown", "fdatasync", "fstat", "fsync", "ftruncate", "futimes", "lchown", "lchmod", "link", "lstat", "mkdir", "mkdtemp", "open", "readFile", "readdir", "readlink", "realpath", "rename", "rmdir", "stat", "symlink", "truncate", "unlink", "utimes", "writeFile"].filter((e => "function" == typeof n[e]));
2350    Object.keys(n).forEach((t => {
2351        "promises" !== t && (e[t] = n[t])
2352    })), r.forEach((r => {
2353        e[r] = t(n[r])
2354    })), e.exists = function (e, t) {
2355        return "function" == typeof t ? n.exists(e, t) : new Promise((t => n.exists(e, t)))
2356    }, e.read = function (e, t, r, u, o, i) {
2357        return "function" == typeof i ? n.read(e, t, r, u, o, i) : new Promise(((i, s) => {
2358            n.read(e, t, r, u, o, ((e, t, n) => {
2359                if (e) return s(e);
2360                i({ bytesRead: t, buffer: n })
2361            }))
2362        }))
2363    }, e.write = function (e, t, ...r) {
2364        return "function" == typeof r[r.length-1] ? n.write(e, t, ...r) : new Promise(((u, o) => {
2365            n.write(e, t, ...r, ((e, t, n) => {
2366                if (e) return o(e);
2367                u({ bytesWritten: t, buffer: n })
2368            }))
2369        }))
2370    }, "function" == typeof n.realpath.native && (e.realpath.native = t(n.realpath.native))
2371}(ho);
2372const Co = p.default;
2373
2374function Fo(e) {
2375    return (e = Co.normalize(Co.resolve(e)).split(Co.sep)).length > 0 ? e[0] : null
2376}
2377
2378const go = /[<>:"|?*]/;
2379var Ao = function (e) {
2380    const t = Fo(e);
2381    return e = e.replace(t, ""), go.test(e)
2382};
2383const vo = we, So = p.default, wo = Ao, Oo = parseInt("0777", 8);
2384var bo = function e(t, n, r, u) {
2385    if ("function" == typeof n ? (r = n, n = {}) : n && "object" == typeof n || (n = {
2386        mode: n
2387    }), "win32" === process.platform && wo(t)) {
2388        const e = new Error(t + " contains invalid WIN32 path characters.");
2389        return e.code = "EINVAL", r(e)
2390    }
2391    let o = n.mode;
2392    const i = n.fs || vo;
2393    void 0 === o && (o = Oo & ~process.umask()), u || (u = null), r = r || function () {
2394    }, t = So.resolve(t), i.mkdir(t, o, (o => {
2395        if (!o) return r(null, u = u || t);
2396        if ("ENOENT" === o.code) {
2397            if (So.dirname(t) === t) return r(o);
2398            e(So.dirname(t), n, ((u, o) => {
2399                    u ? r(u, o) : e(t, n, r, o)
2400            }))
2401        } else i.stat(t, ((e, t) => {
2402                e || !t.isDirectory() ? r(o, u) : r(null, u)
2403        }))
2404    }))
2405};
2406const _o = we, Bo = p.default, Po = Ao, ko = parseInt("0777", 8);
2407var xo = function e(t, n, r) {
2408    n && "object" == typeof n || (n = { mode: n });
2409    let u = n.mode;
2410    const o = n.fs || _o;
2411    if ("win32" === process.platform && Po(t)) {
2412        const e = new Error(t + " contains invalid WIN32 path characters.");
2413        throw e.code = "EINVAL", e
2414    }
2415    void 0 === u && (u = ko & ~process.umask()), r || (r = null), t = Bo.resolve(t);
2416    try {
2417        o.mkdirSync(t, u), r = r || t
2418    } catch (u) {
2419        if ("ENOENT" === u.code) {
2420            if (Bo.dirname(t) === t) throw u;
2421            r = e(Bo.dirname(t), n, r), e(t, n, r)
2422        } else {
2423            let e;
2424            try {
2425                e = o.statSync(t)
2426            } catch (e) {
2427                throw u
2428            }
2429            if (!e.isDirectory()) throw u
2430        }
2431    }
2432    return r
2433};
2434const No = (0, yo.fromCallback)(bo);
2435var Io = {
2436    mkdirs: No,
2437    mkdirsSync: xo,
2438    mkdirp: No,
2439    mkdirpSync: xo,
2440    ensureDir: No,
2441    ensureDirSync: xo
2442};
2443const To = we;
2444E.default, p.default;
2445var Ro = function (e, t, n, r) {
2446    To.open(e, "r+", ((e, u) => {
2447        if (e) return r(e);
2448        To.futimes(u, t, n, (e => {
2449            To.close(u, (t => {
2450                r && r(e || t)
2451            }))
2452        }))
2453    }))
2454}, Mo = function (e, t, n) {
2455    const r = To.openSync(e, "r+");
2456    return To.futimesSync(r, t, n), To.closeSync(r)
2457};
2458const Lo = we, jo = p.default, $o = 10, Ho = 5, Jo = 0, Go = process.versions.node.split("."),
2459    Vo = Number.parseInt(Go[0], 10), Uo = Number.parseInt(Go[1], 10), Wo = Number.parseInt(Go[2], 10);
2460
2461function zo() {
2462    if (Vo > $o) return !0;
2463    if (Vo === $o) {
2464        if (Uo > Ho) return !0;
2465        if (Uo === Ho && Wo >= Jo) return !0
2466    }
2467    return !1
2468}
2469
2470function Ko(e, t) {
2471    const n = jo.resolve(e).split(jo.sep).filter((e => e)), r = jo.resolve(t).split(jo.sep).filter((e => e));
2472    return n.reduce(((e, t, n) => e && r[n] === t),!0)
2473}
2474
2475function qo(e, t, n) {
2476    return `Cannot ${n} '${e}' to a subdirectory of itself, '${t}'.`
2477}
2478
2479var Yo, Xo, Zo = {
2480    checkPaths: function (e, t, n, r) {
2481        !function(e, t, n){
2482            zo() ? Lo.stat(e, { bigint: !0 }, ((e, r) => {
2483                if (e) return n(e);
2484                Lo.stat(t, { bigint: !0 }, ((e, t) => e ? "ENOENT" === e.code ? n(null, {
2485                    srcStat: r,
2486                    destStat: null
2487                }) : n(e) : n(null, { srcStat: r, destStat: t })))
2488            })) : Lo.stat(e, ((e, r) => {
2489                if (e) return n(e);
2490                Lo.stat(t, ((e, t) => e ? "ENOENT" === e.code ? n(null, {
2491                    srcStat: r,
2492                    destStat: null
2493                }) : n(e) : n(null, { srcStat: r, destStat: t })))
2494            }))
2495        }(e, t, ((u, o) => {
2496            if (u) return r(u);
2497            const {srcStat:i,destStat:s} = o;
2498            return s && s.ino && s.dev && s.ino === i.ino && s.dev === i.dev ? r(new Error("Source and destination must not be the same.")) : i.isDirectory() && Ko(e, t) ? r(new Error(qo(e, t, n))) : r(null, {
2499                srcStat: i,
2500                destStat: s
2501            })
2502        }))
2503    },
2504    checkPathsSync: function (e, t, n) {
2505        const {srcStat:r,destStat:u} = function(e, t){
2506            let n, r;
2507            n = zo() ? Lo.statSync(e, { bigint: !0 }) : Lo.statSync(e);
2508            try {
2509                r = zo() ? Lo.statSync(t, { bigint: !0 }) : Lo.statSync(t)
2510            } catch (e) {
2511                if ("ENOENT" === e.code) return { srcStat: n, destStat: null };
2512                throw e
2513            }
2514            return { srcStat: n, destStat: r }
2515        }(e, t);
2516        if (u && u.ino && u.dev && u.ino === r.ino && u.dev === r.dev) throw new Error("Source and destination must not be the same.");
2517        if (r.isDirectory() && Ko(e, t)) throw new Error(qo(e, t, n));
2518        return { srcStat: r, destStat: u }
2519    },
2520    checkParentPaths: function e(t, n, r, u, o) {
2521        const i = jo.resolve(jo.dirname(t)), s = jo.resolve(jo.dirname(r));
2522        if (s === i || s === jo.parse(s).root) return o();
2523        zo() ? Lo.stat(s, {
2524            bigint: !0
2525        }, ((i, c) => i ? "ENOENT" === i.code ? o() : o(i) : c.ino && c.dev && c.ino === n.ino && c.dev === n.dev ? o(new Error(qo(t, r, u))) : e(t, n, s, u, o))) : Lo.stat(s, ((i, c) => i ? "ENOENT" === i.code ? o() : o(i) : c.ino && c.dev && c.ino === n.ino && c.dev === n.dev ? o(new Error(qo(t, r, u))) : e(t, n, s, u, o)))
2526    },
2527    checkParentPathsSync: function e(t, n, r, u) {
2528        const o = jo.resolve(jo.dirname(t)), i = jo.resolve(jo.dirname(r));
2529        if (i === o || i === jo.parse(i).root) return;
2530        let s;
2531        try {
2532            s = zo() ? Lo.statSync(i, { bigint: !0 }) : Lo.statSync(i)
2533        } catch (e) {
2534            if ("ENOENT" === e.code) return;
2535            throw e
2536        }
2537        if (s.ino && s.dev && s.ino === n.ino && s.dev === n.dev) throw new Error(qo(t, r, u));
2538        return e(t, n, i, u)
2539    },
2540    isSrcSubdir: Ko
2541};
2542const Qo = we, ei = p.default, ti = Io.mkdirsSync, ni = Mo, ri = Zo;
2543
2544function ui(e, t, n, r) {
2545    if (!r.filter || r.filter(t, n)) return function(e, t, n, r){
2546        const u = r.dereference ? Qo.statSync : Qo.lstatSync, o = u(t);
2547        if (o.isDirectory()) return function(e, t, n, r, u){
2548            if (!t) return function(e, t, n, r){
2549                return Qo.mkdirSync(n), ii(t, n, r), Qo.chmodSync(n, e.mode)
2550            }(e, n, r, u);
2551            if (t && !t.isDirectory()) throw new Error(`Cannot overwrite non-directory '${r}' with directory '${n}'.`);
2552            return ii(n, r, u)
2553        }(o, e, t, n, r);
2554        if (o.isFile() || o.isCharacterDevice() || o.isBlockDevice()) return function(e, t, n, r, u){
2555            return t ? function(e, t, n, r){
2556                if (r.overwrite) return Qo.unlinkSync(n), oi(e, t, n, r);
2557                if (r.errorOnExist) throw new Error(`'${n}' already exists`)
2558            }(e, n, r, u) : oi(e, n, r, u)
2559        }(o, e, t, n, r);
2560        if (o.isSymbolicLink()) return function(e, t, n, r){
2561            let u = Qo.readlinkSync(t);
2562            r.dereference && (u = ei.resolve(process.cwd(), u));
2563            if (e) {
2564                let e;
2565                try {
2566                    e = Qo.readlinkSync(n)
2567                } catch (e) {
2568                    if ("EINVAL" === e.code || "UNKNOWN" === e.code) return Qo.symlinkSync(u, n);
2569                    throw e
2570                }
2571                if (r.dereference && (e = ei.resolve(process.cwd(), e)), ri.isSrcSubdir(u, e)) throw new Error(`Cannot copy '${u}' to a subdirectory of itself, '${e}'.`);
2572                if (Qo.statSync(n).isDirectory() && ri.isSrcSubdir(e, u)) throw new Error(`Cannot overwrite '${e}' with '${u}'.`);
2573                return function(e, t){
2574                    return Qo.unlinkSync(t), Qo.symlinkSync(e, t)
2575                }(u, n)
2576            }
2577            return Qo.symlinkSync(u, n)
2578        }(e, t, n, r)
2579    }(e, t, n, r)
2580}
2581
2582function oi(e, t, n, r) {
2583    return "function" == typeof Qo.copyFileSync ? (Qo.copyFileSync(t, n), Qo.chmodSync(n, e.mode), r.preserveTimestamps ? ni(n, e.atime, e.mtime) : void 0) : function(e, t, n, r){
2584        const u = 65536, o = (Xo ? Yo : (Xo = 1, Yo = function (e) {
2585            if ("function" == typeof Buffer.allocUnsafe) try {
2586                return Buffer.allocUnsafe(e)
2587            } catch (t) {
2588                return new Buffer(e)
2589            }
2590            return new Buffer(e)
2591        }))(u), i = Qo.openSync(t, "r"), s = Qo.openSync(n, "w", e.mode);
2592        let c = 0;
2593        for (; c < e.size; ) {
2594            const e = Qo.readSync(i, o, 0, u, c);
2595            Qo.writeSync(s, o, 0, e), c += e
2596        }
2597        r.preserveTimestamps && Qo.futimesSync(s, e.atime, e.mtime);
2598        Qo.closeSync(i), Qo.closeSync(s)
2599    }(e, t, n, r)
2600}
2601
2602function ii(e, t, n) {
2603    Qo.readdirSync(e).forEach((r => function(e, t, n, r){
2604        const u = ei.join(t, e), o = ei.join(n, e), {destStat:i} = ri.checkPathsSync(u, o, "copy");
2605        return ui(i, u, o, r)
2606    }(r, e, t, n)))
2607}
2608
2609var si = function (e, t, n) {
2610    "function" == typeof n && (n = { filter: n }), (n = n || {
2611    }).clobber = !("clobber" in n) || !!n.clobber, n.overwrite = "overwrite" in n ? !!n.overwrite : n.clobber, n.preserveTimestamps && "ia32" === process.arch && console.warn("fs-extra: Using the preserveTimestamps option in 32-bit node is not recommended;\n\n    see https://github.com/jprichardson/node-fs-extra/issues/269");
2612    const {srcStat:r,destStat:u} = ri.checkPathsSync(e, t, "copy");
2613    return ri.checkParentPathsSync(e, r, t, "copy"), function(e, t, n, r){
2614        if (r.filter && !r.filter(t, n)) return;
2615        const u = ei.dirname(n);
2616        Qo.existsSync(u) || ti(u);
2617        return ui(e, t, n, r)
2618    }(u, e, t, n)
2619}, ci = { copySync: si };
2620const ai = yo.fromPromise, li = ho;
2621var fi = { pathExists: ai((function (e) {
2622    return li.access(e).then((() =>!0)).catch((() =>!1))
2623})), pathExistsSync: li.existsSync };
2624const di = we, Di = p.default, pi = Io.mkdirs, Ei = fi.pathExists, mi = Ro, hi = Zo;
2625
2626function yi(e, t, n, r, u) {
2627    const o = Di.dirname(n);
2628    Ei(o, ((i, s) => i ? u(i) : s ? Fi(e, t, n, r, u) : void pi(o, (o => o ? u(o) : Fi(e, t, n, r, u)))))
2629}
2630
2631function Ci(e, t, n, r, u, o) {
2632    Promise.resolve(u.filter(n, r)).then((i => i ? e(t, n, r, u, o) : o()), (e => o(e)))
2633}
2634
2635function Fi(e, t, n, r, u) {
2636    return r.filter ? Ci(gi, e, t, n, r, u) : gi(e, t, n, r, u)
2637}
2638
2639function gi(e, t, n, r, u) {
2640    (r.dereference ? di.stat : di.lstat)(t, ((o, i) => o ? u(o) : i.isDirectory() ? function(e, t, n, r, u, o){
2641        if (!t) return function(e, t, n, r, u){
2642            di.mkdir(n, (o => {
2643                if (o) return u(o);
2644                Si(t, n, r, (t => t ? u(t) : di.chmod(n, e.mode, u)))
2645            }))
2646        }(e, n, r, u, o);
2647        if (t && !t.isDirectory()) return o(new Error(`Cannot overwrite non-directory '${r}' with directory '${n}'.`));
2648        return Si(n, r, u, o)
2649    }(i, e, t, n, r, u) : i.isFile() || i.isCharacterDevice() || i.isBlockDevice() ? function(e, t, n, r, u, o){
2650        return t ? function(e, t, n, r, u){
2651            if (!r.overwrite) return r.errorOnExist ? u(new Error(`'${n}' already exists`)) : u();
2652            di.unlink(n, (o => o ? u(o) : Ai(e, t, n, r, u)))
2653        }(e, n, r, u, o) : Ai(e, n, r, u, o)
2654    }(i, e, t, n, r, u) : i.isSymbolicLink() ? function(e, t, n, r, u){
2655        di.readlink(t, ((t, o) => t ? u(t) : (r.dereference && (o = Di.resolve(process.cwd(), o)), e ? void di.readlink(n, ((t, i) => t ? "EINVAL" === t.code || "UNKNOWN" === t.code ? di.symlink(o, n, u) : u(t) : (r.dereference && (i = Di.resolve(process.cwd(), i)), hi.isSrcSubdir(o, i) ? u(new Error(`Cannot copy '${o}' to a subdirectory of itself, '${i}'.`)) : e.isDirectory() && hi.isSrcSubdir(i, o) ? u(new Error(`Cannot overwrite '${i}' with '${o}'.`)) : function(e, t, n){
2656            di.unlink(t, (r => r ? n(r) : di.symlink(e, t, n)))
2657        }(o, n, u)))) : di.symlink(o, n, u))))
2658    }(e, t, n, r, u) : void 0))
2659}
2660
2661function Ai(e, t, n, r, u) {
2662    return "function" == typeof di.copyFile ? di.copyFile(t, n, (t => t ? u(t) : vi(e, n, r, u))) : function(e, t, n, r, u){
2663        const o = di.createReadStream(t);
2664        o.on("error", (e => u(e))).once("open", (() => {
2665            const t = di.createWriteStream(n, { mode: e.mode });
2666            t.on("error", (e => u(e))).on("open", (() => o.pipe(t))).once("close", (() => vi(e, n, r, u)))
2667        }))
2668    }(e, t, n, r, u)
2669}
2670
2671function vi(e, t, n, r) {
2672    di.chmod(t, e.mode, (u => u ? r(u) : n.preserveTimestamps ? mi(t, e.atime, e.mtime, r) : r()))
2673}
2674
2675function Si(e, t, n, r) {
2676    di.readdir(e, ((u, o) => u ? r(u) : wi(o, e, t, n, r)))
2677}
2678
2679function wi(e, t, n, r, u) {
2680    const o = e.pop();
2681    return o ? function(e, t, n, r, u, o){
2682        const i = Di.join(n, t), s = Di.join(r, t);
2683        hi.checkPaths(i, s, "copy", ((t, c) => {
2684            if (t) return o(t);
2685            const {destStat:a} = c;
2686            Fi(a, i, s, u, (t => t ? o(t) : wi(e, n, r, u, o)))
2687        }))
2688    }(e, o, t, n, r, u) : u()
2689}
2690
2691var Oi = function (e, t, n, r) {
2692        "function" != typeof n || r ? "function" == typeof n && (n = { filter: n }) : (r = n, n = {
2693    }), r = r || function () {
2694    }, (n = n || {
2695    }).clobber = !("clobber" in n) || !!n.clobber, n.overwrite = "overwrite" in n ? !!n.overwrite : n.clobber, n.preserveTimestamps && "ia32" === process.arch && console.warn("fs-extra: Using the preserveTimestamps option in 32-bit node is not recommended;\n\n    see https://github.com/jprichardson/node-fs-extra/issues/269"), hi.checkPaths(e, t, "copy", ((u, o) => {
2696        if (u) return r(u);
2697        const {srcStat:i,destStat:s} = o;
2698        hi.checkParentPaths(e, i, t, "copy", (u => u ? r(u) : n.filter ? Ci(yi, s, e, t, n, r) : yi(s, e, t, n, r)))
2699    }))
2700};
2701var bi = { copy: (0, yo.fromCallback)(Oi) };
2702const _i = we, Bi = p.default, Pi = g.default, ki = "win32" === process.platform;
2703
2704function xi(e) {
2705    ["unlink", "chmod", "stat", "lstat", "rmdir", "readdir"].forEach((t => {
2706        e[t] = e[t] || _i[t], e[t+="Sync"] = e[t] || _i[t]
2707    })), e.maxBusyTries = e.maxBusyTries || 3
2708}
2709
2710function Ni(e, t, n) {
2711    let r = 0;
2712    "function" == typeof t && (n = t, t = {
2713    }), Pi(e, "rimraf: missing path"), Pi.strictEqual(typeof e, "string", "rimraf: path should be a string"), Pi.strictEqual(typeof n, "function", "rimraf: callback function required"), Pi(t, "rimraf: invalid options argument provided"), Pi.strictEqual(typeof t, "object", "rimraf: options should be object"), xi(t), Ii(e, t, (function u(o) {
2714        if (o) {
2715            if (("EBUSY" === o.code || "ENOTEMPTY" === o.code || "EPERM" === o.code) && r < t.maxBusyTries) {
2716                r++;
2717                return setTimeout((() => Ii(e, t, u)), 100 * r)
2718            }
2719            "ENOENT" === o.code && (o = null)
2720        }
2721        n(o)
2722    }))
2723}
2724
2725function Ii(e, t, n) {
2726    Pi(e), Pi(t), Pi("function" == typeof n), t.lstat(e, ((r, u) => r && "ENOENT" === r.code ? n(null) : r && "EPERM" === r.code && ki ? Ti(e, t, r, n) : u && u.isDirectory() ? Mi(e, t, r, n) : void t.unlink(e, (r => {
2727        if (r) {
2728            if ("ENOENT" === r.code) return n(null);
2729            if ("EPERM" === r.code) return ki ? Ti(e, t, r, n) : Mi(e, t, r, n);
2730            if ("EISDIR" === r.code) return Mi(e, t, r, n)
2731        }
2732        return n(r)
2733    }))))
2734}
2735
2736function Ti(e, t, n, r) {
2737    Pi(e), Pi(t), Pi("function" == typeof r), n && Pi(n instanceof Error), t.chmod(e, 438, (u => {
2738            u ? r("ENOENT" === u.code ? null : n) : t.stat(e, ((u, o) => {
2739                u ? r("ENOENT" === u.code ? null : n) : o.isDirectory() ? Mi(e, t, n, r) : t.unlink(e, r)
2740        }))
2741    }))
2742}
2743
2744function Ri(e, t, n) {
2745    let r;
2746    Pi(e), Pi(t), n && Pi(n instanceof Error);
2747    try {
2748        t.chmodSync(e, 438)
2749    } catch (e) {
2750        if ("ENOENT" === e.code) return;
2751        throw n
2752    }
2753    try {
2754        r = t.statSync(e)
2755    } catch (e) {
2756        if ("ENOENT" === e.code) return;
2757        throw n
2758    }
2759    r.isDirectory() ? ji(e, t, n) : t.unlinkSync(e)
2760}
2761
2762function Mi(e, t, n, r) {
2763    Pi(e), Pi(t), n && Pi(n instanceof Error), Pi("function" == typeof r), t.rmdir(e, (u => {
2764            !u || "ENOTEMPTY" !== u.code && "EEXIST" !== u.code && "EPERM" !== u.code ? u && "ENOTDIR" === u.code ? r(n) : r(u) : function(e, t, n){
2765            Pi(e), Pi(t), Pi("function" == typeof n), t.readdir(e, ((r, u) => {
2766                if (r) return n(r);
2767                let o, i = u.length;
2768                if (0 === i) return t.rmdir(e, n);
2769                u.forEach((r => {
2770                    Ni(Bi.join(e, r), t, (r => {
2771                        if (!o) return r ? n(o = r) : void (0 == --i && t.rmdir(e, n))
2772                    }))
2773                }))
2774            }))
2775        }(e, t, r)
2776    }))
2777}
2778
2779function Li(e, t) {
2780    let n;
2781    xi(t = t || {
2782    }), Pi(e, "rimraf: missing path"), Pi.strictEqual(typeof e, "string", "rimraf: path should be a string"), Pi(t, "rimraf: missing options"), Pi.strictEqual(typeof t, "object", "rimraf: options should be object");
2783    try {
2784        n = t.lstatSync(e)
2785    } catch (n) {
2786        if ("ENOENT" === n.code) return;
2787        "EPERM" === n.code && ki && Ri(e, t, n)
2788    }
2789    try {
2790            n && n.isDirectory() ? ji(e, t, null) : t.unlinkSync(e)
2791    } catch (n) {
2792        if ("ENOENT" === n.code) return;
2793        if ("EPERM" === n.code) return ki ? Ri(e, t, n) : ji(e, t, n);
2794        if ("EISDIR" !== n.code) throw n;
2795        ji(e, t, n)
2796    }
2797}
2798
2799function ji(e, t, n) {
2800    Pi(e), Pi(t), n && Pi(n instanceof Error);
2801    try {
2802        t.rmdirSync(e)
2803    } catch (r) {
2804        if ("ENOTDIR" === r.code) throw n;
2805        if ("ENOTEMPTY" === r.code || "EEXIST" === r.code || "EPERM" === r.code) !function(e, t){
2806            if (Pi(e), Pi(t), t.readdirSync(e).forEach((n => Li(Bi.join(e, n), t))),!ki) {
2807                return t.rmdirSync(e, t)
2808            }
2809            {
2810                const n = Date.now();
2811                do {
2812                    try {
2813                        return t.rmdirSync(e, t)
2814                    } catch (e) {
2815                    }
2816                } while (Date.now() - n < 500)
2817            }
2818        }(e, t); else if ("ENOENT" !== r.code) throw r
2819    }
2820}
2821
2822var $i = Ni;
2823Ni.sync = Li;
2824const Hi = $i;
2825var Ji = { remove: (0, yo.fromCallback)(Hi), removeSync: Hi.sync };
2826const Gi = yo.fromCallback, Vi = we, Ui = p.default, Wi = Io, zi = Ji, Ki = Gi((function (e, t) {
2827    t = t || function () {
2828    }, Vi.readdir(e, ((n, r) => {
2829        if (n) return Wi.mkdirs(e, t);
2830        r = r.map((t => Ui.join(e, t))), function e(){
2831            const n = r.pop();
2832            if (!n) return t();
2833            zi.remove(n, (n => {
2834                if (n) return t(n);
2835                e()
2836            }))
2837        }()
2838    }))
2839}));
2840
2841function qi(e) {
2842    let t;
2843    try {
2844        t = Vi.readdirSync(e)
2845    } catch (t) {
2846        return Wi.mkdirsSync(e)
2847    }
2848    t.forEach((t => {
2849        t = Ui.join(e, t), zi.removeSync(t)
2850    }))
2851}
2852
2853var Yi = { emptyDirSync: qi, emptydirSync: qi, emptyDir: Ki, emptydir: Ki };
2854const Xi = yo.fromCallback, Zi = p.default, Qi = we, es = Io, ts = fi.pathExists;
2855var ns = { createFile: Xi((function (e, t) {
2856
2857    function n() {
2858        Qi.writeFile(e, "", (e => {
2859            if (e) return t(e);
2860            t()
2861        }))
2862    }
2863
2864    Qi.stat(e, ((r, u) => {
2865        if (!r && u.isFile()) return t();
2866        const o = Zi.dirname(e);
2867        ts(o, ((e, r) => e ? t(e) : r ? n() : void es.mkdirs(o, (e => {
2868            if (e) return t(e);
2869            n()
2870        }))))
2871    }))
2872})), createFileSync: function (e) {
2873    let t;
2874    try {
2875        t = Qi.statSync(e)
2876    } catch (e) {
2877    }
2878    if (t && t.isFile()) return;
2879    const n = Zi.dirname(e);
2880    Qi.existsSync(n) || es.mkdirsSync(n), Qi.writeFileSync(e, "")
2881} };
2882const rs = yo.fromCallback, us = p.default, os = we, is = Io, ss = fi.pathExists;
2883var cs = { createLink: rs((function (e, t, n) {
2884
2885    function r(e, t) {
2886        os.link(e, t, (e => {
2887            if (e) return n(e);
2888            n(null)
2889        }))
2890    }
2891
2892    ss(t, ((u, o) => u ? n(u) : o ? n(null) : void os.lstat(e, (u => {
2893        if (u) return u.message = u.message.replace("lstat", "ensureLink"), n(u);
2894        const o = us.dirname(t);
2895        ss(o, ((u, i) => u ? n(u) : i ? r(e, t) : void is.mkdirs(o, (u => {
2896            if (u) return n(u);
2897            r(e, t)
2898        }))))
2899    }))))
2900})), createLinkSync: function (e, t) {
2901    if (os.existsSync(t)) return;
2902    try {
2903        os.lstatSync(e)
2904    } catch (e) {
2905        throw e.message = e.message.replace("lstat", "ensureLink"), e
2906    }
2907    const n = us.dirname(t);
2908    return os.existsSync(n) || is.mkdirsSync(n), os.linkSync(e, t)
2909} };
2910const as = p.default, ls = we, fs = fi.pathExists;
2911var ds = { symlinkPaths: function (e, t, n) {
2912    if (as.isAbsolute(e)) return ls.lstat(e, (t => t ? (t.message = t.message.replace("lstat", "ensureSymlink"), n(t)) : n(null, {
2913        toCwd: e,
2914        toDst: e
2915    })));
2916    {
2917        const r = as.dirname(t), u = as.join(r, e);
2918        return fs(u, ((t, o) => t ? n(t) : o ? n(null, {
2919            toCwd: u,
2920            toDst: e
2921        }) : ls.lstat(e, (t => t ? (t.message = t.message.replace("lstat", "ensureSymlink"), n(t)) : n(null, {
2922            toCwd: e,
2923            toDst: as.relative(r, e)
2924        })))))
2925    }
2926}, symlinkPathsSync: function (e, t) {
2927    let n;
2928    if (as.isAbsolute(e)) {
2929        if (n = ls.existsSync(e),!n) throw new Error("absolute srcpath does not exist");
2930        return { toCwd: e, toDst: e }
2931    }
2932    {
2933        const r = as.dirname(t), u = as.join(r, e);
2934        if (n = ls.existsSync(u), n) return { toCwd: u, toDst: e };
2935        if (n = ls.existsSync(e),!n) throw new Error("relative srcpath does not exist");
2936        return { toCwd: e, toDst: as.relative(r, e) }
2937    }
2938} };
2939const Ds = we;
2940var ps = { symlinkType: function (e, t, n) {
2941    if (n = "function" == typeof t ? t : n, t = "function" != typeof t && t) return n(null, t);
2942    Ds.lstat(e, ((e, r) => {
2943        if (e) return n(null, "file");
2944        t = r && r.isDirectory() ? "dir" : "file", n(null, t)
2945    }))
2946}, symlinkTypeSync: function (e, t) {
2947    let n;
2948    if (t) return t;
2949    try {
2950        n = Ds.lstatSync(e)
2951    } catch (e) {
2952        return "file"
2953    }
2954    return n && n.isDirectory() ? "dir" : "file"
2955} };
2956const Es = yo.fromCallback, ms = p.default, hs = we, ys = Io.mkdirs, Cs = Io.mkdirsSync, Fs = ds.symlinkPaths,
2957    gs = ds.symlinkPathsSync, As = ps.symlinkType, vs = ps.symlinkTypeSync, Ss = fi.pathExists;
2958var ws = { createSymlink: Es((function (e, t, n, r) {
2959    r = "function" == typeof n ? n : r, n = "function" != typeof n && n, Ss(t, ((u, o) => u ? r(u) : o ? r(null) : void Fs(e, t, ((u, o) => {
2960        if (u) return r(u);
2961        e = o.toDst, As(o.toCwd, n, ((n, u) => {
2962            if (n) return r(n);
2963            const o = ms.dirname(t);
2964            Ss(o, ((n, i) => n ? r(n) : i ? hs.symlink(e, t, u, r) : void ys(o, (n => {
2965                if (n) return r(n);
2966                hs.symlink(e, t, u, r)
2967            }))))
2968        }))
2969    }))))
2970})), createSymlinkSync: function (e, t, n) {
2971    if (hs.existsSync(t)) return;
2972    const r = gs(e, t);
2973    e = r.toDst, n = vs(r.toCwd, n);
2974    const u = ms.dirname(t);
2975    return hs.existsSync(u) || Cs(u), hs.symlinkSync(e, t, n)
2976} };
2977var Os, bs = {
2978    createFile: ns.createFile,
2979    createFileSync: ns.createFileSync,
2980    ensureFile: ns.createFile,
2981    ensureFileSync: ns.createFileSync,
2982    createLink: cs.createLink,
2983    createLinkSync: cs.createLinkSync,
2984    ensureLink: cs.createLink,
2985    ensureLinkSync: cs.createLinkSync,
2986    createSymlink: ws.createSymlink,
2987    createSymlinkSync: ws.createSymlinkSync,
2988    ensureSymlink: ws.createSymlink,
2989    ensureSymlinkSync: ws.createSymlinkSync
2990};
2991try {
2992    Os = we
2993} catch (e) {
2994    Os = D.default
2995}
2996
2997function _s(e, t) {
2998    var n, r = "\n";
2999    return "object" == typeof t && null !== t && (t.spaces && (n = t.spaces), t.EOL && (r = t.EOL)), JSON.stringify(e, t ? t.replacer : null, n).replace(/\n/g, r) + r
3000}
3001
3002function Bs(e) {
3003    return Buffer.isBuffer(e) && (e = e.toString("utf8")), e = e.replace(/^\uFEFF/, "")
3004}
3005
3006var Ps = { readFile: function (e, t, n) {
3007    null == n && (n = t, t = {}), "string" == typeof t && (t = { encoding: t });
3008    var r = (t = t || {}).fs || Os, u = !0;
3009    "throws" in t && (u = t.throws), r.readFile(e, t, (function (r, o) {
3010        if (r) return n(r);
3011        var i;
3012        o = Bs(o);
3013        try {
3014            i = JSON.parse(o, t ? t.reviver : null)
3015        } catch (t) {
3016            return u ? (t.message = e + ": " + t.message, n(t)) : n(null, null)
3017        }
3018        n(null, i)
3019    }))
3020}, readFileSync: function (e, t) {
3021    "string" == typeof (t = t || {}) && (t = { encoding: t });
3022    var n = t.fs || Os, r = !0;
3023    "throws" in t && (r = t.throws);
3024    try {
3025        var u = n.readFileSync(e, t);
3026        return u = Bs(u), JSON.parse(u, t.reviver)
3027    } catch (t) {
3028        if (r) throw t.message = e + ": " + t.message, t;
3029        return null
3030    }
3031}, writeFile: function (e, t, n, r) {
3032    null == r && (r = n, n = {});
3033    var u = (n = n || {}).fs || Os, o = "";
3034    try {
3035        o = _s(t, n)
3036    } catch (e) {
3037        return void (r && r(e, null))
3038    }
3039    u.writeFile(e, o, n, r)
3040}, writeFileSync: function (e, t, n) {
3041    var r = (n = n || {}).fs || Os, u = _s(t, n);
3042    return r.writeFileSync(e, u, n)
3043} }, ks = Ps;
3044const xs = yo.fromCallback, Ns = ks;
3045var Is = {
3046    readJson: xs(Ns.readFile),
3047    readJsonSync: Ns.readFileSync,
3048    writeJson: xs(Ns.writeFile),
3049    writeJsonSync: Ns.writeFileSync
3050};
3051const Ts = p.default, Rs = Io, Ms = fi.pathExists, Ls = Is;
3052var js = function (e, t, n, r) {
3053    "function" == typeof n && (r = n, n = {});
3054    const u = Ts.dirname(e);
3055    Ms(u, ((o, i) => o ? r(o) : i ? Ls.writeJson(e, t, n, r) : void Rs.mkdirs(u, (u => {
3056        if (u) return r(u);
3057        Ls.writeJson(e, t, n, r)
3058    }))))
3059};
3060const $s = we, Hs = p.default, Js = Io, Gs = Is;
3061var Vs = function (e, t, n) {
3062    const r = Hs.dirname(e);
3063    $s.existsSync(r) || Js.mkdirsSync(r), Gs.writeJsonSync(e, t, n)
3064};
3065const Us = yo.fromCallback, Ws = Is;
3066Ws.outputJson = Us(js), Ws.outputJsonSync = Vs, Ws.outputJSON = Ws.outputJson, Ws.outputJSONSync = Ws.outputJsonSync, Ws.writeJSON = Ws.writeJson, Ws.writeJSONSync = Ws.writeJsonSync, Ws.readJSON = Ws.readJson, Ws.readJSONSync = Ws.readJsonSync;
3067var zs = Ws;
3068const Ks = we, qs = p.default, Ys = ci.copySync, Xs = Ji.removeSync, Zs = Io.mkdirpSync, Qs = Zo;
3069
3070function ec(e, t, n) {
3071    try {
3072        Ks.renameSync(e, t)
3073    } catch (r) {
3074        if ("EXDEV" !== r.code) throw r;
3075        return function(e, t, n){
3076            const r = { overwrite: n, errorOnExist: !0 };
3077            return Ys(e, t, r), Xs(e)
3078        }(e, t, n)
3079    }
3080}
3081
3082var tc = function (e, t, n) {
3083    const r = (n = n || {}).overwrite || n.clobber || !1, {srcStat:u} = Qs.checkPathsSync(e, t, "move");
3084    return Qs.checkParentPathsSync(e, u, t, "move"), Zs(qs.dirname(t)), function(e, t, n){
3085        if (n) return Xs(t), ec(e, t, n);
3086        if (Ks.existsSync(t)) throw new Error("dest already exists.");
3087        return ec(e, t, n)
3088    }(e, t, r)
3089}, nc = { moveSync: tc };
3090const rc = we, uc = p.default, oc = bi.copy, ic = Ji.remove, sc = Io.mkdirp, cc = fi.pathExists, ac = Zo;
3091
3092function lc(e, t, n, r) {
3093    rc.rename(e, t, (u => u ? "EXDEV" !== u.code ? r(u) : function(e, t, n, r){
3094        const u = { overwrite: n, errorOnExist: !0 };
3095        oc(e, t, u, (t => t ? r(t) : ic(e, r)))
3096    }(e, t, n, r) : r()))
3097}
3098
3099var fc = function (e, t, n, r) {
3100    "function" == typeof n && (r = n, n = {});
3101    const u = n.overwrite || n.clobber || !1;
3102    ac.checkPaths(e, t, "move", ((n, o) => {
3103        if (n) return r(n);
3104        const {srcStat:i} = o;
3105        ac.checkParentPaths(e, i, t, "move", (n => {
3106            if (n) return r(n);
3107            sc(uc.dirname(t), (n => n ? r(n) : function(e, t, n, r){
3108                if (n) return ic(t, (u => u ? r(u) : lc(e, t, n, r)));
3109                cc(t, ((u, o) => u ? r(u) : o ? r(new Error("dest already exists.")) : lc(e, t, n, r)))
3110            }(e, t, u, r)))
3111        }))
3112    }))
3113};
3114var dc = { move: (0, yo.fromCallback)(fc) };
3115const Dc = yo.fromCallback, pc = we, Ec = p.default, mc = Io, hc = fi.pathExists;
3116var yc = { outputFile: Dc((function (e, t, n, r) {
3117    "function" == typeof n && (r = n, n = "utf8");
3118    const u = Ec.dirname(e);
3119    hc(u, ((o, i) => o ? r(o) : i ? pc.writeFile(e, t, n, r) : void mc.mkdirs(u, (u => {
3120        if (u) return r(u);
3121        pc.writeFile(e, t, n, r)
3122    }))))
3123})), outputFileSync: function (e, ...t) {
3124    const n = Ec.dirname(e);
3125    if (pc.existsSync(n)) return pc.writeFileSync(e, ...t);
3126    mc.mkdirsSync(n), pc.writeFileSync(e, ...t)
3127} };
3128!function(e){
3129    e.exports = Object.assign({}, ho, ci, bi, Yi, bs, zs, Io, nc, dc, yc, fi, Ji);
3130    const t = D.default;
3131    Object.getOwnPropertyDescriptor(t, "promises") && Object.defineProperty(e.exports, "promises", {
3132        get: () => t.promises
3133    })
3134}(mo);
3135const Cc = Nr.exports("streamroller:fileNameFormatter"), Fc = p.default;
3136const gc = Nr.exports("streamroller:fileNameParser"), Ac = nu.exports;
3137const vc = Nr.exports("streamroller:moveAndMaybeCompressFile"), Sc = mo.exports, wc = v.default;
3138var Oc = async (e, t, n) => {
3139    if (n = function(e){
3140        const t = { mode: parseInt("0600", 8), compress: !1 }, n = Object.assign({}, t, e);
3141        return vc(`_parseOption: moveAndMaybeCompressFile called with option=${JSON.stringify(n)}`), n
3142    }(n), e !== t) {
3143        if (await Sc.pathExists(e)) if (vc(`moveAndMaybeCompressFile: moving file from ${e} to ${t} ${n.compress ? "with" : "without"} compress`), n.compress) await new Promise(((r, u) => {
3144            let o = !1;
3145            const i = Sc.createWriteStream(t, { mode: n.mode, flags: "wx" }).on("open", (() => {
3146                o = !0;
3147                const t = Sc.createReadStream(e).on("open", (() => {
3148                    t.pipe(wc.createGzip()).pipe(i)
3149                })).on("error", (t => {
3150                    vc(`moveAndMaybeCompressFile: error reading ${e}`, t), i.destroy(t)
3151                }))
3152            })).on("finish", (() => {
3153                vc(`moveAndMaybeCompressFile: finished compressing ${t}, deleting ${e}`), Sc.unlink(e).then(r).catch((t => {
3154                    vc(`moveAndMaybeCompressFile: error deleting ${e}, truncating instead`, t), Sc.truncate(e).then(r).catch((t => {
3155                        vc(`moveAndMaybeCompressFile: error truncating ${e}`, t), u(t)
3156                    }))
3157                }))
3158            })).on("error", (e => {
3159                    o ? (vc(`moveAndMaybeCompressFile: error writing ${t}, deleting`, e), Sc.unlink(t).then((() => {
3160                    u(e)
3161                })).catch((e => {
3162                    vc(`moveAndMaybeCompressFile: error deleting ${t}`, e), u(e)
3163                }))) : (vc(`moveAndMaybeCompressFile: error creating ${t}`, e), u(e))
3164            }))
3165        })).catch((() => {
3166        })); else {
3167            vc(`moveAndMaybeCompressFile: renaming ${e} to ${t}`);
3168            try {
3169                await Sc.move(e, t, { overwrite: !0 })
3170            } catch (n) {
3171                if (vc(`moveAndMaybeCompressFile: error renaming ${e} to ${t}`, n), "ENOENT" !== n.code) {
3172                    vc("moveAndMaybeCompressFile: trying copy+truncate instead");
3173                    try {
3174                        await Sc.copy(e, t, { overwrite: !0 }), await Sc.truncate(e)
3175                    } catch (e) {
3176                        vc("moveAndMaybeCompressFile: error copy+truncate", e)
3177                    }
3178                }
3179            }
3180        }
3181    } else vc("moveAndMaybeCompressFile: source and target are the same, not doing anything")
3182};
3183const bc = Nr.exports("streamroller:RollingFileWriteStream"), _c = mo.exports, Bc = p.default, Pc = E.default,
3184    kc = () => new Date, xc = nu.exports, {Writable:Nc} = C.default,
3185    Ic = ({file:e,keepFileExt:t,needsIndex:n,alwaysIncludeDate:r,compress:u,fileNameSep:o}) => {
3186        let i = o || ".";
3187        const s = Fc.join(e.dir, e.name), c = t => t + e.ext, a = (e, t, r) =>!n && r || !t ? e : e + i + t,
3188            l = (e, t, n) => (t > 0 || r) && n ? e + i + n : e, f = (e, t) => t && u ? e + ".gz" : e,
3189            d = t ? [l, a, c, f] : [c, l, a, f];
3190        return ({date:e,index:t}) => (Cc(`_formatFileName: date=${e}, index=${t}`), d.reduce(((n, r) => r(n, t, e)), s))
3191    }, Tc = ({file:e,keepFileExt:t,pattern:n,fileNameSep:r}) => {
3192        let u = r || ".";
3193        const o = "__NOT_MATCHING__";
3194        let i = [(e, t) => e.endsWith(".gz") ? (gc("it is gzipped"), t.isCompressed = !0, e.slice(0, -1 * ".gz".length)) : e, t ? t => t.startsWith(e.name) && t.endsWith(e.ext) ? (gc("it starts and ends with the right things"), t.slice(e.name.length + 1, -1 * e.ext.length)) : o : t => t.startsWith(e.base) ? (gc("it starts with the right things"), t.slice(e.base.length + 1)) : o, n ? (e, t) => {
3195            const r = e.split(u);
3196            let o = r[r.length-1];
3197            gc("items: ", r, ", indexStr: ", o);
3198            let i = e;
3199                void 0 !== o && o.match(/^\d+$/) ? (i = e.slice(0, -1 * (o.length + 1)), gc(`dateStr is ${i}`), n && !i && (i = o, o = "0")) : o = "0";
3200            try {
3201                const r = Ac.parse(n, i, new Date(0, 0));
3202                return Ac.asString(n, r) !== i ? e : (t.index = parseInt(o, 10), t.date = i, t.timestamp = r.getTime(), "")
3203            } catch (t) {
3204                return gc(`Problem parsing ${i} as ${n}, error was: `, t), e
3205            }
3206        } : (e, t) => e.match(/^\d+$/) ? (gc("it has an index"), t.index = parseInt(e, 10), "") : e];
3207        return e => {
3208            let t = { filename: e, index: 0, isCompressed: !1 };
3209            return i.reduce(((e, n) => n(e, t)), e) ? null : t
3210        }
3211    }, Rc = Oc;
3212var Mc = class extends Nc {
3213    constructor(e, t) {
3214        if (bc(`constructor: creating RollingFileWriteStream. path=${e}`), "string" != typeof e || 0 === e.length) throw new Error(`Invalid filename: ${e}`);
3215        if (e.endsWith(Bc.sep)) throw new Error(`Filename is a directory: ${e}`);
3216        0 === e.indexOf(`~${Bc.sep}`) && (e = e.replace("~", Pc.homedir())), super(t), this.options = this._parseOption(t), this.fileObject = Bc.parse(e), "" === this.fileObject.dir && (this.fileObject = Bc.parse(Bc.join(process.cwd(), e))), this.fileFormatter = Ic({
3217            file: this.fileObject,
3218            alwaysIncludeDate: this.options.alwaysIncludePattern,
3219            needsIndex: this.options.maxSize < Number.MAX_SAFE_INTEGER,
3220            compress: this.options.compress,
3221            keepFileExt: this.options.keepFileExt,
3222            fileNameSep: this.options.fileNameSep
3223        }), this.fileNameParser = Tc({
3224            file: this.fileObject,
3225            keepFileExt: this.options.keepFileExt,
3226            pattern: this.options.pattern,
3227            fileNameSep: this.options.fileNameSep
3228        }), this.state = {
3229            currentSize: 0
3230        }, this.options.pattern && (this.state.currentDate = xc(this.options.pattern, kc())), this.filename = this.fileFormatter({
3231            index: 0,
3232            date: this.state.currentDate
3233        }), ["a", "a+", "as", "as+"].includes(this.options.flags) && this._setExistingSizeAndDate(), bc(`constructor: create new file ${this.filename}, state=${JSON.stringify(this.state)}`), this._renewWriteStream()
3234    }
3235
3236    _setExistingSizeAndDate() {
3237        try {
3238            const e = _c.statSync(this.filename);
3239            this.state.currentSize = e.size, this.options.pattern && (this.state.currentDate = xc(this.options.pattern, e.mtime))
3240        } catch (e) {
3241            return
3242        }
3243    }
3244
3245    _parseOption(e) {
3246        const t = {
3247            maxSize: 0,
3248            numToKeep: Number.MAX_SAFE_INTEGER,
3249            encoding: "utf8",
3250            mode: parseInt("0600", 8),
3251            flags: "a",
3252            compress: !1,
3253            keepFileExt: !1,
3254            alwaysIncludePattern: !1
3255        }, n = Object.assign({}, t, e);
3256        if (n.maxSize) {
3257            if (n.maxSize <= 0) throw new Error(`options.maxSize (${n.maxSize}) should be > 0`)
3258        } else delete n.maxSize;
3259        if (n.numBackups || 0 === n.numBackups) {
3260            if (n.numBackups < 0) throw new Error(`options.numBackups (${n.numBackups}) should be >= 0`);
3261            if (n.numBackups >= Number.MAX_SAFE_INTEGER) throw new Error(`options.numBackups (${n.numBackups}) should be < Number.MAX_SAFE_INTEGER`);
3262            n.numToKeep = n.numBackups + 1
3263        } else if (n.numToKeep <= 0) throw new Error(`options.numToKeep (${n.numToKeep}) should be > 0`);
3264        return bc(`_parseOption: creating stream with option=${JSON.stringify(n)}`), n
3265    }
3266
3267    _final(e) {
3268        this.currentFileStream.end("", this.options.encoding, e)
3269    }
3270
3271    _write(e, t, n) {
3272        this._shouldRoll().then((() => {
3273            bc(`_write: writing chunk. file=${this.currentFileStream.path} state=${JSON.stringify(this.state)} chunk=${e}`), this.currentFileStream.write(e, t, (t => {
3274                this.state.currentSize += e.length, n(t)
3275            }))
3276        }))
3277    }
3278
3279    async _shouldRoll() {
3280        (this._dateChanged() || this._tooBig()) && (bc(`_shouldRoll: rolling because dateChanged? ${this._dateChanged()} or tooBig? ${this._tooBig()}`), await this._roll())
3281    }
3282
3283    _dateChanged() {
3284        return this.state.currentDate && this.state.currentDate !== xc(this.options.pattern, kc())
3285    }
3286
3287    _tooBig() {
3288        return this.state.currentSize >= this.options.maxSize
3289    }
3290
3291    _roll() {
3292        return bc("_roll: closing the current stream"), new Promise(((e, t) => {
3293            this.currentFileStream.end("", this.options.encoding, (() => {
3294                this._moveOldFiles().then(e).catch(t)
3295            }))
3296        }))
3297    }
3298
3299    async _moveOldFiles() {
3300        const e = await this._getExistingFiles();
3301        for (let t = (this.state.currentDate ? e.filter((e => e.date === this.state.currentDate)) : e).length;t >= 0; t--) {
3302            bc(`_moveOldFiles: i = ${t}`);
3303            const e = this.fileFormatter({ date: this.state.currentDate, index: t }),
3304                n = this.fileFormatter({ date: this.state.currentDate, index: t + 1 }),
3305                r = { compress: this.options.compress && 0 === t, mode: this.options.mode };
3306            await Rc(e, n, r)
3307        }
3308        this.state.currentSize = 0, this.state.currentDate = this.state.currentDate ? xc(this.options.pattern, kc()) : null, bc(`_moveOldFiles: finished rolling files. state=${JSON.stringify(this.state)}`), this._renewWriteStream(), await new Promise(((e, t) => {
3309            this.currentFileStream.write("", "utf8", (() => {
3310                this._clean().then(e).catch(t)
3311            }))
3312        }))
3313    }
3314
3315    async _getExistingFiles() {
3316        const e = await _c.readdir(this.fileObject.dir).catch((() => []));
3317        bc(`_getExistingFiles: files=${e}`);
3318        const t = e.map((e => this.fileNameParser(e))).filter((e => e)),
3319            n = e => (e.timestamp ? e.timestamp : kc().getTime()) - e.index;
3320        return t.sort(((e, t) => n(e) - n(t))), t
3321    }
3322
3323    _renewWriteStream() {
3324        const e = this.fileFormatter({ date: this.state.currentDate, index: 0 }), t = e => {
3325            try {
3326                return _c.mkdirSync(e, { recursive: !0 })
3327            } catch (n) {
3328                if ("ENOENT" === n.code) return t(Bc.dirname(e)), t(e);
3329                if ("EEXIST" !== n.code && "EROFS" !== n.code) throw n;
3330                try {
3331                    if (_c.statSync(e).isDirectory()) return e;
3332                    throw n
3333                } catch (e) {
3334                    throw n
3335                }
3336            }
3337        };
3338        t(this.fileObject.dir);
3339        const n = { flags: this.options.flags, encoding: this.options.encoding, mode: this.options.mode };
3340        var r, u;
3341        _c.appendFileSync(e, "", (r = {
3342            ...n
3343        }, u = "flags", r["flag"] = r[u], delete r[u], r)), this.currentFileStream = _c.createWriteStream(e, n), this.currentFileStream.on("error", (e => {
3344            this.emit("error", e)
3345        }))
3346    }
3347
3348    async _clean() {
3349        const e = await this._getExistingFiles();
3350        if (bc(`_clean: numToKeep = ${this.options.numToKeep}, existingFiles = ${e.length}`), bc("_clean: existing files are: ", e), this._tooManyFiles(e.length)) {
3351            const n = e.slice(0, e.length - this.options.numToKeep).map((e => Bc.format({
3352                dir: this.fileObject.dir,
3353                base: e.filename
3354            })));
3355            await(t = n, bc(`deleteFiles: files to delete: ${t}`), Promise.all(t.map((e => _c.unlink(e).catch((t => {
3356                bc(`deleteFiles: error when unlinking ${e}, ignoring. Error was ${t}`)
3357            }))))))
3358        }
3359        var t
3360    }
3361
3362    _tooManyFiles(e) {
3363        return this.options.numToKeep > 0 && e > this.options.numToKeep
3364    }
3365};
3366const Lc = Mc;
3367var jc = class extends Lc {
3368    constructor(e, t, n, r) {
3369        r || (r = {
3370        }), t && (r.maxSize = t), r.numBackups || 0 === r.numBackups || (n || 0 === n || (n = 1), r.numBackups = n), super(e, r), this.backups = r.numBackups, this.size = this.options.maxSize
3371    }
3372
3373    get theStream() {
3374        return this.currentFileStream
3375    }
3376};
3377const $c = Mc;
3378var Hc = { RollingFileWriteStream: Mc, RollingFileStream: jc, DateRollingFileStream: class extends $c {
3379    constructor(e, t, n) {
3380        t && "object" == typeof t && (n = t, t = null), n || (n = {
3381        }), t || (t = "yyyy-MM-dd"), n.pattern = t, n.numBackups || 0 === n.numBackups ? n.daysToKeep = n.numBackups : (n.daysToKeep || 0 === n.daysToKeep ? process.emitWarning("options.daysToKeep is deprecated due to the confusion it causes when used together with file size rolling. Please use options.numBackups instead.", "DeprecationWarning", "streamroller-DEP0001") : n.daysToKeep = 1, n.numBackups = n.daysToKeep), super(e, n), this.mode = this.options.mode
3382    }
3383
3384    get theStream() {
3385        return this.currentFileStream
3386    }
3387} };
3388const Jc = Nr.exports("log4js:file"), Gc = p.default, Vc = Hc, Uc = E.default.EOL;
3389let Wc = !1;
3390const zc = new Set;
3391
3392function Kc() {
3393    zc.forEach((e => {
3394        e.sighupHandler()
3395    }))
3396}
3397
3398function qc(e, t, n, r) {
3399    const u = new Vc.RollingFileStream(e, t, n, r);
3400    return u.on("error", (t => {
3401        console.error("log4js.fileAppender - Writing to file %s, error happened ", e, t)
3402    })), u.on("drain", (() => {
3403        process.emit("log4js:pause",!1)
3404    })), u
3405}
3406
3407Eo.configure = function (e, t) {
3408    let n = t.basicLayout;
3409    return e.layout && (n = t.layout(e.layout.type, e.layout)), e.mode = e.mode || 384, function(e, t, n, r, u, o){
3410        e = Gc.normalize(e), Jc("Creating file appender (", e, ", ", n, ", ", r = r || 0 === r ? r : 5, ", ", u, ", ", o, ")");
3411        let i = qc(e, n, r, u);
3412        const s = function (e) {
3413            if (i.writable) {
3414                if (!0 === u.removeColor) {
3415                    const t = /\x1b[[0-9;]*m/g;
3416                    e.data = e.data.map((e => "string" == typeof e ? e.replace(t, "") : e))
3417                }
3418                i.write(t(e, o) + Uc, "utf8") || process.emit("log4js:pause",!0)
3419            }
3420        };
3421        return s.reopen = function () {
3422            i.end((() => {
3423                i = qc(e, n, r, u)
3424            }))
3425        }, s.sighupHandler = function () {
3426            Jc("SIGHUP handler called."), s.reopen()
3427        }, s.shutdown = function (e) {
3428            zc.delete(s), 0 === zc.size && Wc && (process.removeListener("SIGHUP", Kc), Wc = !1), i.end("", "utf-8", e)
3429        }, zc.add(s), Wc || (process.on("SIGHUP", Kc), Wc = !0), s
3430    }(e.filename, n, e.maxLogSize, e.backups, e, e.timezoneOffset)
3431};
3432var Yc = {};
3433const Xc = Hc, Zc = E.default.EOL;
3434
3435function Qc(e, t, n, r, u) {
3436    r.maxSize = r.maxLogSize;
3437    const o = function(e, t, n){
3438        const r = new Xc.DateRollingFileStream(e, t, n);
3439        return r.on("error", (t => {
3440            console.error("log4js.dateFileAppender - Writing to file %s, error happened ", e, t)
3441        })), r.on("drain", (() => {
3442            process.emit("log4js:pause",!1)
3443        })), r
3444    }(e, t, r), i = function (e) {
3445        o.writable && (o.write(n(e, u) + Zc, "utf8") || process.emit("log4js:pause",!0))
3446    };
3447    return i.shutdown = function (e) {
3448        o.end("", "utf-8", e)
3449    }, i
3450}
3451
3452Yc.configure = function (e, t) {
3453    let n = t.basicLayout;
3454    return e.layout && (n = t.layout(e.layout.type, e.layout)), e.alwaysIncludePattern || (e.alwaysIncludePattern = !1), e.mode = e.mode || 384, Qc(e.filename, e.pattern, n, e, e.timezoneOffset)
3455};
3456var ea = {};
3457const ta = Nr.exports("log4js:fileSync"), na = p.default, ra = D.default, ua = E.default.EOL || "\n";
3458
3459function oa(e, t) {
3460    if (ra.existsSync(e)) return;
3461    const n = ra.openSync(e, t.flags, t.mode);
3462    ra.closeSync(n)
3463}
3464
3465class ia {
3466    constructor(e, t, n, r) {
3467        ta("In RollingFileStream"), function(){
3468            if (!e || !t || t <= 0) throw new Error("You must specify a filename and file size")
3469        }(), this.filename = e, this.size = t, this.backups = n, this.options = r, this.currentSize = 0, this.currentSize = function(e){
3470            let t = 0;
3471            try {
3472                t = ra.statSync(e).size
3473            } catch (t) {
3474                oa(e, r)
3475            }
3476            return t
3477        }(this.filename)
3478    }
3479
3480    shouldRoll() {
3481        return ta("should roll with current size %d, and max size %d", this.currentSize, this.size), this.currentSize >= this.size
3482    }
3483
3484    roll(e) {
3485        const t = this, n = new RegExp(`^${na.basename(e)}`);
3486
3487        function r(e) {
3488            return n.test(e)
3489        }
3490
3491        function u(t) {
3492            return parseInt(t.substring(`${na.basename(e)}.`.length), 10) || 0
3493        }
3494
3495        function o(e, t) {
3496            return u(e) > u(t) ? 1 : u(e) < u(t) ? -1 : 0
3497        }
3498
3499        function i(n) {
3500            const r = u(n);
3501            if (ta(`Index of ${n} is ${r}`), 0 === t.backups) ra.truncateSync(e, 0); else if (r < t.backups) {
3502                try {
3503                    ra.unlinkSync(`${e}.${r + 1}`)
3504                } catch (e) {
3505                }
3506                ta(`Renaming ${n} -> ${e}.${r + 1}`), ra.renameSync(na.join(na.dirname(e), n), `${e}.${r + 1}`)
3507            }
3508        }
3509
3510        ta("Rolling, rolling, rolling"), ta("Renaming the old files"), ra.readdirSync(na.dirname(e)).filter(r).sort(o).reverse().forEach(i)
3511    }
3512
3513    write(e, t) {
3514        const n = this;
3515        ta("in write"), this.shouldRoll() && (this.currentSize = 0, this.roll(this.filename)), ta("writing the chunk to the file"), n.currentSize += e.length, ra.appendFileSync(n.filename, e)
3516    }
3517}
3518
3519ea.configure = function (e, t) {
3520    let n = t.basicLayout;
3521    e.layout && (n = t.layout(e.layout.type, e.layout));
3522    const r = { flags: e.flags || "a", encoding: e.encoding || "utf8", mode: e.mode || 384 };
3523    return function(e, t, n, r, u, o){
3524        ta("fileSync appender created");
3525        const i = function(e, t, n){
3526            let r;
3527            var u;
3528            return t ? r = new ia(e, t, n, o) : (oa(u = e, o), r = { write(e) {
3529                ra.appendFileSync(u, e)
3530            } }), r
3531        }(e = na.normalize(e), n, r = r || 0 === r ? r : 5);
3532        return e => {
3533            i.write(t(e, u) + ua)
3534        }
3535    }(e.filename, n, e.maxLogSize, e.backups, e.timezoneOffset, r)
3536};
3537var sa = {};
3538const ca = Nr.exports("log4js:tcp"), aa = S.default;
3539sa.configure = function (e, t) {
3540    ca(`configure with config = ${e}`);
3541    let n = function (e) {
3542        return e.serialise()
3543    };
3544    return e.layout && (n = t.layout(e.layout.type, e.layout)), function(e, t){
3545        let n = !1;
3546        const r = [];
3547        let u, o = 3, i = "__LOG4JS__";
3548
3549        function s(e) {
3550            ca("Writing log event to socket"), n = u.write(`${t(e)}${i}`, "utf8")
3551        }
3552
3553        function c() {
3554            let e;
3555            for (ca("emptying buffer"); e = r.shift(); ) s(e)
3556        }
3557
3558        function a(e) {
3559                n ? s(e) : (ca("buffering log event because it cannot write at the moment"), r.push(e))
3560        }
3561
3562        return function t(){
3563            ca(`appender creating socket to ${e.host || "localhost"}:${e.port || 5e3}`), i = `${e.endMsg || "__LOG4JS__"}`, u = aa.createConnection(e.port || 5e3, e.host || "localhost"), u.on("connect", (() => {
3564                ca("socket connected"), c(), n = !0
3565            })), u.on("drain", (() => {
3566                ca("drain event received, emptying buffer"), n = !0, c()
3567            })), u.on("timeout", u.end.bind(u)), u.on("error", (e => {
3568                ca("connection error", e), n = !1, c()
3569            })), u.on("close", t)
3570        }(), a.shutdown = function (e) {
3571            ca("shutdown called"), r.length && o ? (ca("buffer has items, waiting 100ms to empty"), o -= 1, setTimeout((() => {
3572                a.shutdown(e)
3573            }), 100)) : (u.removeAllListeners("close"), u.end(e))
3574        }, a
3575    }(e, n)
3576};
3577const la = p.default, fa = Nr.exports("log4js:appenders"), da = tu, Da = eo, pa = gu, Ea = hu, ma = to, ha = new Map;
3578ha.set("console", oo), ha.set("stdout", so), ha.set("stderr", co), ha.set("logLevelFilter", ao), ha.set("categoryFilter", lo), ha.set("noLogFilter", Do), ha.set("file", Eo), ha.set("dateFile", Yc), ha.set("fileSync", ea), ha.set("tcp", sa);
3579const ya = new Map, Ca = (e, t) => {
3580    fa("Loading module from ", e);
3581    try {
3582        return require(e)
3583    } catch (n) {
3584        return void da.throwExceptionIf(t, "MODULE_NOT_FOUND" !== n.code, `appender "${e}" could not be loaded (error was: ${n})`)
3585    }
3586}, Fa = new Set, ga = (e, t) => {
3587    if (ya.has(e)) return ya.get(e);
3588    if (!t.appenders[e]) return !1;
3589    if (Fa.has(e)) throw new Error(`Dependency loop detected for appender ${e}.`);
3590    Fa.add(e), fa(`Creating appender ${e}`);
3591    const n = Aa(e, t);
3592    return Fa.delete(e), ya.set(e, n), n
3593}, Aa = (e, t) => {
3594    const n = t.appenders[e],
3595        r = n.type.configure ? n.type : ((e, t) => ha.get(e) || Ca(`./${e}`, t) || Ca(e, t) || require.main && Ca(la.join(la.dirname(require.main.filename), e), t) || Ca(la.join(process.cwd(), e), t))(n.type, t);
3596    return da.throwExceptionIf(t, da.not(r), `appender "${e}" is not valid (type "${n.type}" could not be found)`), r.appender && fa(`DEPRECATION: Appender ${n.type} exports an appender function.`), r.shutdown && fa(`DEPRECATION: Appender ${n.type} exports a shutdown function.`), fa(`${e}: clustering.isMaster ? ${Da.isMaster()}`), fa(`${e}: appenderModule is ${F.default.inspect(r)}`), Da.onlyOnMaster((() => (fa(`calling appenderModule.configure for ${e} / ${n.type}`), r.configure(ma.modifyConfig(n), Ea, (e => ga(e, t)), pa))), (() => {
3597    }))
3598}, va = e => {
3599    ya.clear(), Fa.clear();
3600    const t = [];
3601    Object.values(e.categories).forEach((e => {
3602        t.push(...e.appenders)
3603    })), Object.keys(e.appenders).forEach((n => {
3604        (t.includes(n) || "tcp-server" === e.appenders[n].type) && ga(n, e)
3605    }))
3606}, Sa = () => {
3607    va({ appenders: { out: { type: "stdout" } }, categories: { default: { appenders: ["out"], level: "trace" } } })
3608};
3609Sa(), da.addListener((e => {
3610    da.throwExceptionIf(e, da.not(da.anObject(e.appenders)), 'must have a property "appenders" of type object.');
3611    const t = Object.keys(e.appenders);
3612    da.throwExceptionIf(e, da.not(t.length), "must define at least one appender."), t.forEach((t => {
3613        da.throwExceptionIf(e, da.not(e.appenders[t].type), `appender "${t}" is not valid (must be an object with property "type")`)
3614    }))
3615})), da.addListener(va), Au.exports = ya, Au.exports.init = Sa;
3616var wa = { exports: {} };
3617!function(e){
3618    const t = Nr.exports("log4js:categories"), n = tu, r = gu, u = Au.exports, o = new Map;
3619
3620    function i(e, t, n) {
3621        if (!1 === t.inherit) return;
3622        const r = n.lastIndexOf(".");
3623        if (r < 0) return;
3624        const u = n.substring(0, r);
3625        let o = e.categories[u];
3626        o || (o = {
3627            inherit: !0,
3628            appenders: []
3629        }), i(e, o, u),!e.categories[u] && o.appenders && o.appenders.length && o.level && (e.categories[u] = o), t.appenders = t.appenders || [], t.level = t.level || o.level, o.appenders.forEach((e => {
3630            t.appenders.includes(e) || t.appenders.push(e)
3631        })), t.parent = o
3632    }
3633
3634    function s(e) {
3635        if (!e.categories) return;
3636        Object.keys(e.categories).forEach((t => {
3637            const n = e.categories[t];
3638            i(e, n, t)
3639        }))
3640    }
3641
3642    n.addPreProcessingListener((e => s(e))), n.addListener((e => {
3643        n.throwExceptionIf(e, n.not(n.anObject(e.categories)), 'must have a property "categories" of type object.');
3644        const t = Object.keys(e.categories);
3645        n.throwExceptionIf(e, n.not(t.length), "must define at least one category."), t.forEach((t => {
3646            const o = e.categories[t];
3647            n.throwExceptionIf(e, [n.not(o.appenders), n.not(o.level)], `category "${t}" is not valid (must be an object with properties "appenders" and "level")`), n.throwExceptionIf(e, n.not(Array.isArray(o.appenders)), `category "${t}" is not valid (appenders must be an array of appender names)`), n.throwExceptionIf(e, n.not(o.appenders.length), `category "${t}" is not valid (appenders must contain at least one appender name)`), Object.prototype.hasOwnProperty.call(o, "enableCallStack") && n.throwExceptionIf(e, "boolean" != typeof o.enableCallStack, `category "${t}" is not valid (enableCallStack must be boolean type)`), o.appenders.forEach((r => {
3648                n.throwExceptionIf(e, n.not(u.get(r)), `category "${t}" is not valid (appender "${r}" is not defined)`)
3649            })), n.throwExceptionIf(e, n.not(r.getLevel(o.level)), `category "${t}" is not valid (level "${o.level}" not recognised; valid levels are ${r.levels.join(", ")})`)
3650        })), n.throwExceptionIf(e, n.not(e.categories.default), 'must define a "default" category.')
3651    }));
3652    const c = e => {
3653        o.clear();
3654        Object.keys(e.categories).forEach((n => {
3655            const i = e.categories[n], s = [];
3656            i.appenders.forEach((e => {
3657                s.push(u.get(e)), t(`Creating category ${n}`), o.set(n, {
3658                    appenders: s,
3659                    level: r.getLevel(i.level),
3660                    enableCallStack: i.enableCallStack || !1
3661                })
3662            }))
3663        }))
3664    }, a = () => {
3665        c({ categories: { default: { appenders: ["out"], level: "OFF" } } })
3666    };
3667    a(), n.addListener(c);
3668    const l = e => (t(`configForCategory: searching for config for ${e}`), o.has(e) ? (t(`configForCategory: ${e} exists in config, returning it`), o.get(e)) : e.indexOf(".") > 0 ? (t(`configForCategory: ${e} has hierarchy, searching for parents`), l(e.substring(0, e.lastIndexOf(".")))) : (t("configForCategory: returning config for default category"), l("default")));
3669    e.exports = o, e.exports = Object.assign(e.exports, {
3670        appendersForCategory: e => l(e).appenders,
3671        getLevelForCategory: e => l(e).level,
3672        setLevelForCategory: (e, n) => {
3673            let r = o.get(e);
3674            if (t(`setLevelForCategory: found ${r} for ${e}`),!r) {
3675                const n = l(e);
3676                t(`setLevelForCategory: no config found for category, found ${n} for parents of ${e}`), r = {
3677                    appenders: n.appenders
3678                }
3679            }
3680            r.level = n, o.set(e, r)
3681        },
3682        getEnableCallStackForCategory: e =>!0 === l(e).enableCallStack,
3683        setEnableCallStackForCategory: (e, t) => {
3684            l(e).enableCallStack = t
3685        },
3686        init: a
3687    })
3688}(wa);
3689const Oa = Nr.exports("log4js:logger"), ba = Hu, _a = gu, Ba = eo, Pa = wa.exports, ka = tu,
3690    xa = /at (?:(.+)\s+\()?(?:(.+?):(\d+)(?::(\d+))?|([^)]+))\)?/;
3691
3692function Na(e, t = 4) {
3693    const n = e.stack.split("\n").slice(t), r = xa.exec(n[0]);
3694    return r && 6 === r.length ? {
3695                                     functionName: r[1],
3696                                     fileName: r[2],
3697                                     lineNumber: parseInt(r[3], 10),
3698                                     columnNumber: parseInt(r[4], 10),
3699                                     callStack: n.join("\n")
3700                                 } : null
3701}
3702
3703class Ia {
3704    constructor(e) {
3705        if (!e) throw new Error("No category provided.");
3706        this.category = e, this.context = {
3707        }, this.parseCallStack = Na, Oa(`Logger created (${this.category}, ${this.level})`)
3708    }
3709
3710    get level() {
3711        return _a.getLevel(Pa.getLevelForCategory(this.category), _a.TRACE)
3712    }
3713
3714    set level(e) {
3715        Pa.setLevelForCategory(this.category, _a.getLevel(e, this.level))
3716    }
3717
3718    get useCallStack() {
3719        return Pa.getEnableCallStackForCategory(this.category)
3720    }
3721
3722    set useCallStack(e) {
3723        Pa.setEnableCallStackForCategory(this.category,!0 === e)
3724    }
3725
3726    log(e, ...t) {
3727        let n = _a.getLevel(e);
3728        n || (this._log(_a.WARN, "log4js:logger.log: invalid value for log-level as first parameter given: ", e), n = _a.INFO), this.isLevelEnabled(n) && this._log(n, t)
3729    }
3730
3731    isLevelEnabled(e) {
3732        return this.level.isLessThanOrEqualTo(e)
3733    }
3734
3735    _log(e, t) {
3736        Oa(`sending log data (${e}) to appenders`);
3737        const n = new ba(this.category, e, t, this.context, this.useCallStack && this.parseCallStack(new Error));
3738        Ba.send(n)
3739    }
3740
3741    addContext(e, t) {
3742        this.context[e] = t
3743    }
3744
3745    removeContext(e) {
3746        delete this.context[e]
3747    }
3748
3749    clearContext() {
3750        this.context = {}
3751    }
3752
3753    setParseCallStackFunction(e) {
3754        this.parseCallStack = e
3755    }
3756}
3757
3758function Ta(e) {
3759    const t = _a.getLevel(e), n = t.toString().toLowerCase().replace(/_([a-z])/g, (e => e[1].toUpperCase())),
3760        r = n[0].toUpperCase() + n.slice(1);
3761    Ia.prototype[`is${r}Enabled`] = function () {
3762        return this.isLevelEnabled(t)
3763    }, Ia.prototype[n] = function (...e) {
3764        this.log(t, ...e)
3765    }
3766}
3767
3768_a.levels.forEach(Ta), ka.addListener((() => {
3769    _a.levels.forEach(Ta)
3770}));
3771var Ra = Ia;
3772const Ma = gu;
3773
3774function La(e) {
3775    return e.originalUrl || e.url
3776}
3777
3778function ja(e, t) {
3779    for (let n = 0;n < t.length; n++) e = e.replace(t[n].token, t[n].replacement);
3780    return e
3781}
3782
3783const $a = Nr.exports("log4js:recording"), Ha = [];
3784
3785function Ja() {
3786    return Ha.slice()
3787}
3788
3789function Ga() {
3790    Ha.length = 0
3791}
3792
3793var Va = {
3794    configure: function () {
3795        return function (e) {
3796            $a(`received logEvent, number of events now ${Ha.length + 1}`), $a("log event was ", e), Ha.push(e)
3797        }
3798    },
3799    replay: Ja,
3800    playback: Ja,
3801    reset: Ga,
3802    erase: Ga
3803};
3804const Ua = Nr.exports("log4js:main"), Wa = D.default, za = Wr({ proto: !0 }), Ka = tu, qa = hu, Ya = gu,
3805    Xa = Au.exports, Za = wa.exports, Qa = Ra, el = eo, tl = function (e, t) {
3806        t = "string" == typeof t || "function" == typeof t ? { format: t } : t || {};
3807        const n = e;
3808        let r = Ma.getLevel(t.level, Ma.INFO);
3809        const u = t.format || ':remote-addr - - ":method :url HTTP/:http-version" :status :content-length ":referrer" ":user-agent"',
3810            o = function(e){
3811                let t = null;
3812                if (e instanceof RegExp && (t = e), "string" == typeof e && (t = new RegExp(e)), Array.isArray(e)) {
3813                    const n = e.map((e => e.source ? e.source : e));
3814                    t = new RegExp(n.join("|"))
3815                }
3816                return t
3817            }(t.nolog);
3818        return (e, i, s) => {
3819            if (e._logging) return s();
3820            if (o && o.test(e.originalUrl)) return s();
3821            if (n.isLevelEnabled(r) || "auto" === t.level) {
3822                const o = new Date, {writeHead:s} = i;
3823                e._logging = !0, i.writeHead = (e, t) => {
3824                    i.writeHead = s, i.writeHead(e, t), i.__statusCode = e, i.__headers = t || {}
3825                }, i.on("finish", (() => {
3826                    i.responseTime = new Date - o, i.statusCode && "auto" === t.level && (r = Ma.INFO, i.statusCode >= 300 && (r = Ma.WARN), i.statusCode >= 400 && (r = Ma.ERROR)), r = function(e, t, n){
3827                        let r = t;
3828                        if (n) {
3829                            const t = n.find((t => {
3830                                let n = !1;
3831                                return n = t.from && t.to ? e >= t.from && e <= t.to : -1 !== t.codes.indexOf(e), n
3832                            }));
3833                            t && (r = Ma.getLevel(t.level, r))
3834                        }
3835                        return r
3836                    }(i.statusCode, r, t.statusRules);
3837                    const s = function(e, t, n){
3838                        const r = [];
3839                        return r.push({ token: ":url", replacement: La(e) }), r.push({
3840                            token: ":protocol",
3841                            replacement: e.protocol
3842                        }), r.push({ token: ":hostname", replacement: e.hostname }), r.push({
3843                            token: ":method",
3844                            replacement: e.method
3845                        }), r.push({ token: ":status", replacement: t.__statusCode || t.statusCode }), r.push({
3846                            token: ":response-time",
3847                            replacement: t.responseTime
3848                        }), r.push({ token: ":date", replacement: (new Date).toUTCString() }), r.push({
3849                            token: ":referrer",
3850                            replacement: e.headers.referer || e.headers.referrer || ""
3851                        }), r.push({
3852                            token: ":http-version",
3853                            replacement: `${e.httpVersionMajor}.${e.httpVersionMinor}`
3854                        }), r.push({
3855                            token: ":remote-addr",
3856                            replacement: e.headers["x-forwarded-for"] || e.ip || e._remoteAddress || e.socket && (e.socket.remoteAddress || e.socket.socket && e.socket.socket.remoteAddress)
3857                        }), r.push({ token: ":user-agent", replacement: e.headers["user-agent"] }), r.push({
3858                            token: ":content-length",
3859                            replacement: t.getHeader("content-length") || t.__headers && t.__headers["Content-Length"] || "-"
3860                        }), r.push({
3861                            token: /:req\[([^\]]+)]/g,
3862                            replacement: (t, n) => e.headers[n.toLowerCase()]
3863                        }), r.push({
3864                            token: /:res\[([^\]]+)]/g,
3865                            replacement: (e, n) => t.getHeader(n.toLowerCase()) || t.__headers && t.__headers[n]
3866                        }), (e => {
3867                            const t = e.concat();
3868                            for (let e = 0;e < t.length; ++e) for (let n = e + 1;n < t.length; ++n) t[e].token == t[n].token && t.splice(n--, 1);
3869                            return t
3870                        })(n.concat(r))
3871                    }(e, i, t.tokens || []);
3872                    if (t.context && n.addContext("res", i), "function" == typeof u) {
3873                        const t = u(e, i, (e => ja(e, s)));
3874                        t && n.log(r, t)
3875                    } else n.log(r, ja(u, s));
3876                    t.context && n.removeContext("res")
3877                }))
3878            }
3879            return s()
3880        }
3881    }, nl = Va;
3882let rl = !1;
3883
3884function ul(e) {
3885    if (!rl) return;
3886    Ua("Received log event ", e);
3887    Za.appendersForCategory(e.categoryName).forEach((t => {
3888        t(e)
3889    }))
3890}
3891
3892function ol(e) {
3893    rl && il();
3894    let t = e;
3895    return "string" == typeof t && (t = function(e){
3896        Ua(`Loading configuration from ${e}`);
3897        try {
3898            return JSON.parse(Wa.readFileSync(e, "utf8"))
3899        } catch (t) {
3900            throw new Error(`Problem reading config from file "${e}". Error was ${t.message}`, t)
3901        }
3902    }(e)), Ua(`Configuration is ${t}`), Ka.configure(za(t)), el.onMessage(ul), rl = !0, sl
3903}
3904
3905function il(e) {
3906    Ua("Shutdown called. Disabling all log writing."), rl = !1;
3907    const t = Array.from(Xa.values());
3908    Xa.init(), Za.init();
3909    const n = t.reduceRight(((e, t) => t.shutdown ? e + 1 : e), 0);
3910    if (0 === n) return Ua("No appenders with shutdown functions found."), void 0 !== e && e();
3911    let r, u = 0;
3912
3913    function o(t) {
3914        r = r || t, u += 1, Ua(`Appender shutdowns complete: ${u} / ${n}`), u >= n && (Ua("All shutdown functions completed."), e && e(r))
3915    }
3916
3917    return Ua(`Found ${n} appenders with shutdown functions.`), t.filter((e => e.shutdown)).forEach((e => e.shutdown(o))), null
3918}
3919
3920const sl = {
3921    getLogger: function (e) {
3922        return rl || ol(process.env.LOG4JS_CONFIG || {
3923            appenders: { out: { type: "stdout" } },
3924            categories: { default: { appenders: ["out"], level: "OFF" } }
3925        }), new Qa(e || "default")
3926    },
3927    configure: ol,
3928    shutdown: il,
3929    connectLogger: tl,
3930    levels: Ya,
3931    addLayout: qa.addLayout,
3932    recording: function () {
3933        return nl
3934    }
3935};
3936var cl = sl, al = {};
3937Object.defineProperty(al, "__esModule", {
3938    value: !0
3939}), al.levelMap = al.getLevel = al.setCategoriesLevel = al.getConfiguration = al.setConfiguration = void 0;
3940const ll = cl;
3941let fl = {
3942    appenders: {
3943        debug: { type: "stdout", layout: { type: "pattern", pattern: "[%d] > hvigor %p %c %[%m%]" } },
3944        info: { type: "stdout", layout: { type: "pattern", pattern: "[%d] > hvigor %[%m%]" } },
3945        "no-pattern-info": { type: "stdout", layout: { type: "pattern", pattern: "%m" } },
3946        wrong: { type: "stderr", layout: { type: "pattern", pattern: "[%d] > hvigor %[%p: %m%]" } },
3947        "just-debug": { type: "logLevelFilter", appender: "debug", level: "debug", maxLevel: "debug" },
3948        "just-info": { type: "logLevelFilter", appender: "info", level: "info", maxLevel: "info" },
3949        "just-wrong": { type: "logLevelFilter", appender: "wrong", level: "warn", maxLevel: "error" }
3950    },
3951    categories: {
3952        default: { appenders: ["just-debug", "just-info", "just-wrong"], level: "debug" },
3953        "no-pattern-info": { appenders: ["no-pattern-info"], level: "info" }
3954    }
3955};
3956al.setConfiguration = e => {
3957    fl = e
3958};
3959al.getConfiguration = () => fl;
3960let dl = ll.levels.DEBUG;
3961al.setCategoriesLevel = (e, t) => {
3962    dl = e;
3963    const n = fl.categories;
3964    for (const r in n) (null == t ? void 0 : t.includes(r)) || Object.prototype.hasOwnProperty.call(n, r) && (n[r].level = e.levelStr)
3965};
3966al.getLevel = () => dl, al.levelMap = new Map([["ALL", ll.levels.ALL], ["MARK", ll.levels.MARK], ["TRACE", ll.levels.TRACE], ["DEBUG", ll.levels.DEBUG], ["INFO", ll.levels.INFO], ["WARN", ll.levels.WARN], ["ERROR", ll.levels.ERROR], ["FATAL", ll.levels.FATAL], ["OFF", ll.levels.OFF]]);
3967var Dl = w && w.__createBinding || (Object.create ? function (e, t, n, r) {
3968    void 0 === r && (r = n);
3969    var u = Object.getOwnPropertyDescriptor(t, n);
3970    u && !("get" in u ? !t.__esModule : u.writable || u.configurable) || (u = { enumerable: !0, get: function () {
3971        return t[n]
3972    } }), Object.defineProperty(e, r, u)
3973} : function (e, t, n, r) {
3974    void 0 === r && (r = n), e[r] = t[n]
3975}), pl = w && w.__setModuleDefault || (Object.create ? function (e, t) {
3976    Object.defineProperty(e, "default", { enumerable: !0, value: t })
3977} : function (e, t) {
3978    e.default = t
3979}), El = w && w.__importStar || function (e) {
3980    if (e && e.__esModule) return e;
3981    var t = {};
3982    if (null != e) for (var n in e) "default" !== n && Object.prototype.hasOwnProperty.call(e, n) && Dl(t, e, n);
3983    return pl(t, e), t
3984};
3985Object.defineProperty(xr, "__esModule", { value: !0 }), xr.evaluateLogLevel = xr.HvigorLogger = void 0;
3986const ml = El(cl), hl = cl, yl = El(F.default), Cl = al;
3987
3988class Fl {
3989    constructor(e) {
3990        ml.configure((0, Cl.getConfiguration)()), this._logger = ml.getLogger(e), this._logger.level = (0, Cl.getLevel)()
3991    }
3992
3993    static getLogger(e) {
3994        return new Fl(e)
3995    }
3996
3997    log(e, ...t) {
3998        this._logger.log(e, ...t)
3999    }
4000
4001    debug(e, ...t) {
4002        this._logger.debug(e, ...t)
4003    }
4004
4005    info(e, ...t) {
4006        this._logger.info(e, ...t)
4007    }
4008
4009    warn(e, ...t) {
4010        void 0 !== e && "" !== e && this._logger.warn(e, ...t)
4011    }
4012
4013    error(e, ...t) {
4014        this._logger.error(e, ...t)
4015    }
4016
4017    _printTaskExecuteInfo(e, t) {
4018        this.info(`Finished :${e}... after ${t}`)
4019    }
4020
4021    _printFailedTaskInfo(e) {
4022        this.error(`Failed :${e}... `)
4023    }
4024
4025    _printDisabledTaskInfo(e) {
4026        this.info(`Disabled :${e}... `)
4027    }
4028
4029    _printUpToDateTaskInfo(e) {
4030        this.info(`UP-TO-DATE :${e}...  `)
4031    }
4032
4033    errorMessageExit(e, ...t) {
4034        throw new Error(yl.format(e, ...t))
4035    }
4036
4037    errorExit(e, t, ...n) {
4038        t && this._logger.error(t, n), this._logger.error(e.stack)
4039    }
4040
4041    setLevel(e, t) {
4042        (0, Cl.setCategoriesLevel)(e, t), ml.shutdown(), ml.configure((0, Cl.getConfiguration)())
4043    }
4044
4045    getLevel() {
4046        return this._logger.level
4047    }
4048
4049    configure(e) {
4050        const t = (0, Cl.getConfiguration)(),
4051            n = { appenders: { ...t.appenders, ...e.appenders }, categories: { ...t.categories, ...e.categories } };
4052        (0, Cl.setConfiguration)(n), ml.shutdown(), ml.configure(n)
4053    }
4054}
4055
4056xr.HvigorLogger = Fl, xr.evaluateLogLevel = function (e, t) {
4057    t.debug ? e.setLevel(hl.levels.DEBUG) : t.warn ? e.setLevel(hl.levels.WARN) : t.error ? e.setLevel(hl.levels.ERROR) : e.setLevel(hl.levels.INFO)
4058};
4059var gl = w && w.__importDefault || function (e) {
4060    return e && e.__esModule ? e : { default: e }
4061};
4062Object.defineProperty(X, "__esModule", { value: !0 }), X.parseJsonText = X.parseJsonFile = void 0;
4063const Al = Z, vl = gl(kr), Sl = gl(p.default), wl = gl(E.default), Ol = xr.HvigorLogger.getLogger("parse-json-util");
4064var bl;
4065!function(e){
4066    e[e.Char=0] = "Char", e[e.EOF=1] = "EOF", e[e.Identifier=2] = "Identifier"
4067}(bl || (bl = {}));
4068let _l, Bl, Pl, kl, xl, Nl, Il = "start", Tl = [], Rl = 0, Ml = 1, Ll = 0, jl = !1, $l = "default", Hl = "'", Jl = 1;
4069
4070function Gl(e, t = !1) {
4071    Bl = String(e), Il = "start", Tl = [], Rl = 0, Ml = 1, Ll = 0, kl = void 0, jl = t;
4072    do {
4073        _l = Vl(), Xl[Il]()
4074    } while ("eof" !== _l.type);
4075    return kl
4076}
4077
4078function Vl() {
4079    for ($l = "default", xl = "", Hl = "'", Jl = 1;; ) {
4080        Nl = Ul();
4081        const e = zl[$l]();
4082        if (e) return e
4083    }
4084}
4085
4086function Ul() {
4087    if (Bl[Rl]) return String.fromCodePoint(Bl.codePointAt(Rl))
4088}
4089
4090function Wl() {
4091    const e = Ul();
4092    return "\n" === e ? (Ml++, Ll = 0) : e ? Ll += e.length : Ll++, e && (Rl += e.length), e
4093}
4094
4095X.parseJsonFile = function (e, t = !1, n = "utf-8") {
4096    const r = vl.default.readFileSync(Sl.default.resolve(e), { encoding: n });
4097    try {
4098        return Gl(r, t)
4099    } catch (t) {
4100        if (t instanceof SyntaxError) {
4101            const n = t.message.split("at");
4102            2 === n.length && Ol.errorMessageExit(`${n[0].trim()}${wl.default.EOL}\t at ${e}:${n[1].trim()}`)
4103        }
4104        Ol.errorMessageExit(`${e} is not in valid JSON/JSON5 format.`)
4105    }
4106}, X.parseJsonText = Gl;
4107const zl = {
4108    default() {
4109        switch (Nl) {
4110            case "/":
4111                return Wl(), void ($l = "comment");
4112            case void 0:
4113                return Wl(), Kl("eof")
4114        }
4115        if (!Al.JudgeUtil.isIgnoreChar(Nl) && !Al.JudgeUtil.isSpaceSeparator(Nl)) return zl[Il]();
4116        Wl()
4117    },
4118    start() {
4119        $l = "value"
4120    },
4121    beforePropertyName() {
4122        switch (Nl) {
4123            case "$":
4124            case "_":
4125                return xl = Wl(), void ($l = "identifierName");
4126            case "\\":
4127                return Wl(), void ($l = "identifierNameStartEscape");
4128            case "}":
4129                return Kl("punctuator", Wl());
4130            case '"':
4131            case "'":
4132                return Hl = Nl, Wl(), void ($l = "string")
4133        }
4134        if (Al.JudgeUtil.isIdStartChar(Nl)) return xl += Wl(), void ($l = "identifierName");
4135        throw tf(bl.Char, Wl())
4136    },
4137    afterPropertyName() {
4138        if (":" === Nl) return Kl("punctuator", Wl());
4139        throw tf(bl.Char, Wl())
4140    },
4141    beforePropertyValue() {
4142        $l = "value"
4143    },
4144    afterPropertyValue() {
4145        switch (Nl) {
4146            case ",":
4147            case "}":
4148                return Kl("punctuator", Wl())
4149        }
4150        throw tf(bl.Char, Wl())
4151    },
4152    beforeArrayValue() {
4153        if ("]" === Nl) return Kl("punctuator", Wl());
4154        $l = "value"
4155    },
4156    afterArrayValue() {
4157        switch (Nl) {
4158            case ",":
4159            case "]":
4160                return Kl("punctuator", Wl())
4161        }
4162        throw tf(bl.Char, Wl())
4163    },
4164    end() {
4165        throw tf(bl.Char, Wl())
4166    },
4167    comment() {
4168        switch (Nl) {
4169            case "*":
4170                return Wl(), void ($l = "multiLineComment");
4171            case "/":
4172                return Wl(), void ($l = "singleLineComment")
4173        }
4174        throw tf(bl.Char, Wl())
4175    },
4176    multiLineComment() {
4177        switch (Nl) {
4178            case "*":
4179                return Wl(), void ($l = "multiLineCommentAsterisk");
4180            case void 0:
4181                throw tf(bl.Char, Wl())
4182        }
4183        Wl()
4184    },
4185    multiLineCommentAsterisk() {
4186        switch (Nl) {
4187            case "*":
4188                return void Wl();
4189            case "/":
4190                return Wl(), void ($l = "default");
4191            case void 0:
4192                throw tf(bl.Char, Wl())
4193        }
4194        Wl(), $l = "multiLineComment"
4195    },
4196    singleLineComment() {
4197        switch (Nl) {
4198            case "\n":
4199            case "\r":
4200            case "\u2028":
4201            case "\u2029":
4202                return Wl(), void ($l = "default");
4203            case void 0:
4204                return Wl(), Kl("eof")
4205        }
4206        Wl()
4207    },
4208    value() {
4209        switch (Nl) {
4210            case "{":
4211            case "[":
4212                return Kl("punctuator", Wl());
4213            case "n":
4214                return Wl(), ql("ull"), Kl("null", null);
4215            case "t":
4216                return Wl(), ql("rue"), Kl("boolean",!0);
4217            case "f":
4218                return Wl(), ql("alse"), Kl("boolean",!1);
4219            case "-":
4220            case "+":
4221                return "-" === Wl() && (Jl = -1), void ($l = "numerical");
4222            case ".":
4223            case "0":
4224            case "I":
4225            case "N":
4226                return void ($l = "numerical");
4227            case '"':
4228            case "'":
4229                return Hl = Nl, Wl(), xl = "", void ($l = "string")
4230        }
4231        if (void 0 === Nl || !Al.JudgeUtil.isDigitWithoutZero(Nl)) throw tf(bl.Char, Wl());
4232        $l = "numerical"
4233    },
4234    numerical() {
4235        switch (Nl) {
4236            case ".":
4237                return xl = Wl(), void ($l = "decimalPointLeading");
4238            case "0":
4239                return xl = Wl(), void ($l = "zero");
4240            case "I":
4241                return Wl(), ql("nfinity"), Kl("numeric", Jl * (1 / 0));
4242            case "N":
4243                return Wl(), ql("aN"), Kl("numeric", NaN)
4244        }
4245        if (void 0 !== Nl && Al.JudgeUtil.isDigitWithoutZero(Nl)) return xl = Wl(), void ($l = "decimalInteger");
4246        throw tf(bl.Char, Wl())
4247    },
4248    zero() {
4249        switch (Nl) {
4250            case ".":
4251            case "e":
4252            case "E":
4253                return void ($l = "decimal");
4254            case "x":
4255            case "X":
4256                return xl += Wl(), void ($l = "hexadecimal")
4257        }
4258        return Kl("numeric", 0)
4259    },
4260    decimalInteger() {
4261        switch (Nl) {
4262            case ".":
4263            case "e":
4264            case "E":
4265                return void ($l = "decimal")
4266        }
4267        if (!Al.JudgeUtil.isDigit(Nl)) return Kl("numeric", Jl * Number(xl));
4268        xl += Wl()
4269    },
4270    decimal() {
4271        switch (Nl) {
4272            case ".":
4273                xl += Wl(), $l = "decimalFraction";
4274                break;
4275            case "e":
4276            case "E":
4277                xl += Wl(), $l = "decimalExponent"
4278        }
4279    },
4280    decimalPointLeading() {
4281        if (Al.JudgeUtil.isDigit(Nl)) return xl += Wl(), void ($l = "decimalFraction");
4282        throw tf(bl.Char, Wl())
4283    },
4284    decimalFraction() {
4285        switch (Nl) {
4286            case "e":
4287            case "E":
4288                return xl += Wl(), void ($l = "decimalExponent")
4289        }
4290        if (!Al.JudgeUtil.isDigit(Nl)) return Kl("numeric", Jl * Number(xl));
4291        xl += Wl()
4292    },
4293    decimalExponent() {
4294        switch (Nl) {
4295            case "+":
4296            case "-":
4297                return xl += Wl(), void ($l = "decimalExponentSign")
4298        }
4299        if (Al.JudgeUtil.isDigit(Nl)) return xl += Wl(), void ($l = "decimalExponentInteger");
4300        throw tf(bl.Char, Wl())
4301    },
4302    decimalExponentSign() {
4303        if (Al.JudgeUtil.isDigit(Nl)) return xl += Wl(), void ($l = "decimalExponentInteger");
4304        throw tf(bl.Char, Wl())
4305    },
4306    decimalExponentInteger() {
4307        if (!Al.JudgeUtil.isDigit(Nl)) return Kl("numeric", Jl * Number(xl));
4308        xl += Wl()
4309    },
4310    hexadecimal() {
4311        if (Al.JudgeUtil.isHexDigit(Nl)) return xl += Wl(), void ($l = "hexadecimalInteger");
4312        throw tf(bl.Char, Wl())
4313    },
4314    hexadecimalInteger() {
4315        if (!Al.JudgeUtil.isHexDigit(Nl)) return Kl("numeric", Jl * Number(xl));
4316        xl += Wl()
4317    },
4318    identifierNameStartEscape() {
4319        if ("u" !== Nl) throw tf(bl.Char, Wl());
4320        Wl();
4321        const e = Yl();
4322        switch (e) {
4323            case "$":
4324            case "_":
4325                break;
4326            default:
4327                if (!Al.JudgeUtil.isIdStartChar(e)) throw tf(bl.Identifier)
4328        }
4329        xl += e, $l = "identifierName"
4330    },
4331    identifierName() {
4332        switch (Nl) {
4333            case "$":
4334            case "_":
4335            case "‌":
4336            case "‍":
4337                return void (xl += Wl());
4338            case "\\":
4339                return Wl(), void ($l = "identifierNameEscape")
4340        }
4341        if (!Al.JudgeUtil.isIdContinueChar(Nl)) return Kl("identifier", xl);
4342        xl += Wl()
4343    },
4344    identifierNameEscape() {
4345        if ("u" !== Nl) throw tf(bl.Char, Wl());
4346        Wl();
4347        const e = Yl();
4348        switch (e) {
4349            case "$":
4350            case "_":
4351            case "‌":
4352            case "‍":
4353                break;
4354            default:
4355                if (!Al.JudgeUtil.isIdContinueChar(e)) throw tf(bl.Identifier)
4356        }
4357        xl += e, $l = "identifierName"
4358    },
4359    string() {
4360        switch (Nl) {
4361            case "\\":
4362                return Wl(), void (xl += function(){
4363                    const e = Ul(), t = function(){
4364                        switch (Ul()) {
4365                            case "b":
4366                                return Wl(), "\b";
4367                            case "f":
4368                                return Wl(), "\f";
4369                            case "n":
4370                                return Wl(), "\n";
4371                            case "r":
4372                                return Wl(), "\r";
4373                            case "t":
4374                                return Wl(), "\t";
4375                            case "v":
4376                                return Wl(), "\v"
4377                        }
4378                        return
4379                    }();
4380                    if (t) return t;
4381                    switch (e) {
4382                        case "0":
4383                            if (Wl(), Al.JudgeUtil.isDigit(Ul())) throw tf(bl.Char, Wl());
4384                            return "\0";
4385                        case "x":
4386                            return Wl(), function(){
4387                                let e = "", t = Ul();
4388                                if (!Al.JudgeUtil.isHexDigit(t)) throw tf(bl.Char, Wl());
4389                                if (e += Wl(), t = Ul(),!Al.JudgeUtil.isHexDigit(t)) throw tf(bl.Char, Wl());
4390                                return e += Wl(), String.fromCodePoint(parseInt(e, 16))
4391                            }();
4392                        case "u":
4393                            return Wl(), Yl();
4394                        case "\n":
4395                        case "\u2028":
4396                        case "\u2029":
4397                            return Wl(), "";
4398                        case "\r":
4399                            return Wl(), "\n" === Ul() && Wl(), ""
4400                    }
4401                    if (void 0 === e || Al.JudgeUtil.isDigitWithoutZero(e)) throw tf(bl.Char, Wl());
4402                    return Wl()
4403                }());
4404            case '"':
4405            case "'":
4406                if (Nl === Hl) {
4407                    const e = Kl("string", xl);
4408                    return Wl(), e
4409                }
4410                return void (xl += Wl());
4411            case "\n":
4412            case "\r":
4413            case void 0:
4414                throw tf(bl.Char, Wl());
4415            case "\u2028":
4416            case "\u2029":
4417                !function(e){
4418                    Ol.warn(`JSON5: '${ef(e)}' in strings is not valid ECMAScript; consider escaping.`)
4419                }(Nl)
4420        }
4421        xl += Wl()
4422    }
4423};
4424
4425function Kl(e, t) {
4426    return { type: e, value: t, line: Ml, column: Ll }
4427}
4428
4429function ql(e) {
4430    for (const t of e) {
4431        if (Ul() !== t) throw tf(bl.Char, Wl());
4432        Wl()
4433    }
4434}
4435
4436function Yl() {
4437    let e = "", t = 4;
4438    for (; t-- > 0; ) {
4439        const t = Ul();
4440        if (!Al.JudgeUtil.isHexDigit(t)) throw tf(bl.Char, Wl());
4441        e += Wl()
4442    }
4443    return String.fromCodePoint(parseInt(e, 16))
4444}
4445
4446const Xl = {
4447    start() {
4448        if ("eof" === _l.type) throw tf(bl.EOF);
4449        Zl()
4450    },
4451    beforePropertyName() {
4452        switch (_l.type) {
4453            case "identifier":
4454            case "string":
4455                return Pl = _l.value, void (Il = "afterPropertyName");
4456            case "punctuator":
4457                return void Ql();
4458            case "eof":
4459                throw tf(bl.EOF)
4460        }
4461    },
4462    afterPropertyName() {
4463        if ("eof" === _l.type) throw tf(bl.EOF);
4464        Il = "beforePropertyValue"
4465    },
4466    beforePropertyValue() {
4467        if ("eof" === _l.type) throw tf(bl.EOF);
4468        Zl()
4469    },
4470    afterPropertyValue() {
4471        if ("eof" === _l.type) throw tf(bl.EOF);
4472        switch (_l.value) {
4473            case ",":
4474                return void (Il = "beforePropertyName");
4475            case "}":
4476                Ql()
4477        }
4478    },
4479    beforeArrayValue() {
4480        if ("eof" === _l.type) throw tf(bl.EOF);
4481            "punctuator" !== _l.type || "]" !== _l.value ? Zl() : Ql()
4482    },
4483    afterArrayValue() {
4484        if ("eof" === _l.type) throw tf(bl.EOF);
4485        switch (_l.value) {
4486            case ",":
4487                return void (Il = "beforeArrayValue");
4488            case "]":
4489                Ql()
4490        }
4491    },
4492    end() {
4493    }
4494};
4495
4496function Zl() {
4497    const e = function(){
4498        let e;
4499        switch (_l.type) {
4500            case "punctuator":
4501                switch (_l.value) {
4502                    case "{":
4503                        e = {};
4504                        break;
4505                    case "[":
4506                        e = []
4507                }
4508                break;
4509            case "null":
4510            case "boolean":
4511            case "numeric":
4512            case "string":
4513                e = _l.value
4514        }
4515        return e
4516    }();
4517    if (jl && "object" == typeof e && (e._line = Ml, e._column = Ll), void 0 === kl) kl = e; else {
4518        const t = Tl[Tl.length-1];
4519        Array.isArray(t) ? jl && "object" != typeof e ? t.push({
4520            value: e,
4521            _line: Ml,
4522            _column: Ll
4523        }) : t.push(e) : t[Pl] = jl && "object" != typeof e ? { value: e, _line: Ml, _column: Ll } : e
4524    }
4525    !function(e){
4526        if (e && "object" == typeof e) Tl.push(e), Il = Array.isArray(e) ? "beforeArrayValue" : "beforePropertyName"; else {
4527            const e = Tl[Tl.length-1];
4528            Il = e ? Array.isArray(e) ? "afterArrayValue" : "afterPropertyValue" : "end"
4529        }
4530    }(e)
4531}
4532
4533function Ql() {
4534    Tl.pop();
4535    const e = Tl[Tl.length-1];
4536    Il = e ? Array.isArray(e) ? "afterArrayValue" : "afterPropertyValue" : "end"
4537}
4538
4539function ef(e) {
4540    const t = {
4541        "'": "\\'",
4542        '"': '\\"',
4543        "\\": "\\\\",
4544        "\b": "\\b",
4545        "\f": "\\f",
4546        "\n": "\\n",
4547        "\r": "\\r",
4548        "\t": "\\t",
4549        "\v": "\\v",
4550        "\0": "\\0",
4551        "\u2028": "\\u2028",
4552        "\u2029": "\\u2029"
4553    };
4554    if (t[e]) return t[e];
4555    if (e < " ") {
4556        const t = e.charCodeAt(0).toString(16);
4557        return `\\x${`00${t}`.substring(t.length)}`
4558    }
4559    return e
4560}
4561
4562function tf(e, t) {
4563    let n = "";
4564    switch (e) {
4565        case bl.Char:
4566            n = void 0 === t ? `JSON5: invalid end of input at ${Ml}:${Ll}` : `JSON5: invalid character '${ef(t)}' at ${Ml}:${Ll}`;
4567            break;
4568        case bl.EOF:
4569            n = `JSON5: invalid end of input at ${Ml}:${Ll}`;
4570            break;
4571        case bl.Identifier:
4572            Ll -= 5, n = `JSON5: invalid identifier character at ${Ml}:${Ll}`
4573    }
4574    const r = new nf(n);
4575    return r.lineNumber = Ml, r.columnNumber = Ll, r
4576}
4577
4578class nf extends SyntaxError {
4579}
4580
4581var rf = w && w.__createBinding || (Object.create ? function (e, t, n, r) {
4582    void 0 === r && (r = n);
4583    var u = Object.getOwnPropertyDescriptor(t, n);
4584    u && !("get" in u ? !t.__esModule : u.writable || u.configurable) || (u = { enumerable: !0, get: function () {
4585        return t[n]
4586    } }), Object.defineProperty(e, r, u)
4587} : function (e, t, n, r) {
4588    void 0 === r && (r = n), e[r] = t[n]
4589}), uf = w && w.__setModuleDefault || (Object.create ? function (e, t) {
4590    Object.defineProperty(e, "default", { enumerable: !0, value: t })
4591} : function (e, t) {
4592    e.default = t
4593}), of = w && w.__importStar || function (e) {
4594    if (e && e.__esModule) return e;
4595    var t = {};
4596    if (null != e) for (var n in e) "default" !== n && Object.prototype.hasOwnProperty.call(e, n) && rf(t, e, n);
4597    return uf(t, e), t
4598};
4599Object.defineProperty(Y, "__esModule", { value: !0 });
4600var sf = Y.cleanWorkSpace = Ff = Y.executeInstallHvigor = yf = Y.isHvigorInstalled = mf = Y.isAllDependenciesInstalled = void 0;
4601const cf = of(D.default), af = of(p.default), lf = b, ff = j, df = $, Df = X;
4602let pf, Ef;
4603var mf = Y.isAllDependenciesInstalled = function () {
4604
4605    function e(e) {
4606        const t = null == e ? void 0 : e.dependencies;
4607        return void 0 === t ? 0 : Object.getOwnPropertyNames(t).length
4608    }
4609
4610    if (pf = gf(), Ef = Af(), e(pf) + 1 !== e(Ef)) return !1;
4611    for (const e in null == pf ? void 0 : pf.dependencies) if (!(0, ff.hasNpmPackInPaths)(e, [lf.HVIGOR_PROJECT_DEPENDENCIES_HOME]) || !hf(e, pf, Ef)) return !1;
4612    return !0
4613};
4614
4615function hf(e, t, n) {
4616    return void 0 !== n.dependencies && (0, ff.offlinePluginConversion)(lf.HVIGOR_PROJECT_ROOT_DIR, t.dependencies[e]) === n.dependencies[e]
4617}
4618
4619var yf = Y.isHvigorInstalled = function () {
4620    return pf = gf(), Ef = Af(), (0, ff.hasNpmPackInPaths)(lf.HVIGOR_ENGINE_PACKAGE_NAME, [lf.HVIGOR_PROJECT_DEPENDENCIES_HOME]) && (0, ff.offlinePluginConversion)(lf.HVIGOR_PROJECT_ROOT_DIR, pf.hvigorVersion) === Ef.dependencies[lf.HVIGOR_ENGINE_PACKAGE_NAME]
4621};
4622const Cf = { cwd: lf.HVIGOR_PROJECT_DEPENDENCIES_HOME, stdio: ["inherit", "inherit", "inherit"] };
4623var Ff = Y.executeInstallHvigor = function () {
4624    (0, df.logInfoPrintConsole)("Hvigor installing...");
4625    const e = { dependencies: {} };
4626    e.dependencies[lf.HVIGOR_ENGINE_PACKAGE_NAME] = (0, ff.offlinePluginConversion)(lf.HVIGOR_PROJECT_ROOT_DIR, pf.hvigorVersion);
4627    try {
4628        cf.mkdirSync(lf.HVIGOR_PROJECT_DEPENDENCIES_HOME, { recursive: !0 });
4629        const t = af.resolve(lf.HVIGOR_PROJECT_DEPENDENCIES_HOME, lf.DEFAULT_PACKAGE_JSON);
4630        cf.writeFileSync(t, JSON.stringify(e))
4631    } catch (e) {
4632        (0, df.logErrorAndExit)(e)
4633    }
4634    !function(){
4635        const e = ["config", "set", "store-dir", lf.HVIGOR_PNPM_STORE_PATH];
4636        (0, ff.executeCommand)(lf.HVIGOR_WRAPPER_PNPM_SCRIPT_PATH, e, Cf)
4637    }(), (0, ff.executeCommand)(lf.HVIGOR_WRAPPER_PNPM_SCRIPT_PATH, ["install"], Cf)
4638};
4639
4640function gf() {
4641    const e = af.resolve(lf.HVIGOR_PROJECT_WRAPPER_HOME, lf.DEFAULT_HVIGOR_CONFIG_JSON_FILE_NAME);
4642    return cf.existsSync(e) || (0, df.logErrorAndExit)(`Error: Hvigor config file ${e} does not exist.`), (0, Df.parseJsonFile)(e)
4643}
4644
4645function Af() {
4646    return cf.existsSync(lf.HVIGOR_PROJECT_DEPENDENCY_PACKAGE_JSON_PATH) ? (0, Df.parseJsonFile)(lf.HVIGOR_PROJECT_DEPENDENCY_PACKAGE_JSON_PATH) : {
4647                                                                                                                                                       dependencies: {
4648                                                                                                                                                       }
4649                                                                                                                                                   }
4650}
4651
4652sf = Y.cleanWorkSpace = function () {
4653    if ((0, df.logInfoPrintConsole)("Hvigor cleaning..."),!cf.existsSync(lf.HVIGOR_PROJECT_DEPENDENCIES_HOME)) return;
4654    const e = cf.readdirSync(lf.HVIGOR_PROJECT_DEPENDENCIES_HOME);
4655    if (e && 0 !== e.length) {
4656        cf.existsSync(lf.HVIGOR_BOOT_JS_FILE_PATH) && (0, ff.executeCommand)(process.argv[0], [lf.HVIGOR_BOOT_JS_FILE_PATH, "--stop-daemon"], {
4657        });
4658        try {
4659            e.forEach((e => {
4660                cf.rmSync(af.resolve(lf.HVIGOR_PROJECT_DEPENDENCIES_HOME, e), { recursive: !0 })
4661            }))
4662        } catch (e) {
4663            (0, df.logErrorAndExit)(`The hvigor build tool cannot be installed. Please manually clear the workspace directory and synchronize the project again.\n\n      Workspace Path: ${lf.HVIGOR_PROJECT_DEPENDENCIES_HOME}.`)
4664        }
4665    }
4666};
4667var vf = {}, Sf = w && w.__createBinding || (Object.create ? function (e, t, n, r) {
4668    void 0 === r && (r = n);
4669    var u = Object.getOwnPropertyDescriptor(t, n);
4670    u && !("get" in u ? !t.__esModule : u.writable || u.configurable) || (u = { enumerable: !0, get: function () {
4671        return t[n]
4672    } }), Object.defineProperty(e, r, u)
4673} : function (e, t, n, r) {
4674    void 0 === r && (r = n), e[r] = t[n]
4675}), wf = w && w.__setModuleDefault || (Object.create ? function (e, t) {
4676    Object.defineProperty(e, "default", { enumerable: !0, value: t })
4677} : function (e, t) {
4678    e.default = t
4679}), Of = w && w.__importStar || function (e) {
4680    if (e && e.__esModule) return e;
4681    var t = {};
4682    if (null != e) for (var n in e) "default" !== n && Object.prototype.hasOwnProperty.call(e, n) && Sf(t, e, n);
4683    return wf(t, e), t
4684};
4685Object.defineProperty(vf, "__esModule", { value: !0 });
4686var bf = vf.executeBuild = void 0;
4687const _f = b, Bf = Of(D.default), Pf = Of(p.default), kf = $;
4688bf = vf.executeBuild = function () {
4689    const e = Pf.resolve(_f.HVIGOR_PROJECT_DEPENDENCIES_HOME, "node_modules", "@ohos", "hvigor", "bin", "hvigor.js");
4690    try {
4691        const t = Bf.realpathSync(e);
4692        require(t)
4693    } catch (t) {
4694        (0, kf.logErrorAndExit)(`Error: ENOENT: no such file ${e},delete ${_f.HVIGOR_PROJECT_DEPENDENCIES_HOME} and retry.`)
4695    }
4696}, function(){
4697    if (O.checkNpmConifg(), O.environmentHandler(), O.isPnpmAvailable() || O.executeInstallPnpm(), yf() && mf()) bf(); else {
4698        sf();
4699        try {
4700            Ff()
4701        } catch (e) {
4702            return void sf()
4703        }
4704        bf()
4705    }
4706}();