• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1"use strict";
2var e = require("path"), t = require("os"), n = require("fs"), r = require("child_process"), u = require("process"),
3  o = require("tty"), i = require("util"), s = require("url"), c = require("constants"), a = require("stream"),
4  l = require("assert"), f = require("zlib"), d = require("net"), D = require("crypto"),
5  p = "undefined" != typeof globalThis ? globalThis : "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : {
6  }, h = {}, E = {}, m = p && p.__importDefault || function (e) {
7    return e && e.__esModule ? e : { default: e }
8  };
9Object.defineProperty(E, "__esModule", { value: !0 }), E.maxPathLength = E.isMac = E.isLinux = E.isWindows = void 0;
10const y = m(t), C = "Windows_NT", F = "Darwin";
11
12function g() {
13  return y.default.type() === C
14}
15
16function A() {
17  return y.default.type() === F
18}
19
20E.isWindows = g, E.isLinux = function () {
21  return "Linux" === y.default.type()
22}, E.isMac = A, E.maxPathLength = function () {
23  return A() ? 1016 : g() ? 259 : 4095
24}, Object.defineProperty(h, "__esModule", {
25  value: !0
26}), h.LOG_LEVEL = h.ANALYZE = h.PARALLEL = h.INCREMENTAL = h.DAEMON = h.DOT = h.PROPERTIES = h.HVIGOR_ARK_COMPILE_MAX_SIZE = h.HVIGOR_POOL_CACHE_TTL = h.HVIGOR_POOL_CACHE_CAPACITY = h.HVIGOR_POOL_MAX_CORE_SIZE = h.HVIGOR_POOL_MAX_SIZE = h.ENABLE_SIGN_TASK_KEY = h.HVIGOR_CACHE_DIR_KEY = h.WORK_SPACE = h.PROJECT_CACHES = h.HVIGOR_USER_HOME_DIR_NAME = h.DEFAULT_PACKAGE_JSON = h.DEFAULT_HVIGOR_CONFIG_JSON_FILE_NAME = h.PNPM = h.HVIGOR = h.NPM_TOOL = h.PNPM_TOOL = h.HVIGOR_ENGINE_PACKAGE_NAME = void 0;
27const v = E;
28h.HVIGOR_ENGINE_PACKAGE_NAME = "@ohos/hvigor", h.PNPM_TOOL = (0, v.isWindows)() ? "pnpm.cmd" : "pnpm", h.NPM_TOOL = (0, v.isWindows)() ? "npm.cmd" : "npm", h.HVIGOR = "hvigor", h.PNPM = "pnpm", h.DEFAULT_HVIGOR_CONFIG_JSON_FILE_NAME = "hvigor-config.json5", h.DEFAULT_PACKAGE_JSON = "package.json", h.HVIGOR_USER_HOME_DIR_NAME = ".hvigor", h.PROJECT_CACHES = "project_caches";
29var S = h.WORK_SPACE = "workspace";
30h.HVIGOR_CACHE_DIR_KEY = "hvigor.cacheDir", h.ENABLE_SIGN_TASK_KEY = "enableSignTask", h.HVIGOR_POOL_MAX_SIZE = "hvigor.pool.maxSize", h.HVIGOR_POOL_MAX_CORE_SIZE = "hvigor.pool.maxCoreSize", h.HVIGOR_POOL_CACHE_CAPACITY = "hvigor.pool.cache.capacity", h.HVIGOR_POOL_CACHE_TTL = "hvigor.pool.cache.ttl", h.HVIGOR_ARK_COMPILE_MAX_SIZE = "hvigor.arkCompile.maxSize", h.PROPERTIES = "properties", h.DOT = ".", h.DAEMON = "daemon", h.INCREMENTAL = "incremental", h.PARALLEL = "typeCheck", h.ANALYZE = "analyze", h.LOG_LEVEL = "logLevel";
31var w = {}, O = {};
32Object.defineProperty(O, "__esModule", {
33  value: !0
34}), O.logError = O.logInfo = O.logErrorAndExit = void 0, O.logErrorAndExit = function (e) {
35  e instanceof Error ? console.error(e.message) : console.error(e), process.exit(-1)
36}, O.logInfo = function (e) {
37  console.log(e)
38}, O.logError = function (e) {
39  console.error(e)
40};
41var _ = p && p.__createBinding || (Object.create ? function (e, t, n, r) {
42  void 0 === r && (r = n);
43  var u = Object.getOwnPropertyDescriptor(t, n);
44  u && !("get" in u ? !t.__esModule : u.writable || u.configurable) || (u = {
45    enumerable: !0, get: function () {
46      return t[n]
47    }
48  }), Object.defineProperty(e, r, u)
49} : function (e, t, n, r) {
50  void 0 === r && (r = n), e[r] = t[n]
51}), b = p && p.__setModuleDefault || (Object.create ? function (e, t) {
52  Object.defineProperty(e, "default", { enumerable: !0, value: t })
53} : function (e, t) {
54  e.default = t
55}), B = p && p.__importStar || function (e) {
56  if (e && e.__esModule) return e;
57  var t = {};
58  if (null != e) for (var n in e) "default" !== n && Object.prototype.hasOwnProperty.call(e, n) && _(t, e, n);
59  return b(t, e), t
60};
61Object.defineProperty(w, "__esModule", { value: !0 });
62var P = w.executeBuild = void 0;
63const k = B(n), I = B(e), x = O, N = r;
64P = w.executeBuild = function (e) {
65  const t = I.resolve(e, "node_modules", "@ohos", "hvigor", "bin", "hvigor.js");
66  try {
67    const e = k.realpathSync(t), n = process.argv.slice(2), r = (0, N.spawn)("node", [e, ...n], { env: process.env });
68    r.stdout.on("data", (e => {
69      (0, x.logInfo)(`${e.toString().trim()}`)
70    })), r.stderr.on("data", (e => {
71      (0, x.logError)(`${e.toString().trim()}`)
72    })), r.on("exit", ((e, t) => {
73      process.exit(null != e ? e : -1)
74    }))
75  } catch (n) {
76    (0, x.logErrorAndExit)(`Error: ENOENT: no such file ${t},delete ${e} and retry.`)
77  }
78};
79var R, T, M, L, j, $ = {}, H = {}, G = { exports: {} }, V = { exports: {} };
80
81function U() {
82  if (T) return R;
83  T = 1;
84  var e = 1e3, t = 60 * e, n = 60 * t, r = 24 * n, u = 7 * r, o = 365.25 * r;
85
86  function i(e, t, n, r) {
87    var u = t >= 1.5 * n;
88    return Math.round(e / n) + " " + r + (u ? "s" : "")
89  }
90
91  return R = function (s, c) {
92    c = c || {};
93    var a = typeof s;
94    if ("string" === a && s.length > 0) return function(i){
95      if ((i = String(i)).length > 100) return;
96      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);
97      if (!s) return;
98      var c = parseFloat(s[1]);
99      switch ((s[2] || "ms").toLowerCase()) {
100        case "years":
101        case "year":
102        case "yrs":
103        case "yr":
104        case "y":
105          return c * o;
106        case "weeks":
107        case "week":
108        case "w":
109          return c * u;
110        case "days":
111        case "day":
112        case "d":
113          return c * r;
114        case "hours":
115        case "hour":
116        case "hrs":
117        case "hr":
118        case "h":
119          return c * n;
120        case "minutes":
121        case "minute":
122        case "mins":
123        case "min":
124        case "m":
125          return c * t;
126        case "seconds":
127        case "second":
128        case "secs":
129        case "sec":
130        case "s":
131          return c * e;
132        case "milliseconds":
133        case "millisecond":
134        case "msecs":
135        case "msec":
136        case "ms":
137          return c;
138        default:
139          return
140      }
141    }(s);
142    if ("number" === a && isFinite(s)) return c.long ? function(u){
143      var o = Math.abs(u);
144      if (o >= r) return i(u, o, r, "day");
145      if (o >= n) return i(u, o, n, "hour");
146      if (o >= t) return i(u, o, t, "minute");
147      if (o >= e) return i(u, o, e, "second");
148      return u + " ms"
149    }(s) : function(u){
150      var o = Math.abs(u);
151      if (o >= r) return Math.round(u / r) + "d";
152      if (o >= n) return Math.round(u / n) + "h";
153      if (o >= t) return Math.round(u / t) + "m";
154      if (o >= e) return Math.round(u / e) + "s";
155      return u + "ms"
156    }(s);
157    throw new Error("val is not a non-empty string or a valid number. val=" + JSON.stringify(s))
158  }
159}
160
161function J() {
162  if (L) return M;
163  return L = 1, M = function (e) {
164
165    function t(e) {
166      let r, u, o, i = null;
167
168      function s(...e) {
169        if (!s.enabled) return;
170        const n = s, u = Number(new Date), o = u - (r || u);
171        n.diff = o, n.prev = r, n.curr = u, r = u, e[0] = t.coerce(e[0]), "string" != typeof e[0] && e.unshift("%O");
172        let i = 0;
173        e[0] = e[0].replace(/%([a-zA-Z%])/g, ((r, u) => {
174          if ("%%" === r) return "%";
175          i++;
176          const o = t.formatters[u];
177          if ("function" == typeof o) {
178            const t = e[i];
179            r = o.call(n, t), e.splice(i, 1), i--
180          }
181          return r
182        })), t.formatArgs.call(n, e);
183        (n.log || t.log).apply(n, e)
184      }
185
186      return s.namespace = e, s.useColors = t.useColors(), s.color = t.selectColor(e), s.extend = n, s.destroy = t.destroy, Object.defineProperty(s, "enabled", {
187        enumerable: !0,
188        configurable: !1,
189        get: () => null !== i ? i : (u !== t.namespaces && (u = t.namespaces, o = t.enabled(e)), o),
190        set: e => {
191          i = e
192        }
193      }), "function" == typeof t.init && t.init(s), s
194    }
195
196    function n(e, n) {
197      const r = t(this.namespace + (void 0 === n ? ":" : n) + e);
198      return r.log = this.log, r
199    }
200
201    function r(e) {
202      return e.toString().substring(2, e.toString().length - 2).replace(/\.\*\?$/, "*")
203    }
204
205    return t.debug = t, t.default = t, t.coerce = function (e) {
206      if (e instanceof Error) return e.stack || e.message;
207      return e
208    }, t.disable = function () {
209      const e = [...t.names.map(r), ...t.skips.map(r).map((e => "-" + e))].join(",");
210      return t.enable(""), e
211    }, t.enable = function (e) {
212      let n;
213      t.save(e), t.namespaces = e, t.names = [], t.skips = [];
214      const r = ("string" == typeof e ? e : "").split(/[\s,]+/), u = r.length;
215      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 + "$")))
216    }, t.enabled = function (e) {
217      if ("*" === e[e.length-1]) return !0;
218      let n, r;
219      for (n = 0, r = t.skips.length; n < r; n++) if (t.skips[n].test(e)) return !1;
220      for (n = 0, r = t.names.length; n < r; n++) if (t.names[n].test(e)) return !0;
221      return !1
222    }, t.humanize = U(), t.destroy = function () {
223      console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")
224    }, Object.keys(e).forEach((n => {
225      t[n] = e[n]
226    })), t.names = [], t.skips = [], t.formatters = {}, t.selectColor = function (e) {
227      let n = 0;
228      for (let t = 0; t < e.length; t++) n = (n << 5) - n + e.charCodeAt(t), n |= 0;
229      return t.colors[Math.abs(n)%t.colors.length]
230    }, t.enable(t.load()), t
231  }, M
232}
233
234var W, z, K, q, Y, Z, X = { exports: {} };
235
236function Q() {
237  return z || (z = 1, W = (e, t) => {
238    t = t || process.argv;
239    const n = e.startsWith("-") ? "" : 1 === e.length ? "-" : "--", r = t.indexOf(n + e), u = t.indexOf("--");
240    return -1 !== r && (-1 === u || r < u)
241  }), W
242}
243
244function ee() {
245  if (q) return K;
246  q = 1;
247  const e = t, n = Q(), r = process.env;
248  let u;
249
250  function o(t) {
251    const o = function(t){
252      if (!1 === u) return 0;
253      if (n("color=16m") || n("color=full") || n("color=truecolor")) return 3;
254      if (n("color=256")) return 2;
255      if (t && !t.isTTY && !0 !== u) return 0;
256      const o = u ? 1 : 0;
257      if ("win32" === process.platform) {
258        const t = e.release().split(".");
259        return Number(process.versions.node.split(".")[0]) >= 8 && Number(t[0]) >= 10 && Number(t[2]) >= 10586 ? Number(t[2]) >= 14931 ? 3 : 2 : 1
260      }
261      if ("CI" in r) return ["TRAVIS", "CIRCLECI", "APPVEYOR", "GITLAB_CI"].some((e => e in r)) || "codeship" === r.CI_NAME ? 1 : o;
262      if ("TEAMCITY_VERSION" in r) return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(r.TEAMCITY_VERSION) ? 1 : 0;
263      if ("truecolor" === r.COLORTERM) return 3;
264      if ("TERM_PROGRAM" in r) {
265        const e = parseInt((r.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
266        switch (r.TERM_PROGRAM) {
267          case "iTerm.app":
268            return e >= 3 ? 3 : 2;
269          case "Apple_Terminal":
270            return 2
271        }
272      }
273      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 : (r.TERM, o)
274    }(t);
275    return function(e){
276      return 0 !== e && { level: e, hasBasic: !0, has256: e >= 2, has16m: e >= 3 }
277    }(o)
278  }
279
280  return n("no-color") || n("no-colors") || n("color=false") ? u = !1 : (n("color") || n("colors") || n("color=true") || n("color=always")) && (u = !0), "FORCE_COLOR" in r && (u = 0 === r.FORCE_COLOR.length || 0 !== parseInt(r.FORCE_COLOR, 10)), K = {
281    supportsColor: o,
282    stdout: o(process.stdout),
283    stderr: o(process.stderr)
284  }
285}
286
287function te() {
288  return Y || (Y = 1, function(e, t){
289    const n = o, r = i;
290    t.init = function (e) {
291      e.inspectOpts = {};
292      const n = Object.keys(t.inspectOpts);
293      for (let r = 0; r < n.length; r++) e.inspectOpts[n[r]] = t.inspectOpts[n[r]]
294    }, t.log = function (...e) {
295      return process.stderr.write(r.format(...e) + "\n")
296    }, t.formatArgs = function (n) {
297      const { namespace:r, useColors:u } = this;
298      if (u) {
299        const t = this.color, u = "[3" + (t < 8 ? t : "8;5;" + t), o = `  ${u};1m${r} `;
300        n[0] = o + n[0].split("\n").join("\n" + o), n.push(u + "m+" + e.exports.humanize(this.diff) + "")
301      } else n[0] = function(){
302        if (t.inspectOpts.hideDate) return "";
303        return (new Date).toISOString() + " "
304      }() + r + " " + n[0]
305    }, t.save = function (e) {
306      e ? process.env.DEBUG = e : delete process.env.DEBUG
307    }, t.load = function () {
308      return process.env.DEBUG
309    }, t.useColors = function () {
310      return "colors" in t.inspectOpts ? Boolean(t.inspectOpts.colors) : n.isatty(process.stderr.fd)
311    }, t.destroy = r.deprecate((() => {
312    }), "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];
313    try {
314      const e = ee();
315      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])
316    } catch (e) {
317    }
318    t.inspectOpts = Object.keys(process.env).filter((e => /^debug_/i.test(e))).reduce(((e, t) => {
319      const n = t.substring(6).toLowerCase().replace(/_([a-z])/g, ((e, t) => t.toUpperCase()));
320      let r = process.env[t];
321      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
322    }), {}), e.exports = J()(t);
323    const { formatters:u } = e.exports;
324    u.o = function (e) {
325      return this.inspectOpts.colors = this.useColors, r.inspect(e, this.inspectOpts).split("\n").map((e => e.trim())).join(" ")
326    }, u.O = function (e) {
327      return this.inspectOpts.colors = this.useColors, r.inspect(e, this.inspectOpts)
328    }
329  }(X, X.exports)), X.exports
330}
331
332Z = G, "undefined" == typeof process || "renderer" === process.type || !0 === process.browser || process.__nwjs ? Z.exports = (j || (j = 1, function(e, t){
333  t.formatArgs = function (t) {
334    if (t[0] = (this.useColors ? "%c" : "") + this.namespace + (this.useColors ? " %c" : " ") + t[0] + (this.useColors ? "%c " : " ") + "+" + e.exports.humanize(this.diff), !this.useColors) return;
335    const n = "color: " + this.color;
336    t.splice(1, 0, n, "color: inherit");
337    let r = 0, u = 0;
338    t[0].replace(/%[a-zA-Z%]/g, (e => {
339      "%%" !== e && (r++, "%c" === e && (u = r))
340    })), t.splice(u, 0, n)
341  }, t.save = function (e) {
342    try {
343      e ? t.storage.setItem("debug", e) : t.storage.removeItem("debug")
344    } catch (e) {
345    }
346  }, t.load = function () {
347    let e;
348    try {
349      e = t.storage.getItem("debug")
350    } catch (e) {
351    }
352    return!e && "undefined" != typeof process && "env" in process && (e = process.env.DEBUG), e
353  }, t.useColors = function () {
354    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+)/))
355  }, t.storage = function(){
356    try {
357      return localStorage
358    } catch (e) {
359    }
360  }(), t.destroy = (() => {
361    let e = !1;
362    return () => {
363      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`."))
364    }
365  })(), 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 || (() => {
366  }), e.exports = J()(t);
367  const { formatters:n } = e.exports;
368  n.j = function (e) {
369    try {
370      return JSON.stringify(e)
371    } catch (e) {
372      return "[UnexpectedJSONParseError]: " + e.message
373    }
374  }
375}(V, V.exports)), V.exports) : Z.exports = te();
376var ne = function (e) {
377  return (e = e || {}).circles ? function(e){
378    var t = [], n = [];
379    return e.proto ? function e(u) {
380      if ("object" != typeof u || null === u) return u;
381      if (u instanceof Date) return new Date(u);
382      if (Array.isArray(u)) return r(u, e);
383      if (u instanceof Map) return new Map(r(Array.from(u), e));
384      if (u instanceof Set) return new Set(r(Array.from(u), e));
385      var o = {};
386      for (var i in t.push(u), n.push(o), u) {
387        var s = u[i];
388        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] = re(s); else {
389          var c = t.indexOf(s);
390          o[i] = -1 !== c ? n[c] : e(s)
391        }
392      }
393      return t.pop(), n.pop(), o
394    } : function e(u) {
395      if ("object" != typeof u || null === u) return u;
396      if (u instanceof Date) return new Date(u);
397      if (Array.isArray(u)) return r(u, e);
398      if (u instanceof Map) return new Map(r(Array.from(u), e));
399      if (u instanceof Set) return new Set(r(Array.from(u), e));
400      var o = {};
401      for (var i in t.push(u), n.push(o), u) if (!1 !== Object.hasOwnProperty.call(u, i)) {
402        var s = u[i];
403        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] = re(s); else {
404          var c = t.indexOf(s);
405          o[i] = -1 !== c ? n[c] : e(s)
406        }
407      }
408      return t.pop(), n.pop(), o
409    };
410
411    function r(e, r) {
412      for (var u = Object.keys(e), o = new Array(u.length), i = 0; i < u.length; i++) {
413        var s = u[i], c = e[s];
414        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] = re(c); else {
415          var a = t.indexOf(c);
416          o[s] = -1 !== a ? n[a] : r(c)
417        }
418      }
419      return o
420    }
421  }(e) : e.proto ? function e(n) {
422    if ("object" != typeof n || null === n) return n;
423    if (n instanceof Date) return new Date(n);
424    if (Array.isArray(n)) return t(n, e);
425    if (n instanceof Map) return new Map(t(Array.from(n), e));
426    if (n instanceof Set) return new Set(t(Array.from(n), e));
427    var r = {};
428    for (var u in n) {
429      var o = n[u];
430      "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] = re(o) : r[u] = e(o)
431    }
432    return r
433  } : n;
434
435  function t(e, t) {
436    for (var n = Object.keys(e), r = new Array(n.length), u = 0; u < n.length; u++) {
437      var o = n[u], i = e[o];
438      "object" != typeof i || null === i ? r[o] = i : i instanceof Date ? r[o] = new Date(i) : ArrayBuffer.isView(i) ? r[o] = re(i) : r[o] = t(i)
439    }
440    return r
441  }
442
443  function n(e) {
444    if ("object" != typeof e || null === e) return e;
445    if (e instanceof Date) return new Date(e);
446    if (Array.isArray(e)) return t(e, n);
447    if (e instanceof Map) return new Map(t(Array.from(e), n));
448    if (e instanceof Set) return new Set(t(Array.from(e), n));
449    var r = {};
450    for (var u in e) if (!1 !== Object.hasOwnProperty.call(e, u)) {
451      var o = e[u];
452      "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] = re(o) : r[u] = n(o)
453    }
454    return r
455  }
456};
457
458function re(e) {
459  return e instanceof Buffer ? Buffer.from(e) : new e.constructor(e.buffer.slice(), e.byteOffset, e.length)
460}
461
462const ue = i, oe = G.exports("log4js:configuration"), ie = [], se = [], ce = e =>!e,
463  ae = e => e && "object" == typeof e && !Array.isArray(e), le = (e, t, n) => {
464    (Array.isArray(t) ? t : [t]).forEach((t => {
465      if (t) throw new Error(`Problem with log4js configuration: (${ue.inspect(e, { depth: 5 })}) - ${n}`)
466    }))
467  };
468var fe = {
469  configure: e => {
470    oe("New configuration to be validated: ", e), le(e, ce(ae(e)), "must be an object."), oe(`Calling pre-processing listeners (${ie.length})`), ie.forEach((t => t(e))), oe("Configuration pre-processing finished."), oe(`Calling configuration listeners (${se.length})`), se.forEach((t => t(e))), oe("Configuration finished.")
471  },
472  addListener: e => {
473    se.push(e), oe(`Added listener, now ${se.length} listeners`)
474  },
475  addPreProcessingListener: e => {
476    ie.push(e), oe(`Added pre-processing listener, now ${ie.length} listeners`)
477  },
478  throwExceptionIf: le,
479  anObject: ae,
480  anInteger: e => e && "number" == typeof e && Number.isInteger(e),
481  validIdentifier: e => /^[A-Za-z][A-Za-z0-9_]*$/g.test(e),
482  not: ce
483}, de = { exports: {} };
484!function(e){
485
486  function t(e, t) {
487    for (var n = e.toString(); n.length < t; ) n = "0" + n;
488    return n
489  }
490
491  function n(e) {
492    return t(e, 2)
493  }
494
495  function r(r, u) {
496    "string" != typeof r && (u = r, r = e.exports.ISO8601_FORMAT), u || (u = e.exports.now());
497    var o = n(u.getDate()), i = n(u.getMonth() + 1), s = n(u.getFullYear()), c = n(s.substring(2, 4)),
498      a = r.indexOf("yyyy") > -1 ? s : c, l = n(u.getHours()), f = n(u.getMinutes()), d = n(u.getSeconds()),
499      D = t(u.getMilliseconds(), 3), p = function(e){
500        var t = Math.abs(e), n = String(Math.floor(t / 60)), r = String(t % 60);
501        return n = ("0" + n).slice(-2), r = ("0" + r).slice(-2), 0 === e ? "Z" : (e < 0 ? "+" : "-") + n + ":" + r
502      }(u.getTimezoneOffset());
503    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)
504  }
505
506  function u(e, t, n, r) {
507    e["set" + (r ? "" : "UTC")+t](n)
508  }
509
510  e.exports = r, e.exports.asString = r, e.exports.parse = function (t, n, r) {
511    if (!t) throw new Error("pattern must be supplied");
512    return function(t, n, r){
513      var o = t.indexOf("O") < 0, i = !1, s = [{
514        pattern: /y{1,4}/, regexp: "\\d{1,4}", fn: function (e, t) {
515          u(e, "FullYear", t, o)
516        }
517      }, {
518        pattern: /MM/, regexp: "\\d{1,2}", fn: function (e, t) {
519          u(e, "Month", t - 1, o), e.getMonth() !== t - 1 && (i = !0)
520        }
521      }, {
522        pattern: /dd/, regexp: "\\d{1,2}", fn: function (e, t) {
523          i && u(e, "Month", e.getMonth() - 1, o), u(e, "Date", t, o)
524        }
525      }, {
526        pattern: /hh/, regexp: "\\d{1,2}", fn: function (e, t) {
527          u(e, "Hours", t, o)
528        }
529      }, {
530        pattern: /mm/, regexp: "\\d\\d", fn: function (e, t) {
531          u(e, "Minutes", t, o)
532        }
533      }, {
534        pattern: /ss/, regexp: "\\d\\d", fn: function (e, t) {
535          u(e, "Seconds", t, o)
536        }
537      }, {
538        pattern: /SSS/, regexp: "\\d\\d\\d", fn: function (e, t) {
539          u(e, "Milliseconds", t, o)
540        }
541      }, {
542        pattern: /O/, regexp: "[+-]\\d{1,2}:?\\d{2}?|Z", fn: function (e, t) {
543          t = "Z" === t ? 0 : t.replace(":", "");
544          var n = Math.abs(t), r = (t > 0 ? -1 : 1) * (n % 100 + 60 * Math.floor(n / 100));
545          e.setUTCMinutes(e.getUTCMinutes() + r)
546        }
547      }], c = s.reduce((function (e, t) {
548        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
549      }), { regexp: t, index: [] }), a = s.filter((function (e) {
550        return e.index > -1
551      }));
552      a.sort((function (e, t) {
553        return e.index - t.index
554      }));
555      var l = new RegExp(c.regexp).exec(n);
556      if (l) {
557        var f = r || e.exports.now();
558        return a.forEach((function (e, t) {
559          e.fn(f, l[t+1])
560        })), f
561      }
562      throw new Error("String '" + n + "' could not be parsed as '" + t + "'")
563    }(t, n, r)
564  }, e.exports.now = function () {
565    return new Date
566  }, 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"
567}(de);
568const De = de.exports, pe = t, he = i, Ee = e, me = s, ye = G.exports("log4js:layouts"), Ce = {
569  bold: [1, 22],
570  italic: [3, 23],
571  underline: [4, 24],
572  inverse: [7, 27],
573  white: [37, 39],
574  grey: [90, 39],
575  black: [90, 39],
576  blue: [34, 39],
577  cyan: [36, 39],
578  green: [32, 39],
579  magenta: [35, 39],
580  red: [91, 39],
581  yellow: [33, 39]
582};
583
584function Fe(e) {
585  return e ? `[${Ce[e][0]}m` : ""
586}
587
588function ge(e) {
589  return e ? `[${Ce[e][1]}m` : ""
590}
591
592function Ae(e, t) {
593  return n = he.format("[%s] [%s] %s - ", De.asString(e.startTime), e.level.toString(), e.categoryName), Fe(r = t) + n + ge(r);
594  var n, r
595}
596
597function ve(e) {
598  return Ae(e) + he.format(...e.data)
599}
600
601function Se(e) {
602  return Ae(e, e.level.colour) + he.format(...e.data)
603}
604
605function we(e) {
606  return he.format(...e.data)
607}
608
609function Oe(e) {
610  return e.data[0]
611}
612
613function _e(e, t) {
614  const n = /%(-?[0-9]+)?(\.?-?[0-9]+)?([[\]cdhmnprzxXyflosCMAF%])(\{([^}]+)\})?|([^%]+)/;
615
616  function r(e) {
617    return e && e.pid ? e.pid.toString() : process.pid.toString()
618  }
619
620  e = e || "%r %p %c - %m%n";
621  const u = {
622    c: function (e, t) {
623      let n = e.categoryName;
624      if (t) {
625        const e = parseInt(t, 10), r = n.split(".");
626        e < r.length && (n = r.slice(r.length - e).join("."))
627      }
628      return n
629    },
630    d: function (e, t) {
631      let n = De.ISO8601_FORMAT;
632      if (t) switch (n = t, n) {
633        case "ISO8601":
634        case "ISO8601_FORMAT":
635          n = De.ISO8601_FORMAT;
636          break;
637        case "ISO8601_WITH_TZ_OFFSET":
638        case "ISO8601_WITH_TZ_OFFSET_FORMAT":
639          n = De.ISO8601_WITH_TZ_OFFSET_FORMAT;
640          break;
641        case "ABSOLUTE":
642          process.emitWarning("Pattern %d{ABSOLUTE} is deprecated in favor of %d{ABSOLUTETIME}. Please use %d{ABSOLUTETIME} instead.", "DeprecationWarning", "log4js-node-DEP0003"), ye("[log4js-node-DEP0003]", "DEPRECATION: Pattern %d{ABSOLUTE} is deprecated and replaced by %d{ABSOLUTETIME}.");
643        case "ABSOLUTETIME":
644        case "ABSOLUTETIME_FORMAT":
645          n = De.ABSOLUTETIME_FORMAT;
646          break;
647        case "DATE":
648          process.emitWarning("Pattern %d{DATE} is deprecated due to the confusion it causes when used. Please use %d{DATETIME} instead.", "DeprecationWarning", "log4js-node-DEP0004"), ye("[log4js-node-DEP0004]", "DEPRECATION: Pattern %d{DATE} is deprecated and replaced by %d{DATETIME}.");
649        case "DATETIME":
650        case "DATETIME_FORMAT":
651          n = De.DATETIME_FORMAT
652      }
653      return De.asString(n, e.startTime)
654    },
655    h: function () {
656      return pe.hostname().toString()
657    },
658    m: function (e) {
659      return he.format(...e.data)
660    },
661    n: function () {
662      return pe.EOL
663    },
664    p: function (e) {
665      return e.level.toString()
666    },
667    r: function (e) {
668      return De.asString("hh:mm:ss", e.startTime)
669    },
670    "[": function (e) {
671      return Fe(e.level.colour)
672    },
673    "]": function (e) {
674      return ge(e.level.colour)
675    },
676    y: function () {
677      return r()
678    },
679    z: r,
680    "%": function () {
681      return "%"
682    },
683    x: function (e, n) {
684      return void 0 !== t[n] ? "function" == typeof t[n] ? t[n](e) : t[n] : null
685    },
686    X: function (e, t) {
687      const n = e.context[t];
688      return void 0 !== n ? "function" == typeof n ? n(e) : n : null
689    },
690    f: function (e, t) {
691      let n = e.fileName || "";
692      if (n = function(e){
693        const t = "file://";
694        return e.startsWith(t) && ("function" == typeof me.fileURLToPath ? e = me.fileURLToPath(e) : (e = Ee.normalize(e.replace(new RegExp(`^${t}`), "")), "win32" === process.platform && (e = e.startsWith("\\") ? e.slice(1) : Ee.sep + Ee.sep + e))), e
695      }(n), t) {
696        const e = parseInt(t, 10), r = n.split(Ee.sep);
697        r.length > e && (n = r.slice(-e).join(Ee.sep))
698      }
699      return n
700    },
701    l: function (e) {
702      return e.lineNumber ? `${e.lineNumber}` : ""
703    },
704    o: function (e) {
705      return e.columnNumber ? `${e.columnNumber}` : ""
706    },
707    s: function (e) {
708      return e.callStack || ""
709    },
710    C: function (e) {
711      return e.className || ""
712    },
713    M: function (e) {
714      return e.functionName || ""
715    },
716    A: function (e) {
717      return e.functionAlias || ""
718    },
719    F: function (e) {
720      return e.callerName || ""
721    }
722  };
723
724  function o(e, t, n) {
725    return u[e](t, n)
726  }
727
728  function i(e, t, n) {
729    let r = e;
730    return r = function(e, t){
731      let n;
732      return e ? (n = parseInt(e.slice(1), 10), n > 0 ? t.slice(0, n) : t.slice(n)) : t
733    }(t, r), r = function(e, t){
734      let n;
735      if (e) if ("-" === e.charAt(0)) for (n = parseInt(e.slice(1), 10); t.length < n; ) t += " "; else for (n = parseInt(e, 10); t.length < n; ) t = ` ${t}`;
736      return t
737    }(n, r), r
738  }
739
740  return function (t) {
741    let r, u = "", s = e;
742    for (; null !== (r = n.exec(s)); ) {
743      const e = r[1], n = r[2], c = r[3], a = r[5], l = r[6];
744      if (l) u += l.toString(); else {
745        u += i(o(c, t, a), n, e)
746      }
747      s = s.slice(r.index + r[0].length)
748    }
749    return u
750  }
751}
752
753const be = {
754  messagePassThrough: () => we,
755  basic: () => ve,
756  colored: () => Se,
757  coloured: () => Se,
758  pattern: e => _e(e && e.pattern, e && e.tokens),
759  dummy: () => Oe
760};
761var Be = {
762  basicLayout: ve,
763  messagePassThroughLayout: we,
764  patternLayout: _e,
765  colouredLayout: Se,
766  coloredLayout: Se,
767  dummyLayout: Oe,
768  addLayout(e, t) {
769    be[e] = t
770  },
771  layout: (e, t) => be[e] && be[e](t)
772};
773const Pe = fe, ke = ["white", "grey", "black", "blue", "cyan", "green", "magenta", "red", "yellow"];
774
775class Ie {
776  constructor(e, t, n) {
777    this.level = e, this.levelStr = t, this.colour = n
778  }
779
780  toString() {
781    return this.levelStr
782  }
783
784  static getLevel(e, t) {
785    return e ? e instanceof Ie ? e : (e instanceof Object && e.levelStr && (e = e.levelStr), Ie[e.toString().toUpperCase()] || t) : t
786  }
787
788  static addLevels(e) {
789    if (e) {
790      Object.keys(e).forEach((t => {
791        const n = t.toUpperCase();
792        Ie[n] = new Ie(e[t].value, n, e[t].colour);
793        const r = Ie.levels.findIndex((e => e.levelStr === n));
794        r > -1 ? Ie.levels[r] = Ie[n] : Ie.levels.push(Ie[n])
795      })), Ie.levels.sort(((e, t) => e.level - t.level))
796    }
797  }
798
799  isLessThanOrEqualTo(e) {
800    return "string" == typeof e && (e = Ie.getLevel(e)), this.level <= e.level
801  }
802
803  isGreaterThanOrEqualTo(e) {
804    return "string" == typeof e && (e = Ie.getLevel(e)), this.level >= e.level
805  }
806
807  isEqualTo(e) {
808    return "string" == typeof e && (e = Ie.getLevel(e)), this.level === e.level
809  }
810}
811
812Ie.levels = [], Ie.addLevels({
813  ALL: { value: Number.MIN_VALUE, colour: "grey" },
814  TRACE: { value: 5e3, colour: "blue" },
815  DEBUG: { value: 1e4, colour: "cyan" },
816  INFO: { value: 2e4, colour: "green" },
817  WARN: { value: 3e4, colour: "yellow" },
818  ERROR: { value: 4e4, colour: "red" },
819  FATAL: { value: 5e4, colour: "magenta" },
820  MARK: { value: 9007199254740992, colour: "grey" },
821  OFF: { value: Number.MAX_VALUE, colour: "grey" }
822}), Pe.addListener((e => {
823  const t = e.levels;
824  if (t) {
825    Pe.throwExceptionIf(e, Pe.not(Pe.anObject(t)), "levels must be an object");
826    Object.keys(t).forEach((n => {
827      Pe.throwExceptionIf(e, Pe.not(Pe.validIdentifier(n)), `level name "${n}" is not a valid identifier (must start with a letter, only contain A-Z,a-z,0-9,_)`), Pe.throwExceptionIf(e, Pe.not(Pe.anObject(t[n])), `level "${n}" must be an object`), Pe.throwExceptionIf(e, Pe.not(t[n].value), `level "${n}" must have a 'value' property`), Pe.throwExceptionIf(e, Pe.not(Pe.anInteger(t[n].value)), `level "${n}".value must have an integer value`), Pe.throwExceptionIf(e, Pe.not(t[n].colour), `level "${n}" must have a 'colour' property`), Pe.throwExceptionIf(e, Pe.not(ke.indexOf(t[n].colour) > -1), `level "${n}".colour must be one of ${ke.join(", ")}`)
828    }))
829  }
830})), Pe.addListener((e => {
831  Ie.addLevels(e.levels)
832}));
833var xe = Ie, Ne = { exports: {} }, Re = {};
834const { parse:Te, stringify:Me } = JSON, { keys:Le } = Object, je = String, $e = "string", He = {}, Ge = "object",
835  Ve = (e, t) => t, Ue = e => e instanceof je ? je(e) : e, Je = (e, t) => typeof t === $e ? new je(t) : t,
836  We = (e, t, n, r) => {
837    const u = [];
838    for (let o = Le(n), { length:i } = o, s = 0; s < i; s++) {
839      const i = o[s], c = n[i];
840      if (c instanceof je) {
841        const o = e[c];
842        typeof o !== Ge || t.has(o) ? n[i] = r.call(n, i, o) : (t.add(o), n[i] = He, u.push({ k: i, a: [e, t, o, r] }))
843      } else n[i] !== He && (n[i] = r.call(n, i, c))
844    }
845    for (let { length:e } = u, t = 0; t < e; t++) {
846      const { k:e, a:o } = u[t];
847      n[e] = r.call(n, e, We.apply(null, o))
848    }
849    return n
850  }, ze = (e, t, n) => {
851    const r = je(t.push(n) - 1);
852    return e.set(n, r), r
853  }, Ke = (e, t) => {
854    const n = Te(e, Je).map(Ue), r = n[0], u = t || Ve, o = typeof r === Ge && r ? We(n, new Set, r, u) : r;
855    return u.call({ "": o }, "", o)
856  };
857Re.parse = Ke;
858const qe = (e, t, n) => {
859  const r = t && typeof t === Ge ? (e, n) => "" === e || -1 < t.indexOf(e) ? n : void 0 : t || Ve, u = new Map, o = [],
860    i = [];
861  let s = +ze(u, o, r.call({ "": e }, "", e)), c = !s;
862  for (; s < o.length; ) c = !0, i[s] = Me(o[s++], a, n);
863  return "[" + i.join(",") + "]";
864
865  function a(e, t) {
866    if (c) return c = !c, t;
867    const n = r.call(this, e, t);
868    switch (typeof n) {
869      case Ge:
870        if (null === n) return n;
871      case $e:
872        return u.get(n) || ze(u, o, n)
873    }
874    return n
875  }
876};
877Re.stringify = qe;
878Re.toJSON = e => Te(qe(e));
879Re.fromJSON = e => Ke(Me(e));
880const Ye = Re, Ze = xe;
881const Xe = new class {
882  constructor() {
883    const e = {
884      __LOG4JS_undefined__: void 0,
885      __LOG4JS_NaN__: Number("abc"),
886      __LOG4JS_Infinity__: 1 / 0,
887      "__LOG4JS_-Infinity__": -1 / 0
888    };
889    this.deMap = e, this.serMap = {}, Object.keys(this.deMap).forEach((e => {
890      const t = this.deMap[e];
891      this.serMap[t] = e
892    }))
893  }
894
895  canSerialise(e) {
896    return "string" != typeof e && e in this.serMap
897  }
898
899  serialise(e) {
900    return this.canSerialise(e) ? this.serMap[e] : e
901  }
902
903  canDeserialise(e) {
904    return e in this.deMap
905  }
906
907  deserialise(e) {
908    return this.canDeserialise(e) ? this.deMap[e] : e
909  }
910};
911let Qe = class {
912  constructor(e, t, n, r, u, o) {
913    if (this.startTime = new Date, this.categoryName = e, this.data = n, this.level = t, this.context = Object.assign({
914    }, r), this.pid = process.pid, this.error = o, void 0 !== u) {
915      if (!u || "object" != typeof u || Array.isArray(u)) throw new TypeError("Invalid location type passed to LoggingEvent constructor");
916      this.constructor._getLocationKeys().forEach((e => {
917        void 0 !== u[e] && (this[e] = u[e])
918      }))
919    }
920  }
921
922  static _getLocationKeys() {
923    return ["fileName", "lineNumber", "columnNumber", "callStack", "className", "functionName", "functionAlias", "callerName"]
924  }
925
926  serialise() {
927    return Ye.stringify(this, ((e, t) => (t instanceof Error && (t = Object.assign({
928      message: t.message,
929      stack: t.stack
930    }, t)), Xe.serialise(t))))
931  }
932
933  static deserialise(e) {
934    let t;
935    try {
936      const n = Ye.parse(e, ((e, t) => {
937        if (t && t.message && t.stack) {
938          const e = new Error(t);
939          Object.keys(t).forEach((n => {
940            e[n] = t[n]
941          })), t = e
942        }
943        return Xe.deserialise(t)
944      }));
945      this._getLocationKeys().forEach((e => {
946        void 0 !== n[e] && (n.location || (n.location = {}), n.location[e] = n[e])
947      })), t = new Qe(n.categoryName, Ze.getLevel(n.level.levelStr), n.data, n.context, n.location, n.error), t.startTime = new Date(n.startTime), t.pid = n.pid, n.cluster && (t.cluster = n.cluster)
948    } catch (n) {
949      t = new Qe("log4js", Ze.ERROR, ["Unable to parse log:", e, "because: ", n])
950    }
951    return t
952  }
953};
954var et = Qe;
955const tt = G.exports("log4js:clustering"), nt = et, rt = fe;
956let ut = !1, ot = null;
957try {
958  ot = require("cluster")
959} catch (e) {
960  tt("cluster module not present"), ut = !0
961}
962const it = [];
963let st = !1, ct = "NODE_APP_INSTANCE";
964const at = () => st && "0" === process.env[ct], lt = () => ut || ot && ot.isMaster || at(), ft = e => {
965  it.forEach((t => t(e)))
966}, dt = (e, t) => {
967  if (tt("cluster message received from worker ", e, ": ", t), e.topic && e.data && (t = e, e = void 0), t && t.topic && "log4js:message" === t.topic) {
968    tt("received message: ", t.data);
969    const e = nt.deserialise(t.data);
970    ft(e)
971  }
972};
973ut || rt.addListener((e => {
974  it.length = 0, ({
975    pm2: st,
976    disableClustering: ut,
977    pm2InstanceVar: ct = "NODE_APP_INSTANCE"
978  } = e), tt(`clustering disabled ? ${ut}`), tt(`cluster.isMaster ? ${ot && ot.isMaster}`), tt(`pm2 enabled ? ${st}`), tt(`pm2InstanceVar = ${ct}`), tt(`process.env[${ct}] = ${process.env[ct]}`), st && process.removeListener("message", dt), ot && ot.removeListener && ot.removeListener("message", dt), ut || e.disableClustering ? tt("Not listening for cluster messages, because clustering disabled.") : at() ? (tt("listening for PM2 broadcast messages"), process.on("message", dt)) : ot && ot.isMaster ? (tt("listening for cluster messages"), ot.on("message", dt)) : tt("not listening for messages, because we are not a master process")
979}));
980var Dt = {
981  onlyOnMaster: (e, t) => lt() ? e() : t, isMaster: lt, send: e => {
982    lt() ? ft(e) : (st || (e.cluster = { workerId: ot.worker.id, worker: process.pid }), process.send({
983      topic: "log4js:message",
984      data: e.serialise()
985    }))
986  }, onMessage: e => {
987    it.push(e)
988  }
989}, pt = {};
990
991function ht(e) {
992  if ("number" == typeof e && Number.isInteger(e)) return e;
993  const t = { K: 1024, M: 1048576, G: 1073741824 }, n = Object.keys(t), r = e.slice(-1).toLocaleUpperCase(),
994    u = e.slice(0, -1).trim();
995  if (n.indexOf(r) < 0 || !Number.isInteger(Number(u))) throw Error(`maxLogSize: "${e}" is invalid`);
996  return u * t[r]
997}
998
999function Et(e) {
1000  return function(e, t){
1001    const n = Object.assign({}, t);
1002    return Object.keys(e).forEach((r => {
1003      n[r] && (n[r] = e[r](t[r]))
1004    })), n
1005  }({ maxLogSize: ht }, e)
1006}
1007
1008const mt = { dateFile: Et, file: Et, fileSync: Et };
1009pt.modifyConfig = e => mt[e.type] ? mt[e.type](e) : e;
1010var yt = {};
1011const Ct = console.log.bind(console);
1012yt.configure = function (e, t) {
1013  let n = t.colouredLayout;
1014  return e.layout && (n = t.layout(e.layout.type, e.layout)), function(e, t){
1015    return n => {
1016      Ct(e(n, t))
1017    }
1018  }(n, e.timezoneOffset)
1019};
1020var Ft = {};
1021Ft.configure = function (e, t) {
1022  let n = t.colouredLayout;
1023  return e.layout && (n = t.layout(e.layout.type, e.layout)), function(e, t){
1024    return n => {
1025      process.stdout.write(`${e(n, t)}\n`)
1026    }
1027  }(n, e.timezoneOffset)
1028};
1029var gt = {};
1030gt.configure = function (e, t) {
1031  let n = t.colouredLayout;
1032  return e.layout && (n = t.layout(e.layout.type, e.layout)), function(e, t){
1033    return n => {
1034      process.stderr.write(`${e(n, t)}\n`)
1035    }
1036  }(n, e.timezoneOffset)
1037};
1038var At = {};
1039At.configure = function (e, t, n, r) {
1040  const u = n(e.appender);
1041  return function(e, t, n, r){
1042    const u = r.getLevel(e), o = r.getLevel(t, r.FATAL);
1043    return e => {
1044      const t = e.level;
1045      u.isLessThanOrEqualTo(t) && o.isGreaterThanOrEqualTo(t) && n(e)
1046    }
1047  }(e.level, e.maxLevel, u, r)
1048};
1049var vt = {};
1050const St = G.exports("log4js:categoryFilter");
1051vt.configure = function (e, t, n) {
1052  const r = n(e.appender);
1053  return function(e, t){
1054    return "string" == typeof e && (e = [e]), n => {
1055      St(`Checking ${n.categoryName} against ${e}`), -1 === e.indexOf(n.categoryName) && (St("Not excluded, sending to appender"), t(n))
1056    }
1057  }(e.exclude, r)
1058};
1059var wt = {};
1060const Ot = G.exports("log4js:noLogFilter");
1061wt.configure = function (e, t, n) {
1062  const r = n(e.appender);
1063  return function(e, t){
1064    return n => {
1065      Ot(`Checking data: ${n.data} against filters: ${e}`), "string" == typeof e && (e = [e]), e = e.filter((e => null != e && "" !== e));
1066      const r = new RegExp(e.join("|"), "i");
1067      (0 === e.length || n.data.findIndex((e => r.test(e))) < 0) && (Ot("Not excluded, sending to appender"), t(n))
1068    }
1069  }(e.exclude, r)
1070};
1071var _t = {}, bt = { exports: {} }, Bt = {}, Pt = {
1072  fromCallback: function (e) {
1073    return Object.defineProperty((function () {
1074      if ("function" != typeof arguments[arguments.length-1]) return new Promise(((t, n) => {
1075        arguments[arguments.length] = (e, r) => {
1076          if (e) return n(e);
1077          t(r)
1078        }, arguments.length++, e.apply(this, arguments)
1079      }));
1080      e.apply(this, arguments)
1081    }), "name", { value: e.name })
1082  }, fromPromise: function (e) {
1083    return Object.defineProperty((function () {
1084      const t = arguments[arguments.length-1];
1085      if ("function" != typeof t) return e.apply(this, arguments);
1086      e.apply(this, arguments).then((e => t(null, e)), t)
1087    }), "name", { value: e.name })
1088  }
1089}, kt = c, It = process.cwd, xt = null, Nt = process.env.GRACEFUL_FS_PLATFORM || process.platform;
1090process.cwd = function () {
1091  return xt || (xt = It.call(process)), xt
1092};
1093try {
1094  process.cwd()
1095} catch (e) {
1096}
1097if ("function" == typeof process.chdir) {
1098  var Rt = process.chdir;
1099  process.chdir = function (e) {
1100    xt = null, Rt.call(process, e)
1101  }, Object.setPrototypeOf && Object.setPrototypeOf(process.chdir, Rt)
1102}
1103var Tt = function (e) {
1104  kt.hasOwnProperty("O_SYMLINK") && process.version.match(/^v0\.6\.[0-2]|^v0\.5\./) && function(e){
1105    e.lchmod = function (t, n, r) {
1106      e.open(t, kt.O_WRONLY | kt.O_SYMLINK, n, (function (t, u) {
1107        t ? r && r(t) : e.fchmod(u, n, (function (t) {
1108          e.close(u, (function (e) {
1109            r && r(t || e)
1110          }))
1111        }))
1112      }))
1113    }, e.lchmodSync = function (t, n) {
1114      var r, u = e.openSync(t, kt.O_WRONLY | kt.O_SYMLINK, n), o = !0;
1115      try {
1116        r = e.fchmodSync(u, n), o = !1
1117      } finally {
1118        if (o) try {
1119          e.closeSync(u)
1120        } catch (e) {
1121        } else e.closeSync(u)
1122      }
1123      return r
1124    }
1125  }(e);
1126  e.lutimes || function(e){
1127    kt.hasOwnProperty("O_SYMLINK") && e.futimes ? (e.lutimes = function (t, n, r, u) {
1128      e.open(t, kt.O_SYMLINK, (function (t, o) {
1129        t ? u && u(t) : e.futimes(o, n, r, (function (t) {
1130          e.close(o, (function (e) {
1131            u && u(t || e)
1132          }))
1133        }))
1134      }))
1135    }, e.lutimesSync = function (t, n, r) {
1136      var u, o = e.openSync(t, kt.O_SYMLINK), i = !0;
1137      try {
1138        u = e.futimesSync(o, n, r), i = !1
1139      } finally {
1140        if (i) try {
1141          e.closeSync(o)
1142        } catch (e) {
1143        } else e.closeSync(o)
1144      }
1145      return u
1146    }) : e.futimes && (e.lutimes = function (e, t, n, r) {
1147      r && process.nextTick(r)
1148    }, e.lutimesSync = function () {
1149    })
1150  }(e);
1151  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) {
1152    n && process.nextTick(n)
1153  }, e.lchmodSync = function () {
1154  });
1155  e.chown && !e.lchown && (e.lchown = function (e, t, n, r) {
1156    r && process.nextTick(r)
1157  }, e.lchownSync = function () {
1158  });
1159  "win32" === Nt && (e.rename = "function" != typeof e.rename ? e.rename : function(t){
1160
1161    function n(n, r, u) {
1162      var o = Date.now(), i = 0;
1163      t(n, r, (function s(c) {
1164        if (c && ("EACCES" === c.code || "EPERM" === c.code || "EBUSY" === c.code) && Date.now() - o < 6e4) return setTimeout((function () {
1165          e.stat(r, (function (e, o) {
1166            e && "ENOENT" === e.code ? t(n, r, s) : u(c)
1167          }))
1168        }), i), void (i < 100 && (i += 10));
1169        u && u(c)
1170      }))
1171    }
1172
1173    return Object.setPrototypeOf && Object.setPrototypeOf(n, t), n
1174  }(e.rename));
1175
1176  function t(t) {
1177    return t ? function (n, r, u) {
1178      return t.call(e, n, r, (function (e) {
1179        s(e) && (e = null), u && u.apply(this, arguments)
1180      }))
1181    } : t
1182  }
1183
1184  function n(t) {
1185    return t ? function (n, r) {
1186      try {
1187        return t.call(e, n, r)
1188      } catch (e) {
1189        if (!s(e)) throw e
1190      }
1191    } : t
1192  }
1193
1194  function r(t) {
1195    return t ? function (n, r, u, o) {
1196      return t.call(e, n, r, u, (function (e) {
1197        s(e) && (e = null), o && o.apply(this, arguments)
1198      }))
1199    } : t
1200  }
1201
1202  function u(t) {
1203    return t ? function (n, r, u) {
1204      try {
1205        return t.call(e, n, r, u)
1206      } catch (e) {
1207        if (!s(e)) throw e
1208      }
1209    } : t
1210  }
1211
1212  function o(t) {
1213    return t ? function (n, r, u) {
1214
1215      function o(e, t) {
1216        t && (t.uid < 0 && (t.uid += 4294967296), t.gid < 0 && (t.gid += 4294967296)), u && u.apply(this, arguments)
1217      }
1218
1219      return "function" == typeof r && (u = r, r = null), r ? t.call(e, n, r, o) : t.call(e, n, o)
1220    } : t
1221  }
1222
1223  function i(t) {
1224    return t ? function (n, r) {
1225      var u = r ? t.call(e, n, r) : t.call(e, n);
1226      return u && (u.uid < 0 && (u.uid += 4294967296), u.gid < 0 && (u.gid += 4294967296)), u
1227    } : t
1228  }
1229
1230  function s(e) {
1231    return!e || ("ENOSYS" === e.code || !(process.getuid && 0 === process.getuid() || "EINVAL" !== e.code && "EPERM" !== e.code))
1232  }
1233
1234  e.read = "function" != typeof e.read ? e.read : function(t){
1235
1236    function n(n, r, u, o, i, s) {
1237      var c;
1238      if (s && "function" == typeof s) {
1239        var a = 0;
1240        c = function (l, f, d) {
1241          if (l && "EAGAIN" === l.code && a < 10) return a++, t.call(e, n, r, u, o, i, c);
1242          s.apply(this, arguments)
1243        }
1244      }
1245      return t.call(e, n, r, u, o, i, c)
1246    }
1247
1248    return Object.setPrototypeOf && Object.setPrototypeOf(n, t), n
1249  }(e.read), e.readSync = "function" != typeof e.readSync ? e.readSync : (c = e.readSync, function (t, n, r, u, o) {
1250    for (var i = 0;; ) try {
1251      return c.call(e, t, n, r, u, o)
1252    } catch (e) {
1253      if ("EAGAIN" === e.code && i < 10) {
1254        i++;
1255        continue
1256      }
1257      throw e
1258    }
1259  });
1260  var c
1261};
1262var Mt = a.Stream, Lt = function (e) {
1263  return {
1264    ReadStream: function t(n, r) {
1265      if (!(this instanceof t)) return new t(n, r);
1266      Mt.call(this);
1267      var u = this;
1268      this.path = n, this.fd = null, this.readable = !0, this.paused = !1, this.flags = "r", this.mode = 438, this.bufferSize = 65536, r = r || {
1269      };
1270      for (var o = Object.keys(r), i = 0, s = o.length; i < s; i++) {
1271        var c = o[i];
1272        this[c] = r[c]
1273      }
1274      this.encoding && this.setEncoding(this.encoding);
1275      if (void 0 !== this.start) {
1276        if ("number" != typeof this.start) throw TypeError("start must be a Number");
1277        if (void 0 === this.end) this.end = 1 / 0; else if ("number" != typeof this.end) throw TypeError("end must be a Number");
1278        if (this.start > this.end) throw new Error("start must be <= end");
1279        this.pos = this.start
1280      }
1281      if (null !== this.fd) return void process.nextTick((function () {
1282        u._read()
1283      }));
1284      e.open(this.path, this.flags, this.mode, (function (e, t) {
1285        if (e) return u.emit("error", e), void (u.readable = !1);
1286        u.fd = t, u.emit("open", t), u._read()
1287      }))
1288    }, WriteStream: function t(n, r) {
1289      if (!(this instanceof t)) return new t(n, r);
1290      Mt.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 || {
1291      };
1292      for (var u = Object.keys(r), o = 0, i = u.length; o < i; o++) {
1293        var s = u[o];
1294        this[s] = r[s]
1295      }
1296      if (void 0 !== this.start) {
1297        if ("number" != typeof this.start) throw TypeError("start must be a Number");
1298        if (this.start < 0) throw new Error("start must be >= zero");
1299        this.pos = this.start
1300      }
1301      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())
1302    }
1303  }
1304};
1305var jt = function (e) {
1306  if (null === e || "object" != typeof e) return e;
1307  if (e instanceof Object) var t = { __proto__: $t(e) }; else t = Object.create(null);
1308  return Object.getOwnPropertyNames(e).forEach((function (n) {
1309    Object.defineProperty(t, n, Object.getOwnPropertyDescriptor(e, n))
1310  })), t
1311}, $t = Object.getPrototypeOf || function (e) {
1312  return e.__proto__
1313};
1314var Ht, Gt, Vt = n, Ut = Tt, Jt = Lt, Wt = jt, zt = i;
1315
1316function Kt(e, t) {
1317  Object.defineProperty(e, Ht, {
1318    get: function () {
1319      return t
1320    }
1321  })
1322}
1323
1324"function" == typeof Symbol && "function" == typeof Symbol.for ? (Ht = Symbol.for("graceful-fs.queue"), Gt = Symbol.for("graceful-fs.previous")) : (Ht = "___graceful-fs.queue", Gt = "___graceful-fs.previous");
1325var qt = function () {
1326};
1327if (zt.debuglog ? qt = zt.debuglog("gfs4") : /\bgfs4\b/i.test(process.env.NODE_DEBUG || "") && (qt = function () {
1328  var e = zt.format.apply(zt, arguments);
1329  e = "GFS4: " + e.split(/\n/).join("\nGFS4: "), console.error(e)
1330}), !Vt[Ht]) {
1331  var Yt = p[Ht] || [];
1332  Kt(Vt, Yt), Vt.close = function(e){
1333
1334    function t(t, n) {
1335      return e.call(Vt, t, (function (e) {
1336        e || tn(), "function" == typeof n && n.apply(this, arguments)
1337      }))
1338    }
1339
1340    return Object.defineProperty(t, Gt, { value: e }), t
1341  }(Vt.close), Vt.closeSync = function(e){
1342
1343    function t(t) {
1344      e.apply(Vt, arguments), tn()
1345    }
1346
1347    return Object.defineProperty(t, Gt, { value: e }), t
1348  }(Vt.closeSync), /\bgfs4\b/i.test(process.env.NODE_DEBUG || "") && process.on("exit", (function () {
1349    qt(Vt[Ht]), l.equal(Vt[Ht].length, 0)
1350  }))
1351}
1352p[Ht] || Kt(p, Vt[Ht]);
1353var Zt, Xt = Qt(Wt(Vt));
1354
1355function Qt(e) {
1356  Ut(e), e.gracefulify = Qt, e.createReadStream = function (t, n) {
1357    return new e.ReadStream(t, n)
1358  }, e.createWriteStream = function (t, n) {
1359    return new e.WriteStream(t, n)
1360  };
1361  var t = e.readFile;
1362  e.readFile = function (e, n, r) {
1363    "function" == typeof n && (r = n, n = null);
1364    return function e(n, r, u, o){
1365      return t(n, r, (function (t) {
1366        !t || "EMFILE" !== t.code && "ENFILE" !== t.code ? "function" == typeof u && u.apply(this, arguments) : en([e, [n, r, u], t, o || Date.now(), Date.now()])
1367      }))
1368    }(e, n, r)
1369  };
1370  var n = e.writeFile;
1371  e.writeFile = function (e, t, r, u) {
1372    "function" == typeof r && (u = r, r = null);
1373    return function e(t, r, u, o, i){
1374      return n(t, r, u, (function (n) {
1375        !n || "EMFILE" !== n.code && "ENFILE" !== n.code ? "function" == typeof o && o.apply(this, arguments) : en([e, [t, r, u, o], n, i || Date.now(), Date.now()])
1376      }))
1377    }(e, t, r, u)
1378  };
1379  var r = e.appendFile;
1380  r && (e.appendFile = function (e, t, n, u) {
1381    "function" == typeof n && (u = n, n = null);
1382    return function e(t, n, u, o, i){
1383      return r(t, n, u, (function (r) {
1384        !r || "EMFILE" !== r.code && "ENFILE" !== r.code ? "function" == typeof o && o.apply(this, arguments) : en([e, [t, n, u, o], r, i || Date.now(), Date.now()])
1385      }))
1386    }(e, t, n, u)
1387  });
1388  var u = e.copyFile;
1389  u && (e.copyFile = function (e, t, n, r) {
1390    "function" == typeof n && (r = n, n = 0);
1391    return function e(t, n, r, o, i){
1392      return u(t, n, r, (function (u) {
1393        !u || "EMFILE" !== u.code && "ENFILE" !== u.code ? "function" == typeof o && o.apply(this, arguments) : en([e, [t, n, r, o], u, i || Date.now(), Date.now()])
1394      }))
1395    }(e, t, n, r)
1396  });
1397  var o = e.readdir;
1398  e.readdir = function (e, t, n) {
1399    "function" == typeof t && (n = t, t = null);
1400    var r = i.test(process.version) ? function (e, t, n, r) {
1401      return o(e, u(e, t, n, r))
1402    } : function (e, t, n, r) {
1403      return o(e, t, u(e, t, n, r))
1404    };
1405    return r(e, t, n);
1406
1407    function u(e, t, n, u) {
1408      return function (o, i) {
1409        !o || "EMFILE" !== o.code && "ENFILE" !== o.code ? (i && i.sort && i.sort(), "function" == typeof n && n.call(this, o, i)) : en([r, [e, t, n], o, u || Date.now(), Date.now()])
1410      }
1411    }
1412  };
1413  var i = /^v[0-5]\./;
1414  if ("v0.8" === process.version.substr(0, 4)) {
1415    var s = Jt(e);
1416    d = s.ReadStream, D = s.WriteStream
1417  }
1418  var c = e.ReadStream;
1419  c && (d.prototype = Object.create(c.prototype), d.prototype.open = function () {
1420    var e = this;
1421    h(e.path, e.flags, e.mode, (function (t, n) {
1422      t ? (e.autoClose && e.destroy(), e.emit("error", t)) : (e.fd = n, e.emit("open", n), e.read())
1423    }))
1424  });
1425  var a = e.WriteStream;
1426  a && (D.prototype = Object.create(a.prototype), D.prototype.open = function () {
1427    var e = this;
1428    h(e.path, e.flags, e.mode, (function (t, n) {
1429      t ? (e.destroy(), e.emit("error", t)) : (e.fd = n, e.emit("open", n))
1430    }))
1431  }), Object.defineProperty(e, "ReadStream", {
1432    get: function () {
1433      return d
1434    }, set: function (e) {
1435      d = e
1436    }, enumerable: !0, configurable: !0
1437  }), Object.defineProperty(e, "WriteStream", {
1438    get: function () {
1439      return D
1440    }, set: function (e) {
1441      D = e
1442    }, enumerable: !0, configurable: !0
1443  });
1444  var l = d;
1445  Object.defineProperty(e, "FileReadStream", {
1446    get: function () {
1447      return l
1448    }, set: function (e) {
1449      l = e
1450    }, enumerable: !0, configurable: !0
1451  });
1452  var f = D;
1453
1454  function d(e, t) {
1455    return this instanceof d ? (c.apply(this, arguments), this) : d.apply(Object.create(d.prototype), arguments)
1456  }
1457
1458  function D(e, t) {
1459    return this instanceof D ? (a.apply(this, arguments), this) : D.apply(Object.create(D.prototype), arguments)
1460  }
1461
1462  Object.defineProperty(e, "FileWriteStream", {
1463    get: function () {
1464      return f
1465    }, set: function (e) {
1466      f = e
1467    }, enumerable: !0, configurable: !0
1468  });
1469  var p = e.open;
1470
1471  function h(e, t, n, r) {
1472    return "function" == typeof n && (r = n, n = null), function e(t, n, r, u, o){
1473      return p(t, n, r, (function (i, s) {
1474        !i || "EMFILE" !== i.code && "ENFILE" !== i.code ? "function" == typeof u && u.apply(this, arguments) : en([e, [t, n, r, u], i, o || Date.now(), Date.now()])
1475      }))
1476    }(e, t, n, r)
1477  }
1478
1479  return e.open = h, e
1480}
1481
1482function en(e) {
1483  qt("ENQUEUE", e[0].name, e[1]), Vt[Ht].push(e), nn()
1484}
1485
1486function tn() {
1487  for (var e = Date.now(), t = 0; t < Vt[Ht].length; ++t) Vt[Ht][t].length > 2 && (Vt[Ht][t][3] = e, Vt[Ht][t][4] = e);
1488  nn()
1489}
1490
1491function nn() {
1492  if (clearTimeout(Zt), Zt = void 0, 0 !== Vt[Ht].length) {
1493    var e = Vt[Ht].shift(), t = e[0], n = e[1], r = e[2], u = e[3], o = e[4];
1494    if (void 0 === u) qt("RETRY", t.name, n), t.apply(null, n); else if (Date.now() - u >= 6e4) {
1495      qt("TIMEOUT", t.name, n);
1496      var i = n.pop();
1497      "function" == typeof i && i.call(null, r)
1498    } else {
1499      var s = Date.now() - o, c = Math.max(o - u, 1);
1500      s >= Math.min(1.2 * c, 100) ? (qt("RETRY", t.name, n), t.apply(null, n.concat([u]))) : Vt[Ht].push(e)
1501    }
1502    void 0 === Zt && (Zt = setTimeout(nn, 0))
1503  }
1504}
1505
1506process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH && !Vt.__patched && (Xt = Qt(Vt), Vt.__patched = !0), function(e){
1507  const t = Pt.fromCallback, n = Xt,
1508    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]));
1509  Object.keys(n).forEach((t => {
1510    "promises" !== t && (e[t] = n[t])
1511  })), r.forEach((r => {
1512    e[r] = t(n[r])
1513  })), e.exists = function (e, t) {
1514    return "function" == typeof t ? n.exists(e, t) : new Promise((t => n.exists(e, t)))
1515  }, e.read = function (e, t, r, u, o, i) {
1516    return "function" == typeof i ? n.read(e, t, r, u, o, i) : new Promise(((i, s) => {
1517      n.read(e, t, r, u, o, ((e, t, n) => {
1518        if (e) return s(e);
1519        i({ bytesRead: t, buffer: n })
1520      }))
1521    }))
1522  }, e.write = function (e, t, ...r) {
1523    return "function" == typeof r[r.length-1] ? n.write(e, t, ...r) : new Promise(((u, o) => {
1524      n.write(e, t, ...r, ((e, t, n) => {
1525        if (e) return o(e);
1526        u({ bytesWritten: t, buffer: n })
1527      }))
1528    }))
1529  }, "function" == typeof n.realpath.native && (e.realpath.native = t(n.realpath.native))
1530}(Bt);
1531const rn = e;
1532
1533function un(e) {
1534  return (e = rn.normalize(rn.resolve(e)).split(rn.sep)).length > 0 ? e[0] : null
1535}
1536
1537const on = /[<>:"|?*]/;
1538var sn = function (e) {
1539  const t = un(e);
1540  return e = e.replace(t, ""), on.test(e)
1541};
1542const cn = Xt, an = e, ln = sn, fn = parseInt("0777", 8);
1543var dn = function e(t, n, r, u) {
1544  if ("function" == typeof n ? (r = n, n = {}) : n && "object" == typeof n || (n = {
1545    mode: n
1546  }), "win32" === process.platform && ln(t)) {
1547    const e = new Error(t + " contains invalid WIN32 path characters.");
1548    return e.code = "EINVAL", r(e)
1549  }
1550  let o = n.mode;
1551  const i = n.fs || cn;
1552  void 0 === o && (o = fn & ~process.umask()), u || (u = null), r = r || function () {
1553  }, t = an.resolve(t), i.mkdir(t, o, (o => {
1554    if (!o) return r(null, u = u || t);
1555    if ("ENOENT" === o.code) {
1556      if (an.dirname(t) === t) return r(o);
1557      e(an.dirname(t), n, ((u, o) => {
1558        u ? r(u, o) : e(t, n, r, o)
1559      }))
1560    } else i.stat(t, ((e, t) => {
1561      e || !t.isDirectory() ? r(o, u) : r(null, u)
1562    }))
1563  }))
1564};
1565const Dn = Xt, pn = e, hn = sn, En = parseInt("0777", 8);
1566var mn = function e(t, n, r) {
1567  n && "object" == typeof n || (n = { mode: n });
1568  let u = n.mode;
1569  const o = n.fs || Dn;
1570  if ("win32" === process.platform && hn(t)) {
1571    const e = new Error(t + " contains invalid WIN32 path characters.");
1572    throw e.code = "EINVAL", e
1573  }
1574  void 0 === u && (u = En & ~process.umask()), r || (r = null), t = pn.resolve(t);
1575  try {
1576    o.mkdirSync(t, u), r = r || t
1577  } catch (u) {
1578    if ("ENOENT" === u.code) {
1579      if (pn.dirname(t) === t) throw u;
1580      r = e(pn.dirname(t), n, r), e(t, n, r)
1581    } else {
1582      let e;
1583      try {
1584        e = o.statSync(t)
1585      } catch (e) {
1586        throw u
1587      }
1588      if (!e.isDirectory()) throw u
1589    }
1590  }
1591  return r
1592};
1593const yn = (0, Pt.fromCallback)(dn);
1594var Cn = {
1595  mkdirs: yn,
1596  mkdirsSync: mn,
1597  mkdirp: yn,
1598  mkdirpSync: mn,
1599  ensureDir: yn,
1600  ensureDirSync: mn
1601};
1602const Fn = Xt;
1603var gn = function (e, t, n, r) {
1604  Fn.open(e, "r+", ((e, u) => {
1605    if (e) return r(e);
1606    Fn.futimes(u, t, n, (e => {
1607      Fn.close(u, (t => {
1608        r && r(e || t)
1609      }))
1610    }))
1611  }))
1612}, An = function (e, t, n) {
1613  const r = Fn.openSync(e, "r+");
1614  return Fn.futimesSync(r, t, n), Fn.closeSync(r)
1615};
1616const vn = Xt, Sn = e, wn = 10, On = 5, _n = 0, bn = process.versions.node.split("."), Bn = Number.parseInt(bn[0], 10),
1617  Pn = Number.parseInt(bn[1], 10), kn = Number.parseInt(bn[2], 10);
1618
1619function In() {
1620  if (Bn > wn) return !0;
1621  if (Bn === wn) {
1622    if (Pn > On) return !0;
1623    if (Pn === On && kn >= _n) return !0
1624  }
1625  return !1
1626}
1627
1628function xn(e, t) {
1629  const n = Sn.resolve(e).split(Sn.sep).filter((e => e)), r = Sn.resolve(t).split(Sn.sep).filter((e => e));
1630  return n.reduce(((e, t, n) => e && r[n] === t), !0)
1631}
1632
1633function Nn(e, t, n) {
1634  return `Cannot ${n} '${e}' to a subdirectory of itself, '${t}'.`
1635}
1636
1637var Rn, Tn, Mn = {
1638  checkPaths: function (e, t, n, r) {
1639    !function(e, t, n){
1640      In() ? vn.stat(e, { bigint: !0 }, ((e, r) => {
1641        if (e) return n(e);
1642        vn.stat(t, { bigint: !0 }, ((e, t) => e ? "ENOENT" === e.code ? n(null, {
1643          srcStat: r,
1644          destStat: null
1645        }) : n(e) : n(null, { srcStat: r, destStat: t })))
1646      })) : vn.stat(e, ((e, r) => {
1647        if (e) return n(e);
1648        vn.stat(t, ((e, t) => e ? "ENOENT" === e.code ? n(null, { srcStat: r, destStat: null }) : n(e) : n(null, {
1649          srcStat: r,
1650          destStat: t
1651        })))
1652      }))
1653    }(e, t, ((u, o) => {
1654      if (u) return r(u);
1655      const { srcStat:i, destStat:s } = o;
1656      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() && xn(e, t) ? r(new Error(Nn(e, t, n))) : r(null, {
1657        srcStat: i,
1658        destStat: s
1659      })
1660    }))
1661  },
1662  checkPathsSync: function (e, t, n) {
1663    const { srcStat:r, destStat:u } = function(e, t){
1664      let n, r;
1665      n = In() ? vn.statSync(e, { bigint: !0 }) : vn.statSync(e);
1666      try {
1667        r = In() ? vn.statSync(t, { bigint: !0 }) : vn.statSync(t)
1668      } catch (e) {
1669        if ("ENOENT" === e.code) return { srcStat: n, destStat: null };
1670        throw e
1671      }
1672      return { srcStat: n, destStat: r }
1673    }(e, t);
1674    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.");
1675    if (r.isDirectory() && xn(e, t)) throw new Error(Nn(e, t, n));
1676    return { srcStat: r, destStat: u }
1677  },
1678  checkParentPaths: function e(t, n, r, u, o) {
1679    const i = Sn.resolve(Sn.dirname(t)), s = Sn.resolve(Sn.dirname(r));
1680    if (s === i || s === Sn.parse(s).root) return o();
1681    In() ? vn.stat(s, {
1682      bigint: !0
1683    }, ((i, c) => i ? "ENOENT" === i.code ? o() : o(i) : c.ino && c.dev && c.ino === n.ino && c.dev === n.dev ? o(new Error(Nn(t, r, u))) : e(t, n, s, u, o))) : vn.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(Nn(t, r, u))) : e(t, n, s, u, o)))
1684  },
1685  checkParentPathsSync: function e(t, n, r, u) {
1686    const o = Sn.resolve(Sn.dirname(t)), i = Sn.resolve(Sn.dirname(r));
1687    if (i === o || i === Sn.parse(i).root) return;
1688    let s;
1689    try {
1690      s = In() ? vn.statSync(i, { bigint: !0 }) : vn.statSync(i)
1691    } catch (e) {
1692      if ("ENOENT" === e.code) return;
1693      throw e
1694    }
1695    if (s.ino && s.dev && s.ino === n.ino && s.dev === n.dev) throw new Error(Nn(t, r, u));
1696    return e(t, n, i, u)
1697  },
1698  isSrcSubdir: xn
1699};
1700const Ln = Xt, jn = e, $n = Cn.mkdirsSync, Hn = An, Gn = Mn;
1701
1702function Vn(e, t, n, r) {
1703  if (!r.filter || r.filter(t, n)) return function(e, t, n, r){
1704    const u = r.dereference ? Ln.statSync : Ln.lstatSync, o = u(t);
1705    if (o.isDirectory()) return function(e, t, n, r, u){
1706      if (!t) return function(e, t, n, r){
1707        return Ln.mkdirSync(n), Jn(t, n, r), Ln.chmodSync(n, e.mode)
1708      }(e, n, r, u);
1709      if (t && !t.isDirectory()) throw new Error(`Cannot overwrite non-directory '${r}' with directory '${n}'.`);
1710      return Jn(n, r, u)
1711    }(o, e, t, n, r);
1712    if (o.isFile() || o.isCharacterDevice() || o.isBlockDevice()) return function(e, t, n, r, u){
1713      return t ? function(e, t, n, r){
1714        if (r.overwrite) return Ln.unlinkSync(n), Un(e, t, n, r);
1715        if (r.errorOnExist) throw new Error(`'${n}' already exists`)
1716      }(e, n, r, u) : Un(e, n, r, u)
1717    }(o, e, t, n, r);
1718    if (o.isSymbolicLink()) return function(e, t, n, r){
1719      let u = Ln.readlinkSync(t);
1720      r.dereference && (u = jn.resolve(process.cwd(), u));
1721      if (e) {
1722        let e;
1723        try {
1724          e = Ln.readlinkSync(n)
1725        } catch (e) {
1726          if ("EINVAL" === e.code || "UNKNOWN" === e.code) return Ln.symlinkSync(u, n);
1727          throw e
1728        }
1729        if (r.dereference && (e = jn.resolve(process.cwd(), e)), Gn.isSrcSubdir(u, e)) throw new Error(`Cannot copy '${u}' to a subdirectory of itself, '${e}'.`);
1730        if (Ln.statSync(n).isDirectory() && Gn.isSrcSubdir(e, u)) throw new Error(`Cannot overwrite '${e}' with '${u}'.`);
1731        return function(e, t){
1732          return Ln.unlinkSync(t), Ln.symlinkSync(e, t)
1733        }(u, n)
1734      }
1735      return Ln.symlinkSync(u, n)
1736    }(e, t, n, r)
1737  }(e, t, n, r)
1738}
1739
1740function Un(e, t, n, r) {
1741  return "function" == typeof Ln.copyFileSync ? (Ln.copyFileSync(t, n), Ln.chmodSync(n, e.mode), r.preserveTimestamps ? Hn(n, e.atime, e.mtime) : void 0) : function(e, t, n, r){
1742    const u = 65536, o = (Tn ? Rn : (Tn = 1, Rn = function (e) {
1743      if ("function" == typeof Buffer.allocUnsafe) try {
1744        return Buffer.allocUnsafe(e)
1745      } catch (t) {
1746        return new Buffer(e)
1747      }
1748      return new Buffer(e)
1749    }))(u), i = Ln.openSync(t, "r"), s = Ln.openSync(n, "w", e.mode);
1750    let c = 0;
1751    for (; c < e.size; ) {
1752      const e = Ln.readSync(i, o, 0, u, c);
1753      Ln.writeSync(s, o, 0, e), c += e
1754    }
1755    r.preserveTimestamps && Ln.futimesSync(s, e.atime, e.mtime);
1756    Ln.closeSync(i), Ln.closeSync(s)
1757  }(e, t, n, r)
1758}
1759
1760function Jn(e, t, n) {
1761  Ln.readdirSync(e).forEach((r => function(e, t, n, r){
1762    const u = jn.join(t, e), o = jn.join(n, e), { destStat:i } = Gn.checkPathsSync(u, o, "copy");
1763    return Vn(i, u, o, r)
1764  }(r, e, t, n)))
1765}
1766
1767var Wn = function (e, t, n) {
1768  "function" == typeof n && (n = { filter: n }), (n = n || {
1769  }).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");
1770  const { srcStat:r, destStat:u } = Gn.checkPathsSync(e, t, "copy");
1771  return Gn.checkParentPathsSync(e, r, t, "copy"), function(e, t, n, r){
1772    if (r.filter && !r.filter(t, n)) return;
1773    const u = jn.dirname(n);
1774    Ln.existsSync(u) || $n(u);
1775    return Vn(e, t, n, r)
1776  }(u, e, t, n)
1777}, zn = { copySync: Wn };
1778const Kn = Pt.fromPromise, qn = Bt;
1779var Yn = {
1780  pathExists: Kn((function (e) {
1781    return qn.access(e).then((() =>!0)).catch((() =>!1))
1782  })), pathExistsSync: qn.existsSync
1783};
1784const Zn = Xt, Xn = e, Qn = Cn.mkdirs, er = Yn.pathExists, tr = gn, nr = Mn;
1785
1786function rr(e, t, n, r, u) {
1787  const o = Xn.dirname(n);
1788  er(o, ((i, s) => i ? u(i) : s ? or(e, t, n, r, u) : void Qn(o, (o => o ? u(o) : or(e, t, n, r, u)))))
1789}
1790
1791function ur(e, t, n, r, u, o) {
1792  Promise.resolve(u.filter(n, r)).then((i => i ? e(t, n, r, u, o) : o()), (e => o(e)))
1793}
1794
1795function or(e, t, n, r, u) {
1796  return r.filter ? ur(ir, e, t, n, r, u) : ir(e, t, n, r, u)
1797}
1798
1799function ir(e, t, n, r, u) {
1800  (r.dereference ? Zn.stat : Zn.lstat)(t, ((o, i) => o ? u(o) : i.isDirectory() ? function(e, t, n, r, u, o){
1801    if (!t) return function(e, t, n, r, u){
1802      Zn.mkdir(n, (o => {
1803        if (o) return u(o);
1804        ar(t, n, r, (t => t ? u(t) : Zn.chmod(n, e.mode, u)))
1805      }))
1806    }(e, n, r, u, o);
1807    if (t && !t.isDirectory()) return o(new Error(`Cannot overwrite non-directory '${r}' with directory '${n}'.`));
1808    return ar(n, r, u, o)
1809  }(i, e, t, n, r, u) : i.isFile() || i.isCharacterDevice() || i.isBlockDevice() ? function(e, t, n, r, u, o){
1810    return t ? function(e, t, n, r, u){
1811      if (!r.overwrite) return r.errorOnExist ? u(new Error(`'${n}' already exists`)) : u();
1812      Zn.unlink(n, (o => o ? u(o) : sr(e, t, n, r, u)))
1813    }(e, n, r, u, o) : sr(e, n, r, u, o)
1814  }(i, e, t, n, r, u) : i.isSymbolicLink() ? function(e, t, n, r, u){
1815    Zn.readlink(t, ((t, o) => t ? u(t) : (r.dereference && (o = Xn.resolve(process.cwd(), o)), e ? void Zn.readlink(n, ((t, i) => t ? "EINVAL" === t.code || "UNKNOWN" === t.code ? Zn.symlink(o, n, u) : u(t) : (r.dereference && (i = Xn.resolve(process.cwd(), i)), nr.isSrcSubdir(o, i) ? u(new Error(`Cannot copy '${o}' to a subdirectory of itself, '${i}'.`)) : e.isDirectory() && nr.isSrcSubdir(i, o) ? u(new Error(`Cannot overwrite '${i}' with '${o}'.`)) : function(e, t, n){
1816      Zn.unlink(t, (r => r ? n(r) : Zn.symlink(e, t, n)))
1817    }(o, n, u)))) : Zn.symlink(o, n, u))))
1818  }(e, t, n, r, u) : void 0))
1819}
1820
1821function sr(e, t, n, r, u) {
1822  return "function" == typeof Zn.copyFile ? Zn.copyFile(t, n, (t => t ? u(t) : cr(e, n, r, u))) : function(e, t, n, r, u){
1823    const o = Zn.createReadStream(t);
1824    o.on("error", (e => u(e))).once("open", (() => {
1825      const t = Zn.createWriteStream(n, { mode: e.mode });
1826      t.on("error", (e => u(e))).on("open", (() => o.pipe(t))).once("close", (() => cr(e, n, r, u)))
1827    }))
1828  }(e, t, n, r, u)
1829}
1830
1831function cr(e, t, n, r) {
1832  Zn.chmod(t, e.mode, (u => u ? r(u) : n.preserveTimestamps ? tr(t, e.atime, e.mtime, r) : r()))
1833}
1834
1835function ar(e, t, n, r) {
1836  Zn.readdir(e, ((u, o) => u ? r(u) : lr(o, e, t, n, r)))
1837}
1838
1839function lr(e, t, n, r, u) {
1840  const o = e.pop();
1841  return o ? function(e, t, n, r, u, o){
1842    const i = Xn.join(n, t), s = Xn.join(r, t);
1843    nr.checkPaths(i, s, "copy", ((t, c) => {
1844      if (t) return o(t);
1845      const { destStat:a } = c;
1846      or(a, i, s, u, (t => t ? o(t) : lr(e, n, r, u, o)))
1847    }))
1848  }(e, o, t, n, r, u) : u()
1849}
1850
1851var fr = function (e, t, n, r) {
1852  "function" != typeof n || r ? "function" == typeof n && (n = { filter: n }) : (r = n, n = {}), r = r || function () {
1853  }, (n = n || {
1854  }).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"), nr.checkPaths(e, t, "copy", ((u, o) => {
1855    if (u) return r(u);
1856    const { srcStat:i, destStat:s } = o;
1857    nr.checkParentPaths(e, i, t, "copy", (u => u ? r(u) : n.filter ? ur(rr, s, e, t, n, r) : rr(s, e, t, n, r)))
1858  }))
1859};
1860var dr = { copy: (0, Pt.fromCallback)(fr) };
1861const Dr = Xt, pr = e, hr = l, Er = "win32" === process.platform;
1862
1863function mr(e) {
1864  ["unlink", "chmod", "stat", "lstat", "rmdir", "readdir"].forEach((t => {
1865    e[t] = e[t] || Dr[t], e[t+="Sync"] = e[t] || Dr[t]
1866  })), e.maxBusyTries = e.maxBusyTries || 3
1867}
1868
1869function yr(e, t, n) {
1870  let r = 0;
1871  "function" == typeof t && (n = t, t = {
1872  }), hr(e, "rimraf: missing path"), hr.strictEqual(typeof e, "string", "rimraf: path should be a string"), hr.strictEqual(typeof n, "function", "rimraf: callback function required"), hr(t, "rimraf: invalid options argument provided"), hr.strictEqual(typeof t, "object", "rimraf: options should be object"), mr(t), Cr(e, t, (function u(o) {
1873    if (o) {
1874      if (("EBUSY" === o.code || "ENOTEMPTY" === o.code || "EPERM" === o.code) && r < t.maxBusyTries) {
1875        r++;
1876        return setTimeout((() => Cr(e, t, u)), 100 * r)
1877      }
1878      "ENOENT" === o.code && (o = null)
1879    }
1880    n(o)
1881  }))
1882}
1883
1884function Cr(e, t, n) {
1885  hr(e), hr(t), hr("function" == typeof n), t.lstat(e, ((r, u) => r && "ENOENT" === r.code ? n(null) : r && "EPERM" === r.code && Er ? Fr(e, t, r, n) : u && u.isDirectory() ? Ar(e, t, r, n) : void t.unlink(e, (r => {
1886    if (r) {
1887      if ("ENOENT" === r.code) return n(null);
1888      if ("EPERM" === r.code) return Er ? Fr(e, t, r, n) : Ar(e, t, r, n);
1889      if ("EISDIR" === r.code) return Ar(e, t, r, n)
1890    }
1891    return n(r)
1892  }))))
1893}
1894
1895function Fr(e, t, n, r) {
1896  hr(e), hr(t), hr("function" == typeof r), n && hr(n instanceof Error), t.chmod(e, 438, (u => {
1897    u ? r("ENOENT" === u.code ? null : n) : t.stat(e, ((u, o) => {
1898      u ? r("ENOENT" === u.code ? null : n) : o.isDirectory() ? Ar(e, t, n, r) : t.unlink(e, r)
1899    }))
1900  }))
1901}
1902
1903function gr(e, t, n) {
1904  let r;
1905  hr(e), hr(t), n && hr(n instanceof Error);
1906  try {
1907    t.chmodSync(e, 438)
1908  } catch (e) {
1909    if ("ENOENT" === e.code) return;
1910    throw n
1911  }
1912  try {
1913    r = t.statSync(e)
1914  } catch (e) {
1915    if ("ENOENT" === e.code) return;
1916    throw n
1917  }
1918  r.isDirectory() ? Sr(e, t, n) : t.unlinkSync(e)
1919}
1920
1921function Ar(e, t, n, r) {
1922  hr(e), hr(t), n && hr(n instanceof Error), hr("function" == typeof r), t.rmdir(e, (u => {
1923    !u || "ENOTEMPTY" !== u.code && "EEXIST" !== u.code && "EPERM" !== u.code ? u && "ENOTDIR" === u.code ? r(n) : r(u) : function(e, t, n){
1924      hr(e), hr(t), hr("function" == typeof n), t.readdir(e, ((r, u) => {
1925        if (r) return n(r);
1926        let o, i = u.length;
1927        if (0 === i) return t.rmdir(e, n);
1928        u.forEach((r => {
1929          yr(pr.join(e, r), t, (r => {
1930            if (!o) return r ? n(o = r) : void (0 == --i && t.rmdir(e, n))
1931          }))
1932        }))
1933      }))
1934    }(e, t, r)
1935  }))
1936}
1937
1938function vr(e, t) {
1939  let n;
1940  mr(t = t || {
1941  }), hr(e, "rimraf: missing path"), hr.strictEqual(typeof e, "string", "rimraf: path should be a string"), hr(t, "rimraf: missing options"), hr.strictEqual(typeof t, "object", "rimraf: options should be object");
1942  try {
1943    n = t.lstatSync(e)
1944  } catch (n) {
1945    if ("ENOENT" === n.code) return;
1946    "EPERM" === n.code && Er && gr(e, t, n)
1947  }
1948  try {
1949    n && n.isDirectory() ? Sr(e, t, null) : t.unlinkSync(e)
1950  } catch (n) {
1951    if ("ENOENT" === n.code) return;
1952    if ("EPERM" === n.code) return Er ? gr(e, t, n) : Sr(e, t, n);
1953    if ("EISDIR" !== n.code) throw n;
1954    Sr(e, t, n)
1955  }
1956}
1957
1958function Sr(e, t, n) {
1959  hr(e), hr(t), n && hr(n instanceof Error);
1960  try {
1961    t.rmdirSync(e)
1962  } catch (r) {
1963    if ("ENOTDIR" === r.code) throw n;
1964    if ("ENOTEMPTY" === r.code || "EEXIST" === r.code || "EPERM" === r.code) !function(e, t){
1965      if (hr(e), hr(t), t.readdirSync(e).forEach((n => vr(pr.join(e, n), t))), !Er) {
1966        return t.rmdirSync(e, t)
1967      }
1968      {
1969        const n = Date.now();
1970        do {
1971          try {
1972            return t.rmdirSync(e, t)
1973          } catch (e) {
1974          }
1975        } while (Date.now() - n < 500)
1976      }
1977    }(e, t); else if ("ENOENT" !== r.code) throw r
1978  }
1979}
1980
1981var wr = yr;
1982yr.sync = vr;
1983const Or = wr;
1984var _r = { remove: (0, Pt.fromCallback)(Or), removeSync: Or.sync };
1985const br = Pt.fromCallback, Br = Xt, Pr = e, kr = Cn, Ir = _r, xr = br((function (e, t) {
1986  t = t || function () {
1987  }, Br.readdir(e, ((n, r) => {
1988    if (n) return kr.mkdirs(e, t);
1989    r = r.map((t => Pr.join(e, t))), function e(){
1990      const n = r.pop();
1991      if (!n) return t();
1992      Ir.remove(n, (n => {
1993        if (n) return t(n);
1994        e()
1995      }))
1996    }()
1997  }))
1998}));
1999
2000function Nr(e) {
2001  let t;
2002  try {
2003    t = Br.readdirSync(e)
2004  } catch (t) {
2005    return kr.mkdirsSync(e)
2006  }
2007  t.forEach((t => {
2008    t = Pr.join(e, t), Ir.removeSync(t)
2009  }))
2010}
2011
2012var Rr = { emptyDirSync: Nr, emptydirSync: Nr, emptyDir: xr, emptydir: xr };
2013const Tr = Pt.fromCallback, Mr = e, Lr = Xt, jr = Cn, $r = Yn.pathExists;
2014var Hr = {
2015  createFile: Tr((function (e, t) {
2016
2017    function n() {
2018      Lr.writeFile(e, "", (e => {
2019        if (e) return t(e);
2020        t()
2021      }))
2022    }
2023
2024    Lr.stat(e, ((r, u) => {
2025      if (!r && u.isFile()) return t();
2026      const o = Mr.dirname(e);
2027      $r(o, ((e, r) => e ? t(e) : r ? n() : void jr.mkdirs(o, (e => {
2028        if (e) return t(e);
2029        n()
2030      }))))
2031    }))
2032  })), createFileSync: function (e) {
2033    let t;
2034    try {
2035      t = Lr.statSync(e)
2036    } catch (e) {
2037    }
2038    if (t && t.isFile()) return;
2039    const n = Mr.dirname(e);
2040    Lr.existsSync(n) || jr.mkdirsSync(n), Lr.writeFileSync(e, "")
2041  }
2042};
2043const Gr = Pt.fromCallback, Vr = e, Ur = Xt, Jr = Cn, Wr = Yn.pathExists;
2044var zr = {
2045  createLink: Gr((function (e, t, n) {
2046
2047    function r(e, t) {
2048      Ur.link(e, t, (e => {
2049        if (e) return n(e);
2050        n(null)
2051      }))
2052    }
2053
2054    Wr(t, ((u, o) => u ? n(u) : o ? n(null) : void Ur.lstat(e, (u => {
2055      if (u) return u.message = u.message.replace("lstat", "ensureLink"), n(u);
2056      const o = Vr.dirname(t);
2057      Wr(o, ((u, i) => u ? n(u) : i ? r(e, t) : void Jr.mkdirs(o, (u => {
2058        if (u) return n(u);
2059        r(e, t)
2060      }))))
2061    }))))
2062  })), createLinkSync: function (e, t) {
2063    if (Ur.existsSync(t)) return;
2064    try {
2065      Ur.lstatSync(e)
2066    } catch (e) {
2067      throw e.message = e.message.replace("lstat", "ensureLink"), e
2068    }
2069    const n = Vr.dirname(t);
2070    return Ur.existsSync(n) || Jr.mkdirsSync(n), Ur.linkSync(e, t)
2071  }
2072};
2073const Kr = e, qr = Xt, Yr = Yn.pathExists;
2074var Zr = {
2075  symlinkPaths: function (e, t, n) {
2076    if (Kr.isAbsolute(e)) return qr.lstat(e, (t => t ? (t.message = t.message.replace("lstat", "ensureSymlink"), n(t)) : n(null, {
2077      toCwd: e,
2078      toDst: e
2079    })));
2080    {
2081      const r = Kr.dirname(t), u = Kr.join(r, e);
2082      return Yr(u, ((t, o) => t ? n(t) : o ? n(null, {
2083        toCwd: u,
2084        toDst: e
2085      }) : qr.lstat(e, (t => t ? (t.message = t.message.replace("lstat", "ensureSymlink"), n(t)) : n(null, {
2086        toCwd: e,
2087        toDst: Kr.relative(r, e)
2088      })))))
2089    }
2090  }, symlinkPathsSync: function (e, t) {
2091    let n;
2092    if (Kr.isAbsolute(e)) {
2093      if (n = qr.existsSync(e), !n) throw new Error("absolute srcpath does not exist");
2094      return { toCwd: e, toDst: e }
2095    }
2096    {
2097      const r = Kr.dirname(t), u = Kr.join(r, e);
2098      if (n = qr.existsSync(u), n) return { toCwd: u, toDst: e };
2099      if (n = qr.existsSync(e), !n) throw new Error("relative srcpath does not exist");
2100      return { toCwd: e, toDst: Kr.relative(r, e) }
2101    }
2102  }
2103};
2104const Xr = Xt;
2105var Qr = {
2106  symlinkType: function (e, t, n) {
2107    if (n = "function" == typeof t ? t : n, t = "function" != typeof t && t) return n(null, t);
2108    Xr.lstat(e, ((e, r) => {
2109      if (e) return n(null, "file");
2110      t = r && r.isDirectory() ? "dir" : "file", n(null, t)
2111    }))
2112  }, symlinkTypeSync: function (e, t) {
2113    let n;
2114    if (t) return t;
2115    try {
2116      n = Xr.lstatSync(e)
2117    } catch (e) {
2118      return "file"
2119    }
2120    return n && n.isDirectory() ? "dir" : "file"
2121  }
2122};
2123const eu = Pt.fromCallback, tu = e, nu = Xt, ru = Cn.mkdirs, uu = Cn.mkdirsSync, ou = Zr.symlinkPaths,
2124  iu = Zr.symlinkPathsSync, su = Qr.symlinkType, cu = Qr.symlinkTypeSync, au = Yn.pathExists;
2125var lu = {
2126  createSymlink: eu((function (e, t, n, r) {
2127    r = "function" == typeof n ? n : r, n = "function" != typeof n && n, au(t, ((u, o) => u ? r(u) : o ? r(null) : void ou(e, t, ((u, o) => {
2128      if (u) return r(u);
2129      e = o.toDst, su(o.toCwd, n, ((n, u) => {
2130        if (n) return r(n);
2131        const o = tu.dirname(t);
2132        au(o, ((n, i) => n ? r(n) : i ? nu.symlink(e, t, u, r) : void ru(o, (n => {
2133          if (n) return r(n);
2134          nu.symlink(e, t, u, r)
2135        }))))
2136      }))
2137    }))))
2138  })), createSymlinkSync: function (e, t, n) {
2139    if (nu.existsSync(t)) return;
2140    const r = iu(e, t);
2141    e = r.toDst, n = cu(r.toCwd, n);
2142    const u = tu.dirname(t);
2143    return nu.existsSync(u) || uu(u), nu.symlinkSync(e, t, n)
2144  }
2145};
2146var fu, du = {
2147  createFile: Hr.createFile,
2148  createFileSync: Hr.createFileSync,
2149  ensureFile: Hr.createFile,
2150  ensureFileSync: Hr.createFileSync,
2151  createLink: zr.createLink,
2152  createLinkSync: zr.createLinkSync,
2153  ensureLink: zr.createLink,
2154  ensureLinkSync: zr.createLinkSync,
2155  createSymlink: lu.createSymlink,
2156  createSymlinkSync: lu.createSymlinkSync,
2157  ensureSymlink: lu.createSymlink,
2158  ensureSymlinkSync: lu.createSymlinkSync
2159};
2160try {
2161  fu = Xt
2162} catch (e) {
2163  fu = n
2164}
2165
2166function Du(e, t) {
2167  var n, r = "\n";
2168  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
2169}
2170
2171function pu(e) {
2172  return Buffer.isBuffer(e) && (e = e.toString("utf8")), e = e.replace(/^\uFEFF/, "")
2173}
2174
2175var hu = {
2176  readFile: function (e, t, n) {
2177    null == n && (n = t, t = {}), "string" == typeof t && (t = { encoding: t });
2178    var r = (t = t || {}).fs || fu, u = !0;
2179    "throws" in t && (u = t.throws), r.readFile(e, t, (function (r, o) {
2180      if (r) return n(r);
2181      var i;
2182      o = pu(o);
2183      try {
2184        i = JSON.parse(o, t ? t.reviver : null)
2185      } catch (t) {
2186        return u ? (t.message = e + ": " + t.message, n(t)) : n(null, null)
2187      }
2188      n(null, i)
2189    }))
2190  }, readFileSync: function (e, t) {
2191    "string" == typeof (t = t || {}) && (t = { encoding: t });
2192    var n = t.fs || fu, r = !0;
2193    "throws" in t && (r = t.throws);
2194    try {
2195      var u = n.readFileSync(e, t);
2196      return u = pu(u), JSON.parse(u, t.reviver)
2197    } catch (t) {
2198      if (r) throw t.message = e + ": " + t.message, t;
2199      return null
2200    }
2201  }, writeFile: function (e, t, n, r) {
2202    null == r && (r = n, n = {});
2203    var u = (n = n || {}).fs || fu, o = "";
2204    try {
2205      o = Du(t, n)
2206    } catch (e) {
2207      return void (r && r(e, null))
2208    }
2209    u.writeFile(e, o, n, r)
2210  }, writeFileSync: function (e, t, n) {
2211    var r = (n = n || {}).fs || fu, u = Du(t, n);
2212    return r.writeFileSync(e, u, n)
2213  }
2214}, Eu = hu;
2215const mu = Pt.fromCallback, yu = Eu;
2216var Cu = {
2217  readJson: mu(yu.readFile),
2218  readJsonSync: yu.readFileSync,
2219  writeJson: mu(yu.writeFile),
2220  writeJsonSync: yu.writeFileSync
2221};
2222const Fu = e, gu = Cn, Au = Yn.pathExists, vu = Cu;
2223var Su = function (e, t, n, r) {
2224  "function" == typeof n && (r = n, n = {});
2225  const u = Fu.dirname(e);
2226  Au(u, ((o, i) => o ? r(o) : i ? vu.writeJson(e, t, n, r) : void gu.mkdirs(u, (u => {
2227    if (u) return r(u);
2228    vu.writeJson(e, t, n, r)
2229  }))))
2230};
2231const wu = Xt, Ou = e, _u = Cn, bu = Cu;
2232var Bu = function (e, t, n) {
2233  const r = Ou.dirname(e);
2234  wu.existsSync(r) || _u.mkdirsSync(r), bu.writeJsonSync(e, t, n)
2235};
2236const Pu = Pt.fromCallback, ku = Cu;
2237ku.outputJson = Pu(Su), ku.outputJsonSync = Bu, ku.outputJSON = ku.outputJson, ku.outputJSONSync = ku.outputJsonSync, ku.writeJSON = ku.writeJson, ku.writeJSONSync = ku.writeJsonSync, ku.readJSON = ku.readJson, ku.readJSONSync = ku.readJsonSync;
2238var Iu = ku;
2239const xu = Xt, Nu = e, Ru = zn.copySync, Tu = _r.removeSync, Mu = Cn.mkdirpSync, Lu = Mn;
2240
2241function ju(e, t, n) {
2242  try {
2243    xu.renameSync(e, t)
2244  } catch (r) {
2245    if ("EXDEV" !== r.code) throw r;
2246    return function(e, t, n){
2247      const r = { overwrite: n, errorOnExist: !0 };
2248      return Ru(e, t, r), Tu(e)
2249    }(e, t, n)
2250  }
2251}
2252
2253var $u = function (e, t, n) {
2254  const r = (n = n || {}).overwrite || n.clobber || !1, { srcStat:u } = Lu.checkPathsSync(e, t, "move");
2255  return Lu.checkParentPathsSync(e, u, t, "move"), Mu(Nu.dirname(t)), function(e, t, n){
2256    if (n) return Tu(t), ju(e, t, n);
2257    if (xu.existsSync(t)) throw new Error("dest already exists.");
2258    return ju(e, t, n)
2259  }(e, t, r)
2260}, Hu = { moveSync: $u };
2261const Gu = Xt, Vu = e, Uu = dr.copy, Ju = _r.remove, Wu = Cn.mkdirp, zu = Yn.pathExists, Ku = Mn;
2262
2263function qu(e, t, n, r) {
2264  Gu.rename(e, t, (u => u ? "EXDEV" !== u.code ? r(u) : function(e, t, n, r){
2265    const u = { overwrite: n, errorOnExist: !0 };
2266    Uu(e, t, u, (t => t ? r(t) : Ju(e, r)))
2267  }(e, t, n, r) : r()))
2268}
2269
2270var Yu = function (e, t, n, r) {
2271  "function" == typeof n && (r = n, n = {});
2272  const u = n.overwrite || n.clobber || !1;
2273  Ku.checkPaths(e, t, "move", ((n, o) => {
2274    if (n) return r(n);
2275    const { srcStat:i } = o;
2276    Ku.checkParentPaths(e, i, t, "move", (n => {
2277      if (n) return r(n);
2278      Wu(Vu.dirname(t), (n => n ? r(n) : function(e, t, n, r){
2279        if (n) return Ju(t, (u => u ? r(u) : qu(e, t, n, r)));
2280        zu(t, ((u, o) => u ? r(u) : o ? r(new Error("dest already exists.")) : qu(e, t, n, r)))
2281      }(e, t, u, r)))
2282    }))
2283  }))
2284};
2285var Zu = { move: (0, Pt.fromCallback)(Yu) };
2286const Xu = Pt.fromCallback, Qu = Xt, eo = e, to = Cn, no = Yn.pathExists;
2287var ro = {
2288  outputFile: Xu((function (e, t, n, r) {
2289    "function" == typeof n && (r = n, n = "utf8");
2290    const u = eo.dirname(e);
2291    no(u, ((o, i) => o ? r(o) : i ? Qu.writeFile(e, t, n, r) : void to.mkdirs(u, (u => {
2292      if (u) return r(u);
2293      Qu.writeFile(e, t, n, r)
2294    }))))
2295  })), outputFileSync: function (e, ...t) {
2296    const n = eo.dirname(e);
2297    if (Qu.existsSync(n)) return Qu.writeFileSync(e, ...t);
2298    to.mkdirsSync(n), Qu.writeFileSync(e, ...t)
2299  }
2300};
2301!function(e){
2302  e.exports = Object.assign({}, Bt, zn, dr, Rr, du, Iu, Cn, Hu, Zu, ro, Yn, _r);
2303  const t = n;
2304  Object.getOwnPropertyDescriptor(t, "promises") && Object.defineProperty(e.exports, "promises", {
2305    get: () => t.promises
2306  })
2307}(bt);
2308const uo = G.exports("streamroller:fileNameFormatter"), oo = e;
2309const io = G.exports("streamroller:fileNameParser"), so = de.exports;
2310const co = G.exports("streamroller:moveAndMaybeCompressFile"), ao = bt.exports, lo = f;
2311var fo = async (e, t, n) => {
2312  if (n = function(e){
2313    const t = { mode: parseInt("0600", 8), compress: !1 }, n = Object.assign({}, t, e);
2314    return co(`_parseOption: moveAndMaybeCompressFile called with option=${JSON.stringify(n)}`), n
2315  }(n), e !== t) {
2316    if (await ao.pathExists(e)) if (co(`moveAndMaybeCompressFile: moving file from ${e} to ${t} ${n.compress ? "with" : "without"} compress`), n.compress) await new Promise(((r, u) => {
2317      let o = !1;
2318      const i = ao.createWriteStream(t, { mode: n.mode, flags: "wx" }).on("open", (() => {
2319        o = !0;
2320        const t = ao.createReadStream(e).on("open", (() => {
2321          t.pipe(lo.createGzip()).pipe(i)
2322        })).on("error", (t => {
2323          co(`moveAndMaybeCompressFile: error reading ${e}`, t), i.destroy(t)
2324        }))
2325      })).on("finish", (() => {
2326        co(`moveAndMaybeCompressFile: finished compressing ${t}, deleting ${e}`), ao.unlink(e).then(r).catch((t => {
2327          co(`moveAndMaybeCompressFile: error deleting ${e}, truncating instead`, t), ao.truncate(e).then(r).catch((t => {
2328            co(`moveAndMaybeCompressFile: error truncating ${e}`, t), u(t)
2329          }))
2330        }))
2331      })).on("error", (e => {
2332        o ? (co(`moveAndMaybeCompressFile: error writing ${t}, deleting`, e), ao.unlink(t).then((() => {
2333          u(e)
2334        })).catch((e => {
2335          co(`moveAndMaybeCompressFile: error deleting ${t}`, e), u(e)
2336        }))) : (co(`moveAndMaybeCompressFile: error creating ${t}`, e), u(e))
2337      }))
2338    })).catch((() => {
2339    })); else {
2340      co(`moveAndMaybeCompressFile: renaming ${e} to ${t}`);
2341      try {
2342        await ao.move(e, t, { overwrite: !0 })
2343      } catch (n) {
2344        if (co(`moveAndMaybeCompressFile: error renaming ${e} to ${t}`, n), "ENOENT" !== n.code) {
2345          co("moveAndMaybeCompressFile: trying copy+truncate instead");
2346          try {
2347            await ao.copy(e, t, { overwrite: !0 }), await ao.truncate(e)
2348          } catch (e) {
2349            co("moveAndMaybeCompressFile: error copy+truncate", e)
2350          }
2351        }
2352      }
2353    }
2354  } else co("moveAndMaybeCompressFile: source and target are the same, not doing anything")
2355};
2356const Do = G.exports("streamroller:RollingFileWriteStream"), po = bt.exports, ho = e, Eo = t, mo = () => new Date,
2357  yo = de.exports, { Writable:Co } = a,
2358  Fo = ({ file:e, keepFileExt:t, needsIndex:n, alwaysIncludeDate:r, compress:u, fileNameSep:o }) => {
2359    let i = o || ".";
2360    const s = oo.join(e.dir, e.name), c = t => t + e.ext, a = (e, t, r) =>!n && r || !t ? e : e + i + t,
2361      l = (e, t, n) => (t > 0 || r) && n ? e + i + n : e, f = (e, t) => t && u ? e + ".gz" : e,
2362      d = t ? [l, a, c, f] : [c, l, a, f];
2363    return ({ date:e, index:t }) => (uo(`_formatFileName: date=${e}, index=${t}`), d.reduce(((n, r) => r(n, t, e)), s))
2364  }, go = ({ file:e, keepFileExt:t, pattern:n, fileNameSep:r }) => {
2365    let u = r || ".";
2366    const o = "__NOT_MATCHING__";
2367    let i = [(e, t) => e.endsWith(".gz") ? (io("it is gzipped"), t.isCompressed = !0, e.slice(0, -3)) : e, t ? t => t.startsWith(e.name) && t.endsWith(e.ext) ? (io("it starts and ends with the right things"), t.slice(e.name.length + 1, -1 * e.ext.length)) : o : t => t.startsWith(e.base) ? (io("it starts with the right things"), t.slice(e.base.length + 1)) : o, n ? (e, t) => {
2368      const r = e.split(u);
2369      let o = r[r.length-1];
2370      io("items: ", r, ", indexStr: ", o);
2371      let i = e;
2372      void 0 !== o && o.match(/^\d+$/) ? (i = e.slice(0, -1 * (o.length + 1)), io(`dateStr is ${i}`), n && !i && (i = o, o = "0")) : o = "0";
2373      try {
2374        const r = so.parse(n, i, new Date(0, 0));
2375        return so.asString(n, r) !== i ? e : (t.index = parseInt(o, 10), t.date = i, t.timestamp = r.getTime(), "")
2376      } catch (t) {
2377        return io(`Problem parsing ${i} as ${n}, error was: `, t), e
2378      }
2379    } : (e, t) => e.match(/^\d+$/) ? (io("it has an index"), t.index = parseInt(e, 10), "") : e];
2380    return e => {
2381      let t = { filename: e, index: 0, isCompressed: !1 };
2382      return i.reduce(((e, n) => n(e, t)), e) ? null : t
2383    }
2384  }, Ao = fo;
2385var vo = class extends Co {
2386  constructor(e, t) {
2387    if (Do(`constructor: creating RollingFileWriteStream. path=${e}`), "string" != typeof e || 0 === e.length) throw new Error(`Invalid filename: ${e}`);
2388    if (e.endsWith(ho.sep)) throw new Error(`Filename is a directory: ${e}`);
2389    0 === e.indexOf(`~${ho.sep}`) && (e = e.replace("~", Eo.homedir())), super(t), this.options = this._parseOption(t), this.fileObject = ho.parse(e), "" === this.fileObject.dir && (this.fileObject = ho.parse(ho.join(process.cwd(), e))), this.fileFormatter = Fo({
2390      file: this.fileObject,
2391      alwaysIncludeDate: this.options.alwaysIncludePattern,
2392      needsIndex: this.options.maxSize < Number.MAX_SAFE_INTEGER,
2393      compress: this.options.compress,
2394      keepFileExt: this.options.keepFileExt,
2395      fileNameSep: this.options.fileNameSep
2396    }), this.fileNameParser = go({
2397      file: this.fileObject,
2398      keepFileExt: this.options.keepFileExt,
2399      pattern: this.options.pattern,
2400      fileNameSep: this.options.fileNameSep
2401    }), this.state = {
2402      currentSize: 0
2403    }, this.options.pattern && (this.state.currentDate = yo(this.options.pattern, mo())), this.filename = this.fileFormatter({
2404      index: 0,
2405      date: this.state.currentDate
2406    }), ["a", "a+", "as", "as+"].includes(this.options.flags) && this._setExistingSizeAndDate(), Do(`constructor: create new file ${this.filename}, state=${JSON.stringify(this.state)}`), this._renewWriteStream()
2407  }
2408
2409  _setExistingSizeAndDate() {
2410    try {
2411      const e = po.statSync(this.filename);
2412      this.state.currentSize = e.size, this.options.pattern && (this.state.currentDate = yo(this.options.pattern, e.mtime))
2413    } catch (e) {
2414      return
2415    }
2416  }
2417
2418  _parseOption(e) {
2419    const t = {
2420      maxSize: 0,
2421      numToKeep: Number.MAX_SAFE_INTEGER,
2422      encoding: "utf8",
2423      mode: parseInt("0600", 8),
2424      flags: "a",
2425      compress: !1,
2426      keepFileExt: !1,
2427      alwaysIncludePattern: !1
2428    }, n = Object.assign({}, t, e);
2429    if (n.maxSize) {
2430      if (n.maxSize <= 0) throw new Error(`options.maxSize (${n.maxSize}) should be > 0`)
2431    } else delete n.maxSize;
2432    if (n.numBackups || 0 === n.numBackups) {
2433      if (n.numBackups < 0) throw new Error(`options.numBackups (${n.numBackups}) should be >= 0`);
2434      if (n.numBackups >= Number.MAX_SAFE_INTEGER) throw new Error(`options.numBackups (${n.numBackups}) should be < Number.MAX_SAFE_INTEGER`);
2435      n.numToKeep = n.numBackups + 1
2436    } else if (n.numToKeep <= 0) throw new Error(`options.numToKeep (${n.numToKeep}) should be > 0`);
2437    return Do(`_parseOption: creating stream with option=${JSON.stringify(n)}`), n
2438  }
2439
2440  _final(e) {
2441    this.currentFileStream.end("", this.options.encoding, e)
2442  }
2443
2444  _write(e, t, n) {
2445    this._shouldRoll().then((() => {
2446      Do(`_write: writing chunk. file=${this.currentFileStream.path} state=${JSON.stringify(this.state)} chunk=${e}`), this.currentFileStream.write(e, t, (t => {
2447        this.state.currentSize += e.length, n(t)
2448      }))
2449    }))
2450  }
2451
2452  async _shouldRoll() {
2453    (this._dateChanged() || this._tooBig()) && (Do(`_shouldRoll: rolling because dateChanged? ${this._dateChanged()} or tooBig? ${this._tooBig()}`), await this._roll())
2454  }
2455
2456  _dateChanged() {
2457    return this.state.currentDate && this.state.currentDate !== yo(this.options.pattern, mo())
2458  }
2459
2460  _tooBig() {
2461    return this.state.currentSize >= this.options.maxSize
2462  }
2463
2464  _roll() {
2465    return Do("_roll: closing the current stream"), new Promise(((e, t) => {
2466      this.currentFileStream.end("", this.options.encoding, (() => {
2467        this._moveOldFiles().then(e).catch(t)
2468      }))
2469    }))
2470  }
2471
2472  async _moveOldFiles() {
2473    const e = await this._getExistingFiles();
2474    for (let t = (this.state.currentDate ? e.filter((e => e.date === this.state.currentDate)) : e).length; t >= 0; t--) {
2475      Do(`_moveOldFiles: i = ${t}`);
2476      const e = this.fileFormatter({ date: this.state.currentDate, index: t }),
2477        n = this.fileFormatter({ date: this.state.currentDate, index: t + 1 }),
2478        r = { compress: this.options.compress && 0 === t, mode: this.options.mode };
2479      await Ao(e, n, r)
2480    }
2481    this.state.currentSize = 0, this.state.currentDate = this.state.currentDate ? yo(this.options.pattern, mo()) : null, Do(`_moveOldFiles: finished rolling files. state=${JSON.stringify(this.state)}`), this._renewWriteStream(), await new Promise(((e, t) => {
2482      this.currentFileStream.write("", "utf8", (() => {
2483        this._clean().then(e).catch(t)
2484      }))
2485    }))
2486  }
2487
2488  async _getExistingFiles() {
2489    const e = await po.readdir(this.fileObject.dir).catch((() => []));
2490    Do(`_getExistingFiles: files=${e}`);
2491    const t = e.map((e => this.fileNameParser(e))).filter((e => e)),
2492      n = e => (e.timestamp ? e.timestamp : mo().getTime()) - e.index;
2493    return t.sort(((e, t) => n(e) - n(t))), t
2494  }
2495
2496  _renewWriteStream() {
2497    const e = this.fileFormatter({ date: this.state.currentDate, index: 0 }), t = e => {
2498      try {
2499        return po.mkdirSync(e, { recursive: !0 })
2500      } catch (n) {
2501        if ("ENOENT" === n.code) return t(ho.dirname(e)), t(e);
2502        if ("EEXIST" !== n.code && "EROFS" !== n.code) throw n;
2503        try {
2504          if (po.statSync(e).isDirectory()) return e;
2505          throw n
2506        } catch (e) {
2507          throw n
2508        }
2509      }
2510    };
2511    t(this.fileObject.dir);
2512    const n = { flags: this.options.flags, encoding: this.options.encoding, mode: this.options.mode };
2513    var r, u;
2514    po.appendFileSync(e, "", (r = {
2515      ...n
2516    }, u = "flags", r["flag"] = r[u], delete r[u], r)), this.currentFileStream = po.createWriteStream(e, n), this.currentFileStream.on("error", (e => {
2517      this.emit("error", e)
2518    }))
2519  }
2520
2521  async _clean() {
2522    const e = await this._getExistingFiles();
2523    if (Do(`_clean: numToKeep = ${this.options.numToKeep}, existingFiles = ${e.length}`), Do("_clean: existing files are: ", e), this._tooManyFiles(e.length)) {
2524      const n = e.slice(0, e.length - this.options.numToKeep).map((e => ho.format({
2525        dir: this.fileObject.dir,
2526        base: e.filename
2527      })));
2528      await (t = n, Do(`deleteFiles: files to delete: ${t}`), Promise.all(t.map((e => po.unlink(e).catch((t => {
2529        Do(`deleteFiles: error when unlinking ${e}, ignoring. Error was ${t}`)
2530      }))))))
2531    }
2532    var t
2533  }
2534
2535  _tooManyFiles(e) {
2536    return this.options.numToKeep > 0 && e > this.options.numToKeep
2537  }
2538};
2539const So = vo;
2540var wo = class extends So {
2541  constructor(e, t, n, r) {
2542    r || (r = {
2543    }), 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
2544  }
2545
2546  get theStream() {
2547    return this.currentFileStream
2548  }
2549};
2550const Oo = vo;
2551var _o = {
2552  RollingFileWriteStream: vo, RollingFileStream: wo, DateRollingFileStream: class extends Oo {
2553    constructor(e, t, n) {
2554      t && "object" == typeof t && (n = t, t = null), n || (n = {
2555      }), 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
2556    }
2557
2558    get theStream() {
2559      return this.currentFileStream
2560    }
2561  }
2562};
2563const bo = G.exports("log4js:file"), Bo = e, Po = _o, ko = t, Io = ko.EOL;
2564let xo = !1;
2565const No = new Set;
2566
2567function Ro() {
2568  No.forEach((e => {
2569    e.sighupHandler()
2570  }))
2571}
2572
2573_t.configure = function (e, t) {
2574  let n = t.basicLayout;
2575  return e.layout && (n = t.layout(e.layout.type, e.layout)), e.mode = e.mode || 384, function(e, t, n, r, u, o){
2576    if ("string" != typeof e || 0 === e.length) throw new Error(`Invalid filename: ${e}`);
2577    if (e.endsWith(Bo.sep)) throw new Error(`Filename is a directory: ${e}`);
2578
2579    function i(e, t, n, r) {
2580      const u = new Po.RollingFileStream(e, t, n, r);
2581      return u.on("error", (t => {
2582        console.error("log4js.fileAppender - Writing to file %s, error happened ", e, t)
2583      })), u.on("drain", (() => {
2584        process.emit("log4js:pause", !1)
2585      })), u
2586    }
2587
2588    e = e.replace(new RegExp(`^~(?=${Bo.sep}.+)`), ko.homedir()), e = Bo.normalize(e), bo("Creating file appender (", e, ", ", n, ", ", r = r || 0 === r ? r : 5, ", ", u, ", ", o, ")");
2589    let s = i(e, n, r, u);
2590    const c = function (e) {
2591      if (s.writable) {
2592        if (!0 === u.removeColor) {
2593          const t = /\x1b[[0-9;]*m/g;
2594          e.data = e.data.map((e => "string" == typeof e ? e.replace(t, "") : e))
2595        }
2596        s.write(t(e, o) + Io, "utf8") || process.emit("log4js:pause", !0)
2597      }
2598    };
2599    return c.reopen = function () {
2600      s.end((() => {
2601        s = i(e, n, r, u)
2602      }))
2603    }, c.sighupHandler = function () {
2604      bo("SIGHUP handler called."), c.reopen()
2605    }, c.shutdown = function (e) {
2606      No.delete(c), 0 === No.size && xo && (process.removeListener("SIGHUP", Ro), xo = !1), s.end("", "utf-8", e)
2607    }, No.add(c), xo || (process.on("SIGHUP", Ro), xo = !0), c
2608  }(e.filename, n, e.maxLogSize, e.backups, e, e.timezoneOffset)
2609};
2610var To = {};
2611const Mo = _o, Lo = t.EOL;
2612
2613function jo(e, t, n, r, u) {
2614  r.maxSize = r.maxLogSize;
2615  const o = function(e, t, n){
2616    const r = new Mo.DateRollingFileStream(e, t, n);
2617    return r.on("error", (t => {
2618      console.error("log4js.dateFileAppender - Writing to file %s, error happened ", e, t)
2619    })), r.on("drain", (() => {
2620      process.emit("log4js:pause", !1)
2621    })), r
2622  }(e, t, r), i = function (e) {
2623    o.writable && (o.write(n(e, u) + Lo, "utf8") || process.emit("log4js:pause", !0))
2624  };
2625  return i.shutdown = function (e) {
2626    o.end("", "utf-8", e)
2627  }, i
2628}
2629
2630To.configure = function (e, t) {
2631  let n = t.basicLayout;
2632  return e.layout && (n = t.layout(e.layout.type, e.layout)), e.alwaysIncludePattern || (e.alwaysIncludePattern = !1), e.mode = e.mode || 384, jo(e.filename, e.pattern, n, e, e.timezoneOffset)
2633};
2634var $o = {};
2635const Ho = G.exports("log4js:fileSync"), Go = e, Vo = n, Uo = t, Jo = Uo.EOL;
2636
2637function Wo(e, t) {
2638  const n = e => {
2639    try {
2640      return Vo.mkdirSync(e, { recursive: !0 })
2641    } catch (t) {
2642      if ("ENOENT" === t.code) return n(Go.dirname(e)), n(e);
2643      if ("EEXIST" !== t.code && "EROFS" !== t.code) throw t;
2644      try {
2645        if (Vo.statSync(e).isDirectory()) return e;
2646        throw t
2647      } catch (e) {
2648        throw t
2649      }
2650    }
2651  };
2652  n(Go.dirname(e)), Vo.appendFileSync(e, "", { mode: t.mode, flag: t.flags })
2653}
2654
2655class zo {
2656  constructor(e, t, n, r) {
2657    if (Ho("In RollingFileStream"), t < 0) throw new Error(`maxLogSize (${t}) should be > 0`);
2658    this.filename = e, this.size = t, this.backups = n, this.options = r, this.currentSize = 0, this.currentSize = function(e){
2659      let t = 0;
2660      try {
2661        t = Vo.statSync(e).size
2662      } catch (t) {
2663        Wo(e, r)
2664      }
2665      return t
2666    }(this.filename)
2667  }
2668
2669  shouldRoll() {
2670    return Ho("should roll with current size %d, and max size %d", this.currentSize, this.size), this.currentSize >= this.size
2671  }
2672
2673  roll(e) {
2674    const t = this, n = new RegExp(`^${Go.basename(e)}`);
2675
2676    function r(e) {
2677      return n.test(e)
2678    }
2679
2680    function u(t) {
2681      return parseInt(t.slice(`${Go.basename(e)}.`.length), 10) || 0
2682    }
2683
2684    function o(e, t) {
2685      return u(e) - u(t)
2686    }
2687
2688    function i(n) {
2689      const r = u(n);
2690      if (Ho(`Index of ${n} is ${r}`), 0 === t.backups) Vo.truncateSync(e, 0); else if (r < t.backups) {
2691        try {
2692          Vo.unlinkSync(`${e}.${r + 1}`)
2693        } catch (e) {
2694        }
2695        Ho(`Renaming ${n} -> ${e}.${r + 1}`), Vo.renameSync(Go.join(Go.dirname(e), n), `${e}.${r + 1}`)
2696      }
2697    }
2698
2699    Ho("Rolling, rolling, rolling"), Ho("Renaming the old files"), Vo.readdirSync(Go.dirname(e)).filter(r).sort(o).reverse().forEach(i)
2700  }
2701
2702  write(e, t) {
2703    const n = this;
2704    Ho("in write"), this.shouldRoll() && (this.currentSize = 0, this.roll(this.filename)), Ho("writing the chunk to the file"), n.currentSize += e.length, Vo.appendFileSync(n.filename, e)
2705  }
2706}
2707
2708$o.configure = function (e, t) {
2709  let n = t.basicLayout;
2710  e.layout && (n = t.layout(e.layout.type, e.layout));
2711  const r = { flags: e.flags || "a", encoding: e.encoding || "utf8", mode: e.mode || 384 };
2712  return function(e, t, n, r, u, o){
2713    if ("string" != typeof e || 0 === e.length) throw new Error(`Invalid filename: ${e}`);
2714    if (e.endsWith(Go.sep)) throw new Error(`Filename is a directory: ${e}`);
2715    e = e.replace(new RegExp(`^~(?=${Go.sep}.+)`), Uo.homedir()), e = Go.normalize(e), Ho("Creating fileSync appender (", e, ", ", n, ", ", r = r || 0 === r ? r : 5, ", ", u, ", ", o, ")");
2716    const i = function(e, t, n){
2717      let r;
2718      var o;
2719      return t ? r = new zo(e, t, n, u) : (Wo(o = e, u), r = {
2720        write(e) {
2721          Vo.appendFileSync(o, e)
2722        }
2723      }), r
2724    }(e, n, r);
2725    return e => {
2726      i.write(t(e, o) + Jo)
2727    }
2728  }(e.filename, n, e.maxLogSize, e.backups, r, e.timezoneOffset)
2729};
2730var Ko = {};
2731const qo = G.exports("log4js:tcp"), Yo = d;
2732Ko.configure = function (e, t) {
2733  qo(`configure with config = ${e}`);
2734  let n = function (e) {
2735    return e.serialise()
2736  };
2737  return e.layout && (n = t.layout(e.layout.type, e.layout)), function(e, t){
2738    let n = !1;
2739    const r = [];
2740    let u, o = 3, i = "__LOG4JS__";
2741
2742    function s(e) {
2743      qo("Writing log event to socket"), n = u.write(`${t(e)}${i}`, "utf8")
2744    }
2745
2746    function c() {
2747      let e;
2748      for (qo("emptying buffer"); e = r.shift(); ) s(e)
2749    }
2750
2751    function a(e) {
2752      n ? s(e) : (qo("buffering log event because it cannot write at the moment"), r.push(e))
2753    }
2754
2755    return function t(){
2756      qo(`appender creating socket to ${e.host || "localhost"}:${e.port || 5e3}`), i = `${e.endMsg || "__LOG4JS__"}`, u = Yo.createConnection(e.port || 5e3, e.host || "localhost"), u.on("connect", (() => {
2757        qo("socket connected"), c(), n = !0
2758      })), u.on("drain", (() => {
2759        qo("drain event received, emptying buffer"), n = !0, c()
2760      })), u.on("timeout", u.end.bind(u)), u.on("error", (e => {
2761        qo("connection error", e), n = !1, c()
2762      })), u.on("close", t)
2763    }(), a.shutdown = function (e) {
2764      qo("shutdown called"), r.length && o ? (qo("buffer has items, waiting 100ms to empty"), o -= 1, setTimeout((() => {
2765        a.shutdown(e)
2766      }), 100)) : (u.removeAllListeners("close"), u.end(e))
2767    }, a
2768  }(e, n)
2769};
2770const Zo = e, Xo = G.exports("log4js:appenders"), Qo = fe, ei = Dt, ti = xe, ni = Be, ri = pt, ui = new Map;
2771ui.set("console", yt), ui.set("stdout", Ft), ui.set("stderr", gt), ui.set("logLevelFilter", At), ui.set("categoryFilter", vt), ui.set("noLogFilter", wt), ui.set("file", _t), ui.set("dateFile", To), ui.set("fileSync", $o), ui.set("tcp", Ko);
2772const oi = new Map, ii = (e, t) => {
2773  let n;
2774  try {
2775    const t = `${e}.cjs`;
2776    n = require.resolve(t), Xo("Loading module from ", t)
2777  } catch (t) {
2778    n = e, Xo("Loading module from ", e)
2779  }
2780  try {
2781    return require(n)
2782  } catch (n) {
2783    return void Qo.throwExceptionIf(t, "MODULE_NOT_FOUND" !== n.code, `appender "${e}" could not be loaded (error was: ${n})`)
2784  }
2785}, si = new Set, ci = (e, t) => {
2786  if (oi.has(e)) return oi.get(e);
2787  if (!t.appenders[e]) return !1;
2788  if (si.has(e)) throw new Error(`Dependency loop detected for appender ${e}.`);
2789  si.add(e), Xo(`Creating appender ${e}`);
2790  const n = ai(e, t);
2791  return si.delete(e), oi.set(e, n), n
2792}, ai = (e, t) => {
2793  const n = t.appenders[e],
2794    r = n.type.configure ? n.type : ((e, t) => ui.get(e) || ii(`./${e}`, t) || ii(e, t) || require.main && require.main.filename && ii(Zo.join(Zo.dirname(require.main.filename), e), t) || ii(Zo.join(process.cwd(), e), t))(n.type, t);
2795  return Qo.throwExceptionIf(t, Qo.not(r), `appender "${e}" is not valid (type "${n.type}" could not be found)`), r.appender && (process.emitWarning(`Appender ${n.type} exports an appender function.`, "DeprecationWarning", "log4js-node-DEP0001"), Xo("[log4js-node-DEP0001]", `DEPRECATION: Appender ${n.type} exports an appender function.`)), r.shutdown && (process.emitWarning(`Appender ${n.type} exports a shutdown function.`, "DeprecationWarning", "log4js-node-DEP0002"), Xo("[log4js-node-DEP0002]", `DEPRECATION: Appender ${n.type} exports a shutdown function.`)), Xo(`${e}: clustering.isMaster ? ${ei.isMaster()}`), Xo(`${e}: appenderModule is ${i.inspect(r)}`), ei.onlyOnMaster((() => (Xo(`calling appenderModule.configure for ${e} / ${n.type}`), r.configure(ri.modifyConfig(n), ni, (e => ci(e, t)), ti))), (() => {
2796  }))
2797}, li = e => {
2798  if (oi.clear(), si.clear(), !e) return;
2799  const t = [];
2800  Object.values(e.categories).forEach((e => {
2801    t.push(...e.appenders)
2802  })), Object.keys(e.appenders).forEach((n => {
2803    (t.includes(n) || "tcp-server" === e.appenders[n].type || "multiprocess" === e.appenders[n].type) && ci(n, e)
2804  }))
2805}, fi = () => {
2806  li()
2807};
2808fi(), Qo.addListener((e => {
2809  Qo.throwExceptionIf(e, Qo.not(Qo.anObject(e.appenders)), 'must have a property "appenders" of type object.');
2810  const t = Object.keys(e.appenders);
2811  Qo.throwExceptionIf(e, Qo.not(t.length), "must define at least one appender."), t.forEach((t => {
2812    Qo.throwExceptionIf(e, Qo.not(e.appenders[t].type), `appender "${t}" is not valid (must be an object with property "type")`)
2813  }))
2814})), Qo.addListener(li), Ne.exports = oi, Ne.exports.init = fi;
2815var di = { exports: {} };
2816!function(e){
2817  const t = G.exports("log4js:categories"), n = fe, r = xe, u = Ne.exports, o = new Map;
2818
2819  function i(e, t, n) {
2820    if (!1 === t.inherit) return;
2821    const r = n.lastIndexOf(".");
2822    if (r < 0) return;
2823    const u = n.slice(0, r);
2824    let o = e.categories[u];
2825    o || (o = {
2826      inherit: !0,
2827      appenders: []
2828    }), 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 => {
2829      t.appenders.includes(e) || t.appenders.push(e)
2830    })), t.parent = o
2831  }
2832
2833  function s(e) {
2834    if (!e.categories) return;
2835    Object.keys(e.categories).forEach((t => {
2836      const n = e.categories[t];
2837      i(e, n, t)
2838    }))
2839  }
2840
2841  n.addPreProcessingListener((e => s(e))), n.addListener((e => {
2842    n.throwExceptionIf(e, n.not(n.anObject(e.categories)), 'must have a property "categories" of type object.');
2843    const t = Object.keys(e.categories);
2844    n.throwExceptionIf(e, n.not(t.length), "must define at least one category."), t.forEach((t => {
2845      const o = e.categories[t];
2846      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 => {
2847        n.throwExceptionIf(e, n.not(u.get(r)), `category "${t}" is not valid (appender "${r}" is not defined)`)
2848      })), 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(", ")})`)
2849    })), n.throwExceptionIf(e, n.not(e.categories.default), 'must define a "default" category.')
2850  }));
2851  const c = e => {
2852    if (o.clear(), !e) return;
2853    Object.keys(e.categories).forEach((n => {
2854      const i = e.categories[n], s = [];
2855      i.appenders.forEach((e => {
2856        s.push(u.get(e)), t(`Creating category ${n}`), o.set(n, {
2857          appenders: s,
2858          level: r.getLevel(i.level),
2859          enableCallStack: i.enableCallStack || !1
2860        })
2861      }))
2862    }))
2863  }, a = () => {
2864    c()
2865  };
2866  a(), n.addListener(c);
2867  const l = e => {
2868    if (t(`configForCategory: searching for config for ${e}`), o.has(e)) return t(`configForCategory: ${e} exists in config, returning it`), o.get(e);
2869    let n;
2870    return e.indexOf(".") > 0 ? (t(`configForCategory: ${e} has hierarchy, cloning from parents`), n = {
2871      ...l(e.slice(0, e.lastIndexOf(".")))
2872    }) : (o.has("default") || c({
2873      categories: { default: { appenders: ["out"], level: "OFF" } }
2874    }), t("configForCategory: cloning default category"), n = { ...o.get("default") }), o.set(e, n), n
2875  };
2876  e.exports = o, e.exports = Object.assign(e.exports, {
2877    appendersForCategory: e => l(e).appenders,
2878    getLevelForCategory: e => l(e).level,
2879    setLevelForCategory: (e, t) => {
2880      l(e).level = t
2881    },
2882    getEnableCallStackForCategory: e =>!0 === l(e).enableCallStack,
2883    setEnableCallStackForCategory: (e, t) => {
2884      l(e).enableCallStack = t
2885    },
2886    init: a
2887  })
2888}(di);
2889const Di = G.exports("log4js:logger"), pi = et, hi = xe, Ei = Dt, mi = di.exports, yi = fe,
2890  Ci = /at (?:(.+)\s+\()?(?:(.+?):(\d+)(?::(\d+))?|([^)]+))\)?/;
2891
2892function Fi(e, t = 4) {
2893  try {
2894    const n = e.stack.split("\n").slice(t);
2895    if (!n.length) return null;
2896    const r = Ci.exec(n[0]);
2897    if (r && 6 === r.length) {
2898      let e = "", t = "", u = "";
2899      return r[1] && "" !== r[1] && ([t, u] = r[1].replace(/[[\]]/g, "").split(" as "), u = u || "", t.includes(".") && ([e, t] = t.split("."))), {
2900        fileName: r[2],
2901        lineNumber: parseInt(r[3], 10),
2902        columnNumber: parseInt(r[4], 10),
2903        callStack: n.join("\n"),
2904        className: e,
2905        functionName: t,
2906        functionAlias: u,
2907        callerName: r[1] || ""
2908      }
2909    }
2910    console.error("log4js.logger - defaultParseCallStack error")
2911  } catch (e) {
2912    console.error("log4js.logger - defaultParseCallStack error", e)
2913  }
2914  return null
2915}
2916
2917let gi = class {
2918  constructor(e) {
2919    if (!e) throw new Error("No category provided.");
2920    this.category = e, this.context = {
2921    }, this.callStackSkipIndex = 0, this.parseCallStack = Fi, Di(`Logger created (${this.category}, ${this.level})`)
2922  }
2923
2924  get level() {
2925    return hi.getLevel(mi.getLevelForCategory(this.category), hi.OFF)
2926  }
2927
2928  set level(e) {
2929    mi.setLevelForCategory(this.category, hi.getLevel(e, this.level))
2930  }
2931
2932  get useCallStack() {
2933    return mi.getEnableCallStackForCategory(this.category)
2934  }
2935
2936  set useCallStack(e) {
2937    mi.setEnableCallStackForCategory(this.category,!0 === e)
2938  }
2939
2940  get callStackLinesToSkip() {
2941    return this.callStackSkipIndex
2942  }
2943
2944  set callStackLinesToSkip(e) {
2945    if ("number" != typeof e) throw new TypeError("Must be a number");
2946    if (e < 0) throw new RangeError("Must be >= 0");
2947    this.callStackSkipIndex = e
2948  }
2949
2950  log(e, ...t) {
2951    const n = hi.getLevel(e);
2952    n ? this.isLevelEnabled(n) && this._log(n, t) : yi.validIdentifier(e) && t.length > 0 ? (this.log(hi.WARN, "log4js:logger.log: valid log-level not found as first parameter given:", e), this.log(hi.INFO, `[${e}]`, ...t)) : this.log(hi.INFO, e, ...t)
2953  }
2954
2955  isLevelEnabled(e) {
2956    return this.level.isLessThanOrEqualTo(e)
2957  }
2958
2959  _log(e, t) {
2960    Di(`sending log data (${e}) to appenders`);
2961    const n = t.find((e => e instanceof Error));
2962    let r;
2963    if (this.useCallStack) {
2964      try {
2965        n && (r = this.parseCallStack(n, this.callStackSkipIndex + 1))
2966      } catch (e) {
2967      }
2968      r = r || this.parseCallStack(new Error, this.callStackSkipIndex + 3 + 1)
2969    }
2970    const u = new pi(this.category, e, t, this.context, r, n);
2971    Ei.send(u)
2972  }
2973
2974  addContext(e, t) {
2975    this.context[e] = t
2976  }
2977
2978  removeContext(e) {
2979    delete this.context[e]
2980  }
2981
2982  clearContext() {
2983    this.context = {}
2984  }
2985
2986  setParseCallStackFunction(e) {
2987    if ("function" == typeof e) this.parseCallStack = e; else {
2988      if (void 0 !== e) throw new TypeError("Invalid type passed to setParseCallStackFunction");
2989      this.parseCallStack = Fi
2990    }
2991  }
2992};
2993
2994function Ai(e) {
2995  const t = hi.getLevel(e), n = t.toString().toLowerCase().replace(/_([a-z])/g, (e => e[1].toUpperCase())),
2996    r = n[0].toUpperCase() + n.slice(1);
2997  gi.prototype[`is${r}Enabled`] = function () {
2998    return this.isLevelEnabled(t)
2999  }, gi.prototype[n] = function (...e) {
3000    this.log(t, ...e)
3001  }
3002}
3003
3004hi.levels.forEach(Ai), yi.addListener((() => {
3005  hi.levels.forEach(Ai)
3006}));
3007var vi = gi;
3008const Si = xe;
3009
3010function wi(e) {
3011  return e.originalUrl || e.url
3012}
3013
3014function Oi(e, t) {
3015  for (let n = 0; n < t.length; n++) e = e.replace(t[n].token, t[n].replacement);
3016  return e
3017}
3018
3019const _i = G.exports("log4js:recording"), bi = [];
3020
3021function Bi() {
3022  return bi.slice()
3023}
3024
3025function Pi() {
3026  bi.length = 0
3027}
3028
3029var ki = {
3030  configure: function () {
3031    return function (e) {
3032      _i(`received logEvent, number of events now ${bi.length + 1}`), _i("log event was ", e), bi.push(e)
3033    }
3034  },
3035  replay: Bi,
3036  playback: Bi,
3037  reset: Pi,
3038  erase: Pi
3039};
3040const Ii = G.exports("log4js:main"), xi = n, Ni = ne({ proto: !0 }), Ri = fe, Ti = Be, Mi = xe, Li = Ne.exports,
3041  ji = di.exports, $i = vi, Hi = Dt, Gi = function (e, t) {
3042    t = "string" == typeof t || "function" == typeof t ? { format: t } : t || {};
3043    const n = e;
3044    let r = Si.getLevel(t.level, Si.INFO);
3045    const u = t.format || ':remote-addr - - ":method :url HTTP/:http-version" :status :content-length ":referrer" ":user-agent"';
3046    return (e, o, i) => {
3047      if (void 0 !== e._logging) return i();
3048      if ("function" != typeof t.nolog) {
3049        const n = function(e){
3050          let t = null;
3051          if (e instanceof RegExp && (t = e), "string" == typeof e && (t = new RegExp(e)), Array.isArray(e)) {
3052            const n = e.map((e => e.source ? e.source : e));
3053            t = new RegExp(n.join("|"))
3054          }
3055          return t
3056        }(t.nolog);
3057        if (n && n.test(e.originalUrl)) return i()
3058      }
3059      if (n.isLevelEnabled(r) || "auto" === t.level) {
3060        const i = new Date, { writeHead:s } = o;
3061        e._logging = !0, o.writeHead = (e, t) => {
3062          o.writeHead = s, o.writeHead(e, t), o.__statusCode = e, o.__headers = t || {}
3063        };
3064        let c = !1;
3065        const a = () => {
3066          if (c) return;
3067          if (c = !0, "function" == typeof t.nolog && !0 === t.nolog(e, o)) return void (e._logging = !1);
3068          o.responseTime = new Date - i, o.statusCode && "auto" === t.level && (r = Si.INFO, o.statusCode >= 300 && (r = Si.WARN), o.statusCode >= 400 && (r = Si.ERROR)), r = function(e, t, n){
3069            let r = t;
3070            if (n) {
3071              const t = n.find((t => {
3072                let n = !1;
3073                return n = t.from && t.to ? e >= t.from && e <= t.to : -1 !== t.codes.indexOf(e), n
3074              }));
3075              t && (r = Si.getLevel(t.level, r))
3076            }
3077            return r
3078          }(o.statusCode, r, t.statusRules);
3079          const s = function(e, t, n){
3080            const r = [];
3081            return r.push({ token: ":url", replacement: wi(e) }), r.push({
3082              token: ":protocol",
3083              replacement: e.protocol
3084            }), r.push({ token: ":hostname", replacement: e.hostname }), r.push({
3085              token: ":method",
3086              replacement: e.method
3087            }), r.push({ token: ":status", replacement: t.__statusCode || t.statusCode }), r.push({
3088              token: ":response-time",
3089              replacement: t.responseTime
3090            }), r.push({ token: ":date", replacement: (new Date).toUTCString() }), r.push({
3091              token: ":referrer",
3092              replacement: e.headers.referer || e.headers.referrer || ""
3093            }), r.push({ token: ":http-version", replacement: `${e.httpVersionMajor}.${e.httpVersionMinor}` }), r.push({
3094              token: ":remote-addr",
3095              replacement: e.headers["x-forwarded-for"] || e.ip || e._remoteAddress || e.socket && (e.socket.remoteAddress || e.socket.socket && e.socket.socket.remoteAddress)
3096            }), r.push({ token: ":user-agent", replacement: e.headers["user-agent"] }), r.push({
3097              token: ":content-length",
3098              replacement: t.getHeader("content-length") || t.__headers && t.__headers["Content-Length"] || "-"
3099            }), r.push({ token: /:req\[([^\]]+)]/g, replacement: (t, n) => e.headers[n.toLowerCase()] }), r.push({
3100              token: /:res\[([^\]]+)]/g,
3101              replacement: (e, n) => t.getHeader(n.toLowerCase()) || t.__headers && t.__headers[n]
3102            }), (e => {
3103              const t = e.concat();
3104              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);
3105              return t
3106            })(n.concat(r))
3107          }(e, o, t.tokens || []);
3108          if (t.context && n.addContext("res", o), "function" == typeof u) {
3109            const t = u(e, o, (e => Oi(e, s)));
3110            t && n.log(r, t)
3111          } else n.log(r, Oi(u, s));
3112          t.context && n.removeContext("res")
3113        };
3114        o.on("end", a), o.on("finish", a), o.on("error", a), o.on("close", a)
3115      }
3116      return i()
3117    }
3118  }, Vi = ki;
3119let Ui = !1;
3120
3121function Ji(e) {
3122  if (!Ui) return;
3123  Ii("Received log event ", e);
3124  ji.appendersForCategory(e.categoryName).forEach((t => {
3125    t(e)
3126  }))
3127}
3128
3129function Wi(e) {
3130  Ui && zi();
3131  let t = e;
3132  return "string" == typeof t && (t = function(e){
3133    Ii(`Loading configuration from ${e}`);
3134    try {
3135      return JSON.parse(xi.readFileSync(e, "utf8"))
3136    } catch (t) {
3137      throw new Error(`Problem reading config from file "${e}". Error was ${t.message}`, t)
3138    }
3139  }(e)), Ii(`Configuration is ${t}`), Ri.configure(Ni(t)), Hi.onMessage(Ji), Ui = !0, Ki
3140}
3141
3142function zi(e = (() => {
3143})) {
3144  if ("function" != typeof e) throw new TypeError("Invalid callback passed to shutdown");
3145  Ii("Shutdown called. Disabling all log writing."), Ui = !1;
3146  const t = Array.from(Li.values());
3147  Li.init(), ji.init();
3148  const n = t.reduce(((e, t) => t.shutdown ? e + 1 : e), 0);
3149  0 === n && (Ii("No appenders with shutdown functions found."), e());
3150  let r, u = 0;
3151
3152  function o(t) {
3153    r = r || t, u += 1, Ii(`Appender shutdowns complete: ${u} / ${n}`), u >= n && (Ii("All shutdown functions completed."), e(r))
3154  }
3155
3156  Ii(`Found ${n} appenders with shutdown functions.`), t.filter((e => e.shutdown)).forEach((e => e.shutdown(o)))
3157}
3158
3159const Ki = {
3160  getLogger: function (e) {
3161    return Ui || Wi(process.env.LOG4JS_CONFIG || {
3162      appenders: { out: { type: "stdout" } },
3163      categories: { default: { appenders: ["out"], level: "OFF" } }
3164    }), new $i(e || "default")
3165  },
3166  configure: Wi,
3167  shutdown: zi,
3168  connectLogger: Gi,
3169  levels: Mi,
3170  addLayout: Ti.addLayout,
3171  recording: function () {
3172    return Vi
3173  }
3174};
3175var qi = Ki;
3176!function(e){
3177  Object.defineProperty(e, "__esModule", { value: !0 }), e.addCustomPlugin = e.addCustomTask = e.hvigorTrace = void 0;
3178  const t = qi;
3179  e.hvigorTrace = {
3180    totalTime: 0,
3181    moduleNum: 0,
3182    taskTime: {},
3183    isIncremental: !0,
3184    hasIncremental: !1,
3185    isParallel: !0,
3186    IS_DAEMON: !0,
3187    LOG_LEVEL: t.levels.INFO.levelStr,
3188    IS_HVIGORFILE_TYPE_CHECK: !1
3189  }, e.addCustomTask = function (t) {
3190    let n = e.hvigorTrace.CUSTOM_TASKS ?? [];
3191    n.length > 0 && (n = n.filter((e => e.NAME !== t.NAME))), n.push(t), e.hvigorTrace.CUSTOM_TASKS = n
3192  }, e.addCustomPlugin = function (t) {
3193    let n = e.hvigorTrace.CUSTOM_PLUGINS ?? [];
3194    n.length > 0 && (n = n.filter((e => e.PLUGIN_ID !== t.PLUGIN_ID))), n.push({
3195      PLUGIN_ID: t.PLUGIN_ID
3196    }), e.hvigorTrace.CUSTOM_PLUGINS = n
3197  }
3198}(H);
3199var Yi, Zi = {};
3200Yi = Zi, Object.defineProperty(Yi, "__esModule", { value: !0 }), Yi.isCI = void 0, Yi.isCI = function () {
3201  return !("false" === process.env.CI || !(process.env.BUILD_ID || process.env.BUILD_NUMBER || process.env.CI || process.env.CI_APP_ID || process.env.CI_BUILD_ID || process.env.CI_BUILD_NUMBER || process.env.CI_NAME || process.env.CONTINUOUS_INTEGRATION || process.env.RUN_ID || Yi.name))
3202};
3203var Xi = {};
3204!function(e){
3205  var t = p && p.__importDefault || function (e) {
3206    return e && e.__esModule ? e : { default: e }
3207  };
3208  Object.defineProperty(e, "__esModule", { value: !0 }), e.hashFile = e.hash = e.createHash = void 0;
3209  const r = t(D), u = t(n);
3210  e.createHash = (e = "MD5") => r.default.createHash(e);
3211  e.hash = (t, n) => (0, e.createHash)(n).update(t).digest("hex");
3212  e.hashFile = (t, n) => {
3213    if (u.default.existsSync(t)) return (0, e.hash)(u.default.readFileSync(t, "utf-8"), n)
3214  }
3215}(Xi);
3216var Qi = {}, es = {}, ts = {};
3217Object.defineProperty(ts, "__esModule", { value: !0 }), ts.Unicode = void 0;
3218
3219class ns {
3220}
3221
3222ts.Unicode = ns, ns.SPACE_SEPARATOR = /[\u1680\u2000-\u200A\u202F\u205F\u3000]/, ns.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]/, ns.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(es, "__esModule", {
3223  value: !0
3224}), es.JudgeUtil = void 0;
3225const rs = ts;
3226es.JudgeUtil = class {
3227  static isIgnoreChar(e) {
3228    return "string" == typeof e && ("\t" === e || "\v" === e || "\f" === e || " " === e || " " === e || "\ufeff" === e || "\n" === e || "\r" === e || "\u2028" === e || "\u2029" === e)
3229  }
3230
3231  static isSpaceSeparator(e) {
3232    return "string" == typeof e && rs.Unicode.SPACE_SEPARATOR.test(e)
3233  }
3234
3235  static isIdStartChar(e) {
3236    return "string" == typeof e && (e >= "a" && e <= "z" || e >= "A" && e <= "Z" || "$" === e || "_" === e || rs.Unicode.ID_START.test(e))
3237  }
3238
3239  static isIdContinueChar(e) {
3240    return "string" == typeof e && (e >= "a" && e <= "z" || e >= "A" && e <= "Z" || e >= "0" && e <= "9" || "$" === e || "_" === e || "‌" === e || "‍" === e || rs.Unicode.ID_CONTINUE.test(e))
3241  }
3242
3243  static isDigitWithoutZero(e) {
3244    return /[1-9]/.test(e)
3245  }
3246
3247  static isDigit(e) {
3248    return "string" == typeof e && /[0-9]/.test(e)
3249  }
3250
3251  static isHexDigit(e) {
3252    return "string" == typeof e && /[0-9A-Fa-f]/.test(e)
3253  }
3254};
3255var us = p && p.__importDefault || function (e) {
3256  return e && e.__esModule ? e : { default: e }
3257};
3258Object.defineProperty(Qi, "__esModule", { value: !0 }), Qi.parseJsonText = Qi.parseJsonFile = void 0;
3259const os = us(n), is = us(t), ss = us(e), cs = es;
3260var as;
3261!function(e){
3262  e[e.Char=0] = "Char", e[e.EOF=1] = "EOF", e[e.Identifier=2] = "Identifier"
3263}(as || (as = {}));
3264let ls, fs, ds, Ds, ps, hs, Es = "start", ms = [], ys = 0, Cs = 1, Fs = 0, gs = !1, As = "default", vs = "'", Ss = 1;
3265
3266function ws(e, t = !1) {
3267  fs = String(e), Es = "start", ms = [], ys = 0, Cs = 1, Fs = 0, Ds = void 0, gs = t;
3268  do {
3269    ls = Os(), xs[Es]()
3270  } while ("eof" !== ls.type);
3271  return Ds
3272}
3273
3274function Os() {
3275  for (As = "default", ps = "", vs = "'", Ss = 1;; ) {
3276    hs = _s();
3277    const e = Bs[As]();
3278    if (e) return e
3279  }
3280}
3281
3282function _s() {
3283  if (fs[ys]) return String.fromCodePoint(fs.codePointAt(ys))
3284}
3285
3286function bs() {
3287  const e = _s();
3288  return "\n" === e ? (Cs++, Fs = 0) : e ? Fs += e.length : Fs++, e && (ys += e.length), e
3289}
3290
3291Qi.parseJsonFile = function (e, t = !1, n = "utf-8") {
3292  const r = os.default.readFileSync(ss.default.resolve(e), { encoding: n });
3293  try {
3294    return ws(r, t)
3295  } catch (t) {
3296    if (t instanceof SyntaxError) {
3297      const n = t.message.split("at");
3298      if (2 === n.length) throw new Error(`${n[0].trim()}${is.default.EOL}\t at ${e}:${n[1].trim()}`)
3299    }
3300    throw new Error(`${e} is not in valid JSON/JSON5 format.`)
3301  }
3302}, Qi.parseJsonText = ws;
3303const Bs = {
3304  default() {
3305    switch (hs) {
3306      case "/":
3307        return bs(), void (As = "comment");
3308      case void 0:
3309        return bs(), Ps("eof")
3310    }
3311    if (!cs.JudgeUtil.isIgnoreChar(hs) && !cs.JudgeUtil.isSpaceSeparator(hs)) return Bs[Es]();
3312    bs()
3313  },
3314  start() {
3315    As = "value"
3316  },
3317  beforePropertyName() {
3318    switch (hs) {
3319      case "$":
3320      case "_":
3321        return ps = bs(), void (As = "identifierName");
3322      case "\\":
3323        return bs(), void (As = "identifierNameStartEscape");
3324      case "}":
3325        return Ps("punctuator", bs());
3326      case '"':
3327      case "'":
3328        return vs = hs, bs(), void (As = "string")
3329    }
3330    if (cs.JudgeUtil.isIdStartChar(hs)) return ps += bs(), void (As = "identifierName");
3331    throw Ms(as.Char, bs())
3332  },
3333  afterPropertyName() {
3334    if (":" === hs) return Ps("punctuator", bs());
3335    throw Ms(as.Char, bs())
3336  },
3337  beforePropertyValue() {
3338    As = "value"
3339  },
3340  afterPropertyValue() {
3341    switch (hs) {
3342      case ",":
3343      case "}":
3344        return Ps("punctuator", bs())
3345    }
3346    throw Ms(as.Char, bs())
3347  },
3348  beforeArrayValue() {
3349    if ("]" === hs) return Ps("punctuator", bs());
3350    As = "value"
3351  },
3352  afterArrayValue() {
3353    switch (hs) {
3354      case ",":
3355      case "]":
3356        return Ps("punctuator", bs())
3357    }
3358    throw Ms(as.Char, bs())
3359  },
3360  end() {
3361    throw Ms(as.Char, bs())
3362  },
3363  comment() {
3364    switch (hs) {
3365      case "*":
3366        return bs(), void (As = "multiLineComment");
3367      case "/":
3368        return bs(), void (As = "singleLineComment")
3369    }
3370    throw Ms(as.Char, bs())
3371  },
3372  multiLineComment() {
3373    switch (hs) {
3374      case "*":
3375        return bs(), void (As = "multiLineCommentAsterisk");
3376      case void 0:
3377        throw Ms(as.Char, bs())
3378    }
3379    bs()
3380  },
3381  multiLineCommentAsterisk() {
3382    switch (hs) {
3383      case "*":
3384        return void bs();
3385      case "/":
3386        return bs(), void (As = "default");
3387      case void 0:
3388        throw Ms(as.Char, bs())
3389    }
3390    bs(), As = "multiLineComment"
3391  },
3392  singleLineComment() {
3393    switch (hs) {
3394      case "\n":
3395      case "\r":
3396      case "\u2028":
3397      case "\u2029":
3398        return bs(), void (As = "default");
3399      case void 0:
3400        return bs(), Ps("eof")
3401    }
3402    bs()
3403  },
3404  value() {
3405    switch (hs) {
3406      case "{":
3407      case "[":
3408        return Ps("punctuator", bs());
3409      case "n":
3410        return bs(), ks("ull"), Ps("null", null);
3411      case "t":
3412        return bs(), ks("rue"), Ps("boolean", !0);
3413      case "f":
3414        return bs(), ks("alse"), Ps("boolean", !1);
3415      case "-":
3416      case "+":
3417        return "-" === bs() && (Ss = -1), void (As = "numerical");
3418      case ".":
3419      case "0":
3420      case "I":
3421      case "N":
3422        return void (As = "numerical");
3423      case '"':
3424      case "'":
3425        return vs = hs, bs(), ps = "", void (As = "string")
3426    }
3427    if (void 0 === hs || !cs.JudgeUtil.isDigitWithoutZero(hs)) throw Ms(as.Char, bs());
3428    As = "numerical"
3429  },
3430  numerical() {
3431    switch (hs) {
3432      case ".":
3433        return ps = bs(), void (As = "decimalPointLeading");
3434      case "0":
3435        return ps = bs(), void (As = "zero");
3436      case "I":
3437        return bs(), ks("nfinity"), Ps("numeric", Ss * (1 / 0));
3438      case "N":
3439        return bs(), ks("aN"), Ps("numeric", NaN)
3440    }
3441    if (void 0 !== hs && cs.JudgeUtil.isDigitWithoutZero(hs)) return ps = bs(), void (As = "decimalInteger");
3442    throw Ms(as.Char, bs())
3443  },
3444  zero() {
3445    switch (hs) {
3446      case ".":
3447      case "e":
3448      case "E":
3449        return void (As = "decimal");
3450      case "x":
3451      case "X":
3452        return ps += bs(), void (As = "hexadecimal")
3453    }
3454    return Ps("numeric", 0)
3455  },
3456  decimalInteger() {
3457    switch (hs) {
3458      case ".":
3459      case "e":
3460      case "E":
3461        return void (As = "decimal")
3462    }
3463    if (!cs.JudgeUtil.isDigit(hs)) return Ps("numeric", Ss * Number(ps));
3464    ps += bs()
3465  },
3466  decimal() {
3467    switch (hs) {
3468      case ".":
3469        ps += bs(), As = "decimalFraction";
3470        break;
3471      case "e":
3472      case "E":
3473        ps += bs(), As = "decimalExponent"
3474    }
3475  },
3476  decimalPointLeading() {
3477    if (cs.JudgeUtil.isDigit(hs)) return ps += bs(), void (As = "decimalFraction");
3478    throw Ms(as.Char, bs())
3479  },
3480  decimalFraction() {
3481    switch (hs) {
3482      case "e":
3483      case "E":
3484        return ps += bs(), void (As = "decimalExponent")
3485    }
3486    if (!cs.JudgeUtil.isDigit(hs)) return Ps("numeric", Ss * Number(ps));
3487    ps += bs()
3488  },
3489  decimalExponent() {
3490    switch (hs) {
3491      case "+":
3492      case "-":
3493        return ps += bs(), void (As = "decimalExponentSign")
3494    }
3495    if (cs.JudgeUtil.isDigit(hs)) return ps += bs(), void (As = "decimalExponentInteger");
3496    throw Ms(as.Char, bs())
3497  },
3498  decimalExponentSign() {
3499    if (cs.JudgeUtil.isDigit(hs)) return ps += bs(), void (As = "decimalExponentInteger");
3500    throw Ms(as.Char, bs())
3501  },
3502  decimalExponentInteger() {
3503    if (!cs.JudgeUtil.isDigit(hs)) return Ps("numeric", Ss * Number(ps));
3504    ps += bs()
3505  },
3506  hexadecimal() {
3507    if (cs.JudgeUtil.isHexDigit(hs)) return ps += bs(), void (As = "hexadecimalInteger");
3508    throw Ms(as.Char, bs())
3509  },
3510  hexadecimalInteger() {
3511    if (!cs.JudgeUtil.isHexDigit(hs)) return Ps("numeric", Ss * Number(ps));
3512    ps += bs()
3513  },
3514  identifierNameStartEscape() {
3515    if ("u" !== hs) throw Ms(as.Char, bs());
3516    bs();
3517    const e = Is();
3518    switch (e) {
3519      case "$":
3520      case "_":
3521        break;
3522      default:
3523        if (!cs.JudgeUtil.isIdStartChar(e)) throw Ms(as.Identifier)
3524    }
3525    ps += e, As = "identifierName"
3526  },
3527  identifierName() {
3528    switch (hs) {
3529      case "$":
3530      case "_":
3531      case "‌":
3532      case "‍":
3533        return void (ps += bs());
3534      case "\\":
3535        return bs(), void (As = "identifierNameEscape")
3536    }
3537    if (!cs.JudgeUtil.isIdContinueChar(hs)) return Ps("identifier", ps);
3538    ps += bs()
3539  },
3540  identifierNameEscape() {
3541    if ("u" !== hs) throw Ms(as.Char, bs());
3542    bs();
3543    const e = Is();
3544    switch (e) {
3545      case "$":
3546      case "_":
3547      case "‌":
3548      case "‍":
3549        break;
3550      default:
3551        if (!cs.JudgeUtil.isIdContinueChar(e)) throw Ms(as.Identifier)
3552    }
3553    ps += e, As = "identifierName"
3554  },
3555  string() {
3556    switch (hs) {
3557      case "\\":
3558        return bs(), void (ps += function(){
3559          const e = _s(), t = function(){
3560            switch (_s()) {
3561              case "b":
3562                return bs(), "\b";
3563              case "f":
3564                return bs(), "\f";
3565              case "n":
3566                return bs(), "\n";
3567              case "r":
3568                return bs(), "\r";
3569              case "t":
3570                return bs(), "\t";
3571              case "v":
3572                return bs(), "\v"
3573            }
3574            return
3575          }();
3576          if (t) return t;
3577          switch (e) {
3578            case "0":
3579              if (bs(), cs.JudgeUtil.isDigit(_s())) throw Ms(as.Char, bs());
3580              return "\0";
3581            case "x":
3582              return bs(), function(){
3583                let e = "", t = _s();
3584                if (!cs.JudgeUtil.isHexDigit(t)) throw Ms(as.Char, bs());
3585                if (e += bs(), t = _s(), !cs.JudgeUtil.isHexDigit(t)) throw Ms(as.Char, bs());
3586                return e += bs(), String.fromCodePoint(parseInt(e, 16))
3587              }();
3588            case "u":
3589              return bs(), Is();
3590            case "\n":
3591            case "\u2028":
3592            case "\u2029":
3593              return bs(), "";
3594            case "\r":
3595              return bs(), "\n" === _s() && bs(), ""
3596          }
3597          if (void 0 === e || cs.JudgeUtil.isDigitWithoutZero(e)) throw Ms(as.Char, bs());
3598          return bs()
3599        }());
3600      case '"':
3601      case "'":
3602        if (hs === vs) {
3603          const e = Ps("string", ps);
3604          return bs(), e
3605        }
3606        return void (ps += bs());
3607      case "\n":
3608      case "\r":
3609      case void 0:
3610        throw Ms(as.Char, bs());
3611      case "\u2028":
3612      case "\u2029":
3613        !function(e){
3614          console.warn(`JSON5: '${Ts(e)}' in strings is not valid ECMAScript; consider escaping.`)
3615        }(hs)
3616    }
3617    ps += bs()
3618  }
3619};
3620
3621function Ps(e, t) {
3622  return { type: e, value: t, line: Cs, column: Fs }
3623}
3624
3625function ks(e) {
3626  for (const t of e) {
3627    if (_s() !== t) throw Ms(as.Char, bs());
3628    bs()
3629  }
3630}
3631
3632function Is() {
3633  let e = "", t = 4;
3634  for (; t-- > 0; ) {
3635    const t = _s();
3636    if (!cs.JudgeUtil.isHexDigit(t)) throw Ms(as.Char, bs());
3637    e += bs()
3638  }
3639  return String.fromCodePoint(parseInt(e, 16))
3640}
3641
3642const xs = {
3643  start() {
3644    if ("eof" === ls.type) throw Ms(as.EOF);
3645    Ns()
3646  },
3647  beforePropertyName() {
3648    switch (ls.type) {
3649      case "identifier":
3650      case "string":
3651        return ds = ls.value, void (Es = "afterPropertyName");
3652      case "punctuator":
3653        return void Rs();
3654      case "eof":
3655        throw Ms(as.EOF)
3656    }
3657  },
3658  afterPropertyName() {
3659    if ("eof" === ls.type) throw Ms(as.EOF);
3660    Es = "beforePropertyValue"
3661  },
3662  beforePropertyValue() {
3663    if ("eof" === ls.type) throw Ms(as.EOF);
3664    Ns()
3665  },
3666  afterPropertyValue() {
3667    if ("eof" === ls.type) throw Ms(as.EOF);
3668    switch (ls.value) {
3669      case ",":
3670        return void (Es = "beforePropertyName");
3671      case "}":
3672        Rs()
3673    }
3674  },
3675  beforeArrayValue() {
3676    if ("eof" === ls.type) throw Ms(as.EOF);
3677    "punctuator" !== ls.type || "]" !== ls.value ? Ns() : Rs()
3678  },
3679  afterArrayValue() {
3680    if ("eof" === ls.type) throw Ms(as.EOF);
3681    switch (ls.value) {
3682      case ",":
3683        return void (Es = "beforeArrayValue");
3684      case "]":
3685        Rs()
3686    }
3687  },
3688  end() {
3689  }
3690};
3691
3692function Ns() {
3693  const e = function(){
3694    let e;
3695    switch (ls.type) {
3696      case "punctuator":
3697        switch (ls.value) {
3698          case "{":
3699            e = {};
3700            break;
3701          case "[":
3702            e = []
3703        }
3704        break;
3705      case "null":
3706      case "boolean":
3707      case "numeric":
3708      case "string":
3709        e = ls.value
3710    }
3711    return e
3712  }();
3713  if (gs && "object" == typeof e && (e._line = Cs, e._column = Fs), void 0 === Ds) Ds = e; else {
3714    const t = ms[ms.length-1];
3715    Array.isArray(t) ? gs && "object" != typeof e ? t.push({
3716      value: e,
3717      _line: Cs,
3718      _column: Fs
3719    }) : t.push(e) : t[ds] = gs && "object" != typeof e ? { value: e, _line: Cs, _column: Fs } : e
3720  }
3721  !function(e){
3722    if (e && "object" == typeof e) ms.push(e), Es = Array.isArray(e) ? "beforeArrayValue" : "beforePropertyName"; else {
3723      const e = ms[ms.length-1];
3724      Es = e ? Array.isArray(e) ? "afterArrayValue" : "afterPropertyValue" : "end"
3725    }
3726  }(e)
3727}
3728
3729function Rs() {
3730  ms.pop();
3731  const e = ms[ms.length-1];
3732  Es = e ? Array.isArray(e) ? "afterArrayValue" : "afterPropertyValue" : "end"
3733}
3734
3735function Ts(e) {
3736  const t = {
3737    "'": "\\'",
3738    '"': '\\"',
3739    "\\": "\\\\",
3740    "\b": "\\b",
3741    "\f": "\\f",
3742    "\n": "\\n",
3743    "\r": "\\r",
3744    "\t": "\\t",
3745    "\v": "\\v",
3746    "\0": "\\0",
3747    "\u2028": "\\u2028",
3748    "\u2029": "\\u2029"
3749  };
3750  if (t[e]) return t[e];
3751  if (e < " ") {
3752    const t = e.charCodeAt(0).toString(16);
3753    return `\\x${`00${t}`.substring(t.length)}`
3754  }
3755  return e
3756}
3757
3758function Ms(e, t) {
3759  let n = "";
3760  switch (e) {
3761    case as.Char:
3762      n = void 0 === t ? `JSON5: invalid end of input at ${Cs}:${Fs}` : `JSON5: invalid character '${Ts(t)}' at ${Cs}:${Fs}`;
3763      break;
3764    case as.EOF:
3765      n = `JSON5: invalid end of input at ${Cs}:${Fs}`;
3766      break;
3767    case as.Identifier:
3768      Fs -= 5, n = `JSON5: invalid identifier character at ${Cs}:${Fs}`
3769  }
3770  const r = new Ls(n);
3771  return r.lineNumber = Cs, r.columnNumber = Fs, r
3772}
3773
3774class Ls extends SyntaxError {
3775}
3776
3777var js = {}, $s = {}, Hs = {}, Gs = {}, Vs = {
3778  fromCallback: function (e) {
3779    return Object.defineProperty((function (...t) {
3780      if ("function" != typeof t[t.length-1]) return new Promise(((n, r) => {
3781        t.push(((e, t) => null != e ? r(e) : n(t))), e.apply(this, t)
3782      }));
3783      e.apply(this, t)
3784    }), "name", { value: e.name })
3785  }, fromPromise: function (e) {
3786    return Object.defineProperty((function (...t) {
3787      const n = t[t.length-1];
3788      if ("function" != typeof n) return e.apply(this, t);
3789      t.pop(), e.apply(this, t).then((e => n(null, e)), n)
3790    }), "name", { value: e.name })
3791  }
3792};
3793!function(e){
3794  const t = Vs.fromCallback, n = Xt,
3795    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]));
3796  Object.assign(e, n), r.forEach((r => {
3797    e[r] = t(n[r])
3798  })), e.exists = function (e, t) {
3799    return "function" == typeof t ? n.exists(e, t) : new Promise((t => n.exists(e, t)))
3800  }, e.read = function (e, t, r, u, o, i) {
3801    return "function" == typeof i ? n.read(e, t, r, u, o, i) : new Promise(((i, s) => {
3802      n.read(e, t, r, u, o, ((e, t, n) => {
3803        if (e) return s(e);
3804        i({ bytesRead: t, buffer: n })
3805      }))
3806    }))
3807  }, e.write = function (e, t, ...r) {
3808    return "function" == typeof r[r.length-1] ? n.write(e, t, ...r) : new Promise(((u, o) => {
3809      n.write(e, t, ...r, ((e, t, n) => {
3810        if (e) return o(e);
3811        u({ bytesWritten: t, buffer: n })
3812      }))
3813    }))
3814  }, e.readv = function (e, t, ...r) {
3815    return "function" == typeof r[r.length-1] ? n.readv(e, t, ...r) : new Promise(((u, o) => {
3816      n.readv(e, t, ...r, ((e, t, n) => {
3817        if (e) return o(e);
3818        u({ bytesRead: t, buffers: n })
3819      }))
3820    }))
3821  }, e.writev = function (e, t, ...r) {
3822    return "function" == typeof r[r.length-1] ? n.writev(e, t, ...r) : new Promise(((u, o) => {
3823      n.writev(e, t, ...r, ((e, t, n) => {
3824        if (e) return o(e);
3825        u({ bytesWritten: t, buffers: n })
3826      }))
3827    }))
3828  }, "function" == typeof n.realpath.native ? e.realpath.native = t(n.realpath.native) : process.emitWarning("fs.realpath.native is not a function. Is fs being monkey-patched?", "Warning", "fs-extra-WARN0003")
3829}(Gs);
3830var Us = {}, Js = {};
3831const Ws = e;
3832Js.checkPath = function (e) {
3833  if ("win32" === process.platform) {
3834    if (/[<>:"|?*]/.test(e.replace(Ws.parse(e).root, ""))) {
3835      const t = new Error(`Path contains invalid characters: ${e}`);
3836      throw t.code = "EINVAL", t
3837    }
3838  }
3839};
3840const zs = Gs, { checkPath:Ks } = Js, qs = e => "number" == typeof e ? e : {mode: 511,...e}.mode;
3841Us.makeDir = async (e, t) => (Ks(e), zs.mkdir(e, {
3842  mode: qs(t),
3843  recursive: !0
3844})), Us.makeDirSync = (e, t) => (Ks(e), zs.mkdirSync(e, { mode: qs(t), recursive: !0 }));
3845const Ys = Vs.fromPromise, { makeDir:Zs, makeDirSync:Xs } = Us, Qs = Ys(Zs);
3846var ec = {
3847  mkdirs: Qs,
3848  mkdirsSync: Xs,
3849  mkdirp: Qs,
3850  mkdirpSync: Xs,
3851  ensureDir: Qs,
3852  ensureDirSync: Xs
3853};
3854const tc = Vs.fromPromise, nc = Gs;
3855var rc = {
3856  pathExists: tc((function (e) {
3857    return nc.access(e).then((() =>!0)).catch((() =>!1))
3858  })), pathExistsSync: nc.existsSync
3859};
3860const uc = Xt;
3861var oc = function (e, t, n, r) {
3862  uc.open(e, "r+", ((e, u) => {
3863    if (e) return r(e);
3864    uc.futimes(u, t, n, (e => {
3865      uc.close(u, (t => {
3866        r && r(e || t)
3867      }))
3868    }))
3869  }))
3870}, ic = function (e, t, n) {
3871  const r = uc.openSync(e, "r+");
3872  return uc.futimesSync(r, t, n), uc.closeSync(r)
3873};
3874const sc = Gs, cc = e, ac = i;
3875
3876function lc(e, t, n) {
3877  const r = n.dereference ? e => sc.stat(e, { bigint: !0 }) : e => sc.lstat(e, { bigint: !0 });
3878  return Promise.all([r(e), r(t).catch((e => {
3879    if ("ENOENT" === e.code) return null;
3880    throw e
3881  }))]).then((([e, t]) => ({ srcStat: e, destStat: t })))
3882}
3883
3884function fc(e, t) {
3885  return t.ino && t.dev && t.ino === e.ino && t.dev === e.dev
3886}
3887
3888function dc(e, t) {
3889  const n = cc.resolve(e).split(cc.sep).filter((e => e)), r = cc.resolve(t).split(cc.sep).filter((e => e));
3890  return n.reduce(((e, t, n) => e && r[n] === t), !0)
3891}
3892
3893function Dc(e, t, n) {
3894  return `Cannot ${n} '${e}' to a subdirectory of itself, '${t}'.`
3895}
3896
3897var pc = {
3898  checkPaths: function (e, t, n, r, u) {
3899    ac.callbackify(lc)(e, t, r, ((r, o) => {
3900      if (r) return u(r);
3901      const { srcStat:i, destStat:s } = o;
3902      if (s) {
3903        if (fc(i, s)) {
3904          const r = cc.basename(e), o = cc.basename(t);
3905          return "move" === n && r !== o && r.toLowerCase() === o.toLowerCase() ? u(null, {
3906            srcStat: i,
3907            destStat: s,
3908            isChangingCase: !0
3909          }) : u(new Error("Source and destination must not be the same."))
3910        }
3911        if (i.isDirectory() && !s.isDirectory()) return u(new Error(`Cannot overwrite non-directory '${t}' with directory '${e}'.`));
3912        if (!i.isDirectory() && s.isDirectory()) return u(new Error(`Cannot overwrite directory '${t}' with non-directory '${e}'.`))
3913      }
3914      return i.isDirectory() && dc(e, t) ? u(new Error(Dc(e, t, n))) : u(null, { srcStat: i, destStat: s })
3915    }))
3916  },
3917  checkPathsSync: function (e, t, n, r) {
3918    const { srcStat:u, destStat:o } = function(e, t, n){
3919      let r;
3920      const u = n.dereference ? e => sc.statSync(e, { bigint: !0 }) : e => sc.lstatSync(e, { bigint: !0 }), o = u(e);
3921      try {
3922        r = u(t)
3923      } catch (e) {
3924        if ("ENOENT" === e.code) return { srcStat: o, destStat: null };
3925        throw e
3926      }
3927      return { srcStat: o, destStat: r }
3928    }(e, t, r);
3929    if (o) {
3930      if (fc(u, o)) {
3931        const r = cc.basename(e), i = cc.basename(t);
3932        if ("move" === n && r !== i && r.toLowerCase() === i.toLowerCase()) return {
3933          srcStat: u,
3934          destStat: o,
3935          isChangingCase: !0
3936        };
3937        throw new Error("Source and destination must not be the same.")
3938      }
3939      if (u.isDirectory() && !o.isDirectory()) throw new Error(`Cannot overwrite non-directory '${t}' with directory '${e}'.`);
3940      if (!u.isDirectory() && o.isDirectory()) throw new Error(`Cannot overwrite directory '${t}' with non-directory '${e}'.`)
3941    }
3942    if (u.isDirectory() && dc(e, t)) throw new Error(Dc(e, t, n));
3943    return { srcStat: u, destStat: o }
3944  },
3945  checkParentPaths: function e(t, n, r, u, o) {
3946    const i = cc.resolve(cc.dirname(t)), s = cc.resolve(cc.dirname(r));
3947    if (s === i || s === cc.parse(s).root) return o();
3948    sc.stat(s, {
3949      bigint: !0
3950    }, ((i, c) => i ? "ENOENT" === i.code ? o() : o(i) : fc(n, c) ? o(new Error(Dc(t, r, u))) : e(t, n, s, u, o)))
3951  },
3952  checkParentPathsSync: function e(t, n, r, u) {
3953    const o = cc.resolve(cc.dirname(t)), i = cc.resolve(cc.dirname(r));
3954    if (i === o || i === cc.parse(i).root) return;
3955    let s;
3956    try {
3957      s = sc.statSync(i, { bigint: !0 })
3958    } catch (e) {
3959      if ("ENOENT" === e.code) return;
3960      throw e
3961    }
3962    if (fc(n, s)) throw new Error(Dc(t, r, u));
3963    return e(t, n, i, u)
3964  },
3965  isSrcSubdir: dc,
3966  areIdentical: fc
3967};
3968const hc = Xt, Ec = e, mc = ec.mkdirs, yc = rc.pathExists, Cc = oc, Fc = pc;
3969
3970function gc(e, t, n, r) {
3971  if (!n.filter) return r(null, !0);
3972  Promise.resolve(n.filter(e, t)).then((e => r(null, e)), (e => r(e)))
3973}
3974
3975function Ac(e, t, n, r, u) {
3976  (r.dereference ? hc.stat : hc.lstat)(t, ((o, i) => o ? u(o) : i.isDirectory() ? function(e, t, n, r, u, o){
3977    return t ? Oc(n, r, u, o) : function(e, t, n, r, u){
3978      hc.mkdir(n, (o => {
3979        if (o) return u(o);
3980        Oc(t, n, r, (t => t ? u(t) : wc(n, e, u)))
3981      }))
3982    }(e.mode, n, r, u, o)
3983  }(i, e, t, n, r, u) : i.isFile() || i.isCharacterDevice() || i.isBlockDevice() ? function(e, t, n, r, u, o){
3984    return t ? function(e, t, n, r, u){
3985      if (!r.overwrite) return r.errorOnExist ? u(new Error(`'${n}' already exists`)) : u();
3986      hc.unlink(n, (o => o ? u(o) : vc(e, t, n, r, u)))
3987    }(e, n, r, u, o) : vc(e, n, r, u, o)
3988  }(i, e, t, n, r, u) : i.isSymbolicLink() ? function(e, t, n, r, u){
3989    hc.readlink(t, ((t, o) => t ? u(t) : (r.dereference && (o = Ec.resolve(process.cwd(), o)), e ? void hc.readlink(n, ((e, t) => e ? "EINVAL" === e.code || "UNKNOWN" === e.code ? hc.symlink(o, n, u) : u(e) : (r.dereference && (t = Ec.resolve(process.cwd(), t)), Fc.isSrcSubdir(o, t) ? u(new Error(`Cannot copy '${o}' to a subdirectory of itself, '${t}'.`)) : Fc.isSrcSubdir(t, o) ? u(new Error(`Cannot overwrite '${t}' with '${o}'.`)) : function(e, t, n){
3990      hc.unlink(t, (r => r ? n(r) : hc.symlink(e, t, n)))
3991    }(o, n, u)))) : hc.symlink(o, n, u))))
3992  }(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}`))))
3993}
3994
3995function vc(e, t, n, r, u) {
3996  hc.copyFile(t, n, (o => o ? u(o) : r.preserveTimestamps ? function(e, t, n, r){
3997    if (function(e){
3998      return 0 == (128 & e)
3999    }(e)) return function(e, t, n){
4000      return wc(e, 128 | t, n)
4001    }(n, e, (u => u ? r(u) : Sc(e, t, n, r)));
4002    return Sc(e, t, n, r)
4003  }(e.mode, t, n, u) : wc(n, e.mode, u)))
4004}
4005
4006function Sc(e, t, n, r) {
4007  !function(e, t, n){
4008    hc.stat(e, ((e, r) => e ? n(e) : Cc(t, r.atime, r.mtime, n)))
4009  }(t, n, (t => t ? r(t) : wc(n, e, r)))
4010}
4011
4012function wc(e, t, n) {
4013  return hc.chmod(e, t, n)
4014}
4015
4016function Oc(e, t, n, r) {
4017  hc.readdir(e, ((u, o) => u ? r(u) : _c(o, e, t, n, r)))
4018}
4019
4020function _c(e, t, n, r, u) {
4021  const o = e.pop();
4022  return o ? function(e, t, n, r, u, o){
4023    const i = Ec.join(n, t), s = Ec.join(r, t);
4024    gc(i, s, u, ((t, c) => t ? o(t) : c ? void Fc.checkPaths(i, s, "copy", u, ((t, c) => {
4025      if (t) return o(t);
4026      const { destStat:a } = c;
4027      Ac(a, i, s, u, (t => t ? o(t) : _c(e, n, r, u, o)))
4028    })) : _c(e, n, r, u, o)))
4029  }(e, o, t, n, r, u) : u()
4030}
4031
4032var bc = function (e, t, n, r) {
4033  "function" != typeof n || r ? "function" == typeof n && (n = { filter: n }) : (r = n, n = {}), r = r || function () {
4034  }, (n = n || {
4035  }).clobber = !("clobber" in n) || !!n.clobber, n.overwrite = "overwrite" in n ? !!n.overwrite : n.clobber, n.preserveTimestamps && "ia32" === process.arch && process.emitWarning("Using the preserveTimestamps option in 32-bit node is not recommended;\n\n\tsee https://github.com/jprichardson/node-fs-extra/issues/269", "Warning", "fs-extra-WARN0001"), Fc.checkPaths(e, t, "copy", n, ((u, o) => {
4036    if (u) return r(u);
4037    const { srcStat:i, destStat:s } = o;
4038    Fc.checkParentPaths(e, i, t, "copy", (u => {
4039      if (u) return r(u);
4040      gc(e, t, n, ((u, o) => u ? r(u) : o ? void function(e, t, n, r, u){
4041        const o = Ec.dirname(n);
4042        yc(o, ((i, s) => i ? u(i) : s ? Ac(e, t, n, r, u) : void mc(o, (o => o ? u(o) : Ac(e, t, n, r, u)))))
4043      }(s, e, t, n, r) : r()))
4044    }))
4045  }))
4046};
4047const Bc = Xt, Pc = e, kc = ec.mkdirsSync, Ic = ic, xc = pc;
4048
4049function Nc(e, t, n, r) {
4050  const u = (r.dereference ? Bc.statSync : Bc.lstatSync)(t);
4051  if (u.isDirectory()) return function(e, t, n, r, u){
4052    return t ? Mc(n, r, u) : function(e, t, n, r){
4053      return Bc.mkdirSync(n), Mc(t, n, r), Tc(n, e)
4054    }(e.mode, n, r, u)
4055  }(u, e, t, n, r);
4056  if (u.isFile() || u.isCharacterDevice() || u.isBlockDevice()) return function(e, t, n, r, u){
4057    return t ? function(e, t, n, r){
4058      if (r.overwrite) return Bc.unlinkSync(n), Rc(e, t, n, r);
4059      if (r.errorOnExist) throw new Error(`'${n}' already exists`)
4060    }(e, n, r, u) : Rc(e, n, r, u)
4061  }(u, e, t, n, r);
4062  if (u.isSymbolicLink()) return function(e, t, n, r){
4063    let u = Bc.readlinkSync(t);
4064    r.dereference && (u = Pc.resolve(process.cwd(), u));
4065    if (e) {
4066      let e;
4067      try {
4068        e = Bc.readlinkSync(n)
4069      } catch (e) {
4070        if ("EINVAL" === e.code || "UNKNOWN" === e.code) return Bc.symlinkSync(u, n);
4071        throw e
4072      }
4073      if (r.dereference && (e = Pc.resolve(process.cwd(), e)), xc.isSrcSubdir(u, e)) throw new Error(`Cannot copy '${u}' to a subdirectory of itself, '${e}'.`);
4074      if (xc.isSrcSubdir(e, u)) throw new Error(`Cannot overwrite '${e}' with '${u}'.`);
4075      return function(e, t){
4076        return Bc.unlinkSync(t), Bc.symlinkSync(e, t)
4077      }(u, n)
4078    }
4079    return Bc.symlinkSync(u, n)
4080  }(e, t, n, r);
4081  if (u.isSocket()) throw new Error(`Cannot copy a socket file: ${t}`);
4082  if (u.isFIFO()) throw new Error(`Cannot copy a FIFO pipe: ${t}`);
4083  throw new Error(`Unknown file: ${t}`)
4084}
4085
4086function Rc(e, t, n, r) {
4087  return Bc.copyFileSync(t, n), r.preserveTimestamps && function(e, t, n){
4088    (function (e) {
4089      return 0 == (128 & e)
4090    })(e) && function(e, t){
4091      Tc(e, 128 | t)
4092    }(n, e);
4093    (function (e, t) {
4094      const n = Bc.statSync(e);
4095      Ic(t, n.atime, n.mtime)
4096    })(t, n)
4097  }(e.mode, t, n), Tc(n, e.mode)
4098}
4099
4100function Tc(e, t) {
4101  return Bc.chmodSync(e, t)
4102}
4103
4104function Mc(e, t, n) {
4105  Bc.readdirSync(e).forEach((r => function(e, t, n, r){
4106    const u = Pc.join(t, e), o = Pc.join(n, e);
4107    if (r.filter && !r.filter(u, o)) return;
4108    const { destStat:i } = xc.checkPathsSync(u, o, "copy", r);
4109    return Nc(i, u, o, r)
4110  }(r, e, t, n)))
4111}
4112
4113var Lc = function (e, t, n) {
4114  "function" == typeof n && (n = { filter: n }), (n = n || {
4115  }).clobber = !("clobber" in n) || !!n.clobber, n.overwrite = "overwrite" in n ? !!n.overwrite : n.clobber, n.preserveTimestamps && "ia32" === process.arch && process.emitWarning("Using the preserveTimestamps option in 32-bit node is not recommended;\n\n\tsee https://github.com/jprichardson/node-fs-extra/issues/269", "Warning", "fs-extra-WARN0002");
4116  const { srcStat:r, destStat:u } = xc.checkPathsSync(e, t, "copy", n);
4117  if (xc.checkParentPathsSync(e, r, t, "copy"), n.filter && !n.filter(e, t)) return;
4118  const o = Pc.dirname(t);
4119  return Bc.existsSync(o) || kc(o), Nc(u, e, t, n)
4120};
4121var jc = { copy: (0, Vs.fromCallback)(bc), copySync: Lc };
4122const $c = Xt;
4123var Hc = {
4124  remove: (0, Vs.fromCallback)((function (e, t) {
4125    $c.rm(e, { recursive: !0, force: !0 }, t)
4126  })), removeSync: function (e) {
4127    $c.rmSync(e, { recursive: !0, force: !0 })
4128  }
4129};
4130const Gc = Vs.fromPromise, Vc = Gs, Uc = e, Jc = ec, Wc = Hc, zc = Gc((async function (e) {
4131  let t;
4132  try {
4133    t = await Vc.readdir(e)
4134  } catch {
4135    return Jc.mkdirs(e)
4136  }
4137  return Promise.all(t.map((t => Wc.remove(Uc.join(e, t)))))
4138}));
4139
4140function Kc(e) {
4141  let t;
4142  try {
4143    t = Vc.readdirSync(e)
4144  } catch {
4145    return Jc.mkdirsSync(e)
4146  }
4147  t.forEach((t => {
4148    t = Uc.join(e, t), Wc.removeSync(t)
4149  }))
4150}
4151
4152var qc = { emptyDirSync: Kc, emptydirSync: Kc, emptyDir: zc, emptydir: zc };
4153const Yc = Vs.fromCallback, Zc = e, Xc = Xt, Qc = ec;
4154var ea = {
4155  createFile: Yc((function (e, t) {
4156
4157    function n() {
4158      Xc.writeFile(e, "", (e => {
4159        if (e) return t(e);
4160        t()
4161      }))
4162    }
4163
4164    Xc.stat(e, ((r, u) => {
4165      if (!r && u.isFile()) return t();
4166      const o = Zc.dirname(e);
4167      Xc.stat(o, ((e, r) => {
4168        if (e) return "ENOENT" === e.code ? Qc.mkdirs(o, (e => {
4169          if (e) return t(e);
4170          n()
4171        })) : t(e);
4172        r.isDirectory() ? n() : Xc.readdir(o, (e => {
4173          if (e) return t(e)
4174        }))
4175      }))
4176    }))
4177  })), createFileSync: function (e) {
4178    let t;
4179    try {
4180      t = Xc.statSync(e)
4181    } catch {
4182    }
4183    if (t && t.isFile()) return;
4184    const n = Zc.dirname(e);
4185    try {
4186      Xc.statSync(n).isDirectory() || Xc.readdirSync(n)
4187    } catch (e) {
4188      if (!e || "ENOENT" !== e.code) throw e;
4189      Qc.mkdirsSync(n)
4190    }
4191    Xc.writeFileSync(e, "")
4192  }
4193};
4194const ta = Vs.fromCallback, na = e, ra = Xt, ua = ec, oa = rc.pathExists, { areIdentical:ia } = pc;
4195var sa = {
4196  createLink: ta((function (e, t, n) {
4197
4198    function r(e, t) {
4199      ra.link(e, t, (e => {
4200        if (e) return n(e);
4201        n(null)
4202      }))
4203    }
4204
4205    ra.lstat(t, ((u, o) => {
4206      ra.lstat(e, ((u, i) => {
4207        if (u) return u.message = u.message.replace("lstat", "ensureLink"), n(u);
4208        if (o && ia(i, o)) return n(null);
4209        const s = na.dirname(t);
4210        oa(s, ((u, o) => u ? n(u) : o ? r(e, t) : void ua.mkdirs(s, (u => {
4211          if (u) return n(u);
4212          r(e, t)
4213        }))))
4214      }))
4215    }))
4216  })), createLinkSync: function (e, t) {
4217    let n;
4218    try {
4219      n = ra.lstatSync(t)
4220    } catch {
4221    }
4222    try {
4223      const t = ra.lstatSync(e);
4224      if (n && ia(t, n)) return
4225    } catch (e) {
4226      throw e.message = e.message.replace("lstat", "ensureLink"), e
4227    }
4228    const r = na.dirname(t);
4229    return ra.existsSync(r) || ua.mkdirsSync(r), ra.linkSync(e, t)
4230  }
4231};
4232const ca = e, aa = Xt, la = rc.pathExists;
4233var fa = {
4234  symlinkPaths: function (e, t, n) {
4235    if (ca.isAbsolute(e)) return aa.lstat(e, (t => t ? (t.message = t.message.replace("lstat", "ensureSymlink"), n(t)) : n(null, {
4236      toCwd: e,
4237      toDst: e
4238    })));
4239    {
4240      const r = ca.dirname(t), u = ca.join(r, e);
4241      return la(u, ((t, o) => t ? n(t) : o ? n(null, {
4242        toCwd: u,
4243        toDst: e
4244      }) : aa.lstat(e, (t => t ? (t.message = t.message.replace("lstat", "ensureSymlink"), n(t)) : n(null, {
4245        toCwd: e,
4246        toDst: ca.relative(r, e)
4247      })))))
4248    }
4249  }, symlinkPathsSync: function (e, t) {
4250    let n;
4251    if (ca.isAbsolute(e)) {
4252      if (n = aa.existsSync(e), !n) throw new Error("absolute srcpath does not exist");
4253      return { toCwd: e, toDst: e }
4254    }
4255    {
4256      const r = ca.dirname(t), u = ca.join(r, e);
4257      if (n = aa.existsSync(u), n) return { toCwd: u, toDst: e };
4258      if (n = aa.existsSync(e), !n) throw new Error("relative srcpath does not exist");
4259      return { toCwd: e, toDst: ca.relative(r, e) }
4260    }
4261  }
4262};
4263const da = Xt;
4264var Da = {
4265  symlinkType: function (e, t, n) {
4266    if (n = "function" == typeof t ? t : n, t = "function" != typeof t && t) return n(null, t);
4267    da.lstat(e, ((e, r) => {
4268      if (e) return n(null, "file");
4269      t = r && r.isDirectory() ? "dir" : "file", n(null, t)
4270    }))
4271  }, symlinkTypeSync: function (e, t) {
4272    let n;
4273    if (t) return t;
4274    try {
4275      n = da.lstatSync(e)
4276    } catch {
4277      return "file"
4278    }
4279    return n && n.isDirectory() ? "dir" : "file"
4280  }
4281};
4282const pa = Vs.fromCallback, ha = e, Ea = Gs, ma = ec.mkdirs, ya = ec.mkdirsSync, Ca = fa.symlinkPaths,
4283  Fa = fa.symlinkPathsSync, ga = Da.symlinkType, Aa = Da.symlinkTypeSync, va = rc.pathExists, { areIdentical:Sa } = pc;
4284
4285function wa(e, t, n, r) {
4286  Ca(e, t, ((u, o) => {
4287    if (u) return r(u);
4288    e = o.toDst, ga(o.toCwd, n, ((n, u) => {
4289      if (n) return r(n);
4290      const o = ha.dirname(t);
4291      va(o, ((n, i) => n ? r(n) : i ? Ea.symlink(e, t, u, r) : void ma(o, (n => {
4292        if (n) return r(n);
4293        Ea.symlink(e, t, u, r)
4294      }))))
4295    }))
4296  }))
4297}
4298
4299var Oa = {
4300  createSymlink: pa((function (e, t, n, r) {
4301    r = "function" == typeof n ? n : r, n = "function" != typeof n && n, Ea.lstat(t, ((u, o) => {
4302      !u && o.isSymbolicLink() ? Promise.all([Ea.stat(e), Ea.stat(t)]).then((([u, o]) => {
4303        if (Sa(u, o)) return r(null);
4304        wa(e, t, n, r)
4305      })) : wa(e, t, n, r)
4306    }))
4307  })), createSymlinkSync: function (e, t, n) {
4308    let r;
4309    try {
4310      r = Ea.lstatSync(t)
4311    } catch {
4312    }
4313    if (r && r.isSymbolicLink()) {
4314      const n = Ea.statSync(e), r = Ea.statSync(t);
4315      if (Sa(n, r)) return
4316    }
4317    const u = Fa(e, t);
4318    e = u.toDst, n = Aa(u.toCwd, n);
4319    const o = ha.dirname(t);
4320    return Ea.existsSync(o) || ya(o), Ea.symlinkSync(e, t, n)
4321  }
4322};
4323const { createFile:_a, createFileSync:ba } = ea, { createLink:Ba, createLinkSync:Pa } = sa,
4324  { createSymlink:ka, createSymlinkSync:Ia } = Oa;
4325var xa = {
4326  createFile: _a,
4327  createFileSync: ba,
4328  ensureFile: _a,
4329  ensureFileSync: ba,
4330  createLink: Ba,
4331  createLinkSync: Pa,
4332  ensureLink: Ba,
4333  ensureLinkSync: Pa,
4334  createSymlink: ka,
4335  createSymlinkSync: Ia,
4336  ensureSymlink: ka,
4337  ensureSymlinkSync: Ia
4338};
4339var Na = {
4340  stringify: function (e, { EOL:t = "\n", finalEOL:n = !0, replacer:r = null, spaces:u }={}) {
4341    const o = n ? t : "";
4342    return JSON.stringify(e, r, u).replace(/\n/g, t) + o
4343  }, stripBom: function (e) {
4344    return Buffer.isBuffer(e) && (e = e.toString("utf8")), e.replace(/^\uFEFF/, "")
4345  }
4346};
4347let Ra;
4348try {
4349  Ra = Xt
4350} catch (e) {
4351  Ra = n
4352}
4353const Ta = Vs, { stringify:Ma, stripBom:La } = Na;
4354const ja = Ta.fromPromise((async function (e, t = {}) {
4355  "string" == typeof t && (t = { encoding: t });
4356  const n = t.fs || Ra, r = !("throws" in t) || t.throws;
4357  let u, o = await Ta.fromCallback(n.readFile)(e, t);
4358  o = La(o);
4359  try {
4360    u = JSON.parse(o, t ? t.reviver : null)
4361  } catch (t) {
4362    if (r) throw t.message = `${e}: ${t.message}`, t;
4363    return null
4364  }
4365  return u
4366}));
4367const $a = Ta.fromPromise((async function (e, t, n = {}) {
4368  const r = n.fs || Ra, u = Ma(t, n);
4369  await Ta.fromCallback(r.writeFile)(e, u, n)
4370}));
4371const Ha = {
4372  readFile: ja, readFileSync: function (e, t = {}) {
4373    "string" == typeof t && (t = { encoding: t });
4374    const n = t.fs || Ra, r = !("throws" in t) || t.throws;
4375    try {
4376      let r = n.readFileSync(e, t);
4377      return r = La(r), JSON.parse(r, t.reviver)
4378    } catch (t) {
4379      if (r) throw t.message = `${e}: ${t.message}`, t;
4380      return null
4381    }
4382  }, writeFile: $a, writeFileSync: function (e, t, n = {}) {
4383    const r = n.fs || Ra, u = Ma(t, n);
4384    return r.writeFileSync(e, u, n)
4385  }
4386};
4387var Ga = {
4388  readJson: Ha.readFile,
4389  readJsonSync: Ha.readFileSync,
4390  writeJson: Ha.writeFile,
4391  writeJsonSync: Ha.writeFileSync
4392};
4393const Va = Vs.fromCallback, Ua = Xt, Ja = e, Wa = ec, za = rc.pathExists;
4394var Ka = {
4395  outputFile: Va((function (e, t, n, r) {
4396    "function" == typeof n && (r = n, n = "utf8");
4397    const u = Ja.dirname(e);
4398    za(u, ((o, i) => o ? r(o) : i ? Ua.writeFile(e, t, n, r) : void Wa.mkdirs(u, (u => {
4399      if (u) return r(u);
4400      Ua.writeFile(e, t, n, r)
4401    }))))
4402  })), outputFileSync: function (e, ...t) {
4403    const n = Ja.dirname(e);
4404    if (Ua.existsSync(n)) return Ua.writeFileSync(e, ...t);
4405    Wa.mkdirsSync(n), Ua.writeFileSync(e, ...t)
4406  }
4407};
4408const { stringify:qa } = Na, { outputFile:Ya } = Ka;
4409var Za = async function (e, t, n = {}) {
4410  const r = qa(t, n);
4411  await Ya(e, r, n)
4412};
4413const { stringify:Xa } = Na, { outputFileSync:Qa } = Ka;
4414var el = function (e, t, n) {
4415  const r = Xa(t, n);
4416  Qa(e, r, n)
4417};
4418const tl = Vs.fromPromise, nl = Ga;
4419nl.outputJson = tl(Za), nl.outputJsonSync = el, nl.outputJSON = nl.outputJson, nl.outputJSONSync = nl.outputJsonSync, nl.writeJSON = nl.writeJson, nl.writeJSONSync = nl.writeJsonSync, nl.readJSON = nl.readJson, nl.readJSONSync = nl.readJsonSync;
4420var rl = nl;
4421const ul = Xt, ol = e, il = jc.copy, sl = Hc.remove, cl = ec.mkdirp, al = rc.pathExists, ll = pc;
4422
4423function fl(e, t, n, r, u) {
4424  return r ? dl(e, t, n, u) : n ? sl(t, (r => r ? u(r) : dl(e, t, n, u))) : void al(t, ((r, o) => r ? u(r) : o ? u(new Error("dest already exists.")) : dl(e, t, n, u)))
4425}
4426
4427function dl(e, t, n, r) {
4428  ul.rename(e, t, (u => u ? "EXDEV" !== u.code ? r(u) : function(e, t, n, r){
4429    const u = { overwrite: n, errorOnExist: !0 };
4430    il(e, t, u, (t => t ? r(t) : sl(e, r)))
4431  }(e, t, n, r) : r()))
4432}
4433
4434var Dl = function (e, t, n, r) {
4435  "function" == typeof n && (r = n, n = {});
4436  const u = (n = n || {}).overwrite || n.clobber || !1;
4437  ll.checkPaths(e, t, "move", n, ((n, o) => {
4438    if (n) return r(n);
4439    const { srcStat:i, isChangingCase:s = !1 } = o;
4440    ll.checkParentPaths(e, i, t, "move", (n => n ? r(n) : function(e){
4441      const t = ol.dirname(e);
4442      return ol.parse(t).root === t
4443    }(t) ? fl(e, t, u, s, r) : void cl(ol.dirname(t), (n => n ? r(n) : fl(e, t, u, s, r)))))
4444  }))
4445};
4446const pl = Xt, hl = e, El = jc.copySync, ml = Hc.removeSync, yl = ec.mkdirpSync, Cl = pc;
4447
4448function Fl(e, t, n) {
4449  try {
4450    pl.renameSync(e, t)
4451  } catch (r) {
4452    if ("EXDEV" !== r.code) throw r;
4453    return function(e, t, n){
4454      const r = { overwrite: n, errorOnExist: !0 };
4455      return El(e, t, r), ml(e)
4456    }(e, t, n)
4457  }
4458}
4459
4460var gl = function (e, t, n) {
4461  const r = (n = n || {}).overwrite || n.clobber || !1,
4462    { srcStat:u, isChangingCase:o = !1 } = Cl.checkPathsSync(e, t, "move", n);
4463  return Cl.checkParentPathsSync(e, u, t, "move"), function(e){
4464    const t = hl.dirname(e);
4465    return hl.parse(t).root === t
4466  }(t) || yl(hl.dirname(t)), function(e, t, n, r){
4467    if (r) return Fl(e, t, n);
4468    if (n) return ml(t), Fl(e, t, n);
4469    if (pl.existsSync(t)) throw new Error("dest already exists.");
4470    return Fl(e, t, n)
4471  }(e, t, r, o)
4472};
4473var Al = { move: (0, Vs.fromCallback)(Dl), moveSync: gl }, vl = {
4474  ...Gs,
4475  ...jc,
4476  ...qc,
4477  ...xa,
4478  ...rl,
4479  ...ec,
4480  ...Al,
4481  ...Ka,
4482  ...rc,
4483  ...Hc
4484}, Sl = p && p.__importDefault || function (e) {
4485  return e && e.__esModule ? e : { default: e }
4486};
4487Object.defineProperty(Hs, "__esModule", { value: !0 }), Hs.getHvigorUserHomeCacheDir = void 0;
4488const wl = Sl(vl), Ol = Sl(t), _l = Sl(e), bl = h;
4489Hs.getHvigorUserHomeCacheDir = function () {
4490  const e = _l.default.resolve(Ol.default.homedir(), bl.HVIGOR_USER_HOME_DIR_NAME), t = process.env.HVIGOR_USER_HOME;
4491  return void 0 !== t && _l.default.isAbsolute(t) ? (wl.default.ensureDirSync(t), t) : e
4492}, function(t){
4493  var n = p && p.__importDefault || function (e) {
4494    return e && e.__esModule ? e : { default: e }
4495  };
4496  Object.defineProperty(t, "__esModule", {
4497    value: !0
4498  }), t.HVIGOR_PROJECT_WRAPPER_HOME = t.HVIGOR_PROJECT_ROOT_DIR = t.HVIGOR_PROJECT_CACHES_HOME = t.HVIGOR_PNPM_STORE_PATH = t.HVIGOR_WRAPPER_PNPM_SCRIPT_PATH = t.HVIGOR_WRAPPER_TOOLS_HOME = t.HVIGOR_USER_HOME = void 0;
4499  const r = n(e), u = Hs, o = h;
4500  t.HVIGOR_USER_HOME = (0, u.getHvigorUserHomeCacheDir)(), t.HVIGOR_WRAPPER_TOOLS_HOME = r.default.resolve(t.HVIGOR_USER_HOME, "wrapper", "tools"), t.HVIGOR_WRAPPER_PNPM_SCRIPT_PATH = r.default.resolve(t.HVIGOR_WRAPPER_TOOLS_HOME, "node_modules", ".bin", o.PNPM_TOOL), t.HVIGOR_PNPM_STORE_PATH = r.default.resolve(t.HVIGOR_USER_HOME, "caches"), t.HVIGOR_PROJECT_CACHES_HOME = r.default.resolve(t.HVIGOR_USER_HOME, o.PROJECT_CACHES), t.HVIGOR_PROJECT_ROOT_DIR = process.cwd(), t.HVIGOR_PROJECT_WRAPPER_HOME = r.default.resolve(t.HVIGOR_PROJECT_ROOT_DIR, o.HVIGOR)
4501}($s);
4502var Bl = {}, Pl = p && p.__createBinding || (Object.create ? function (e, t, n, r) {
4503  void 0 === r && (r = n);
4504  var u = Object.getOwnPropertyDescriptor(t, n);
4505  u && !("get" in u ? !t.__esModule : u.writable || u.configurable) || (u = {
4506    enumerable: !0, get: function () {
4507      return t[n]
4508    }
4509  }), Object.defineProperty(e, r, u)
4510} : function (e, t, n, r) {
4511  void 0 === r && (r = n), e[r] = t[n]
4512}), kl = p && p.__setModuleDefault || (Object.create ? function (e, t) {
4513  Object.defineProperty(e, "default", { enumerable: !0, value: t })
4514} : function (e, t) {
4515  e.default = t
4516}), Il = p && p.__importStar || function (e) {
4517  if (e && e.__esModule) return e;
4518  var t = {};
4519  if (null != e) for (var n in e) "default" !== n && Object.prototype.hasOwnProperty.call(e, n) && Pl(t, e, n);
4520  return kl(t, e), t
4521}, xl = p && p.__importDefault || function (e) {
4522  return e && e.__esModule ? e : { default: e }
4523};
4524Object.defineProperty(Bl, "__esModule", {
4525  value: !0
4526}), Bl.isFileExists = Bl.offlinePluginConversion = Bl.executeCommand = Bl.getNpmPath = Bl.hasNpmPackInPaths = void 0;
4527const Nl = r, Rl = xl(n), Tl = Il(e), Ml = h, Ll = O;
4528Bl.hasNpmPackInPaths = function (e, t) {
4529  try {
4530    return require.resolve(e, { paths: [...t] }), !0
4531  } catch (e) {
4532    return !1
4533  }
4534}, Bl.getNpmPath = function () {
4535  const e = process.execPath;
4536  return Tl.join(Tl.dirname(e), Ml.NPM_TOOL)
4537}, Bl.executeCommand = function (e, t, n) {
4538  0 !== (0, Nl.spawnSync)(e, t, n).status && (0, Ll.logErrorAndExit)(`Error: ${e} ${t} execute failed.See above for details.`)
4539}, Bl.offlinePluginConversion = function (e, t) {
4540  return t.startsWith("file:") || t.endsWith(".tgz") ? Tl.resolve(e, Ml.HVIGOR, t.replace("file:", "")) : t
4541}, Bl.isFileExists = function (e) {
4542  return Rl.default.existsSync(e) && Rl.default.statSync(e).isFile()
4543}, function(u){
4544  var o = p && p.__createBinding || (Object.create ? function (e, t, n, r) {
4545    void 0 === r && (r = n);
4546    var u = Object.getOwnPropertyDescriptor(t, n);
4547    u && !("get" in u ? !t.__esModule : u.writable || u.configurable) || (u = {
4548      enumerable: !0, get: function () {
4549        return t[n]
4550      }
4551    }), Object.defineProperty(e, r, u)
4552  } : function (e, t, n, r) {
4553    void 0 === r && (r = n), e[r] = t[n]
4554  }), i = p && p.__setModuleDefault || (Object.create ? function (e, t) {
4555    Object.defineProperty(e, "default", { enumerable: !0, value: t })
4556  } : function (e, t) {
4557    e.default = t
4558  }), s = p && p.__importStar || function (e) {
4559    if (e && e.__esModule) return e;
4560    var t = {};
4561    if (null != e) for (var n in e) "default" !== n && Object.prototype.hasOwnProperty.call(e, n) && o(t, e, n);
4562    return i(t, e), t
4563  }, c = p && p.__importDefault || function (e) {
4564    return e && e.__esModule ? e : { default: e }
4565  };
4566  Object.defineProperty(u, "__esModule", {
4567    value: !0
4568  }), u.executeInstallPnpm = u.isPnpmInstalled = u.environmentHandler = u.checkNpmConifg = u.PNPM_VERSION = void 0;
4569  const a = r, l = s(n), f = c(t), d = s(e), D = h, E = $s, m = $s, y = O, C = Bl;
4570  u.PNPM_VERSION = "7.30.0", u.checkNpmConifg = function () {
4571    const e = d.resolve(E.HVIGOR_PROJECT_ROOT_DIR, ".npmrc"), t = d.resolve(f.default.homedir(), ".npmrc");
4572    if ((0, C.isFileExists)(e) || (0, C.isFileExists)(t)) return;
4573    const n = (0, C.getNpmPath)(),
4574      r = (0, a.spawnSync)(n, ["config", "get", "prefix"], { cwd: E.HVIGOR_PROJECT_ROOT_DIR });
4575    if (0 !== r.status || !r.stdout) return void (0, y.logErrorAndExit)("Error: The hvigor depends on the npmrc file. Configure the npmrc file first.");
4576    const u = d.resolve(`${r.stdout}`.replace(/[\r\n]/gi, ""), ".npmrc");
4577    (0, C.isFileExists)(u) || (0, y.logErrorAndExit)("Error: The hvigor depends on the npmrc file. Configure the npmrc file first.")
4578  }, u.environmentHandler = function () {
4579    process.env["npm_config_update-notifier"] = "false"
4580  }, u.isPnpmInstalled = function () {
4581    return!!l.existsSync(m.HVIGOR_WRAPPER_PNPM_SCRIPT_PATH) && (0, C.hasNpmPackInPaths)("pnpm", [m.HVIGOR_WRAPPER_TOOLS_HOME])
4582  }, u.executeInstallPnpm = function () {
4583    (0, y.logInfo)(`Installing pnpm@${u.PNPM_VERSION}...`);
4584    const e = (0, C.getNpmPath)();
4585    !function(){
4586      const e = d.resolve(m.HVIGOR_WRAPPER_TOOLS_HOME, D.DEFAULT_PACKAGE_JSON);
4587      try {
4588        l.existsSync(m.HVIGOR_WRAPPER_TOOLS_HOME) || l.mkdirSync(m.HVIGOR_WRAPPER_TOOLS_HOME, { recursive: !0 });
4589        const t = { dependencies: {} };
4590        t.dependencies[D.PNPM] = u.PNPM_VERSION, l.writeFileSync(e, JSON.stringify(t))
4591      } catch (t) {
4592        (0, y.logErrorAndExit)(`Error: EPERM: operation not permitted,create ${e} failed.`)
4593      }
4594    }(), (0, C.executeCommand)(e, ["install", "pnpm"], {
4595      cwd: m.HVIGOR_WRAPPER_TOOLS_HOME,
4596      stdio: ["inherit", "inherit", "inherit"],
4597      env: process.env
4598    }), (0, y.logInfo)("Pnpm install success.")
4599  }
4600}(js);
4601var jl = {}, $l = {}, Hl = p && p.__importDefault || function (e) {
4602  return e && e.__esModule ? e : { default: e }
4603};
4604Object.defineProperty($l, "__esModule", { value: !0 }), $l.getHvigorUserHomeCacheDir = void 0;
4605const Gl = Hl(vl), Vl = Hl(t), Ul = Hl(e), Jl = h, Wl = O;
4606let zl = !1;
4607$l.getHvigorUserHomeCacheDir = function () {
4608  const e = Ul.default.resolve(Vl.default.homedir(), Jl.HVIGOR_USER_HOME_DIR_NAME), t = process.env.HVIGOR_USER_HOME;
4609  return void 0 === t ? e : Ul.default.isAbsolute(t) ? Gl.default.existsSync(t) && Gl.default.statSync(t).isFile() ? ((0, Wl.logInfo)(`File already exists: ${t}`), e) : (Gl.default.ensureDirSync(t), t) : (zl || ((0, Wl.logInfo)(`Invalid custom userhome hvigor data dir:${t}`), zl = !0), e)
4610}, function(t){
4611  var n = p && p.__importDefault || function (e) {
4612    return e && e.__esModule ? e : { default: e }
4613  };
4614  Object.defineProperty(t, "__esModule", {
4615    value: !0
4616  }), t.HVIGOR_PROJECT_WRAPPER_HOME = t.HVIGOR_PROJECT_ROOT_DIR = t.HVIGOR_PNPM_STORE_PATH = t.HVIGOR_WRAPPER_PNPM_SCRIPT_PATH = t.HVIGOR_WRAPPER_TOOLS_HOME = t.HVIGOR_USER_HOME = void 0;
4617  const r = n(e), u = h, o = $l;
4618  t.HVIGOR_USER_HOME = (0, o.getHvigorUserHomeCacheDir)(), t.HVIGOR_WRAPPER_TOOLS_HOME = r.default.resolve(t.HVIGOR_USER_HOME, "wrapper", "tools"), t.HVIGOR_WRAPPER_PNPM_SCRIPT_PATH = r.default.resolve(t.HVIGOR_WRAPPER_TOOLS_HOME, "node_modules", ".bin", u.PNPM_TOOL), t.HVIGOR_PNPM_STORE_PATH = r.default.resolve(t.HVIGOR_USER_HOME, "caches"), t.HVIGOR_PROJECT_ROOT_DIR = process.cwd(), t.HVIGOR_PROJECT_WRAPPER_HOME = r.default.resolve(t.HVIGOR_PROJECT_ROOT_DIR, u.HVIGOR)
4619}(jl);
4620var Kl = p && p.__createBinding || (Object.create ? function (e, t, n, r) {
4621  void 0 === r && (r = n);
4622  var u = Object.getOwnPropertyDescriptor(t, n);
4623  u && !("get" in u ? !t.__esModule : u.writable || u.configurable) || (u = {
4624    enumerable: !0, get: function () {
4625      return t[n]
4626    }
4627  }), Object.defineProperty(e, r, u)
4628} : function (e, t, n, r) {
4629  void 0 === r && (r = n), e[r] = t[n]
4630}), ql = p && p.__setModuleDefault || (Object.create ? function (e, t) {
4631  Object.defineProperty(e, "default", { enumerable: !0, value: t })
4632} : function (e, t) {
4633  e.default = t
4634}), Yl = p && p.__importStar || function (e) {
4635  if (e && e.__esModule) return e;
4636  var t = {};
4637  if (null != e) for (var n in e) "default" !== n && Object.prototype.hasOwnProperty.call(e, n) && Kl(t, e, n);
4638  return ql(t, e), t
4639}, Zl = p && p.__importDefault || function (e) {
4640  return e && e.__esModule ? e : { default: e }
4641};
4642Object.defineProperty($, "__esModule", { value: !0 });
4643var Xl = $.initProjectWorkSpace = void 0;
4644const Ql = Yl(n), ef = Yl(e), tf = Zl(u), nf = H, rf = h, uf = Zi, of = Xi, sf = Qi, cf = O, af = js, lf = Bl, ff = jl;
4645let df, Df, pf;
4646
4647function hf(e, t, n) {
4648  return void 0 !== n.dependencies && (0, lf.offlinePluginConversion)(ff.HVIGOR_PROJECT_ROOT_DIR, t.dependencies[e]) === ef.normalize(n.dependencies[e])
4649}
4650
4651Xl = $.initProjectWorkSpace = function () {
4652  if (df = function(){
4653    const e = ef.resolve(ff.HVIGOR_PROJECT_WRAPPER_HOME, rf.DEFAULT_HVIGOR_CONFIG_JSON_FILE_NAME);
4654    Ql.existsSync(e) || (0, cf.logErrorAndExit)(`Error: Hvigor config file ${e} does not exist.`);
4655    return (0, sf.parseJsonFile)(e)
4656  }(), pf = function(e){
4657    let t;
4658    t = function(e){
4659      const t = e.hvigorVersion;
4660      if (t.startsWith("file:") || t.endsWith(".tgz")) return !1;
4661      const n = function(){
4662        const e = tf.default.argv.slice(2), t = /^(--config|-c).*/, n = /^(--config|-c)$/, r = {};
4663        for (const [u, o] of e.entries()) if (n.test(o)) {
4664          const t = e[u+1].split("=");
4665          2 === t.length && (r[t[0]] = t[t.length-1])
4666        } else if (t.test(o)) {
4667          const e = o.match(t);
4668          if (e && e[0].length < o.length) {
4669            const t = o.substring(e[0].length).split("=");
4670            2 === t.length && (r[t[0]] = t[t.length-1])
4671          }
4672        }
4673        return r
4674      }();
4675      if ((0, uf.isCI)() || "false" === n.hvigorWorkSingleton) return !1;
4676      const r = e.dependencies, u = Object.getOwnPropertyNames(r);
4677      for (const e of u) {
4678        const t = r[e];
4679        if (t.startsWith("file:") || t.endsWith(".tgz")) return !1
4680      }
4681      if (1 === u.length && "@ohos/hvigor-ohos-plugin" === u[0]) return t > "2.5.0";
4682      return !1
4683    }(e) ? function(e){
4684      let t = `${rf.HVIGOR_ENGINE_PACKAGE_NAME}@${e.hvigorVersion}`;
4685      const n = e.dependencies;
4686      if (n) {
4687        Object.getOwnPropertyNames(n).sort().forEach((e => {
4688          t += `,${e}@${n[e]}`
4689        }))
4690      }
4691      return (0, of.hash)(t)
4692    }(e) : (0, of.hash)(tf.default.cwd());
4693    return ef.resolve(ff.HVIGOR_USER_HOME, "project_caches", t)
4694  }(df), Df = function(){
4695    const e = ef.resolve(pf, rf.WORK_SPACE, rf.DEFAULT_PACKAGE_JSON);
4696    return Ql.existsSync(e) ? (0, sf.parseJsonFile)(e) : { dependencies: {} }
4697  }(), function(){
4698    const e = ef.resolve(ff.HVIGOR_USER_HOME, rf.DEFAULT_HVIGOR_CONFIG_JSON_FILE_NAME);
4699    if (Ql.existsSync(e)) (0, sf.parseJsonFile)(e)
4700  }(),!(0, lf.hasNpmPackInPaths)(rf.HVIGOR_ENGINE_PACKAGE_NAME, [ef.join(pf, rf.WORK_SPACE)]) || (0, lf.offlinePluginConversion)(ff.HVIGOR_PROJECT_ROOT_DIR, df.hvigorVersion) !== Df.dependencies[rf.HVIGOR_ENGINE_PACKAGE_NAME] || !function(){
4701
4702    function e(e) {
4703      const t = null == e ? void 0 : e.dependencies;
4704      return void 0 === t ? 0 : Object.getOwnPropertyNames(t).length
4705    }
4706
4707    const t = e(df), n = e(Df);
4708    if (t + 1 !== n) return !1;
4709    for (const e in null == df ? void 0 : df.dependencies) if (!(0, lf.hasNpmPackInPaths)(e, [ef.join(pf, rf.WORK_SPACE)]) || !hf(e, df, Df)) return !1;
4710    return !0
4711  }()) try {
4712    const e = tf.default.hrtime();
4713    (0, af.checkNpmConifg)(), function(){
4714      (0, cf.logInfo)("Hvigor installing...");
4715      for (const e in df.dependencies) df.dependencies[e] && (df.dependencies[e] = (0, lf.offlinePluginConversion)(ff.HVIGOR_PROJECT_ROOT_DIR, df.dependencies[e]));
4716      const e = { dependencies: { ...df.dependencies } };
4717      e.dependencies[rf.HVIGOR_ENGINE_PACKAGE_NAME] = (0, lf.offlinePluginConversion)(ff.HVIGOR_PROJECT_ROOT_DIR, df.hvigorVersion);
4718      const t = ef.join(pf, rf.WORK_SPACE);
4719      try {
4720        Ql.mkdirSync(t, { recursive: !0 });
4721        const n = ef.resolve(t, rf.DEFAULT_PACKAGE_JSON);
4722        Ql.writeFileSync(n, JSON.stringify(e))
4723      } catch (e) {
4724        (0, cf.logErrorAndExit)(e)
4725      }
4726      (function () {
4727        const e = ["config", "set", "store-dir", ff.HVIGOR_PNPM_STORE_PATH],
4728          t = { cwd: ef.join(pf, rf.WORK_SPACE), stdio: ["inherit", "inherit", "inherit"] };
4729        (0, lf.executeCommand)(ff.HVIGOR_WRAPPER_PNPM_SCRIPT_PATH, e, t)
4730      })(), function(){
4731        const e = ["install"];
4732        (0, uf.isCI)() && e.push("--no-frozen-lockfile");
4733        const t = { cwd: ef.join(pf, rf.WORK_SPACE), stdio: ["inherit", "inherit", "inherit"] };
4734        (0, lf.executeCommand)(ff.HVIGOR_WRAPPER_PNPM_SCRIPT_PATH, e, t)
4735      }(), (0, cf.logInfo)("Hvigor install success.")
4736    }();
4737    const t = tf.default.hrtime(e);
4738    nf.hvigorTrace.HVIGOR_INSTALL_TIME = 1e9 * t[0] + t[1]
4739  } catch (e) {
4740    !function(){
4741      const e = ef.join(pf, rf.WORK_SPACE);
4742      if ((0, cf.logInfo)("Hvigor cleaning..."), !Ql.existsSync(e)) return;
4743      const t = Ql.readdirSync(e);
4744      if (!t || 0 === t.length) return;
4745      const n = ef.resolve(pf, "node_modules", "@ohos", "hvigor", "bin", "hvigor.js");
4746      Ql.existsSync(n) && (0, lf.executeCommand)(tf.default.argv[0], [n, "--stop-daemon"], {});
4747      try {
4748        t.forEach((t => {
4749          Ql.rmSync(ef.resolve(e, t), { recursive: !0 })
4750        }))
4751      } catch (t) {
4752        (0, cf.logErrorAndExit)(`The hvigor build tool cannot be installed. Please manually clear the workspace directory and synchronize the project again.\n\n      Workspace Path: ${e}.`)
4753      }
4754    }()
4755  }
4756  return pf
4757}, function(){
4758  js.environmentHandler(), js.isPnpmInstalled() || (js.checkNpmConifg(), js.executeInstallPnpm());
4759  const t = Xl();
4760  P(e.join(t, S))
4761}();